Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonDefine.cs	(revision 51)
@@ -37,10 +37,25 @@
         /// <summary>
         /// パスを定数で定義する
         /// </summary>
-        public const string s_UPDATE_FILE_PATH = @"Z:\52GenbaKantokuHisyo";
-        //public const string s_UPDATE_FILE_PATH = @"Z:\5-2現場監督秘書";
-        //private const string s_UPDATE_FILE_PATH = @"Z:\⑤ＩＴ事業部用\Debug";
         public const string s_UPDATECOPY_NAME = "UpDateCopy.exe";
+// ▼自動更新VPS対応▼
+        // FTPユーザ名
+        public const string s_FTP_USER_NAME = "pmaint";
+        // FTPパスワード
+        public const string s_FTP_PASSWORD = "hyou5210";
+        // FTPつなぎ先パス
+        public const string s_FTP_SERVER_PATH = "ftp://203.137.92.122:990/HYOU/";
+        // 更新モジュールフォルダ,ファイル名
+        public const string s_UPDATE_MODULE = "UpDateCopy";
+        // UVERSIONキー名
+        public const string s_UVERSION_KEY = "uversion";
+        // MVERSIONキー名
+        public const string s_MVERSION_KEY = "mversion";
+        // VERSIONセクション名
+        public const string s_VERSION_SECTION = "genbaKantokuHisyo";
+        // 起動パラメータ
+        public const string s_KIDOU_PARAM = "/NOCHECK";
+// ▲自動更新VPS対応▲
         #endregion
 
         #region システム定義ファイルパス
@@ -62,15 +77,24 @@
 
         #region システムセキュリティ定義
         /// <summary>
-        /// システム管理者パスワード
+        /// システム管理者コード
         /// </summary>
         public static int AdminCode = 88889988;
+        /// <summary>
+        /// システム管理者名称
+        /// </summary>
         public static string AdminUser = "Admin";
+        /// <summary>
+        /// システム管理者パスワード
+        /// </summary>
         public static string AdminPass = "Admin";
+        /// <summary>
+        /// システム管理者旧セキュリティコード
+        /// </summary>
         public static int AdminSecurityManagement = -1;
 
         /// <summary>
-        /// 機密管理番号
+        /// 旧機密管理番号
         /// </summary>
         public enum SysManaDivNo
         {
@@ -92,7 +116,7 @@
             UserAuthority,
         }
         /// <summary>
-        /// 機密管理区分
+        /// 旧機密管理区分
         /// </summary>
         public static List<KeyValuePair<int, string>> SystemManageDiv = new List<KeyValuePair<int, string>>{
                                                                                 new KeyValuePair<int,string>(1,"最高責任者"),
@@ -99,6 +123,36 @@
                                                                                 new KeyValuePair<int,string>(2,"統括責任者"),
                                                                                 new KeyValuePair<int,string>(3,"所　属　長"),
                                                                                 new KeyValuePair<int,string>(4,"一般使用者")};
+        /// <summary>
+        /// 機密管理番号
+        /// </summary>
+        public enum SecurityRankPos
+        {
+            /// <summary>
+            /// 特別権限
+            /// </summary>
+            SpecialAuthority = 0,
+            /// <summary>
+            /// 統括者権限
+            /// </summary>
+            FreeAuthority,
+            /// <summary>
+            /// 所属長権限
+            /// </summary>
+            LimitedAuthority,
+            /// <summary>
+            /// 一般者権限
+            /// </summary>
+            NormalAuthority,
+        }
+        /// <summary>
+        /// 機密管理区分
+        /// </summary>
+        public static List<KeyValuePair<int, string>> SecurityRankList = new List<KeyValuePair<int, string>>{
+                                                                                new KeyValuePair<int,string>(1,"特別権限"),
+                                                                                new KeyValuePair<int,string>(2,"統括者権限"),
+                                                                                new KeyValuePair<int,string>(3,"所属長権限"),
+                                                                                new KeyValuePair<int,string>(4,"一般者権限")};
         #region 旧機密区分名称
         //public static List<KeyValuePair<int, string>> SecurityManagementDivision = new List<KeyValuePair<int, string>>{
         //                                                                    new KeyValuePair<int,string>(1,"最高機密管理者"),
@@ -106,6 +160,34 @@
         //                                                                    new KeyValuePair<int,string>(3,"機密管理者"),
         //                                                                    new KeyValuePair<int,string>(4,"一般使用者")};
         #endregion
+
+        /// <summary>
+        /// 機密区分範囲
+        /// </summary>
+        public enum SecurityRangePos
+        {
+            /// <summary>
+            /// 全部署参照
+            /// </summary>
+            AllPath = 0,
+            /// <summary>
+            /// 複数部署参照
+            /// </summary>
+            Multiple,
+            /// <summary>
+            /// 自部署のみ
+            /// </summary>
+            Only,
+            /// <summary>
+            /// 自担当者のみ
+            /// </summary>
+            None,
+        }
+        public static List<KeyValuePair<int, string>> SecurityRangeList = new List<KeyValuePair<int, string>>{
+                                                                                new KeyValuePair<int,string>(1,"全部署対象"),
+                                                                                new KeyValuePair<int,string>(2,"複数部署対象"),
+                                                                                new KeyValuePair<int,string>(3,"自部署のみ対象"),
+                                                                                new KeyValuePair<int,string>(4,"担当分のみ対象")};
         #endregion
 
         #region エクセル使用時パス
@@ -160,7 +242,15 @@
         public static Color s_clrNormal = Color.White;
         #endregion
 
+        #region 曜日文字
+        /// <summary>
+        /// 曜日文字
+        /// </summary>
+        public static string[] DayOfTheWeekString = new string[] { "日", "月", "火", "水", "木", "金", "土" };
+        #endregion
+
         #region 掲示板：関連定義
+        #region 掲示板グリッド返信文字
         /// <summary>
         /// 掲示板グリッド返信文字
         /// </summary>
@@ -187,7 +277,9 @@
         /// 総務部コード（部署コード）
         /// </summary>
         public static int s_GeneralAffairsDevision = 4;
+        #endregion
 
+        #region メッセージリンク区分
         /// <summary>
         /// メッセージリンク区分
         /// </summary>
@@ -202,7 +294,9 @@
             /// </summary>
             ConstructionInfo,
         }
+        #endregion
 
+        #region メッセージフラグ区分
         /// <summary>
         /// メッセージフラグ区分
         /// </summary>
@@ -218,6 +312,7 @@
             Secretary,
         }
         #endregion
+        #endregion
 
         #region 行動予定 会社行事名称・コード
         /// <summary>
@@ -430,11 +525,20 @@
         public static readonly string[] ApprovalButtonString = new string[] { "未承認", "承認済", "不承認" };
         #endregion
 
+        #region 承認処理：デフォルト承認受付番号
+        /// <summary>
+        /// 承認処理：デフォルト承認受付番号
+        /// </summary>
+        public static int s_Default_OrderNo = 1;
+        #endregion
+
         #region 起動時チェック：関連定義
         /// <summary>
         /// 起動時日付チェックを必要とする処理のキー
         /// </summary>
-        public static Dictionary<int, string> ExePrimaryCode = new Dictionary<int, string>() { { 1, "初回起動日付" } };
+        public static Dictionary<int, string> ExePrimaryCode = new Dictionary<int, string>() { { 1, "初回起動日付" },
+                                                                                                { 2, "システムバージョン" },
+                                                                                            };
         #endregion
 
         #region 管理マスタ：工事番号基準値
@@ -881,6 +985,48 @@
         public static int s_EstimatesExpirationDeadline = 3;
         #endregion
 
+        #region 見積書入力：固定項目キー
+        /// <summary>
+        /// 見積書入力：固定項目キー
+        /// </summary>
+        public enum EstimateTotalSeqNo
+        {
+            /// <summary>
+            /// 合計：'A'
+            /// </summary>
+            ToTal1 = 0,
+            /// <summary>
+            /// 端数処理：'B'
+            /// </summary>
+            ToTal2,
+            /// <summary>
+            /// 改め合計：'C'
+            /// </summary>
+            ToTal3,
+            /// <summary>
+            /// 消費税相当額：'D'
+            /// </summary>
+            ToTal4,
+            /// <summary>
+            /// 総計：'E'
+            /// </summary>
+            ToTal5,
+        }
+        #endregion
+
+        #region 見積書入力：固定項目キー文字列
+        /// <summary>
+        /// 見積書入力：固定項目キー文字列
+        /// </summary>
+        /// <param name="estimatetotalseqNo"></param>
+        /// <returns></returns>
+        public static string GetEstimateTotalSeqNo(this EstimateTotalSeqNo estimatetotalseqNo)
+        {
+            string[] names = { "A", "B", "C", "D", "E" };
+            return names[(int)estimatetotalseqNo];
+        }
+        #endregion
+
         #region 見積書入力：タブカテゴリ定義値
         /// <summary>
         /// 見積入力：大項目・中項目・小項目
@@ -1006,6 +1152,13 @@
                                                                     "公共工事標準仕様書（最新版）に則り施工のこと。"};
         #endregion
 
+        #region 注文書入力：印刷対象金額
+        /// <summary>
+        /// 印刷対象金額
+        /// </summary>
+        public static int s_PrintOutPrice = 300000;
+        #endregion
+
         #region 交通費及び購入品等入力：データ種別
         /// <summary>
         /// 交通費及び購入品等入力：データ種別
@@ -1040,11 +1193,11 @@
         public static readonly string[] CostDataNoString = new string[] { "", "交　通　費", "購入品費", "車両リース代", "駐車場・資材置き場代", "宿泊費" };
         #endregion
 
-        #region 入力履歴等：データ種別
+        #region 汎用データ：コードデータ種別
         /// <summary>
-        /// 入力履歴等：データ種別
+        /// 汎用データ：コードデータ種別
         /// </summary>
-        public enum SearchLogDataType
+        public enum CodeDataType
         {
             /// <summary>
             /// 固定コード
@@ -1181,8 +1334,9 @@
         /// <summary>
         /// 修正モード名称
         /// </summary>
-        public static string EditModeStringNew = "新規";
-        public static string EditModeStringEdit = "修正";
+        public static string EditModeStringNew = "新　規";
+        public static string EditModeStringEdit = "修　正";
+        public static string EditModeStringRef = "参　照";
         #endregion
 
         #region 1ページ初期行数
@@ -1299,7 +1453,27 @@
         }
         #endregion
 
+        #region 工事リンク情報：リンク種別
+        /// <summary>
+        /// 工事リンク情報：リンク種別
+        /// </summary>
+        public enum LinkDataType
+        {
+            /// <summary>
+            /// 0:増減工事
+            /// </summary>
+            FluctuationType = 0,
+            /// <summary>
+            /// 1:結合工事
+            /// </summary>
+            JoinType,
+        }
+        #endregion
+
         #region 工事基本情報：紐付データフラグ
+        /// <summary>
+        /// 工事基本情報：紐付データフラグ
+        /// </summary>
         public enum BaseInfoTyingFlg
         {
             /// <summary>
@@ -1307,30 +1481,34 @@
             /// </summary>
             Standard = 0,
             /// <summary>
-            /// 1:親データ
+            /// 1:増減親データ
             /// </summary>
-            Pearent,
+            Parent,
             /// <summary>
-            /// 2:紐付きデータ
+            /// 2:増減子データ
             /// </summary>
             Tying,
         }
         #endregion
 
-        #region 工事詳細台帳：担当中フラグ
+        #region 工事基本情報：結合工事フラグ
         /// <summary>
-        /// 担当中フラグ
+        /// 工事基本情報：結合工事フラグ
         /// </summary>
-        public enum SalaryOperateKind
+        public enum BaseInfoJoinFlg
         {
             /// <summary>
-            /// 担当終了
+            /// 0:結合無通常データ
             /// </summary>
-            Complate = 0,
+            Standard = 0,
             /// <summary>
-            /// 担当中
+            /// 1:結合親データ
             /// </summary>
-            Oparateing,
+            JoinParent,
+            /// <summary>
+            /// 2:結合子データ
+            /// </summary>
+            JoinChildren,
         }
         #endregion
 
@@ -1351,8 +1529,25 @@
         }
         #endregion
 
-        #region 工事詳細台帳：増減工事フラグ
+        #region 工事詳細台帳明細：担当中フラグ
         /// <summary>
+        /// 担当中フラグ
+        /// </summary>
+        public enum SalaryOperateKind
+        {
+            /// <summary>
+            /// 担当終了
+            /// </summary>
+            Complate = 0,
+            /// <summary>
+            /// 担当中
+            /// </summary>
+            Oparateing,
+        }
+        #endregion
+
+        #region 工事詳細台帳明細：増減工事フラグ
+        /// <summary>
         /// 工事詳細台帳：増減工事フラグ
         /// </summary>
         public enum FluctuatesFlg
@@ -1360,7 +1555,7 @@
             /// <summary>
             /// 0:通常データ
             /// </summary>
-            Normal =0,
+            Normal = 0,
             /// <summary>
             /// 1:増減データ
             /// </summary>
@@ -1368,6 +1563,27 @@
         }
         #endregion
 
+        #region 工事詳細台帳明細：注文書発行フラグ
+        /// <summary>
+        /// 工事詳細台帳明細：注文書データ作成フラグ
+        /// </summary>
+        public enum PurchaseOrderFlg
+        {
+            /// <summary>
+            /// 未作成
+            /// </summary>
+            NoCreate = 0,
+            /// <summary>
+            /// 作成済
+            /// </summary>
+            Making = 1,
+            /// <summary>
+            /// 作成しない
+            /// </summary>
+            NotMakingData = 9,
+        }
+        #endregion
+
         #region 担当者マスタ：工事詳細台帳計算対象フラグ
         /// <summary>
         /// 担当者マスタ：工事詳細台帳計算対象フラグ
@@ -1384,5 +1600,83 @@
             CalcTarget,
         }
         #endregion
+
+        #region 担当者対象部署マスタ：所属フラグ
+        /// <summary>
+        /// 担当者対象部署マスタ：所属フラグ
+        /// </summary>
+        public enum AffiliationFlg
+        {
+            /// <summary>
+            /// 他部署
+            /// </summary>
+            Ohter = 0,
+            /// <summary>
+            /// 所属部署
+            /// </summary>
+            Affiliation,
+        }
+        #endregion
+
+        #region 起動対象マスタ：データ編集フラグ
+        /// <summary>
+        /// 起動対象マスタ：データ編集フラグ
+        /// </summary>
+        public enum ProcessDataEdit
+        {
+            /// <summary>
+            /// 参照
+            /// </summary>
+            Reference = 0,
+            /// <summary>
+            /// 対象
+            /// </summary>
+            Edit,
+        }
+        #endregion
+
+        #region 保護区分マスタ：総務業務フラグ
+        /// <summary>
+        /// 保護区分マスタ：総務業務フラグ
+        /// </summary>
+        public enum GeneralAffairs
+        {
+            /// <summary>
+            /// 総務以外
+            /// </summary>
+            OtherDep = 0,
+            /// <summary>
+            /// 総務業務対象
+            /// </summary>
+            GeneralDep,
+        }
+        #endregion
+
+        #region 保護区分マスタ：総務業務名称
+        /// <summary>
+        /// 保護区分マスタ：総務業務名称
+        /// </summary>
+        public static List<KeyValuePair<int, string>> GeneralAffairsList = new List<KeyValuePair<int, string>>{
+                                                                                new KeyValuePair<int,string>(0,"総務業務不可"),
+                                                                                new KeyValuePair<int,string>(1,"総務業務可能")};
+        #endregion
+
+        #region 業者手間区分
+        /// <summary>
+        /// 業者手間区分                          // Add BIT 2017/02/23
+        /// </summary>
+        public enum LabourKinds
+        {
+            /// <summary>
+            /// 通常業者
+            /// </summary>
+             Normal = 0,
+            /// <summary>
+            /// 手間業者
+            /// </summary>
+            Labor,
+        }
+        #endregion
+
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonMotions.cs	(revision 51)
@@ -50,21 +50,31 @@
         private static SystemMaster m_systemMaster = new SystemMaster();
 
         /// <summary>
-        /// ログインユーザーデータ
+        /// ログインユーザー担当者データ
         /// </summary>
         private static PersonInChargeMaster m_LoginUserData = new PersonInChargeMaster();
 
         /// <summary>
-        /// システム起動チェック処理クラス
+        /// ログインユーザー参照部署データ
         /// </summary>
-        private static ClsSystemOnceExecute m_CheckProc = null;
-        
+        private static List<PersonDepartmentMaster> m_LoginUserDepartment = new List<PersonDepartmentMaster>();
+
         /// <summary>
-        /// 建築工事費の構成
+        /// ログインユーザーセキュリティ区分
         /// </summary>
-        //private static Dictionary<int, string> m_StructureTypeName = new Dictionary<int, string>();
+        private static SecurityMaster m_LoginUserSecurity = new SecurityMaster();
 
         /// <summary>
+        /// ログインユーザー処理起動区分
+        /// </summary>
+        private static List<ProcessExcute> m_LoginUserProcExe = new List<ProcessExcute>();
+
+        /// <summary>
+        /// システム初回起動チェック処理クラス
+        /// </summary>
+        private static ClsSystemOnceExecute m_CheckProc = null;
+        
+        /// <summary>
         /// 製品ファイルバージョン格納エリア
         /// </summary>
         private static FileVersionInfo m_ProductVersionInfo = FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly().Location);
@@ -103,7 +113,7 @@
         }
 
         /// <summary>
-        /// ログインユーザーデータ
+        /// ログインユーザー担当者データ
         /// </summary>
         public static PersonInChargeMaster LoginUserData
         {
@@ -112,15 +122,33 @@
         }
 
         /// <summary>
-        /// 構成マスタ（大項目マスタ）
+        /// ログインユーザー参照部署データ
         /// </summary>
-        //public static Dictionary<int, string> StructureTypeName
-        //{
-        //    get { return m_StructureTypeName; }
-        //    set { m_StructureTypeName = value; }
-        //}
+        public static List<PersonDepartmentMaster> LoginUserDepartment
+        {
+            get { return m_LoginUserDepartment; }
+            set { m_LoginUserDepartment = value; }
+        }
 
         /// <summary>
+        /// ログインユーザーセキュリティ区分
+        /// </summary>
+        public static SecurityMaster LoginUserSecurity
+        {
+            get { return m_LoginUserSecurity; }
+            set { m_LoginUserSecurity = value; }
+        }
+
+        /// <summary>
+        /// ログインユーザー処理起動区分
+        /// </summary>
+        public static List<ProcessExcute> LoginUserProcExe
+        {
+            get { return m_LoginUserProcExe; }
+            set { m_LoginUserProcExe = value; }
+        }
+
+        /// <summary>
         /// 製品ファイルバージョン格納エリア
         /// </summary>
         public static FileVersionInfo ProductVersionInfo
@@ -135,10 +163,10 @@
         {
             get { return m_CheckProc; }
         }
+
         #endregion
 
         #region 初期化
-
         /// <summary>
         /// 初期化
         /// </summary>
@@ -379,6 +407,42 @@
         }
         #endregion
 
+        #region 今の年号を取得する
+        /// <summary>
+        /// 今の年号を取得する
+        /// </summary>
+        /// <returns></returns>
+        public static string GetNameOfAnEra(DateTime TargetDate)
+        {
+            try
+            {
+                string strRet = string.Empty;
+
+                CultureInfo culture = new CultureInfo("ja-JP", true);
+                culture.DateTimeFormat.Calendar = new JapaneseCalendar();
+
+                string result = TargetDate.ToString("ggyy年M月d日", culture);
+
+                int strLength = 0;
+                foreach (char c in result)
+                {
+                    if (char.IsNumber(c)) break;
+
+                    strLength++;
+                }
+
+                strRet = result.Substring(0, strLength);
+
+                return strRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
         #region Int値より文字列に変化して指定位置に指定文字を入れる。(工事番号編集)
         /// <summary>
         /// Int値より文字列に変化して指定位置に指定文字を入れる。
@@ -778,10 +842,19 @@
                 int CnvCode = Convert.ToInt32("0041", 16);      // 'A'
                 int LastCode = Convert.ToInt32("005A", 16);     // 'Z'
 
-                // 変換値を加算する
-                CnvCode += num;
+                // 'Z'を超えたら余剰を使って変換する
+                int work = (CnvCode + num);
+                if (work <= LastCode)
+                {
+                    // 変換値を加算する
+                    CnvCode += num;
+                }
+                else
+                {
+                    CnvCode += (work % LastCode);
+                }
                 // 'Z'を超えたら採番しない
-                if (CnvCode > LastCode) return string.Empty;
+                //if (CnvCode > LastCode) return string.Empty;
 
                 // 数値(文字コード) -> 文字
                 char c = Convert.ToChar(CnvCode);
@@ -945,8 +1018,59 @@
             }
         }
         #endregion
+
+        #region 補色を取得する
+        /// <summary>
+        /// 補色を取得する
+        /// </summary>
+        /// <param name="color"></param>
+        /// <returns></returns>
+        public static Color GetComplementaryColor(Color color)
+        {
+            try
+            {
+                byte r = (byte)~color.R;
+                byte g = (byte)~color.G;
+                byte b = (byte)~color.B;
+
+                return Color.FromArgb(r, g, b);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", GetMethodName(), ex.Message);
+                return color;
+            }
+        }
         #endregion
 
+        #region 指定桁数の数値最大値を返す
+        /// <summary>
+        /// 指定桁数の数値最大値を返す
+        /// </summary>
+        /// <param name="NumLen"></param>
+        /// <returns></returns>
+        public static int CreateMaxNumeric(int NumLen)
+        {
+            try 
+            {
+                string strNum = string.Empty;
+                for (int i = 0; i < NumLen; i++)
+                {
+                    strNum += "9";
+                }
+
+                return cnvInt(strNum);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #endregion
+
         #region データチェックメソッド
         #region ディレクトリの存在チェック
         /// <summary>
@@ -1236,9 +1360,9 @@
         }
         #endregion
 
-        #region セルが空かどうかをチェックする
+        #region 対象が空かどうかをチェックする
         /// <summary>
-        /// セルが空かどうかをチェックする
+        /// 対象が空かどうかをチェックする
         /// </summary>
         /// <param name="objCell"></param>
         /// <param name="iColumn"></param>
@@ -1943,9 +2067,9 @@
         }
         #endregion
 
-        #region 経過時間を工数で返す
+        #region 経過日数を工数で返す
         /// <summary>
-        /// 経過時間を工数で返す
+        /// 経過日数を工数で返す
         /// </summary>
         /// <param name="StartDate"></param>
         /// <param name="CompDate"></param>
@@ -1954,11 +2078,15 @@
         {
             // 差分計算
             TimeSpan DiffDate = CompDate - StartDate;
+            
             // 当日までなので+1日する
             TimeSpan wrkts = new TimeSpan(1, 0, 0, 0);
             DiffDate = DiffDate + wrkts;
+
             // 工数の最小単位で割って１０分の１にする
-            return (((double)DiffDate.Days) / CommonDefine.s_ManHourUnitDays) / 10;
+            //return (((double)DiffDate.Days) / CommonDefine.s_ManHourUnitDays) / 10;
+            // 日数から月数へ変換する
+            return ClsCalendar.cnvMonthFromDays(DiffDate.Days);
         }
         #endregion
 
@@ -2152,8 +2280,255 @@
         }
         #endregion
 
+        #region 予算書・台帳給与金額計算処理
+        /// <summary>
+        /// 予算書・台帳給与金額計算処理
+        /// </summary>
+        public static void CalcPayValueData(double MonthryCost, double OrdersPrice, int workingCount,
+                                            ref double ExecutionAmount, ref double AmountConfigRate,
+                                            bool bSalaryCorrection = true)
+        {
+            try
+            {
+                // 受注金額が0の場合は1として計算する
+                if (OrdersPrice == 0) OrdersPrice = 1;
+
+                // 日当計算
+                double DairySalary =0;
+                if (bSalaryCorrection)
+                    DairySalary = (MonthryCost * CommonDefine.s_SalaryCorrection) / CommonDefine.s_ManHourUnitMonth;
+                else
+                    DairySalary = MonthryCost / CommonDefine.s_ManHourUnitMonth;
+
+                // 給与支払総額
+                int iInput = CommonMotions.cnvRound(DairySalary * workingCount);
+                
+                // 実行金額に給与支払総額をセットする
+                ExecutionAmount = iInput;
+                
+                // 金額構成率計算
+                AmountConfigRate = (iInput / OrdersPrice) * 100.0;
+                
+                // 構成率が範囲外の場合は0にする
+                if (AmountConfigRate < -999.00 || 999.00 < AmountConfigRate) AmountConfigRate = 0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
         #endregion
 
+        #region 給与取得ＳＱＬ作成処理
+        /// <summary>
+        /// 給与取得ＳＱＬ作成処理
+        /// </summary>
+        private static string GetSalaryValue(int PersonCode, DateTime GetData)
+        {
+            try
+            {
+                // SQL作成
+                string strSQL = "SELECT A.MONTHLYSALARY, A.YEARSALARY, A.PERSONCODE, A.STARTDATE FROM PERSONSALARYMASTER A,";
+                strSQL += " (SELECT PERSONCODE, MAX(STARTDATE) sDate FROM PERSONSALARYMASTER";
+                strSQL += string.Format(" WHERE PERSONCODE = {0}", PersonCode);
+                strSQL += string.Format(" AND DATE(NOW()) <= STR_TO_DATE('{0}', '%Y/%m/%d)", GetData.ToShortDateString());
+                strSQL += " GROUP BY PERSONCODE) B";
+                strSQL += " WHERE A.PERSONCODE = B.PERSONCODE AND A.STARTDATE = B.sDate";
+
+                return strSQL;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region 担当者給与金額取得処理(単独処理)
+        /// <summary>
+        /// 担当者給与金額取得処理（単独処理）
+        /// </summary>
+        public static bool GetSalaryValue(int PersonCode, ref double MonthryCost, ref double YearsCost, DateTime GetData)
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // 初期値セット
+                MonthryCost = 0;
+                YearsCost = 0;
+
+                // データ取得
+                string strSQL = GetSalaryValue(PersonCode, GetData);
+                ArrayList arList = new ArrayList();
+                if (!PersonDB.ExecuteReader(strSQL, ref arList)) return false;
+                object[] objGetData = (object[])arList[0];
+
+                // 取得値セット
+                MonthryCost = CommonMotions.cnvDouble(objGetData[0]);
+                YearsCost = CommonMotions.cnvDouble(objGetData[1]);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
+        #region 担当者給与金額取得処理（セッションコネクト別）
+        /// <summary>
+        /// 担当者給与金額取得処理（セッションコネクト別）
+        /// </summary>
+        public static bool GetSalaryValue(IOMPersonInCharge PersonDB, int PersonCode,
+                                            ref double MonthryCost, ref double YearsCost, DateTime GetData)
+        {
+            try
+            {
+                // 初期値セット
+                MonthryCost = 0;
+                YearsCost = 0;
+
+                // データ取得
+                string strSQL = GetSalaryValue(PersonCode, GetData);
+                ArrayList arList = new ArrayList();
+                if (!PersonDB.ExecuteReader(strSQL, ref arList, false)) return false;
+                object[] objGetData = (object[])arList[0];
+
+                // 取得値セット
+                MonthryCost = CommonMotions.cnvDouble(objGetData[0]);
+                YearsCost = CommonMotions.cnvDouble(objGetData[1]);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 与えられたキー値より機密管理区分データを取得する
+        /// <summary>
+        /// 与えられたキー値より機密管理区分データを取得する
+        /// </summary>
+        /// <param name="KeyValue"></param>
+        /// <returns></returns>
+        public static KeyValuePair<int, string> SearchSecurityRankList(int KeyValue)
+        {
+            KeyValuePair<int, string> RetPairvalue = new KeyValuePair<int, string>(0, string.Empty);
+            try
+            {
+                for (int i = 0; i < CommonDefine.SecurityRankList.Count; i++)
+                {
+                    if (CommonDefine.SecurityRankList[i].Key == KeyValue)
+                    {
+                        RetPairvalue = CommonDefine.SecurityRankList[i];
+                    }
+                }
+
+                return RetPairvalue;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return RetPairvalue;
+            }
+        }
+        #endregion
+
+        #region 与えられたキー値より機密区分範囲データを取得する
+        /// <summary>
+        /// 与えられたキー値より機密区分範囲データを取得する
+        /// </summary>
+        /// <param name="KeyValue"></param>
+        /// <returns></returns>
+        public static KeyValuePair<int, string> SearchSecurityRangeList(int KeyValue)
+        {
+            KeyValuePair<int, string> RetPairvalue = new KeyValuePair<int, string>(0, string.Empty);
+            try
+            {
+                for (int i = 0; i < CommonDefine.SecurityRangeList.Count; i++)
+                {
+                    if (CommonDefine.SecurityRangeList[i].Key == KeyValue)
+                    {
+                        RetPairvalue = CommonDefine.SecurityRangeList[i];
+                    }
+                }
+
+                return RetPairvalue;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return RetPairvalue;
+            }
+        }
+        #endregion
+
+        #region 登録完了メッセージ表示
+        /// <summary>
+        /// 登録完了メッセージ表示
+        /// </summary>
+        /// <param name="strTitle"></param>
+        public static void EntryEndMessage(string strTitle)
+        {
+            try
+            {
+                string strMes = string.Format("{0} 登録完了しました。", strTitle);
+
+                MessageBox.Show(strMes, "登録完了メッセージ", MessageBoxButtons.OK, MessageBoxIcon.Information);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        public static void EntryEndMessage(string strTitle, string strTitle2)
+        {
+            try
+            {
+                string strMes = string.Format("{0} {1}完了しました。", strTitle, strTitle2);
+                string strGuidance = string.Format("{0}完了メッセージ", strTitle2);
+
+                MessageBox.Show(strMes, strGuidance, MessageBoxButtons.OK, MessageBoxIcon.Information);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 削除完了メッセージ表示
+        /// <summary>
+        /// 削除完了メッセージ表示
+        /// </summary>
+        /// <param name="strTitle"></param>
+        public static void RemoveEndMessage(string strTitle)
+        {
+            try
+            {
+                string strMes = string.Format("{0} 削除完了しました。", strTitle);
+
+                MessageBox.Show(strMes, "削除完了メッセージ", MessageBoxButtons.OK, MessageBoxIcon.Information);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion
+
         #region Excel向け操作メソッド
         #region オブジェクト開放
         /// <summary>
Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 51)
@@ -0,0 +1,24 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.Common
+{
+    /// <summary>
+    /// システムバージョン定義クラス
+    /// </summary>
+    public static class CommonVersion
+    {
+        /// <summary>
+        /// 本体バージョン
+        /// </summary>
+        public static int s_SystemVersion = 3;
+
+        /// <summary>
+        /// コピー・環境バージョン
+        /// </summary>
+        public static int s_UpDateCopyVersion = 1;
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedExcel.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedExcel.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedExcel.cs	(revision 51)
@@ -32,7 +32,7 @@
         /// <summary>
         /// EXCEL拡張子
         /// </summary>
-        private readonly string[] s_ExcelExtension = { ".xls", ".xlsx", ".xlsx", ".xlsx" };
+        private readonly string[] s_ExcelExtension = { ".xls", ".xlsx", ".xlsx", ".xlsx", ".xlsx" };
 
         /// <summary>
         /// エクセルバージョン
@@ -39,10 +39,11 @@
         /// </summary>
         private enum ExcelVersion
         {
-            Excel97_2003,
+            Excel97_2003 = 0,
             Excel2007,
             Excel2010,
             Excel2013,
+            Excel2016,
         }
         #endregion
 
@@ -138,6 +139,11 @@
                     // Office2013インストール済みの場合
                     m_ExcelVersion = (int)ExcelVersion.Excel2013;
                 }
+                else if ("16.0".Equals(version))
+                {
+                    // Office2016インストール済みの場合
+                    m_ExcelVersion = (int)ExcelVersion.Excel2016;
+                }
             }
             catch (Exception ex)
             {
@@ -321,7 +327,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("配列セットシステムエラー：{0}:{1}:{2}", ex.Message, FromColum, ToColum);
+                logger.ErrorFormat("配列セットシステムエラー：{0}：{1}：{2}", ex.Message, FromColum, ToColum);
             }
             finally
             {
@@ -359,7 +365,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：{0}:{1}:{2}:{3}", ex.Message, FromColum, ToColum, strData);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}：{3}", ex.Message, FromColum, ToColum, strData);
             }
             finally
             {
@@ -475,7 +481,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：{0}:{1}:{2}", ex.Message, ToColum);
+                logger.ErrorFormat("システムエラー：{0}：{1}", ex.Message, ToColum);
             }
             finally
             {
@@ -511,7 +517,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：{0}:{1}:{2}", ex.Message, ToColum);
+                logger.ErrorFormat("システムエラー：{0}：{1}", ex.Message, ToColum);
             }
             finally
             {
Index: branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedWord.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedWord.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Office/UsedWord.cs	(revision 51)
@@ -35,7 +35,7 @@
         /// <summary>
         /// WORD拡張子
         /// </summary>
-        private readonly string[] s_WordExtension = { ".doc", ".docx", ".docx", ".docx" };
+        private readonly string[] s_WordExtension = { ".doc", ".docx", ".docx", ".docx", ".docx" };
 
         /// <summary>
         /// ワードバージョン
@@ -42,10 +42,11 @@
         /// </summary>
         private enum WordVersion
         {
-            Word97_2003,
+            Word97_2003 = 0,
             Word2007,
             Word2010,
             Word2013,
+            Word2016,
         }
 
         /// <summary>
@@ -175,7 +176,11 @@
                     // Office2013インストール済みの場合
                     m_WordVersion = (int)WordVersion.Word2013;
                 }
-                if (m_WordVersion == 0) return;
+                else if ("16.0".Equals(version))
+                {
+                    // Office2016インストール済みの場合
+                    m_WordVersion = (int)WordVersion.Word2016;
+                }
             }
             catch (Exception ex)
             {
@@ -570,8 +575,7 @@
                 if (!m_SaveSwitch) return;
 
                 // パス作成
-                //string strFilename = @strFilePath + s_WordExtension[m_WordVersion];
-                string strFilename = @strFilePath + s_WordExtension[0];
+                string strFilename = @strFilePath + s_WordExtension[m_WordVersion];
 
                 object[] Parameters = new object[16];
                 Parameters[0] = strFilename;                    // FileName
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsApprovalPermission.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsApprovalPermission.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsApprovalPermission.cs	(revision 51)
@@ -39,7 +39,7 @@
             IOProcessApproval ApprDB = new IOProcessApproval();
             try
             {
-                string strSQL = ApprDB.CreatePrimarykeyString(Rec.ConstructionCode, Rec.ApprovalCode, Rec.SeqNo);
+                string strSQL = ApprDB.CreatePrimarykeyString(Rec.ConstructionCode, Rec.ApprovalCode, Rec.OrderNo, Rec.SeqNo);
                 List<ProcessApproval> DataList = new List<ProcessApproval>();
                 // データがあるかをチェックする
                 if (!ApprDB.SelectAction(strSQL, ref DataList)) return false;
@@ -76,20 +76,27 @@
         /// <param name="ApprovalCode"></param>
         /// <param name="Status"></param>
         /// <returns></returns>
-        public static bool SetPrimaryRecStatus(int ConstructionCode, int ApprovalCode, int Status)
+        public static bool SetPrimaryRecStatus(int ConstructionCode, int ApprovalCode, int OrderNO, int Status)
         {
             IOProcessApproval ApprDB = new IOProcessApproval();
             try
             {
                 // 申請レコードを取得する
-                string strSQL = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, 1);
-                ProcessApproval DataRec = new ProcessApproval();
-                // データがあるかをチェックする
-                if (!ApprDB.SelectAction(strSQL, ref DataRec)) return false;
+                //string strSQL = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, OrderNO, 1);
+                //ProcessApproval DataRec = new ProcessApproval();
+                //// データがあるかをチェックする
+                //if (!ApprDB.SelectAction(strSQL, ref DataRec)) return false;
 
                 // レコードのステータスを変える
-                DataRec.ApprovalStatus = Status;
-                if (!ApprDB.UpdateAction(strSQL, DataRec)) return false;
+                //DataRec.ApprovalStatus = Status;
+                //if (!ApprDB.UpdateAction(strSQL, DataRec)) return false;
+                if (!ApprDB.UpdateFeild(ConstructionCode,
+                                        (int)IOProcessApproval.ColumnName.ApprovalStatus,
+                                        Status,
+                                        true,
+                                        ApprovalCode,
+                                        OrderNO,
+                                        1)) return false;
 
                 return true;
             }
@@ -112,7 +119,7 @@
         /// <param name="ConstructionCode"></param>
         /// <param name="ApprovalCode"></param>
         /// <returns></returns>
-        public static bool CheckPetition(int ConstructionCode, int ApprovalCode)
+        public static bool CheckPetition(int ConstructionCode, int ApprovalCode, int ApprovalCount)
         {
             IOProcessApproval ApprDB = new IOProcessApproval();
             try
@@ -119,7 +126,7 @@
             {
                 bool bPetition = false;
                 // 申請データ取得
-                string strSQL = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, 1);
+                string strSQL = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, ApprovalCount, 1);
                 List<ProcessApproval> PetitionList = new List<ProcessApproval>();
                 if (!ApprDB.SelectAction(strSQL, ref PetitionList)) return bPetition;
                 // 申請データが無い場合
@@ -146,7 +153,7 @@
         /// <param name="ConstructionCode"></param>
         /// <param name="ApprovalCode"></param>
         /// <returns></returns>
-        public static bool CheckApproval(int ConstructionCode, int ApprovalCode)
+        public static bool CheckApproval(int ConstructionCode, int ApprovalCode, int Approvalcount)
         {
             IOMApproval mApprDB = new IOMApproval();
             IOProcessApproval ApprDB = new IOProcessApproval();
@@ -153,7 +160,7 @@
             try
             {
                 // 承認データを取得する（申請データを除く）
-                string strData = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, 1);
+                string strData = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, Approvalcount, 1);
                 ProcessApproval DataRec = new ProcessApproval();
                 if (!ApprDB.SelectAction(strData, ref DataRec)) return false;
 
@@ -181,7 +188,7 @@
         /// <param name="ConstructionCode"></param>
         /// <param name="ApprovalCode"></param>
         /// <returns></returns>
-        public static bool CheckApprovalData(int ConstructionCode, int ApprovalCode)
+        public static bool CheckApprovalData(int ConstructionCode, int ApprovalCode, int OrderNo)
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             IOMApproval mApprDB = new IOMApproval();
@@ -193,10 +200,10 @@
                 string strSQL = cbiDB.CreatePrimarykeyString(ConstructionCode);
                 ConstructionBaseInfo cbiData = new ConstructionBaseInfo();
                 if (!cbiDB.SelectAction(strSQL, ref cbiData)) return false;
-                int DepartmentCode = GetFromConstructionAndApprovalTheDepartment(ConstructionCode, ApprovalCode);
+                int DepartmentCode = GetFromConstructionAndApprovalTheDepartment(ConstructionCode, ApprovalCode, OrderNo);
 
                 // 承認データを取得する（申請データを除く）
-                string strData = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode);
+                string strData = ApprDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, OrderNo);
                 strData += string.Format(" And SeqNo != 1 And ApprovalStatus = {0}", (int)CommonDefine.ApprovalStatus.Approval);
                 List<ProcessApproval> DataList = new List<ProcessApproval>();
                 if (!ApprDB.SelectAction(strData, ref DataList)) return false;
@@ -365,7 +372,7 @@
         /// </summary>
         /// <param name="PersonCode"></param>
         /// <returns></returns>
-        public static int GetFromConstructionAndApprovalTheDepartment(int ConstructionCode, int ApprovalCode)
+        public static int GetFromConstructionAndApprovalTheDepartment(int ConstructionCode, int ApprovalCode, int OrderNo)
         {
             IOMPersonInCharge picDB = new IOMPersonInCharge();
             IOProcessApproval ApprovalDB = new IOProcessApproval();
@@ -372,8 +379,7 @@
             try
             {
                 // 管理担当者コードを取得する
-                string strSQL = ApprovalDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode);
-                strSQL += " AND SEQNO = 1";
+                string strSQL = ApprovalDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, OrderNo, 1);
                 ProcessApproval ApprovalRec = new ProcessApproval();
                 int CurrentPersonCode = 0;
                 if (ApprovalDB.SelectAction(strSQL, ref ApprovalRec))
@@ -480,13 +486,13 @@
         /// 該当工事より承認数取得する
         /// </summary>
         /// <returns></returns>
-        public static int GetApprovalDataCount(int ConstructionCode, int ApprovalCode)
+        public static int GetApprovalDataCount(int ConstructionCode, int ApprovalCode, int ApprovalCount)
         {
             IOProcessApproval paDB = new IOProcessApproval();
             try
             {
                 // 承認データ取得
-                string strSQL = paDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode);
+                string strSQL = paDB.CreatePrimarykeyString(ConstructionCode, ApprovalCode, ApprovalCount);
                 strSQL += " And SeqNo != 1 And ApprovalStatus = 2";
                 List<ProcessApproval> ApprovalList = new List<ProcessApproval>();
                 if (!paDB.SelectAction(strSQL, ref ApprovalList)) return 0;
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCalendar.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCalendar.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsCalendar.cs	(revision 51)
@@ -77,8 +77,8 @@
                 int Holidays = 0;
 
                 string strSQL = "SELECT COUNT(*) FROM HOLIDAYCALENDERMASTER";
-                strSQL += string.Format(" WHERE DATE_FORMAT('{0}','%Y/%m/%d') <= HOLIDAY", Startdate.ToShortDateString());
-                strSQL += string.Format(" AND HOLIDAY <= DATE_FORMAT('{0}','%Y/%m/%d')", Complatedate.ToShortDateString());
+                strSQL += string.Format(" WHERE TO_DATE('{0}','YYYY/MM/DD') <= HOLIDAY", Startdate.ToShortDateString());
+                strSQL += string.Format(" AND HOLIDAY <= TO_DATE('{0}','YYYY/MM/DD')", Complatedate.ToShortDateString());
 
                 ArrayList datalist = new ArrayList();
                 if (!calDB.ExecuteReader(strSQL, ref datalist)) return 0;
@@ -128,31 +128,24 @@
         }
         #endregion
 
-        //#region 指定期間内の経過日数を1人月を上限に返す
-        ///// <summary>
-        ///// 指定期間内の経過日数を1人月を上限に返す
-        ///// </summary>
-        ///// <param name="startdate">開始日</param>
-        ///// <param name="Complatedate">終了日</param>
-        ///// <returns></returns>
-        //public static int CalcPassedDaysCountToUnit(DateTime Startdate, DateTime Complatedate)
-        //{
-        //    try
-        //    {
-        //        int passDay = CalcPassedDaysCount(Startdate, Complatedate);
-
-        //        int OneMonth = (int)(CommonDefine.s_ManHourUnitDays * 10.0);
-
-        //        //if (passDay > OneMonth) passDay = OneMonth;
-
-        //        return passDay;
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-        //        return 0;
-        //    }
-        //}
-        //#endregion
+        #region 日数を月数に変換して返す
+        /// <summary>
+        /// 日数を月数に変換して返す
+        /// </summary>
+        /// <param name="DateCount"></param>
+        /// <returns></returns>
+        public static double cnvMonthFromDays(int DateCount)
+        {
+            try
+            {
+                return (DateCount / CommonDefine.s_ManHourUnitMonth);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeBaseInfoData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeBaseInfoData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeBaseInfoData.cs	(revision 51)
@@ -60,7 +60,7 @@
             try
             {
                 // 工事詳細台帳入力完了日をセットする
-                if (!BaseDB.UpdateFeild(ConstrCode, (int)IOConstructionBaseInfo.TableColumn.LEDGERCOMPLATEDATE, SetDate)) return false;
+                if (!BaseDB.UpdateFeild(ConstrCode, (int)IOConstructionBaseInfo.TableColumn.LedgerComplateDate, SetDate)) return false;
 
                 return true;
             }
@@ -75,5 +75,424 @@
             }
         }
         #endregion
+
+        #region 関連データすべて削除
+        /// <summary>
+        /// 関連データすべて削除
+        /// </summary>
+        /// <returns></returns>
+        public static bool RemoveAllelationData(int RemoveCode)
+        {
+            IOConstructionBaseInfo DB01 = new IOConstructionBaseInfo();		        // 工事基本情報
+            IOConstructionBaseInfoDetail DB02 = new IOConstructionBaseInfoDetail(); // 工事基本情報明細
+            IOConstructionLink DB03 = new IOConstructionLink();                     // 工事増減情報
+            IOProcessApproval DB04 = new IOProcessApproval();                       // 承認データ
+            IOConstructionProgressDate DB05 = new IOConstructionProgressDate();     // 案件進捗日付データ
+            IOEstimateData DB06 = new IOEstimateData();                             // 積算見積書データ
+            IOEstimateDataBody DB07 = new IOEstimateDataBody();                     // 積算見積書ページデータ
+            IOEstimateDataDetail DB08 = new IOEstimateDataDetail();                 // 積算見積書明細データ
+            IOEstimateBudget DB09 = new IOEstimateBudget();                         // 積算予算書データ
+            IOEstimateBudgetDetail DB10 = new IOEstimateBudgetDetail();             // 積算予算書明細データ
+            IOConstructionBudget DB11 = new IOConstructionBudget();                 // 工事予算書データ
+            IOOrdersPriceData DB12 = new IOOrdersPriceData();		                // 受注金額データ
+            IOConstructionBudgetDetail DB13 = new IOConstructionBudgetDetail();     // 工事予算書明細データ
+            IOConstructionLedger DB14 = new IOConstructionLedger();                 // 工事詳細台帳データ
+            IOConstructionLedgerDetail DB15 = new IOConstructionLedgerDetail();     // 工事詳細台帳明細データ
+            IOConstructionLedgerExcute DB16 = new IOConstructionLedgerExcute();     // 工事詳細台帳実行データ
+            IOPurchaseOrder DB17 = new IOPurchaseOrder();			                // 注文書データ
+            IOPurchaseOrderDetail DB18 = new IOPurchaseOrderDetail();               // 注文書明細データ
+
+            IOProceedingsData DB19 = new IOProceedingsData();                       // 発注者打ち合わせ議事録データ
+            IOProceedingsDataAttendee DB20 = new IOProceedingsDataAttendee();       // 発注者打ち合わせ議事録データ（出席者）
+            IOProceedingsDataDetail DB21 = new IOProceedingsDataDetail();           // 発注者打ち合わせ議事録データ（明細）
+            IODailyDataConstruction DB22 = new IODailyDataConstruction();           // 日報データ
+            IODailyDataDetail DB23 = new IODailyDataDetail();                       // 日報データ (明細)
+            IODailyDataVehicles DB24 = new IODailyDataVehicles();                   // 日報データ (車両)
+            IODailyDataMaterials DB25 = new IODailyDataMaterials();                 // 日報データ (資材)
+            IODailyDataSubcontractors DB26 = new IODailyDataSubcontractors();       // 日報データ (協力業者指示)
+            IODailyDataField DB27 = new IODailyDataField();                         // 日報データ (現場巡回)
+            try
+            {
+                // 工事情報存在確認
+                string strExists = DB01.CreatePrimarykeyString(RemoveCode);
+                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
+                if (!DB01.SelectAction(strExists, ref BaseRec)) return false;
+
+                List<int> RemoveList = new List<int>();
+                List<int> UpdateLinkList = new List<int>();
+                int ParentCode = 0;
+                int LinkCount = 0;
+                RemoveList.Add(RemoveCode);
+                // 増減工事親確認
+                if (BaseRec.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Parent)
+                {
+                    GetLinkageCode(RemoveCode, DB03, ref RemoveList, false);
+                }
+                else if (BaseRec.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                {
+                    LinkCount = GetLinkageCode2(RemoveCode, DB03, ref ParentCode);
+                }
+                // 結合工事親確認
+                if (BaseRec.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinParent)
+                {
+                    GetLinkageCode(RemoveCode, DB03, ref UpdateLinkList, true);
+                }
+
+                DB01.connect(); DB02.connect(); DB03.connect(); DB04.connect(); DB05.connect(); DB06.connect();
+                DB07.connect(); DB08.connect(); DB09.connect(); DB10.connect(); DB11.connect(); DB12.connect();
+                DB13.connect(); DB14.connect(); DB15.connect(); DB16.connect(); DB17.connect(); DB18.connect();
+                DB19.connect(); DB20.connect(); DB21.connect(); DB22.connect(); DB23.connect(); DB24.connect();
+                DB25.connect(); DB26.connect(); DB27.connect();
+
+                DB01.beginTran(); DB02.beginTran(); DB03.beginTran(); DB04.beginTran(); DB05.beginTran(); DB06.beginTran();
+                DB07.beginTran(); DB08.beginTran(); DB09.beginTran(); DB10.beginTran(); DB11.beginTran(); DB12.beginTran();
+                DB13.beginTran(); DB14.beginTran(); DB15.beginTran(); DB16.beginTran(); DB17.beginTran(); DB18.beginTran();
+                DB19.beginTran(); DB20.beginTran(); DB21.beginTran(); DB22.beginTran(); DB23.beginTran(); DB24.beginTran();
+                DB25.beginTran(); DB26.beginTran(); DB27.beginTran();
+
+                bool ProcSuccess = true;
+                string strRemove = string.Empty;
+                string strRemove2 = string.Empty;
+                for (int i = 0; i < RemoveList.Count; i++)
+                {
+                    strRemove = DB01.CreatePrimarykeyString(RemoveList[i]);
+                    if (!DB01.DeleteAction(strRemove, false)) { ProcSuccess = false; break; }
+                    if (!DB02.DeleteAction(strRemove, false)) { ProcSuccess = false; break; }
+
+                    DB04.DeleteAction(strRemove, false);
+                    DB05.DeleteAction(strRemove, false);
+                    DB06.DeleteAction(strRemove, false);
+                    DB07.DeleteAction(strRemove, false);
+                    DB08.DeleteAction(strRemove, false);
+                    DB09.DeleteAction(strRemove, false);
+                    DB10.DeleteAction(strRemove, false);
+                    DB11.DeleteAction(strRemove, false);
+                    DB12.DeleteAction(strRemove, false);
+                    DB13.DeleteAction(strRemove, false);
+                    DB14.DeleteAction(strRemove, false);
+                    DB15.DeleteAction(strRemove, false);
+                    DB16.DeleteAction(strRemove, false);
+                    DB17.DeleteAction(strRemove, false);
+                    DB18.DeleteAction(strRemove, false);
+                    DB19.DeleteAction(strRemove, false);
+                    DB20.DeleteAction(strRemove, false);
+                    DB21.DeleteAction(strRemove, false);
+                    DB22.DeleteAction(strRemove, false);
+                    DB23.DeleteAction(strRemove, false);
+                    DB24.DeleteAction(strRemove, false);
+                    DB25.DeleteAction(strRemove, false);
+                    DB26.DeleteAction(strRemove, false);
+                    DB27.DeleteAction(strRemove, false);
+
+                    if (BaseRec.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinParent
+                        || BaseRec.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Parent)
+                    {
+                        DB03.DeleteAction(strRemove, false);
+                    }
+                    else if (BaseRec.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                    {
+                        strRemove2 = string.Format(" Where FluctuationCode = {0}", RemoveList[i]);
+                        strRemove2 += string.Format(" AND LINKTYPE = {0}", (int)CommonDefine.LinkDataType.FluctuationType);
+                        DB03.DeleteAction(strRemove2, false);
+                    }
+                    else if (BaseRec.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinChildren)
+                    {
+                        // 削除処理の未実装
+                    }
+                }
+
+                // 結合工事リンク情報更新
+                if (ProcSuccess)
+                {
+                    // 増減工事子の場合（最後のリンク情報か、どうかの確認）
+                    if (BaseRec.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                    {
+                        if (LinkCount == 1)
+                        {   // 最後のリンクは親を増減工事より外す
+                            if (!DB01.UpdateFeild(ParentCode
+                                                , (int)IOConstructionBaseInfo.TableColumn.TyingFlg
+                                                , (int)CommonDefine.BaseInfoTyingFlg.Standard
+                                                , false))
+                            {
+                                ProcSuccess = false;
+                            }
+                        }
+                    }
+                    // 結合工事親確認
+                    if (BaseRec.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinParent)
+                    {
+                        string strSQL = string.Empty;
+                        for (int i = 0; i < UpdateLinkList.Count; i++)
+                        {
+                            if (!DB01.UpdateFeild(UpdateLinkList[i]
+                                                , (int)IOConstructionBaseInfo.TableColumn.JoinFlg
+                                                , (int)CommonDefine.BaseInfoJoinFlg.Standard
+                                                , false))
+                            {
+                                ProcSuccess = false;
+                                break;
+                            }
+                            strSQL = string.Format("UPDATE CONSTRUCTIONBASEINFO A SET A.JOINFLG = {0}", (int)CommonDefine.BaseInfoJoinFlg.Standard);
+                            strSQL += " WHERE A.CONSTRUCTIONCODE IN (SELECT AA.FLUCTUATIONCODE FROM CONSTRUCTIONLINK AA";
+                            strSQL += string.Format(" WHERE AA.CONSTRUCTIONCODE = {0}",UpdateLinkList[i]);
+                            strSQL += string.Format(" AND AA.LINKTYPE = {0})", (int)CommonDefine.LinkDataType.FluctuationType);
+                            DB01.ExecuteNonQuery(strSQL, false);
+                        }
+                    }
+                }
+                // ＤＢ終了処理
+                if (ProcSuccess)
+                {
+                    DB01.commit(); DB02.commit(); DB03.commit(); DB04.commit(); DB05.commit(); DB06.commit();
+                    DB07.commit(); DB08.commit(); DB09.commit(); DB10.commit(); DB11.commit(); DB12.commit();
+                    DB13.commit(); DB14.commit(); DB15.commit(); DB16.commit(); DB17.commit(); DB18.commit();
+                    DB19.commit(); DB20.commit(); DB21.commit(); DB22.commit(); DB23.commit(); DB24.commit();
+                    DB25.commit(); DB26.commit(); DB27.commit();
+                }
+                else
+                {
+                    DB01.rollback(); DB02.rollback(); DB03.rollback(); DB04.rollback(); DB05.rollback(); DB06.rollback();
+                    DB07.rollback(); DB08.rollback(); DB09.rollback(); DB10.rollback(); DB11.rollback(); DB12.rollback();
+                    DB13.rollback(); DB14.rollback(); DB15.rollback(); DB16.rollback(); DB17.rollback(); DB18.rollback();
+                    DB19.rollback(); DB20.rollback(); DB21.rollback(); DB22.rollback(); DB23.rollback(); DB24.rollback();
+                    DB25.rollback(); DB26.rollback(); DB27.rollback();
+                }
+
+                return ProcSuccess;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                DB01.close(); DB02.close(); DB03.close(); DB04.close(); DB05.close(); DB06.close();
+                DB07.close(); DB08.close(); DB09.close(); DB10.close(); DB11.close(); DB12.close();
+                DB13.close(); DB14.close(); DB15.close(); DB16.close(); DB17.close(); DB18.close();
+                DB19.close(); DB20.close(); DB21.close(); DB22.close(); DB23.close(); DB24.close();
+                DB25.close(); DB26.close(); DB27.close();
+
+                DB01 = null; DB02 = null; DB03 = null; DB04 = null; DB05 = null; DB06 = null;
+                DB07 = null; DB08 = null; DB09 = null; DB10 = null; DB11 = null; DB12 = null;
+                DB13 = null; DB14 = null; DB15 = null; DB16 = null; DB17 = null; DB18 = null;
+                DB19 = null; DB20 = null; DB21 = null; DB22 = null; DB23 = null; DB24 = null;
+                DB25 = null; DB26 = null; DB27 = null;
+            }
+        }
+        #endregion
+
+        #region 工事リンクコード取得
+        /// <summary>
+        /// 工事リンクコード取得
+        /// </summary>
+        private static void GetLinkageCode(int RemoveCode, IOConstructionLink LinkDB, ref List<int> RemoveList, bool bJoin = true)
+        {
+            try
+            {
+                string strSQL = "SELECT FLUCTUATIONCODE FROM CONSTRUCTIONLINK";
+                strSQL += LinkDB.CreatePrimarykeyString(RemoveCode);
+                if (bJoin)
+                    strSQL += string.Format(" AND LINKTYPE = {0}", (int)CommonDefine.LinkDataType.JoinType);
+                else
+                    strSQL += string.Format(" AND LINKTYPE = {0}", (int)CommonDefine.LinkDataType.FluctuationType);
+                ArrayList arList = new ArrayList();
+                if (!LinkDB.ExecuteReader(strSQL, ref arList)) return;
+                foreach (object[] CurRec in arList)
+                {
+                    RemoveList.Add(CommonMotions.cnvInt(CurRec[0]));
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 増減工事リンク親コード取得
+        /// <summary>
+        /// 増減工事リンク親コード取得
+        /// </summary>
+        private static int GetLinkageCode2(int RemoveCode, IOConstructionLink LinkDB, ref int ParentCode)
+        {
+            try
+            {
+                string strSQL = "SELECT B.CONSTRUCTIONCODE, COUNT(*) FROM CONSTRUCTIONLINK A, CONSTRUCTIONLINK B";
+                strSQL += string.Format(" WHERE A.FLUCTUATIONCODE = {0}", RemoveCode);
+                strSQL += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.FluctuationType);
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += " GROUP BY B.CONSTRUCTIONCODE";
+
+                ArrayList arList = new ArrayList();
+                if (!LinkDB.ExecuteReader(strSQL, ref arList)) return 0;
+
+                object[] CurRec = (object[])arList[0];
+
+                ParentCode = CommonMotions.cnvInt(CurRec[0]);
+                return CommonMotions.cnvInt(CurRec[1]);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region 結合親工事番号取得処理
+        /// <summary>
+        /// 結合親工事番号取得処理
+        /// </summary>
+        /// <param name="DataList"></param>
+        /// <param name="bFirst"></param>
+        public static void GetParentData(int SearchCode, ref ArrayList DataList, ref int FuncCnt)
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+
+                DataList.Clear();
+                // 結合工事表示
+                string strParent = "SELECT DISTINCT(A.CONSTRUCTIONCODE), B.REQUESTEDDATE, 0, 0, 0, 0, F.DETAILSTRING, B.JOINFLG";
+                strParent += " FROM CONSTRUCTIONLINK A";
+                strParent += " LEFT OUTER JOIN CONSTRUCTIONBASEINFODETAIL F ON (F.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strParent += string.Format(" AND F.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strParent += " , CONSTRUCTIONBASEINFO B";
+
+                strParent += string.Format(" WHERE A.FLUCTUATIONCODE = {0}", SearchCode);
+
+                switch (FuncCnt)
+                {
+                    case 0:
+                    case 2:
+                        // 結合タイプよりデータを検索
+                        strParent += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.JoinType);
+                        break;
+                    case 1:
+                        // 増減タイプよりデータを検索
+                        strParent += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.FluctuationType);
+                        break;
+                }
+
+                strParent += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strParent += string.Format(" AND B.CONSTRUCTIONSTATUSFLG != {0}", iStatus);
+
+                if (!BaseDB.ExecuteReader(strParent, ref DataList))
+                {
+                    FuncCnt = 3;
+                    return;
+                }
+
+                FuncCnt++;
+
+                if (DataList.Count == 0)
+                {
+                    if (FuncCnt > 2) return;
+
+                    // 3回目までは再起呼出
+                    GetParentData(SearchCode, ref DataList, ref FuncCnt);
+                    return;
+                }
+
+                // 結合の元データ以外はクリア
+                object[] objRec = (object[])DataList[0];
+                if (CommonMotions.cnvInt(objRec[7]) != (int)CommonDefine.BaseInfoJoinFlg.JoinParent)
+                {
+                    int SecondCode = CommonMotions.cnvInt(objRec[0]);
+                    DataList.Clear();
+                    GetParentData(SecondCode, ref DataList, ref FuncCnt);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region 結合親工事の工事進捗状態をセットする
+        /// <summary>
+        /// 結合親工事の工事進捗状態をセットする
+        /// </summary>
+        public static bool SetParentConstrStatus(IOConstructionBaseInfo BaseDB, int TargetCode)
+        {
+            try
+            {
+                // 対象の工事情報を取得する
+                string strSQL = BaseDB.CreatePrimarykeyString(TargetCode);
+                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
+                if (!BaseDB.SelectAction(strSQL, ref BaseRec, false)) return false;
+
+                // 結合工事では無ければ処理しない
+                if (BaseRec.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard) return true;
+
+                // 対象の親番号を取得する
+                int ParentCode = ClsProcessExist.GetParentConstrCode(TargetCode);
+
+                // 結合している工事番号をすべて取得する
+                strSQL = "SELECT A.CONSTRUCTIONCODE, A.FLUCTUATIONCODE, D.JOINFLG, B.FLUCTUATIONCODE, C.JOINFLG FROM CONSTRUCTIONLINK A";
+                strSQL += " LEFT JOIN CONSTRUCTIONLINK B ON B.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO C ON C.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+                strSQL += " , CONSTRUCTIONBASEINFO D";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", ParentCode);
+                strSQL += " AND D.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += " ORDER BY D.JOINFLG ASC, C.JOINFLG ASC";
+
+                ArrayList arList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref arList, false)) return false;
+                if (arList.Count == 0) return false;
+
+                List<int> CodeList = new List<int>();
+                int FCode = 0;
+                int SCode = 0;
+                foreach (object[] objRec in arList)
+                {
+                    FCode = CommonMotions.cnvInt(objRec[1]);
+                    SCode = CommonMotions.cnvInt(objRec[3]);
+
+                    if (FCode != 0) CodeList.Add(FCode);
+                    if (SCode != 0) CodeList.Add(SCode);
+                }
+
+                // 工事進捗を取得する
+                strSQL = "SELECT MIN(CONSTRUCTIONSTATUSFLG), MAX(CONSTRUCTIONSTATUSFLG)";
+                strSQL += " FROM CONSTRUCTIONBASEINFO";
+                strSQL += " WHERE CONSTRUCTIONCODE IN (";
+                for (int i = 0; i < CodeList.Count; i++)
+                {
+                    if (i != 0) strSQL += ", ";
+                    strSQL += CodeList[i].ToString();
+                }
+                strSQL += ")";
+                
+                arList.Clear();
+                if (!BaseDB.ExecuteReader(strSQL, ref arList, false)) return false;
+                if (arList.Count == 0) return false;
+                object[] StatRec = (object[])arList[0];
+
+                int MinStat = CommonMotions.cnvInt(StatRec[0]);
+                int MaxStat = CommonMotions.cnvInt(StatRec[1]);
+
+                // 親工事進捗更新
+                if (!BaseDB.UpdateFeild(ParentCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionStatusFlg, MinStat, false))
+                {
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsChangeLedgerData.cs	(revision 51)
@@ -67,6 +67,8 @@
             IOConstructionLedgerExcute LedgerExcuteDB = new IOConstructionLedgerExcute();
             try
             {
+                List<int> ConstrCodeList = new List<int>();
+
                 // 一括処理で登録を行う
                 CostDB.connect();
                 LedgerDB.connect();
@@ -79,8 +81,8 @@
                 // 対象をまず削除する(対象月で削除する)
                 string strDelSQL = "DELETE CONSTRUCTIONLEDGEREXCUTE";
                 strDelSQL += " WHERE CONSTRUCTIONCODE IN";
-                strDelSQL += " (SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO";
-                strDelSQL += string.Format(" WHERE (SALESPERSONCODE = {0} OR CONSTRUCTIONPERSONCODE = {0} OR CONSTRSUBPERSONCODE = {0} OR CONSTRUCTIONINSTRUCTOR = {0}))", PersonCode);
+                strDelSQL += " (SELECT A1.CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO A1";
+                strDelSQL += string.Format(" WHERE (A1.SALESPERSONCODE = {0} OR A1.CONSTRUCTIONPERSONCODE = {0} OR A1.CONSTRSUBPERSONCODE = {0} OR A1.CONSTRUCTIONINSTRUCTOR = {0}))", PersonCode);
                 strDelSQL += string.Format(" AND GROUPCOUNT IN ({0}, {1}, {2}, {3}, {4})"
                                                                 , GetConstructionLedgerGroupNo((int)CommonDefine.CostDataNo.Transport)
                                                                 , GetConstructionLedgerGroupNo((int)CommonDefine.CostDataNo.Purchase)
@@ -87,17 +89,17 @@
                                                                 , GetConstructionLedgerGroupNo((int)CommonDefine.CostDataNo.Lease)
                                                                 , GetConstructionLedgerGroupNo((int)CommonDefine.CostDataNo.StoragePlace)
                                                                 , GetConstructionLedgerGroupNo((int)CommonDefine.CostDataNo.Lodging));
-                strDelSQL += string.Format(" AND TARGETMONTH = DATE_FORMAT('{0}','%Y/%m/%d')", (TargetMonth + "/01"));
+                strDelSQL += string.Format(" AND TARGETMONTH = TO_DATE('{0}','YYYY/MM/DD')", (TargetMonth + "/01"));
                 LedgerExcuteDB.ExecuteNonQuery(strDelSQL, false);
 
                 for (int i = (int)CommonDefine.CostDataNo.Transport; i <= (int)CommonDefine.CostDataNo.Lodging; i++)
                 {
-                    string strSQL = "SELECT CONSTRUCTIONCODE, DATATYPE, DATE_FORMAT(ACTIONDATE,'%Y/%m'), SUM(ENTRYPRICE) FROM COSTDATAOFPERSON";
-                    strSQL += String.Format(" WHERE DATE_FORMAT(ACTIONDATE,'%Y/%m') = '{0}'", TargetMonth);
+                    string strSQL = "SELECT CONSTRUCTIONCODE, DATATYPE, TO_CHAR(ACTIONDATE,'YYYY/MM'), SUM(ENTRYPRICE) FROM COSTDATAOFPERSON";
+                    strSQL += String.Format(" WHERE TO_CHAR(ACTIONDATE,'YYYY/MM') = '{0}'", TargetMonth);
                     strSQL += String.Format(" AND DATATYPE = {0}", i);
-                    strSQL += " AND CONSTRUCTIONCODE IN (SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO";
-                    strSQL += string.Format(" WHERE (SALESPERSONCODE = {0} OR CONSTRUCTIONPERSONCODE = {0} OR CONSTRSUBPERSONCODE = {0} OR CONSTRUCTIONINSTRUCTOR = {0}))", PersonCode);
-                    strSQL += " GROUP BY CONSTRUCTIONCODE, DATATYPE, DATE_FORMAT(ACTIONDATE,'%Y/%m')";
+                    strSQL += " AND CONSTRUCTIONCODE IN (SELECT A1.CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO A1";
+                    strSQL += string.Format(" WHERE (A1.SALESPERSONCODE = {0} OR A1.CONSTRUCTIONPERSONCODE = {0} OR A1.CONSTRSUBPERSONCODE = {0} OR A1.CONSTRUCTIONINSTRUCTOR = {0}))", PersonCode);
+                    strSQL += " GROUP BY CONSTRUCTIONCODE, DATATYPE, TO_CHAR(ACTIONDATE,'YYYY/MM')";
                     strSQL += " ORDER BY CONSTRUCTIONCODE, DATATYPE";
                     ArrayList arList = new ArrayList();
                     if (!CostDB.ExecuteReader(strSQL, ref arList, false)) continue;
@@ -113,6 +115,8 @@
 
                         // 工事番号
                         int ConstructionCode = CommonMotions.cnvInt(wrkrec[0]);
+                        // 工事番号退避
+                        ConstrCodeList.Add(ConstructionCode);
 
                         // グループ番号
                         int DataType = i;
@@ -143,6 +147,12 @@
                 // DBコミット
                 LedgerExcuteDB.commit();
 
+                // 工事詳細台帳の更新
+                foreach (int ConstrCode in ConstrCodeList)
+                {
+                    LedgerRecalculate(ConstrCode);
+                }
+
                 return true;
             }
             catch (System.Exception ex)
@@ -161,6 +171,39 @@
         }
         #endregion
 
+        #region 工事詳細台帳再計算処理
+        /// <summary>
+        /// 工事詳細台帳再計算処理
+        /// </summary>
+        /// <param name="ConstrCode"></param>
+        private static void LedgerRecalculate(int ConstrCode)
+        {
+            FrmConstructionLedger frm = new FrmConstructionLedger();                    // 工事詳細台帳入力
+            try
+            {
+                // 工事コードのセット
+                frm.ConstructionCode = ConstrCode;
+
+                // 見えない画面を出す
+                frm.Hide();
+
+                // 再計算処理
+                bool bret = frm.RecalculateLedger;
+
+                // 画面を閉じる
+                frm.Close();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
         #region 工事詳細台帳より対象データを探して実行データの行番号・列番号を返す（交通費・購入品等のみ）
         /// <summary>
         /// 工事詳細台帳より対象データを探して実行データの行番号・列番号を返す（交通費・購入品等のみ）
@@ -276,9 +319,9 @@
             FrmConstructionLedger frm = new FrmConstructionLedger();
             try
             {
-                string strSQL = "SELECT PERSONCODE, DATE_FORMAT(ACTIONDATE,'%Y/%m'), CONSTRUCTIONCODE FROM COSTDATAOFPERSON";
-                strSQL += String.Format(" WHERE PERSONCODE = {0} AND DATE_FORMAT(ACTIONDATE,'%Y/%m') = '{1}'", PersonCode, TargetMonth);
-                strSQL += " GROUP BY PERSONCODE, DATE_FORMAT(ACTIONDATE,'%Y/%m'), CONSTRUCTIONCODE";
+                string strSQL = "SELECT PERSONCODE, TO_CHAR(ACTIONDATE,'YYYY/MM'), CONSTRUCTIONCODE FROM COSTDATAOFPERSON";
+                strSQL += String.Format(" WHERE PERSONCODE = {0} AND TO_CHAR(ACTIONDATE,'YYYY/MM') = '{1}'", PersonCode, TargetMonth);
+                strSQL += " GROUP BY PERSONCODE, TO_CHAR(ACTIONDATE,'YYYY/MM'), CONSTRUCTIONCODE";
                 strSQL += " ORDER BY CONSTRUCTIONCODE";
 
                 ArrayList arList = new ArrayList();
@@ -452,9 +495,8 @@
         /// <param name="TargetDate">対象日</param>
         /// <param name="bSetFlag">月一括セットフラグ</param>
         /// <returns></returns>
-        public static bool CalculatePayment(int ConstrCode, DateTime TargetDate, bool bSetFlag = false)
+        public static bool CalculatePayment(ConstructionLedger LedgerRec, DateTime TargetDate, DateTime lastDate)
         {
-            IOConstructionLedger LedgerDB = new IOConstructionLedger();
             IOConstructionLedgerDetail LedgerDeDB = new IOConstructionLedgerDetail();
             IOConstructionLedgerExcute LedgerExDB = new IOConstructionLedgerExcute();
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
@@ -461,65 +503,50 @@
             FrmConstructionLedger frm = new FrmConstructionLedger();
             try
             {
-                // 工事詳細台帳データ取得
-                List<ConstructionLedger> LedgerList = new List<ConstructionLedger>();
-                string LedgerSQL = LedgerDB.CreatePrimarykeyString(ConstrCode);
-                if (!LedgerDB.SelectAction(LedgerSQL, ref LedgerList) || LedgerList.Count == 0) return false;
-
                 // 工事詳細台帳明細データ取得
                 List<ConstructionLedgerDetail> DetailList = new List<ConstructionLedgerDetail>();
-                string DetailSQL = LedgerDeDB.CreatePrimarykeyString(ConstrCode);
+                string DetailSQL = LedgerDeDB.CreatePrimarykeyString(LedgerRec.ConstructionCode);
                 DetailSQL += string.Format(" AND OperatingFlg = {0}", (int)CommonDefine.SalaryOperateKind.Oparateing);  // 対応中フラグ
+                DetailSQL += string.Format(" AND SALARYFLG != {0}", (int)CommonDefine.SalaryDevision.Noting);           // 給与振分区分
                 DetailSQL += string.Format(" AND GROUPCOUNT IN ({0},{1},{2})",
-                                                                (int)FrmConstructionLedger.DataGroup.Instructor,   // 指導員給料
-                                                                (int)FrmConstructionLedger.DataGroup.Assistant,    // 副担当者給料
-                                                                (int)FrmConstructionLedger.DataGroup.Payroll);     // 担当者給料行
+                                                                (int)FrmConstructionLedger.DataGroup.Instructor,        // 指導員給料
+                                                                (int)FrmConstructionLedger.DataGroup.Assistant,         // 副担当者給料
+                                                                (int)FrmConstructionLedger.DataGroup.Payroll);          // 担当者給料行
 
-                if (!LedgerDeDB.SelectAction(DetailSQL, ref DetailList) || DetailList.Count == 0) return false;
+                if (!LedgerDeDB.SelectAction(DetailSQL, ref DetailList) || DetailList.Count == 0) return true;
 
                 // 対象月より書込みカラム位置を取得する
-                int ColPoint = CalcTargetMonthToColumn(LedgerList[0].ConstructionStart, TargetDate);
-
-                // 対象月の開始日・終了日を取得する
-                DateTime dtStart = DateTimeUtil.BeginOfMonth(TargetDate);
-                DateTime dtLast = DateTimeUtil.EndOfMonth(TargetDate);
-                
-                // 開始月は開始月を入れる
-                if (LedgerList[0].ConstructionStart.Year == dtStart.Year
-                    && LedgerList[0].ConstructionStart.Month == dtStart.Month) dtStart = LedgerList[0].ConstructionStart;
-                
-                // 当月は今日より大きい場合は今日を入れる
-                if (DateTime.Now.Year == dtLast.Year
-                    && DateTime.Now.Month == dtLast.Month
-                    && DateTime.Now.Day < dtLast.Day) dtLast = DateTime.Now;
-                
-                // 終了月は終了日を入れる
-                if (LedgerList[0].ConstructionEnd.Year == dtLast.Year
-                    && LedgerList[0].ConstructionEnd.Month == dtLast.Month
-                    && LedgerList[0].ConstructionEnd.Day < dtLast.Day) dtLast = LedgerList[0].ConstructionEnd;
-
-                //// 稼働日数を取得する
-                //int WorkingDay = ClsCalendar.CalcOperatingDaysCount(dtStart, dtLast);
+                int ColPoint = CalcTargetMonthToColumn(LedgerRec.ConstructionStart, TargetDate);
                 // 経過日数を取得する
-                int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+                TimeSpan ts = TargetDate - lastDate;
+                int WorkingDay = ts.Days;
 
                 LedgerExDB.connect(); LedgerExDB.beginTran();
                 PersonDB.connect(); PersonDB.beginTran();
 
-                bool LoopBreak = false;
                 foreach (ConstructionLedgerDetail CurRec in DetailList)
                 {
                     // コードが担当者ではない場合は処理しない
-                    if (CurRec.CompanyType != (int)CommonDefine.SearchLogDataType.Person) continue;
+                    if (CurRec.CompanyType != (int)CommonDefine.CodeDataType.Person) continue;
                     // コードがない場合は処理しない
                     if (CurRec.CompanyCode == 0) continue;
                     // 施工管理中担当者ではない場合は処理しない
                     if (CurRec.OperatingFlg == (int)CommonDefine.SalaryOperateKind.Complate) continue;
-                    // 実行金額が無い場合は処理しない
-                    if (CurRec.ExecutionAmount == 0) continue;
 
+                    // 現在の値を取得する
+                    int NowValue = 0;
+                    string strExecout = "SELECT PAYMENTAMOUNT FROM CONSTRUCTIONLEDGEREXCUTE";
+                    strExecout += LedgerExDB.CreatePrimarykeyString(CurRec.ConstructionCode, CurRec.GroupCount, CurRec.LineCount);
+                    strExecout += string.Format(" AND TargetMonth = TO_DATE('{0}')", DateTimeUtil.BeginOfMonth(TargetDate).ToShortDateString());
+                    ArrayList arExecList = new ArrayList();
+                    LedgerExDB.ExecuteReader(strExecout, ref arExecList, false);
+                    if (arExecList.Count != 0)
+                    {
+                       object[] objRec = (object[])arExecList[0];
+                       NowValue = CommonMotions.cnvInt(objRec[0]);
+                    }
+
                     // 1日分の給与を取得する
-                    //double dSaraly = Get1DaysSalaryForOperating(PersonDB, CurRec.CompanyCode);
                     double dSaraly = Get1DaysSalaryForFixed(PersonDB, CurRec.CompanyCode, CurRec.GroupCount);
 
                     switch (CurRec.SalaryFlg)
@@ -527,11 +554,12 @@
                         case (int)CommonDefine.SalaryDevision.All:          // 全日振分
                             // 指定日までの稼働日数を掛けた値をセットする
                             dSaraly *= WorkingDay;
+                            // 元の値を加算する
+                            dSaraly += NowValue;
                             break;
                         case (int)CommonDefine.SalaryDevision.Noting:       // 振分無
                             // 給与振分無
                             dSaraly = 0;
-                            LoopBreak = true;
                             break;
                         case (int)CommonDefine.SalaryDevision.DaysInput:    // 日数入力
                             // 日当加算判定を行う
@@ -544,20 +572,20 @@
                             {
                                 dSaraly = 0;
                             }
-                            LoopBreak = true;
                             break;
                         default:
                             break;
                     }
                     // 計算値が実行金額より大きい場合は処理しない
-                    if (CurRec.ExecutionAmount < dSaraly) continue;
+                    //if (CurRec.ExecutionAmount < dSaraly) continue;
 
                     DateTime ParaDate = new DateTime(TargetDate.Year, TargetDate.Month, 1);
                     // 支払いデータ書込み
                     if (!AddOrSetSalary(LedgerExDB
-                                    , ConstrCode, CurRec.GroupCount, CurRec.LineCount, ColPoint, (int)dSaraly, ParaDate))
+                                    , LedgerRec.ConstructionCode, CurRec.GroupCount, CurRec.LineCount, ColPoint, (int)dSaraly, ParaDate))
                     {
                         LedgerExDB.rollback();
+                        PersonDB.rollback();
                         return false;
                     }
                 }
@@ -567,7 +595,7 @@
                 bool bret = true;
 
                 // 工事コードのセット
-                frm.ConstructionCode = ConstrCode;
+                frm.ConstructionCode = LedgerRec.ConstructionCode;
 
                 // 見えない画面を出す
                 frm.Hide();
@@ -581,7 +609,7 @@
                 frm.Close();
 
                 // データ初期セット時に振分無・日数入力は次のループをしない
-                if (bSetFlag && LoopBreak) bret = false;
+                //if (bSetFlag && LoopBreak) bret = false;
 
                 return bret;
             }
@@ -592,7 +620,6 @@
             }
             finally
             {
-                LedgerDB.close(); LedgerDB = null;
                 LedgerDeDB.close(); LedgerDeDB = null;
                 LedgerExDB.close(); LedgerExDB = null;
                 PersonDB.close(); PersonDB = null;
@@ -637,51 +664,6 @@
         }
         #endregion
 
-        #region 平均稼働数より1日分の給与を取得する
-        /// <summary>
-        /// 平均稼働数より1日分の給与を取得する
-        /// </summary>
-        /// <param name="PersonCode"></param>
-        /// <returns></returns>
-        private static double Get1DaysSalaryForOperating(IOMPersonInCharge PersonDB, int PersonCode, int GroupCount)
-        {
-            try
-            {
-                int monthSalary = 0;
-                if (GroupCount == (int)FrmConstructionLedger.DataGroup.Payroll)
-                {   // 担当者給与の場合
-                    // 担当者マスタより給与月額を取得する
-                    string strPerson = PersonDB.CreatePrimarykeyString(PersonCode);
-                    PersonInChargeMaster personRec = new PersonInChargeMaster();
-                    PersonDB.SelectAction(strPerson, ref personRec, false);
-
-                    // 出勤補正値係数を掛ける
-                    monthSalary = CommonMotions.cnvRound(personRec.MonthlySalary * (double)CommonDefine.s_SalaryCorrection);
-                }
-                else if (GroupCount == (int)FrmConstructionLedger.DataGroup.Instructor)
-                {
-                    // 指導員月額を取得する
-                    monthSalary = CommonDefine.InstructorMonthryCost;
-                }
-                else if (GroupCount == (int)FrmConstructionLedger.DataGroup.Assistant)
-                {
-                    // 副担当者月額を取得する
-                    monthSalary = CommonDefine.AssistantMonthryCost;
-                }
-
-                // 計算値を月稼働日数で割る
-                double daylySalary = monthSalary / CommonDefine.s_WorkingDaysOfMonth;
-
-                return daylySalary;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return 0;
-            }
-        }
-        #endregion
-
         #region 月工数より1日分の給与を取得する
         /// <summary>
         /// 月工数より1日分の給与を取得する
@@ -693,16 +675,16 @@
             try
             {
                 int monthSalary = 0;
-                
+
                 if (GroupCount == (int)FrmConstructionLedger.DataGroup.Payroll)
                 {   // 担当者給与の場合
-                    // 担当者マスタより給与月額を取得する
-                    string strPerson = PersonDB.CreatePrimarykeyString(PersonCode);
-                    PersonInChargeMaster personRec = new PersonInChargeMaster();
-                    PersonDB.SelectAction(strPerson, ref personRec, false);
+                    double MonthryCost = 0;
+                    double YearsCost = 0;
+                    // 担当者給与金額取得処理（セッションコネクト別）
+                    CommonMotions.GetSalaryValue(PersonDB, PersonCode, ref MonthryCost, ref YearsCost, DateTime.Today);
 
                     // 出勤補正値係数を掛ける
-                    monthSalary = CommonMotions.cnvRound(personRec.MonthlySalary * (double)CommonDefine.s_SalaryCorrection);
+                    monthSalary = CommonMotions.cnvRound(MonthryCost * (double)CommonDefine.s_SalaryCorrection);
 
                 }
                 else if (GroupCount == (int)FrmConstructionLedger.DataGroup.Instructor)
@@ -750,7 +732,7 @@
             {
                 // キー作成
                 string strSQL = LedgerExDB.CreatePrimarykeyString(ConstrCode, GroupCount, LineCount, ColumnCount);
-                strSQL += string.Format(" AND TargetMonth = DATE_FORMAT('{0}','%Y/%m/%d')", ColumnDate.ToShortDateString());
+                strSQL += string.Format(" AND DATE(TargetMonth) = STR_TO_DATE('{0}','%Y/%m/%d')", ColumnDate.ToShortDateString());
 
                 // データ読込み
                 List<ConstructionLedgerExcute> LedgerExDBList = new List<ConstructionLedgerExcute>();
@@ -766,10 +748,9 @@
                     LedgerExDBRec.TargetMonth = ColumnDate;         // 対象年月
                     
                     // データ作成
-                    bool bSaccess = LedgerExDB.InsertAction(LedgerExDBRec, false);
+                    if (!LedgerExDB.InsertAction(LedgerExDBRec, false)) return false;
                     
-                    if (bSaccess) return true;
-                    else return false;
+                    return true;
                 }
 
                 // データ更新
@@ -825,5 +806,111 @@
             }
         }
         #endregion
+
+        #region 結合工事作成処理
+        /// <summary>
+        /// 結合工事作成処理
+        /// </summary>
+        /// <returns></returns>
+        public static bool MakeJoinForBudgetData(int ConstructionCode, List<int> DateCodeList)
+        {
+            FrmConstructionLedger frm = new FrmConstructionLedger();
+            try
+            {
+                // 工事番号が存在しないデータは更新しない
+                if (ConstructionCode == 0) return false;
+
+                // 工事コードのセット
+                frm.ConstructionCode = ConstructionCode;
+
+                // 見えない画面を出す
+                frm.WindowState = FormWindowState.Minimized;
+                frm.Hide();
+                // フォーム非表示
+                frm.Visible = false;
+
+                bool bSuccess = true;
+
+                // データ追加処理
+                frm.JoiningCodeList = DateCodeList;
+                if (!frm.JoinDataLedger)
+                {
+                    bSuccess = false;
+                    return bSuccess;
+                }
+                
+                // データ保存処理
+                if (!frm.SaveLedgerData)
+                {
+                    bSuccess = false;
+                    return bSuccess;
+                }
+
+                // データ削除処理
+                if (!frm.RemoveJoinLedger)
+                {
+                    bSuccess = false;
+                    return bSuccess;
+                }
+
+                return bSuccess;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                // 画面を閉じる
+                frm.Close();
+
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 結合工事疑似ロールバック処理
+        /// <summary>
+        /// 結合工事疑似ロールバック処理
+        /// </summary>
+        /// <returns></returns>
+        public static bool PseudoRollBackForBudgetData(int ConstructionCode, List<int> DateCodeList)
+        {
+            FrmConstructionLedger frm = new FrmConstructionLedger();
+            try
+            {
+                // 工事番号が存在しないデータは更新しない
+                if (ConstructionCode == 0) return false;
+
+                bool bSuccess = true;
+
+                // 工事コードのセット
+                frm.ConstructionCode = ConstructionCode;
+
+                // データ追加処理
+                frm.JoiningCodeList = DateCodeList;
+                frm.SetRollBackFlg = true;
+
+                // データ削除処理
+                if (!frm.RemoveJoinLedger)
+                {
+                    bSuccess = false;
+                    return bSuccess;
+                }
+
+                return bSuccess;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs	(revision 51)
@@ -45,26 +45,38 @@
         public enum ProcessExecuteNo
         {
             MainMenu = 0,                       //  0:メニュー
-            ConstructionList,                   //  1:工事情報一覧
-            ConstructionBaseInfo,               //  2:工事情報入力
-            EstimateInput,                      //  3:積算見積入力
-            EstimatePrint,                      //  4:積算見積書印刷
-            EstimateBudget,                     //  5:積算予算書入力
-            ConstructionBudget,                 //  6:工事予算書入力
-            ApprovalDocumentList,               //  7:承認申請一覧
-            ConstructionCopyList,               //  8:工事案件コピー機能
-            PurchaseOrderEntry,                 //  9:注文書入力
-            PurchaseOrderPrint,                 // 10:注文書印刷
-            ConstructionLedgerList,             // 11:工事詳細台帳一覧
-            ConstructionLedger,                 // 12:工事詳細台帳
-            TAndPCosts,                         // 13:交通費及び購入品入力
-            DRList,                             // 14:日報一覧
-            DRConstruction,                     // 15:工事日報入力
-            Proceedings,                        // 16:発注者打ち合わせ議事録入力
-            DailyReportList,                    // 17:日報一覧
-            DailyReport,                        // 18:日報全般
-            DepartmentExpenssList,              // 19:部署別台帳まとめ一覧
-            ConstrLedgerPrsonList,              // 20:工事詳細台帳一覧(個人指定)
+            ConstructionList = 1,               //  1:工事情報一覧
+            ConstructionBaseInfo = 2,           //  2:工事情報入力
+            EstimateInput = 3,                  //  3:積算見積入力
+            EstimatePrint = 4,                  //  4:積算見積書印刷
+            EstimateBudget = 5,                 //  5:積算予算書入力
+            ConstructionBudget = 6,             //  6:工事予算書入力
+            ApprovalDocumentList = 7,           //  7:承認申請一覧
+            ConstructionCopyList = 8,           //  8:工事案件コピー機能
+            PurchaseOrderEntry = 9,             //  9:注文書入力
+            PurchaseOrderPrint = 10,            // 10:注文書印刷
+            DepartmentExpenssList = 11,         // 11:部署別台帳一覧
+            ConstructionLedgerList = 12,        // 12:工事詳細台帳一覧
+            ConstructionLedger = 13,            // 13:工事詳細台帳
+            TAndPCosts = 14,                    // 14:交通費及び購入品入力
+            DRList = 15,                        // 15:日報一覧
+            DRConstruction = 16,                // 16:工事日報入力
+            Proceedings = 17,                   // 17:打合せ議事録入力
+            DRWork = 18,                        // 18:出勤日報
+            PurchaseOrderStatus = 19,           // 19:注文書発給一覧
+            OrderJoin = 20,                     // 20:工事結合
+            ConstructionSplit = 21,             // 21:工事分割
+            DRTransport = 22,                   // 22:通勤交通費
+            MaterialList = 23,                  // 23:資材一覧
+            MaterialHistory = 24,               // 24:資材履歴画面
+            MaterialCountEntry = 25,            // 25:資材数変更画面
+            MaterialReserveEntry = 26,          // 26:資材貸出
+            MaterialReturnEntry = 27,           // 27:資材返却
+            MaterialSelect = 28,                // 28;資材選択
+            RequestSummaryList = 29,            // 29:請求まとめ 
+            PaymentConfirmation = 30,           // 30:入金確認
+            RequestInput = 31,                  // 31:請求入力
+            RequestPrint = 32,                  // 32:請求書印刷
         }
         #endregion
 
@@ -74,29 +86,34 @@
         /// </summary>
         public enum MaintenanceExecuteNo
         {
-            System = 101,                       //  1:システム管理
-            Department,                         //  2:部署マスタ
-            PersonInCharge,                     //  3:担当者
-            Component,                          //  4:大項目マスタ（構成マスタ）
-            ConstructionItem,                   //  5:中項目マスタ（工種マスタ）
-            ConstructionWork,                   //  6:小項目マスタ（作業マスタ）
-            Unit,                               //  7:単位マスタ
-            SubContractor,                      //  8:協力会社マスタ
-            Orderers,                           //  9:発注者マスタ
-            BusinessType,                       // 10:法人格マスタ
-            Division,                           // 11:区分マスタ
-            Expenses,                           // 12:経費率マスタ
-            SubContractorItem,                  // 13:協力会社工種マスタ
-            Calender,                           // 14:カレンダーマスタ
-            VehicleMaster,                      // 15:車両マスタ
-            TermMaster,                         // 16:期限マスタ
-            SaleSalesGraphData,                 // 17:売上グラフデータ入力
-            ApprovalRoute,                      // 18:承認経路マスタ
-            ConstructionType,                   // 19:工事種別マスタ
-            ComponentLink,                      // 20:大・中項目関連マスタ
-            AlwaysEmployment,                   // 21:常雇者マスタ
-            Suppliers,                          // 22:仕入先マスタ
-            SubContractorJobCategory,           // 23:協力会社職種マスタ
+            System = 101,                       // 101:システム管理
+            Department = 102,                   // 102:部署マスタ
+            PersonInCharge = 103,               // 103:担当者
+            Component = 104,                    // 104:大項目マスタ（構成マスタ）
+            ConstructionItem = 105,             // 105:中項目マスタ（工種マスタ）
+            ConstructionWork = 106,             // 106:小項目マスタ（作業マスタ）
+            ComponentLink = 107,                // 107:大・中項目関連マスタ
+            Unit = 108,                         // 108:単位マスタ
+            SubContractor = 109,                // 109:協力会社マスタ
+            Orderers = 110,                     // 110:発注者マスタ
+            BusinessType = 111,                 // 111:法人格マスタ
+            //Division = 112,                   // 112:区分マスタ
+            //Expenses = 113,                   // 113:経費率マスタ
+            SubContractorItem = 114,            // 114:協力会社工種マスタ
+            Calender = 115,                     // 115:カレンダーマスタ
+            VehicleMaster = 116,                // 116:車両マスタ
+            TermMaster = 117,                   // 117:期限マスタ
+            SaleSalesGraphData = 118,           // 118:売上グラフデータ入力
+            ApprovalRoute = 119,                // 119:承認経路マスタ
+            ConstructionType = 120,             // 120:工事種別マスタ
+            AlwaysEmployment = 121,             // 121:常雇者マスタ
+            Suppliers = 122,                    // 122:仕入先マスタ
+            SubContractorJobCategory = 123,     // 123:協力会社職種マスタ
+            Security = 124,                     // 124:セキュリティ区分マスタ
+            OrderDivision = 125,                // 125:発注者区分登録
+            ConstructionExpenses = 126,         // 126:施工経費区分登録
+            MaterialKind = 127,                 // 127:資材種類マスタ
+            MaterialItem = 128,                 // 128:資材品目マスタ
         }
         #endregion
 
@@ -106,14 +123,14 @@
         /// </summary>
         public enum SubFormExecuteNo
         {
-            MessageWriter = 201,                //  1:掲示板入力(新バージョン)
-            MessageReader,                      //  2:掲示板読込
-            ActionSchdule,                      //  3:行動予定入力
-            VehicleSchdule,                     //  4:車両予約入力
-            ApprovalScreen,                     //  5:承認画面
-            SubconstractorDiag,                 //  6:協力会社検索画面
-            SuppliersDiag,                      //  7:仕入先検索
-            SubConJobDiag,                      //  8:協力会社職種検索画面
+            MessageWriter = 201,                // 201:掲示板入力(新バージョン)
+            MessageReader = 202,                // 202:掲示板読込
+            ActionSchdule = 203,                // 203:行動予定入力
+            VehicleSchdule = 204,               // 204:車両予約入力
+            ApprovalScreen = 205,               // 205:承認画面
+            SubconstractorDiag = 206,           // 206:協力会社検索画面
+            SuppliersDiag = 207,                // 207:仕入先検索
+            SubConJobDiag = 208,                // 208:協力会社職種検索画面
         }
         #endregion
 
@@ -122,25 +139,76 @@
         /// 処理名称一覧
         /// </summary>
         public static Dictionary<int, string> ProcessExecuteName = new Dictionary<int, string>(){
-                                                                                { 0, "メインメニュー"},
-                                                                                { 1, "工事情報一覧－表示"},
-                                                                                { 2, "工事情報－入力"},
-                                                                                { 3, "積算見積書－入力"},
-                                                                                { 4, "積算見積書－印刷"},
-                                                                                { 5, "積算予算書－入力"},
-                                                                                { 6, "工事予算書－入力"},
-                                                                                { 7, "承認申請一覧－表示"},
-                                                                                { 8, "工事案件コピー－機能"},
-                                                                                { 9, "注文書－入力"},
-                                                                                {10, "注文書－印刷"},
-                                                                                {12, "工事詳細台帳－入力"},
-                                                                                {13, "交通費及び購入品等－入力"},
-                                                                                {14, "工事日報－一覧"},
-                                                                                {15, "工事日報－入力"},
-                                                                                };
+                                                                                { (int)ProcessExecuteNo.MainMenu,               "メインメニュー"},
+                                                                                { (int)ProcessExecuteNo.ConstructionList,       "工事情報一覧－表示"},
+                                                                                { (int)ProcessExecuteNo.ConstructionBaseInfo,   "工事情報－入力"},
+                                                                                { (int)ProcessExecuteNo.EstimateInput,          "積算見積書－入力"},
+                                                                                { (int)ProcessExecuteNo.EstimatePrint,          "積算見積書－印刷"},
+                                                                                { (int)ProcessExecuteNo.EstimateBudget,         "積算予算書－入力"},
+                                                                                { (int)ProcessExecuteNo.ConstructionBudget,     "工事予算書－入力"},
+                                                                                { (int)ProcessExecuteNo.ApprovalDocumentList,   "承認申請一覧－表示"},
+                                                                                { (int)ProcessExecuteNo.ConstructionCopyList,   "工事案件コピー－機能"},
+                                                                                { (int)ProcessExecuteNo.PurchaseOrderEntry,     "注文書－入力"},
+                                                                                { (int)ProcessExecuteNo.PurchaseOrderPrint,     "注文書－印刷"},
+                                                                                { (int)ProcessExecuteNo.DepartmentExpenssList,  "部署別台帳－一覧"},
+                                                                                { (int)ProcessExecuteNo.ConstructionLedgerList, "工事詳細台帳－一覧"},
+                                                                                { (int)ProcessExecuteNo.ConstructionLedger,     "工事詳細台帳－入力"},
+                                                                                { (int)ProcessExecuteNo.TAndPCosts,             "交通費及び購入品等－入力"},
+                                                                                { (int)ProcessExecuteNo.DRList,                 "工事日報－一覧"},
+                                                                                { (int)ProcessExecuteNo.DRConstruction,         "工事日報－入力"},
+                                                                                { (int)ProcessExecuteNo.Proceedings,            "打合せ議事録－入力"},
+                                                                                { (int)ProcessExecuteNo.MaterialList,           "資材入力"},
+                                                                                { (int)ProcessExecuteNo.MaterialReserveEntry,   "資材貸出"},
+                                                                                { (int)ProcessExecuteNo.MaterialReturnEntry,    "資材返却"},
+                                                                                { (int)ProcessExecuteNo.RequestSummaryList,     "請求まとめ"},
+                                                                                { (int)ProcessExecuteNo.PaymentConfirmation,    "入金確認"},
+                                                                                { (int)ProcessExecuteNo.RequestInput,           "請求入力"},
+                                                                                { (int)ProcessExecuteNo.RequestPrint,           "請求書印刷"},
+                                                                                //{ (int)ProcessExecuteNo.DailyReportList,        "出勤日報－入力"},
+                                                                                //{ (int)ProcessExecuteNo.PurchaseOrderStatus,    "注文書発給状況－一覧"},
+                                                                                //{ (int)ProcessExecuteNo.OrderJoin,              "工事結合－入力"},
+                                                                                //{ (int)ProcessExecuteNo.ConstructionSplit,      "工事分割－入力"},
+                                                                                //{ (int)ProcessExecuteNo.DRTransport,            "通勤交通費－入力"},
+        };
 
         #endregion
 
+        #region マスタメンテンナス処理名称
+        /// <summary>
+        /// マスタメンテナンス処理名称一覧
+        /// </summary>
+        public static Dictionary<int, string> MaintenanceExecuteName = new Dictionary<int, string>(){
+                                                                                { (int)MaintenanceExecuteNo.System,                     "システム管理登録"},           // 101
+                                                                                { (int)MaintenanceExecuteNo.Department,                 "部署登録"},                   // 102
+                                                                                { (int)MaintenanceExecuteNo.PersonInCharge,             "担当者登録"},                 // 103
+                                                                                { (int)MaintenanceExecuteNo.Component,                  "大項目登録（構成登録）"},     // 104
+                                                                                { (int)MaintenanceExecuteNo.ConstructionItem,           "中項目登録（工種登録）"},     // 105
+                                                                                { (int)MaintenanceExecuteNo.ConstructionWork,           "小項目登録（作業登録）"},     // 106
+                                                                                { (int)MaintenanceExecuteNo.ComponentLink,              "大・中項目関連登録"},         // 107
+                                                                                { (int)MaintenanceExecuteNo.Unit,                       "単位登録"},                   // 108
+                                                                                { (int)MaintenanceExecuteNo.SubContractor,              "協力会社登録"},               // 109
+                                                                                { (int)MaintenanceExecuteNo.Orderers,                   "発注者登録"},                 // 110
+                                                                                { (int)MaintenanceExecuteNo.BusinessType,               "法人格登録"},                 // 111
+                                                                                //{ (int)MaintenanceExecuteNo.Division,                   "区分登録"},                   // 112
+                                                                                //{ (int)MaintenanceExecuteNo.Expenses,                   "経費率登録"},                 // 113
+                                                                                { (int)MaintenanceExecuteNo.SubContractorItem,          "協力会社工種登録"},           // 114
+                                                                                { (int)MaintenanceExecuteNo.Calender,                   "カレンダー登録"},             // 115
+                                                                                { (int)MaintenanceExecuteNo.VehicleMaster,              "車両登録"},                   // 116
+                                                                                { (int)MaintenanceExecuteNo.TermMaster,                 "期限登録"},                   // 117
+                                                                                { (int)MaintenanceExecuteNo.SaleSalesGraphData,         "売上グラフデータ入力"},       // 118
+                                                                                { (int)MaintenanceExecuteNo.ApprovalRoute,              "承認経路登録"},               // 119
+                                                                                { (int)MaintenanceExecuteNo.ConstructionType,           "工事種別登録"},               // 120
+                                                                                { (int)MaintenanceExecuteNo.AlwaysEmployment,           "常雇者登録"},                 // 121
+                                                                                { (int)MaintenanceExecuteNo.Suppliers,                  "仕入先登録"},                 // 122
+                                                                                { (int)MaintenanceExecuteNo.SubContractorJobCategory,   "協力会社職種登録"},           // 123
+                                                                                { (int)MaintenanceExecuteNo.Security,                   "セキュリティ区分登録"},       // 124
+                                                                                { (int)MaintenanceExecuteNo.OrderDivision,              "発注者区分登録"},             // 125
+                                                                                { (int)MaintenanceExecuteNo.ConstructionExpenses,       "施工経費区分登録"},           // 126
+                                                                                { (int)MaintenanceExecuteNo.MaterialKind,               "資材種類登録"},              // 127
+                                                                                { (int)MaintenanceExecuteNo.MaterialItem,               "資材品目登録"},              // 128
+                                                                                };
+        #endregion
+
         #region 承認処理定義
         /// <summary>
         /// 承認一覧
@@ -167,11 +235,14 @@
             /// 4:注文書承認
             /// </summary>
             PurchaseOrderEntryApproval,
-            // ----- 以下プロセス未作成
             /// <summary>
             /// 5:請求書承認
             /// </summary>
             OrderBillingApproval,
+            /// <summary>
+            /// 6:工事日報承認
+            /// </summary>
+            DRConstructionApproval,
         }
         #endregion
 
@@ -320,48 +391,88 @@
                             ProcessExecuteNo_PurchaseOrderPrint(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.ConstructionLedgerList:              // 11:工事詳細台帳一覧
+                        case (int)ProcessExecuteNo.DepartmentExpenssList:               // 11:部署別台帳一覧
+                            ProcessExecuteNo_DepartmentExpenssList(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.ConstructionLedgerList:              // 12:工事詳細台帳一覧
                             ProcessExecuteNo_ConstructionLedgerList(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.ConstructionLedger:                  // 12:工事詳細台帳
+                        case (int)ProcessExecuteNo.ConstructionLedger:                  // 13:工事詳細台帳
                             ProcessExecuteNo_ConstructionLedger(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.TAndPCosts:                          // 13:交通費及び購入品入力
+                        case (int)ProcessExecuteNo.TAndPCosts:                          // 14:交通費及び購入品入力
                             ProcessExecuteNo_TAndPCosts(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.DRList:                              // 14:工事日報一覧
+                        case (int)ProcessExecuteNo.DRList:                              // 15:工事日報一覧
                             ProcessExecuteNo_DRList(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.DRConstruction:                      // 15:工事日報入力
+                        case (int)ProcessExecuteNo.DRConstruction:                      // 16:工事日報入力
                             ProcessExecuteNo_DRConstruction(m_ProcControlPara[NowPoint]);
                             break;
-                        
-                        case (int)ProcessExecuteNo.Proceedings:                         // 16:発注者打ち合わせ議事録入力
+
+                        case (int)ProcessExecuteNo.Proceedings:                         // 17:打合せ議事録入力
                             ProcessExecuteNo_Proceedings(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.DailyReportList:                     // 17:日報一覧
-                            ProcessExecuteNo_DailyReportList(m_ProcControlPara[NowPoint]);
+                        case (int)ProcessExecuteNo.DRWork:                              // 18:出勤日報入力
+                            ProcessExecuteNo_DRWork(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.DailyReport:                         // 18:日報等
-                            ProcessExecuteNo_DailyReport(m_ProcControlPara[NowPoint]);
+                        case (int)ProcessExecuteNo.PurchaseOrderStatus:                 // 19:注文書発給一覧
+                            ProcessExecuteNo_PurchaseOrderStatus(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.DepartmentExpenssList:               // 19:部署別台帳一覧
-                            ProcessExecuteNo_DepartmentExpenssList(m_ProcControlPara[NowPoint]);
+                        case (int)ProcessExecuteNo.OrderJoin:                           // 20:工事結合
+                            ProcessExecuteNo_OrderJoin(m_ProcControlPara[NowPoint]);
                             break;
 
-                        case (int)ProcessExecuteNo.ConstrLedgerPrsonList:               // 20:工事詳細台帳一覧(個人指定)
-                            ProcessExecuteNo_ConstrLedgerPersonList(m_ProcControlPara[NowPoint]);
+                        case (int)ProcessExecuteNo.ConstructionSplit:                   // 21:工事分割
+                            ProcessExecuteNo_ConstructionSplit(m_ProcControlPara[NowPoint]);
                             break;
 
-                        #endregion
+                        case (int)ProcessExecuteNo.MaterialList:                        // 22:資材一覧
+                            ProcessExecuteNo_MaterialList(m_ProcControlPara[NowPoint]);
+                            break;
 
+                        case (int)ProcessExecuteNo.MaterialHistory:                     // 23:資材履歴画面
+                            ProcessExecuteNo_MaterialHistoryEntry(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.MaterialCountEntry:                  // 24:資材数変更画面
+                            ProcessExecuteNo_MaterialCountEntry(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.MaterialReserveEntry:                // 25:資材貸出
+                            ProcessExecuteNo_MaterialReserveEntry(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.MaterialReturnEntry:                 // 26:資材返却
+                            ProcessExecuteNo_MaterialReturnEntry(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.MaterialSelect:                      // 27;資材選択
+                            ProcessExecuteNo_MaterialSelect(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.RequestSummaryList:                  // 29:請求まとめ
+                            ProcessExecuteNo_RequestSummaryList(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.PaymentConfirmation:                 // 30:入金確認
+                            ProcessExecuteNo_PaymentConfirmation(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        case (int)ProcessExecuteNo.RequestInput:                         // 31:請求入力
+                            ProcessExecuteNo_RequestInput(m_ProcControlPara[NowPoint]);
+                            break;
+
+                        #endregion  
+
                         #region マスタメンテ
                         // ----- マスタメンテ
                         case (int)MaintenanceExecuteNo.System:                          //  1:システム管理
@@ -394,12 +505,12 @@
                         case (int)MaintenanceExecuteNo.BusinessType:                    // 10:法人格マスタ
                             MaintenanceExecuteNo_BusinessType(m_ProcControlPara[NowPoint]);
                             break;
-                        case (int)MaintenanceExecuteNo.Division:                        // 11:区分マスタ
-                            MaintenanceExecuteNo_Division(m_ProcControlPara[NowPoint]);
-                            break;
-                        case (int)MaintenanceExecuteNo.Expenses:                        // 12:経費率マスタ
-                            MaintenanceExecuteNo_Expenses(m_ProcControlPara[NowPoint]);
-                            break;
+                        //case (int)MaintenanceExecuteNo.Division:                        // 11:区分マスタ
+                        //    MaintenanceExecuteNo_Division(m_ProcControlPara[NowPoint]);
+                        //    break;
+                        //case (int)MaintenanceExecuteNo.Expenses:                        // 12:経費率マスタ
+                        //    MaintenanceExecuteNo_Expenses(m_ProcControlPara[NowPoint]);
+                        //    break;
                         case (int)MaintenanceExecuteNo.SubContractorItem:               // 13:協力会社工種マスタ
                             MaintenanceExecuteNo_SubContractorItem(m_ProcControlPara[NowPoint]);
                             break;
@@ -433,6 +544,23 @@
                         case (int)MaintenanceExecuteNo.SubContractorJobCategory:        // 23:協力会社職種マスタ
                             MaintenanceExecuteNo_SubContractorJobCategory(m_ProcControlPara[NowPoint]);
                             break;
+                        case (int)MaintenanceExecuteNo.Security:                         // 24:セキュリティ区分マスタ
+                            MaintenanceExecuteNo_Security(m_ProcControlPara[NowPoint]);
+                            break;
+                        case (int)MaintenanceExecuteNo.OrderDivision:                   // 125:発注者区分登録
+                            MaintenanceExecuteNo_OrderDivision(m_ProcControlPara[NowPoint]);
+                            break;
+                        case (int)MaintenanceExecuteNo.ConstructionExpenses:            // 126:施工経費区分登録
+                            MaintenanceExecuteNo_ConstructionExpenses(m_ProcControlPara[NowPoint]);
+                            break;
+                        case (int)MaintenanceExecuteNo.MaterialKind:                    // 127:資材種類マスタ
+                            MaintenanceExecuteNo_MaterialKind(m_ProcControlPara[NowPoint]);
+                            break;
+                        case (int)MaintenanceExecuteNo.MaterialItem:                    // 128:資材品目マスタ
+                            MaintenanceExecuteNo_MaterialItems(m_ProcControlPara[NowPoint]);
+                            break;
+
+
                         #endregion
 
                         #region サブフォーム
@@ -440,11 +568,11 @@
                         case (int)SubFormExecuteNo.MessageWriter:                       //  1:掲示板入力(新バージョン)
                             SubFormExecuteNo_MessageWriter(m_ProcControlPara[NowPoint]);
                             break;
-                        
+
                         case (int)SubFormExecuteNo.MessageReader:                       //  2:掲示板読込
                             SubFormExecuteNo_MessageReader(m_ProcControlPara[NowPoint]);
                             break;
-                        
+
                         case (int)SubFormExecuteNo.ActionSchdule:                       //  3:行動予定入力
                             SubFormExecuteNo_ActionSchdule(m_ProcControlPara[NowPoint]);
                             break;
@@ -634,6 +762,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -658,6 +787,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
                 // コピーデータ作成フラグセット
@@ -670,6 +808,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -694,6 +833,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
 
@@ -703,6 +851,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -727,6 +876,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
 
@@ -737,6 +895,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -761,6 +920,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
 
@@ -770,6 +938,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -778,33 +947,6 @@
         }
         #endregion
 
-        #region 積算予算書印刷
-        /// <summary>
-        /// 積算予算書印刷
-        /// </summary>
-        /// <returns></returns>
-        public static void ProcessExecuteNo_EstimateBudgetPrint(ProcessParameter CurrentPara)
-        {
-            // 積算予算書印刷
-            FrmEstimateBudgetPrint frm = new FrmEstimateBudgetPrint();
-            try
-            {
-                frm.ConstructionCode = CurrentPara.IntExecParameter[0];
-
-                // フォーム表示
-                frm.ShowDialog();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                frm.Dispose(); frm = null;
-            }
-        }
-        #endregion
-        
         #region 工事予算書入力
         /// <summary>
         /// 工事予算書入力
@@ -821,6 +963,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
 
@@ -830,6 +981,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -854,9 +1006,25 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
+                if (CurrentPara.IntExecParameter.Count > 2) frm.OrderNo = CurrentPara.IntExecParameter[2];
 
+                // 直接表示フラグのセット
+                if (CurrentPara.BoolExecParameter.Count > 0)
+                {
+                    frm.DirectFlg = CurrentPara.BoolExecParameter[0];
+                }
+
                 // フォーム表示
                 frm.ShowDialog();
             }
@@ -863,6 +1031,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -887,8 +1056,18 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
+                frm.OrderNo = CurrentPara.IntExecParameter[1];
 
                 // フォーム表示
                 frm.ShowDialog();
@@ -896,6 +1075,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -914,6 +1094,15 @@
             FrmApprovalList frm = new FrmApprovalList();
             try
             {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+
                 // 条件を取り込む
                 frm.ApprovalCode = CurrentPara.IntExecParameter[0];
 
@@ -923,6 +1112,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -942,6 +1132,15 @@
             FrmCopyTargetList frm = new FrmCopyTargetList();
             try
             {
+                int ProcessNo = (int)ProcessExecuteNo.ConstructionCopyList;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+
                 // パラメータセット
                 frm.ExecuteBaseNo = CurrentPara.IntExecParameter[0];      // 起動元番号
 
@@ -951,6 +1150,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -967,9 +1167,18 @@
         public static void ProcessExecuteNo_ConstructionLedgerList(ProcessParameter CurrentPara)
         {
             //　工事詳細台帳一覧
-            FrmConstructionLedgerList frm = new FrmConstructionLedgerList();
+            FrmLedgerStatus frm = new FrmLedgerStatus();
             try
             {
+                int ProcessNo = (int)ProcessExecuteNo.ConstructionLedgerList;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+
                 // 次起動プロセスセット
                 frm.ExecuteFlg = CurrentPara.IntExecParameter[0];
 
@@ -979,6 +1188,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1003,6 +1213,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
 
@@ -1012,6 +1231,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1036,8 +1256,18 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
+                if (CurrentPara.IntExecParameter.Count > 1) frm.PersonCode = CurrentPara.IntExecParameter[1];
 
                 // フォーム表示
                 frm.ShowDialog();
@@ -1045,6 +1275,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1064,6 +1295,15 @@
             FrmDRList frm = new FrmDRList();
             try
             {
+                int ProcessNo = (int)ProcessExecuteNo.DRList;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+
                 // 次起動プロセスが設定されていない場合は終了
                 if (CurrentPara.IntExecParameter[0] == 0)
                 {
@@ -1082,6 +1322,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1106,6 +1347,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
                 frm.PersonCode = CurrentPara.IntExecParameter[1];
@@ -1117,6 +1367,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1141,6 +1392,15 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
                 // パラメータセット
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
 
@@ -1150,6 +1410,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1158,27 +1419,110 @@
         }
         #endregion
 
-        #region 日報一覧
+        #region 部署別台帳一覧
         /// <summary>
-        /// 日報一覧
+        /// 部署別台帳一覧
         /// </summary>
         /// <returns></returns>
-        public static void ProcessExecuteNo_DailyReportList(ProcessParameter CurrentPara)
+        public static void ProcessExecuteNo_DepartmentExpenssList(ProcessParameter CurrentPara)
         {
-            //　日報一覧
-            FrmDailyReportList frm = new FrmDailyReportList();
+            //　部署別台帳一覧
+            FrmDepExpenssList frm = new FrmDepExpenssList();
             try
             {
+                int ProcessNo = (int)ProcessExecuteNo.DepartmentExpenssList;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+
+                // フォーム表示
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 工事詳細台帳一覧（個人指定）
+        /// <summary>
+        /// 工事詳細台帳一覧（個人指定）
+        /// </summary>
+        /// <returns></returns>
+        public static void ProcessExecuteNo_ConstrLedgerPersonList(ProcessParameter CurrentPara)
+        {
+            //　工事詳細台帳一覧
+            FrmLedgerStatus frm = new FrmLedgerStatus();
+            try
+            {
+                int ProcessNo = (int)ProcessExecuteNo.ConstructionLedgerList;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+
                 // 次起動プロセスセット
-                frm.ProcessNo = CurrentPara.IntExecParameter[0];
+                frm.ExecuteFlg = CurrentPara.IntExecParameter[0];
 
+                // 初期選択無しフラグ
+                frm.FirstStartFlg = false;
+
+                // 初期選択年度
+                frm.FirstStartPeriod = CurrentPara.IntExecParameter[1];
+
+                // 初期選択部署コード
+                frm.FirstStartDepartmentCode = CurrentPara.IntExecParameter[2];
+
+                // 初期選択担当者コード
+                frm.FirstStartPersonCode = CurrentPara.IntExecParameter[3];
+
                 // フォーム表示
                 frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
 
+        #region 注文書発給一覧
+        /// <summary>
+        /// 注文書発給一覧
+        /// </summary>
+        /// <param name="CurrentPara"></param>
+        public static void ProcessExecuteNo_PurchaseOrderStatus(ProcessParameter CurrentPara)
+        {
+            //　注文書発給一覧
+            FrmPurchaseOrderStatus frm = new FrmPurchaseOrderStatus();
+            try
+            {
+                // フォーム表示
+                frm.ShowDialog();
+                
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1187,27 +1531,127 @@
         }
         #endregion
 
-        #region 日報入力
+        #region 工事結合
         /// <summary>
-        /// 工事日報入力
+        /// 工事結合
         /// </summary>
+        /// <param name="CurrentPara"></param>
+        public static void ProcessExecuteNo_OrderJoin(ProcessParameter CurrentPara)
+        {
+            //　工事結合
+            FrmConstructionJoin frm = new FrmConstructionJoin();
+            try
+            {
+                // フォーム表示
+                frm.ShowDialog();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 工事分割
+        /// <summary>
+        /// 工事分割
+        /// </summary>
+        /// <param name="CurrentPara"></param>
+        public static void ProcessExecuteNo_ConstructionSplit(ProcessParameter CurrentPara)
+        {
+            //　工事分割
+            FrmConstructionSplit frm = new FrmConstructionSplit();
+            try
+            {
+                // フォーム表示
+                frm.ShowDialog();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 出勤管理入力
+        /// <summary>
+        /// 出勤管理入力
+        /// </summary>
         /// <returns></returns>
-        public static void ProcessExecuteNo_DailyReport(ProcessParameter CurrentPara)
+        public static void ProcessExecuteNo_DRWork(ProcessParameter CurrentPara)
         {
-            // 日報入力
-            FrmDailyReport frm = new FrmDailyReport();
+            // 出勤管理入力
+            FrmDRWork frm = new FrmDRWork();
             try
             {
-                // ----- パラメータセット
-                // 選択工事番号セット
-                frm.ConstructionCode = CurrentPara.IntExecParameter[0];
+                // 自分のハンドルをリストへセットする
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.DRWork;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = ProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
-                // 選択行担当者セット
+                // 起動・編集フラグ
+                //int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                //if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                //{
+                //    BackProcess();
+                //    return;
+                //}
+                //if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
+                // パラメータセット
                 frm.PersonCode = CurrentPara.IntExecParameter[1];
 
-                // 選択行作成日セット
-                frm.ReportDate = CommonMotions.cnvDate(CurrentPara.StringExecParameter[0]);
+                // フォーム表示
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
 
+        #endregion
+
+        #region 資材一覧画面
+        /// <summary>
+        /// 資材一覧画面
+        /// </summary>
+        /// <returns></returns>
+        public static void ProcessExecuteNo_MaterialList(ProcessParameter CurrentPara)
+        {
+            // 資材一覧
+            FrmMaterialList frm = new FrmMaterialList();
+            try
+            {
+                int ProcessNo = (int)ProcessExecuteNo.MaterialList;
+                // 起動・編集フラグ
+                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();
             }
@@ -1222,20 +1666,32 @@
         }
         #endregion
 
-        #region 部署別台帳一覧
+        #region 資材履歴画面
         /// <summary>
-        /// 部署別台帳一覧
+        /// 資材履歴画面
         /// </summary>
         /// <returns></returns>
-        public static void ProcessExecuteNo_DepartmentExpenssList(ProcessParameter CurrentPara)
+        public static void ProcessExecuteNo_MaterialHistoryEntry(ProcessParameter CurrentPara)
         {
-            //　部署別台帳一覧
-            FrmDepExpenssList frm = new FrmDepExpenssList();
+            // 資材履歴画面
+            FrmMaterialHistory frm = new FrmMaterialHistory();
             try
             {
-                // 次起動プロセスセット
-                //frm.ExecuteFlg = CurrentPara.IntExecParameter[0];
+                frm.MaterialType = CurrentPara.StringExecParameter[0].ToString();
+                frm.MaterialItemCode = CurrentPara.IntExecParameter[0];
+                frm.MaterialItem = CurrentPara.StringExecParameter[1].ToString();
+                frm.MaterialCount = CurrentPara.StringExecParameter[2].ToString();
+                frm.MaterialAssignableCount = CurrentPara.StringExecParameter[3].ToString();
 
+                int ProcessNo = (int)ProcessExecuteNo.MaterialHistory;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+
                 // フォーム表示
                 frm.ShowDialog();
             }
@@ -1250,31 +1706,67 @@
         }
         #endregion
 
-        #region 工事詳細台帳一覧（個人指定）
+        #region 資材数変更画面
         /// <summary>
-        /// 工事詳細台帳一覧（個人指定）
+        /// 資材数変更画面
         /// </summary>
         /// <returns></returns>
-        public static void ProcessExecuteNo_ConstrLedgerPersonList(ProcessParameter CurrentPara)
+        public static void ProcessExecuteNo_MaterialCountEntry(ProcessParameter CurrentPara)
         {
-            //　工事詳細台帳一覧
-            FrmConstructionLedgerList frm = new FrmConstructionLedgerList();
+            // 資材数変更画面
+            FrmMaterialCountEntry frm = new FrmMaterialCountEntry();
             try
             {
-                // 次起動プロセスセット
-                frm.ExecuteFlg = CurrentPara.IntExecParameter[0];
+                frm.MaterialType = CurrentPara.StringExecParameter[0].ToString();
+                frm.MaterialItemCode = CurrentPara.IntExecParameter[0];
+                frm.MaterialItem = CurrentPara.StringExecParameter[1].ToString();
+                frm.MaterialCount = CurrentPara.StringExecParameter[2].ToString();
+                frm.MaterialAssignableCount = CurrentPara.StringExecParameter[3].ToString();
 
-                // 初期選択無しフラグ
-                frm.FirstStartFlg = false;
+                int ProcessNo = (int)ProcessExecuteNo.MaterialCountEntry;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
 
-                // 初期選択年度
-                frm.FirstStartPeriod = CurrentPara.IntExecParameter[1];
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
 
-                // 初期選択部署コード
-                frm.FirstStartDepartmentCode = CurrentPara.IntExecParameter[2];
+                // フォーム表示
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
 
-                // 初期選択担当者コード
-                frm.FirstStartPersonCode = CurrentPara.IntExecParameter[3];
+        #region 資材選択画面
+        /// <summary>
+        /// 資材選択
+        /// </summary>
+        /// <param name="CurrentPara"></param>
+        public static void ProcessExecuteNo_MaterialSelect(ProcessParameter CurrentPara)
+        {
+            // 承認画面
+            FrmMaterialSelect frm = new FrmMaterialSelect();
+            try
+            {
+                int ProcessNo = (int)ProcessExecuteNo.MaterialSelect;
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
 
                 // フォーム表示
                 frm.ShowDialog();
@@ -1290,8 +1782,214 @@
         }
         #endregion
 
+        #region 資材貸出画面
+        /// <summary>
+        /// 資材貸出
+        /// </summary>
+        /// <param name="CurrentPara"></param>
+        public static void ProcessExecuteNo_MaterialReserveEntry(ProcessParameter CurrentPara)
+        {
+            // 工事案件選択画面
+            FrmConstructionDiag frmCnstDlg = new FrmConstructionDiag();
+
+            // 工事一覧の表示に必要なデータを設定(担当者コード、工事担当者検索)
+            frmCnstDlg.PersonCode = CommonMotions.LoginUserData.PersonCode;
+            frmCnstDlg.PersonCharge = (int)FrmConstructionDiag.PersonChargePoint.Construction;
+            frmCnstDlg.SelectType = (int)FrmConstructionDiag.SelectConstructionType.Ongoing;
+
+            // 工事案件選択画面のオープン
+            frmCnstDlg.ShowDialog();
+
+            // 資材貸出
+            FrmMaterialReserveEntry frm = new FrmMaterialReserveEntry();
+            try
+            {
+                int ProcessNo = (int)ProcessExecuteNo.MaterialReserveEntry;
+
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+
+                // 工事案件選択画面で選択された工事番号をセット
+                frm.ConstructionCode = frmCnstDlg.ConstructionCode;
+
+                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);
+            }
+            finally
+            {
+                frm.Dispose();
+                frm = null;
+            }
+        }
         #endregion
 
+        #region 資材返却画面
+        /// <summary>
+        /// 資材返却
+        /// </summary>
+        /// <param name="CurrentPara"></param>
+        public static void ProcessExecuteNo_MaterialReturnEntry(ProcessParameter CurrentPara)
+        {
+            // 工事案件選択画面
+            FrmConstructionDiag frmCnstDlg = new FrmConstructionDiag();
+
+            // 工事一覧の表示に必要なデータを設定(担当者コード、工事担当者検索)
+            frmCnstDlg.PersonCode = CommonMotions.LoginUserData.PersonCode;
+            frmCnstDlg.PersonCharge = (int)FrmConstructionDiag.PersonChargePoint.Construction;
+            frmCnstDlg.SelectType = (int)FrmConstructionDiag.SelectConstructionType.Ongoing;
+
+            // 工事案件選択画面のオープン
+            frmCnstDlg.ShowDialog();
+
+            // 資材返却
+            FrmMaterialReturnEntry frm = new FrmMaterialReturnEntry();
+
+            try
+            {
+                int ProcessNo = (int)ProcessExecuteNo.MaterialReturnEntry;
+
+                // 起動・編集フラグ
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+
+                // 工事案件選択画面で選択された工事番号をセット
+                frm.ConstructionCode = frmCnstDlg.ConstructionCode;
+
+                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);
+            }
+            finally
+            {
+                frm.Dispose();
+                frm = null;
+            }
+        }
+        #endregion
+
+        #region 請求まとめ画面
+        /// <summary>
+        /// 請求まとめ画面
+        /// </summary>
+        /// <returns></returns>
+        public static void ProcessExecuteNo_RequestSummaryList(ProcessParameter CurrentPara)
+        {
+            //// 請求まとめ画面
+            FrmRequestSummaryList frm = new FrmRequestSummaryList();
+            try
+            {
+                // パラメータセット
+                frm.Labourkind = CurrentPara.IntExecParameter[0];
+
+                // フォーム表示
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 請求入力画面
+        /// <summary>
+        /// 請求入力画面
+        /// </summary>
+        /// <returns></returns>
+        public static void ProcessExecuteNo_RequestInput(ProcessParameter CurrentPara)
+        {
+            // 工事案件選択画面
+            FrmConstructionDiag frmCnstDlg = new FrmConstructionDiag();
+
+            // 工事一覧の表示に必要なデータを設定(担当者コード、工事担当者検索)
+            frmCnstDlg.PersonCode = CommonMotions.LoginUserData.PersonCode;
+            frmCnstDlg.PersonCharge = (int)FrmConstructionDiag.PersonChargePoint.Construction;
+            frmCnstDlg.SelectType = CurrentPara.IntExecParameter[0];
+
+            // 工事案件選択画面のオープン
+            frmCnstDlg.ShowDialog();
+
+            // 工事番号を取得できなかった場合
+            if (0 == frmCnstDlg.ConstructionCode)
+            {
+                ClsExcute.BackProcess();
+                return;
+            }
+
+            // 請求入力画面
+            FrmRequestInput frm = new FrmRequestInput();
+
+            try
+            {
+
+                // 工事案件選択画面で選択された工事番号をセット
+                frm.ConstructionCode = frmCnstDlg.ConstructionCode;
+
+                // 請求入力の表示
+                frm.ShowDialog();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 入金確認
+        /// <summary>
+        /// 入金確認
+        /// </summary>
+        /// <param name="CurrentPara"></param>
+        public static void ProcessExecuteNo_PaymentConfirmation(ProcessParameter CurrentPara)
+        {
+            //　入金確認
+            FrmSelectPayment frm = new FrmSelectPayment();
+            try
+            {
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
         #region マスタメンテナンス
         // ----------------- メンテナンス起動
         #region 管理マスタ
@@ -1305,16 +2003,26 @@
             FrmSystem frm = new FrmSystem();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.System;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1330,16 +2038,26 @@
             FrmPersonInCharge frm = new FrmPersonInCharge();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.PersonInCharge;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1355,16 +2073,26 @@
             FrmComponent frm = new FrmComponent();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.Component;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1380,16 +2108,26 @@
             FrmDepartment frm = new FrmDepartment();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.Department;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1405,16 +2143,26 @@
             FrmConstructionItem frm = new FrmConstructionItem();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.ConstructionItem;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1430,16 +2178,26 @@
             FrmConstructionSpec frm = new FrmConstructionSpec();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.ConstructionWork;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1455,16 +2213,26 @@
             FrmUnitMaster frm = new FrmUnitMaster();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.Unit;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1480,20 +2248,26 @@
             FrmSubContractor frm = new FrmSubContractor();
             try
             {
-                // 閲覧フラグチェック
-                if (CurrentPara.BoolExecParameter.Count > 0)
-                    frm.BrowseFlg = CurrentPara.BoolExecParameter[0];
-                
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.SubContractor;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1509,9 +2283,15 @@
             FrmOrderers frm = new FrmOrderers();
             try
             {
-                // 閲覧フラグチェック
-                if (CurrentPara.BoolExecParameter.Count > 0)
-                    frm.BrowseFlg = CurrentPara.BoolExecParameter[0];
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.Orderers;
+                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();
             }
@@ -1518,11 +2298,11 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
-                frm.Dispose();
-                frm = null;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1538,32 +2318,15 @@
             FrmBusinessTypeMaster frm = new FrmBusinessTypeMaster();
             try
             {
-                frm.ShowDialog();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                frm.Dispose();
-                frm = null;
-            }
-        }
-        #endregion
-        
-        #region 区分マスタ
-        /// <summary>
-        /// 区分マスタ
-        /// </summary>
-        /// <returns></returns>
-        public static void MaintenanceExecuteNo_Division(ProcessParameter CurrentPara)
-        {
-            // 区分マスタ
-            FrmDivision frm = new FrmDivision();
-            try
-            {
-                frm.DivisionCode = CurrentPara.IntExecParameter[0];
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.BusinessType;
+                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();
             }
@@ -1570,39 +2333,15 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
-                frm.Dispose();
-                frm = null;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
         
-        #region 経費率マスタ
-        /// <summary>
-        /// 経費率マスタ
-        /// </summary>
-        public static void MaintenanceExecuteNo_Expenses(ProcessParameter CurrentPara)
-        {
-            // 経費率マスタ
-            FrmExpenses frm = new FrmExpenses();
-            try
-            {
-                frm.ShowDialog();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                frm.Dispose();
-                frm = null;
-            }
-        }
-        #endregion
-        
         #region 協力会社工種マスタ
         /// <summary>
         /// 協力会社工種マスタ
@@ -1613,16 +2352,26 @@
             FrmSubContractorItem frm = new FrmSubContractorItem();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.SubContractorItem;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1637,16 +2386,26 @@
             FrmCalendar frm = new FrmCalendar();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.Calender;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1661,16 +2420,26 @@
             FrmVehicle frm = new FrmVehicle();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.VehicleMaster;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1685,16 +2454,26 @@
             FrmTerm frm = new FrmTerm();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.TermMaster;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1709,16 +2488,26 @@
             FrmSalesGraphData frm = new FrmSalesGraphData();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.SaleSalesGraphData;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1733,16 +2522,26 @@
             FrmApprovalRoute frm = new FrmApprovalRoute();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.ApprovalRoute;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1757,16 +2556,26 @@
             FrmConstructionType frm = new FrmConstructionType();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.ConstructionType;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1782,16 +2591,26 @@
             FrmComponentLink frm = new FrmComponentLink();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.ComponentLink;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1807,16 +2626,26 @@
             FrmAlwaysEmployment frm = new FrmAlwaysEmployment();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.AlwaysEmployment;
+                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;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1832,9 +2661,15 @@
             FrmSuppliers frm = new FrmSuppliers();
             try
             {
-                // 閲覧フラグチェック
-                if (CurrentPara.BoolExecParameter.Count > 0)
-                    frm.BrowseFlg = CurrentPara.BoolExecParameter[0];
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.Suppliers;
+                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();
             }
@@ -1841,11 +2676,11 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
-                frm.Dispose();
-                frm = null;
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -1860,14 +2695,169 @@
             FrmSubContractorJobCategory frm = new FrmSubContractorJobCategory();
             try
             {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.SubContractorJobCategory;
+                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
+
+        #region セキュリティ区分マスタ
+        /// <summary>
+        /// セキュリティ区分マスタ
+        /// </summary>
+        public static void MaintenanceExecuteNo_Security(ProcessParameter CurrentPara)
+        {
+            // セキュリティ区分マスタ
+            FrmSecurity frm = new FrmSecurity();
+            try
+            {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.Security;
+                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
+
+        #region 発注者区分マスタ
+        /// <summary>
+        /// 発注者区分マスタ
+        /// </summary>
+        /// <returns></returns>
+        public static void MaintenanceExecuteNo_OrderDivision(ProcessParameter CurrentPara)
+        {
+            // 区分マスタ
+            FrmDivision frm = new FrmDivision();
+            try
+            {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.OrderDivision;
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
+                frm.DivisionCode = (int)CommonDefine.DivisionMasterCodeDefine.OrderDivision;
+
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 施工経費区分マスタ
+        /// <summary>
+        /// 施工経費区分マスタ
+        /// </summary>
+        /// <returns></returns>
+        public static void MaintenanceExecuteNo_ConstructionExpenses(ProcessParameter CurrentPara)
+        {
+            // 区分マスタ
+            FrmDivision frm = new FrmDivision();
+            try
+            {
+                // 起動・編集フラグ
+                int ProcessNo = (int)MaintenanceExecuteNo.ConstructionExpenses;
+                int EditFlg = (int)CommonDefine.ProcessDataEdit.Reference;
+                if (!ClsSecurityPermission.GetExecutePermission(ProcessNo, ref EditFlg))
+                {
+                    BackProcess();
+                    return;
+                }
+                if (EditFlg == (int)CommonDefine.ProcessDataEdit.Reference) frm.EditLock = true;
+
+                frm.DivisionCode = (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses;
+
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 資材種類マスタ
+        /// <summary>
+        /// 資材種類マスタ
+        /// </summary>
+        /// <returns></returns>
+        public static void MaintenanceExecuteNo_MaterialKind(ProcessParameter CurrentPara)
+        {
+            // 資材種類マスタ
+            FrmMaterialTypesMaster frm = new FrmMaterialTypesMaster();
+            try
+            {
+                int ProcessNo = (int)MaintenanceExecuteNo.MaterialKind;
+                // 起動・編集フラグ
+                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);
+            }
+            finally
+            {
                 frm.Dispose();
                 frm = null;
             }
@@ -1874,8 +2864,45 @@
         }
         #endregion
 
+        #region 資材品目マスタ
+        /// <summary>
+        /// 資材品目マスタ
+        /// </summary>
+        /// <returns></returns>
+        public static void MaintenanceExecuteNo_MaterialItems(ProcessParameter CurrentPara)
+        {
+            // 資材種類マスタ
+            FrmMaterialItemsMaster frm = new FrmMaterialItemsMaster();
+            try
+            {
+                int ProcessNo = (int)MaintenanceExecuteNo.MaterialItem;
+                // 起動・編集フラグ
+                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);
+            }
+            finally
+            {
+                frm.Dispose();
+                frm = null;
+            }
+        }
         #endregion
 
+        #endregion
+
         #region サブフォーム
         #region 掲示板メッセージ入力
         /// <summary>
@@ -1898,6 +2925,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1927,6 +2955,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1955,6 +2984,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -1983,6 +3013,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
@@ -2004,6 +3035,11 @@
             {
                 frm.ConstructionCode = CurrentPara.IntExecParameter[0];
                 frm.ApprovalCode = CurrentPara.IntExecParameter[1];
+                frm.OrderNo = CurrentPara.IntExecParameter[2];
+                for (int i = 3; i < CurrentPara.IntExecParameter.Count; i++)
+                {
+                    frm.PurchaseOrderSeqNo.Add(CurrentPara.IntExecParameter[i]);
+                }
 
                 // フォーム表示
                 frm.ShowDialog();
@@ -2011,6 +3047,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                BackProcess();
             }
             finally
             {
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsMessageBoradAccess.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsMessageBoradAccess.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsMessageBoradAccess.cs	(revision 51)
@@ -1,4 +1,5 @@
 ﻿using System;
+using System.Collections;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.IO;
@@ -89,6 +90,60 @@
         }
         #endregion
 
+        #region 掲示板データ登録(一括処理用)
+        /// <summary>
+        /// 掲示板データ登録(一括処理用)
+        /// </summary>
+        /// <returns></returns>
+        public static bool CreateMessage(IOMessageBoardData mbdDB, IOMessageBoardTerget mbtDB, MessageBoardData WriteData, List<MessageBoardTerget> WriteDetail)
+        {
+            DBCommonMotions dbCom = new DBCommonMotions();
+            try
+            {
+                // キーコードセット
+                WriteData.RecordNumber = mbdDB.SelectMaxMessageBoardDataKeyCount("", false) + 1;
+
+                dbCom.connect();
+                // 最大桁数をこえたら1に戻す
+                int DataLen = dbCom.GetTableColumnLength("MessageBoardData", "RecordNumber", false);
+                int DataMax = CommonMotions.CreateMaxNumeric(DataLen);
+                if (WriteData.RecordNumber >= DataMax) WriteData.RecordNumber = 1;
+
+                // データ登録
+                if (!mbdDB.OneRecInsertAction(WriteData, false))
+                {
+                    logger.ErrorFormat("掲示板メッセージ：登録に失敗しました。");
+                    return false;
+                }
+
+                int icnt = 1;
+                foreach (MessageBoardTerget wrk in WriteDetail)
+                {
+                    // キーコードセット
+                    wrk.RecordNumber = WriteData.RecordNumber;
+                    wrk.SeqNum = icnt++;
+                }
+                // データ登録
+                if (!mbtDB.InsertAction(WriteDetail, false))
+                {
+                    logger.ErrorFormat("掲示板対象者テーブル：登録に失敗しました。");
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                dbCom.close(); dbCom = null;
+            }
+        }
+        #endregion
+
         #region 掲示板可読権限確認
         /// <summary>
         /// 掲示板可読権限確認
@@ -97,11 +152,301 @@
         /// <param name="BuranchNo">レコード枝番</param>
         /// <param name="bRead">読込許可・書込み許可</param>
         /// <returns></returns>
-        public static bool MessageAccessPermission(int RecoadNo, int BuranchNo, bool bRead = true)
+        public static bool MessagePermission(int RecoadNo, int BuranchNo, bool bRead = true)
         {
+            try
+            {
+                bool MacthFlg = false;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    MacthFlg = MessageOldPermission(RecoadNo, BuranchNo, bRead);
+                }
+                else
+                {
+                    // 編集・書込み時のチェック
+                    MacthFlg = MessageNewEditPermission(RecoadNo, BuranchNo);
+                    // 読込み時のチェック
+                    if (bRead)
+                    {
+                        MacthFlg = MessageNewReadPermission(RecoadNo, BuranchNo);
+                    }
+                }
+
+                return MacthFlg;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 掲示板読込・編集権限確認（新タイプ対応）
+        /// <summary>
+        /// 掲示板編集権限確認（新タイプ対応）
+        /// </summary>
+        public static bool MessageNewEditPermission(int RecoadNo, int BuranchNo)
+        {
+            IOMessageBoardData mbdDB = new IOMessageBoardData();
+            IOMSecurity secDB = new IOMSecurity();
+            try
+            {
+                // 対象データの取得
+                string strSQL = "SELECT A.*, B.*, C.* FROM MESSAGEBOARDDATA A";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER B ON B.PERSONCODE = A.FROMCODE";
+                strSQL += " LEFT JOIN SECURITYMASTER C ON C.SECCODE = B.SECCODE";
+                strSQL += string.Format(" WHERE A.RECORDNUMBER = {0} AND A.BRANCHNUMBER = {1}", RecoadNo, BuranchNo);
+
+                ArrayList mbdRec = new ArrayList();
+                if (!mbdDB.ExecuteReader(strSQL, ref mbdRec)) return false;
+                object[] objRec = (object[])mbdRec[0];
+
+                int PersonBaseBoardDataCnt = Enum.GetNames(typeof(IOMessageBoardData.ColumnCnt)).Length;
+                int SecBaseDataCnt = Enum.GetNames(typeof(IOMPersonInCharge.ColumnCnt)).Length + PersonBaseBoardDataCnt;
+
+                // アクセスランク位置取得
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;
+                int NRank = (int)CommonDefine.SecurityRankPos.NormalAuthority;
+
+                // 書込み者コードの取得
+                int FromCode = CommonMotions.cnvInt(objRec[(int)IOMessageBoardData.ColumnCnt.FromCode]);
+                // 書込み者セキュリティランクの取得
+                int TargetSecRank = CommonMotions.cnvInt(objRec[SecBaseDataCnt + (int)IOMSecurity.DataColumn.SecRank]);
+                
+                // 秘書からの連絡は編集対象外
+                if (FromCode == CommonDefine.s_MsgBoardSystemCode) return false;
+
+                // 作成者がログイン者ならば編集可能
+                if (FromCode == CommonMotions.LoginUserData.PersonCode) return true;
+
+                // システム権限によってデータアクセスに制限がある
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                {
+                    // ----- システム管理者（すべて対象）
+                    return true;
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
+                {
+                    // ----- 経営者アクセス（すべて対象）
+                    return true;
+                }
+                else
+                {
+                    // ----- 統括者アクセス
+                    // ----- 所属長アクセス（参照部署のみ対象）
+                    // 書込み者が自分より上位ランクのデータは編集できない
+                    if (CommonMotions.LoginUserData.SecCode < TargetSecRank) return false;
+
+                    // ----- 一般使用者アクセス(一般者は自分のメッセージのみ編集できる)
+                    if (CommonMotions.LoginUserSecurity.SecRank != (int)CommonDefine.SecurityRankList[NRank].Key) return false;
+
+                    int depcode = 0;
+                    if (FromCode < 99999)
+                    {
+                        // 部署の書込み
+                        depcode = FromCode;
+
+                        // 部署のMAXのセキュリティ区分を取得する
+                        string strSECSQL = "SELECT MAX(B.SECRANK) FROM PERSONINCHARGEMASTER A, SECURITYMASTER B";
+                        strSECSQL += string.Format(" WHERE DEPARTMENTCODE = {0} AND B.SECCODE = A.SECCODE", FromCode);
+                        ArrayList SecarList = new ArrayList();
+                        secDB.ExecuteReader(strSECSQL, ref SecarList);
+                        object[] objSecRec = (object[])SecarList[0];
+                        int OfficeSec = CommonMotions.cnvInt(objSecRec[0]);
+                        if (OfficeSec != 0)
+                        {
+                            // 経営者アクセス権限者の部署は当事者しかアクセスできない
+                            if (OfficeSec == (int)CommonDefine.SecurityRankList[SRank].Key)
+                            {
+                                if (CommonMotions.LoginUserSecurity.SecRank != (int)CommonDefine.SecurityRankList[SRank].Key) return false;
+                            }
+                        }
+                    }
+                    else
+                    {
+                        // 担当者の書込み
+                        depcode = CommonMotions.cnvInt(objRec[PersonBaseBoardDataCnt + (int)IOMPersonInCharge.ColumnCnt.DepartmentCode]);
+                    }
+                    // 参照部署があるかのチェック
+                    foreach (PersonDepartmentMaster wrkRec in CommonMotions.LoginUserDepartment)
+                    {
+                        if (depcode == wrkRec.DepartmentCode) return true;
+                    }
+                }
+
+                return false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                mbdDB.close(); mbdDB = null;
+                secDB.close(); secDB = null;
+            }
+        }
+        #endregion
+
+        #region 掲示板可読権限確認読込順
+        private enum GetTarget
+        {
+            ShareFlag = 0,
+            DepartmentCode,
+            SecRank
+        }
+        #endregion
+
+        #region 掲示板可読権限確認（新タイプ対応）
+        /// <summary>
+        /// 掲示板可読権限確認（新タイプ対応）
+        /// </summary>
+        /// <param name="RecoadNo">レコード番号</param>
+        /// <param name="BuranchNo">レコード枝番</param>
+        /// <param name="bRead">読込許可・書込み許可</param>
+        /// <returns></returns>
+        public static bool MessageNewReadPermission(int RecoadNo, int BuranchNo)
+        {
             IOMessageBoardTerget mbtDB = new IOMessageBoardTerget();
+            IOMSecurity secDB = new IOMSecurity();
+            try
+            {
+                // 権限ランク取得
+                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)
+                {
+                    // ----- システム管理者（すべて対象）
+                    return true;
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
+                {
+                    // ----- 経営者アクセス（すべて対象）
+                    return true;
+                }
+                else
+                {
+                    // 掲示板閲覧テーブルのチェック
+                    string strSQL = "SELECT A.*, B.SHAREFLAG, C.DEPARTMENTCODE, D.SECRANK FROM MESSAGEBOARDTERGET A";
+                    strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.TOCODE";
+                    strSQL += " LEFT JOIN SECURITYMASTER D ON D.SECCODE = C.SECCODE";
+                    strSQL += " , MESSAGEBOARDDATA B";
+                    strSQL += string.Format(" WHERE A.RECORDNUMBER = {0} AND A.BRANCHNUMBER = {1}", RecoadNo, BuranchNo);
+                    strSQL += " AND B.RECORDNUMBER = A.RECORDNUMBER";
+                    strSQL += " AND B.BRANCHNUMBER = A.BRANCHNUMBER";
+
+                    ArrayList terList = new ArrayList();
+                    if (!mbtDB.ExecuteReader(strSQL, ref terList)) return true;
+                    if (terList.Count == 0) return true;
+
+                    // 対象テーブルにあるか？
+                    int TergetCnt = Enum.GetNames(typeof(IOMessageBoardTerget.NameColumn)).Length;
+                    MessageBoardTerget wrkRec = new MessageBoardTerget();
+                    for (int i = 0; i < terList.Count; i++)
+                    {
+                        mbtDB.ClearStruct(ref wrkRec);
+                        object[] objRec = (object[])terList[i];
+                        mbtDB.Reader2Struct(objRec, ref wrkRec);
+
+
+                        // ----------
+                        int CurRecRank = 0;
+                        int DepCode = 0;
+                        // 対象者コードが5桁以下ならば部署コード
+                        if (wrkRec.ToCode < 99999)
+                        {
+                            // 所属が対象ならばOK
+                            if (wrkRec.ToCode == CommonMotions.LoginUserData.DepartmentCode) return true;
+
+                            // 管理者対象フラグ取得
+                            int ShareFlag = CommonMotions.cnvInt(objRec[TergetCnt + (int)GetTarget.ShareFlag]);
+                            // 管理者対象フラグがONの時にログイン者が一般ユーザーの場合はメッセージを見せない
+                            if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[NRank].Key)
+                            {
+                                if (ShareFlag != 0) return false;
+                            }
+
+                            string strSECSQL = "SELECT MAX(B.SECRANK) FROM PERSONINCHARGEMASTER A, SECURITYMASTER B";
+                            strSECSQL += string.Format(" WHERE DEPARTMENTCODE = {0} AND B.SECCODE = A.SECCODE", wrkRec.ToCode);
+                            ArrayList SecarList = new ArrayList();
+                            secDB.ExecuteReader(strSECSQL, ref SecarList);
+                            object[] objSecRec = (object[])SecarList[0];
+
+                            // 部署コード取得
+                            DepCode = wrkRec.ToCode;
+                            
+                            // 部署の最高アクセス権限を取得する
+                            CurRecRank = CommonMotions.cnvInt(objSecRec[0]);
+                            if (CurRecRank == 0) CurRecRank = 9;
+                        }
+                        else
+                        {   // ----- 以外は担当者コード
+                            // 全員の場合はOK
+                            if (wrkRec.ToCode == CommonDefine.s_AllMembersCode) return true;
+
+                            // 対象に自分があればOK
+                            if (wrkRec.ToCode == CommonMotions.LoginUserData.PersonCode) return true;
+
+                            // 読込対象者の所属部署を取得する
+                            DepCode = CommonMotions.cnvInt(objRec[TergetCnt + (int)GetTarget.DepartmentCode]);
+
+                            // アクセスランクを取得する
+                            CurRecRank = CommonMotions.cnvInt(objRec[TergetCnt + (int)GetTarget.SecRank]);
+                            if (CurRecRank == 0) CurRecRank = 9;
+                        }
+                        // 部署コードが無い場合はチェックしない
+                        if (DepCode == 0) continue;
+                     
+                        // ログイン者が所属長の場合は対象者の所属部署を参照部署と比較
+                        if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key
+                            || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)
+                        {
+                            // 参照部署にあるかのチェック
+                            foreach (PersonDepartmentMaster RefDepRec in CommonMotions.LoginUserDepartment)
+                            {
+                                if (DepCode == RefDepRec.DepartmentCode)
+                                {
+                                    // 書込み者が自分より上位者では無い場合は読み込める
+                                    if (CommonMotions.LoginUserSecurity.SecRank <= CurRecRank) return true;
+                                }
+                            }
+                        }
+                    }
+                }
+
+                return false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                mbtDB.close(); mbtDB = null;
+                secDB.close(); secDB = null;
+            }
+        }
+        #endregion
+
+        #region 掲示板可読権限確認（旧来チェック）
+        /// <summary>
+        /// 掲示板可読権限確認（旧来チェック）
+        /// </summary>
+        /// <param name="RecoadNo">レコード番号</param>
+        /// <param name="BuranchNo">レコード枝番</param>
+        /// <param name="bRead">読込許可・書込み許可</param>
+        /// <returns></returns>
+        public static bool MessageOldPermission(int RecoadNo, int BuranchNo, bool bRead = true)
+        {
+            IOMessageBoardTerget mbtDB = new IOMessageBoardTerget();
             IOMessageBoardData mbdDB = new IOMessageBoardData();
-            IOMPersonInCharge PicDB = new IOMPersonInCharge();
             try
             {
                 // メッセージデータの取得
@@ -216,7 +561,7 @@
                         // 所属が対象ならばOK
                         if (wrkRec.ToCode == CommonMotions.LoginUserData.DepartmentCode)
                         {   // 管理者対象フラグがONの時にログイン者が一般ユーザーの場合はメッセージを見せない
-                            if (mbdRec.ShareFlag != 0 
+                            if (mbdRec.ShareFlag != 0
                                 && CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
                                 continue;
 
@@ -251,9 +596,11 @@
             {
                 mbtDB.close(); mbtDB = null;
                 mbdDB.close(); mbdDB = null;
-                PicDB.close(); PicDB = null;
             }
         }
+        #endregion
+
+        #region 指定担当者がログインユーザー配下の所属かどうかを確認する
         /// <summary>
         /// 指定担当者がログインユーザー配下の所属かどうかを確認する
         /// </summary>
@@ -283,8 +630,39 @@
                 picDB.close(); picDB = null;
             }
         }
+        #endregion
 
+        #region 指定担当者がログインユーザー配下の所属かどうかを確認する
         /// <summary>
+        /// 指定担当者がログインユーザー配下の所属かどうかを確認する
+        /// </summary>
+        /// <param name="ToCode"></param>
+        /// <returns></returns>
+        private static int GetPersonInDepartment(int ToCode)
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            try
+            {
+                string strSQL = picDB.CreatePrimarykeyString(ToCode);
+                PersonInChargeMaster perRec = new PersonInChargeMaster();
+                if (!picDB.SelectAction(strSQL, ref perRec)) return 0;
+
+                return perRec.DepartmentCode;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+            }
+        }
+        #endregion
+
+        #region 指定担当者のセキュリティ区分を取得する
+        /// <summary>
         /// 指定担当者のセキュリティ区分を取得する
         /// </summary>
         /// <param name="PerSonCode"></param>
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsProcessExist.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsProcessExist.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsProcessExist.cs	(revision 51)
@@ -50,8 +50,43 @@
         private static int m_ConstructionCode = 0;
         #endregion
 
+        #region 結合工事フラグ
+        /// <summary>
+        /// 結合工事フラグ
+        /// </summary>
+        private static int m_BaseInfoJoinFlg = 0;
         #endregion
 
+        #region 増減工事フラグ
+        /// <summary>
+        /// 増減工事フラグ
+        /// </summary>
+        private static int m_BaseInfoTyingFlg = 0;
+        #endregion
+
+        #region 結合親工事コード
+        /// <summary>
+        /// 結合親工事コード
+        /// </summary>
+        private static int m_SearchCode = 0;
+        #endregion
+
+        #region 結合構成工事コード
+        /// <summary>
+        /// 結合構成工事コード
+        /// </summary>
+        private static List<int> m_CodeList = new List<int>();
+        #endregion
+
+        #region 機能承認回数
+        /// <summary>
+        /// 機能承認回数
+        /// </summary>
+        private static int m_OrderNo = 1;
+        #endregion
+
+        #endregion
+
         #region プロパティ
 
         #region 工事番号
@@ -65,32 +100,58 @@
         }
         #endregion
 
+        #region 機能承認回数
+        /// <summary>
+        /// 機能承認回数
+        /// </summary>
+        public static int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
         #endregion
 
-        #region 紐付きの場合は親コードを返す
+        #endregion
+
+        #region 増減工事・結合工事の場合は親コードを返す
         /// <summary>
-        /// 紐付きの場合は親コードを返す
+        /// 増減工事・結合工事の場合は親コードを返す
         /// </summary>
-        /// <param name="MyType"></param>
-        /// <param name="MyCode"></param>
+        /// <param name="InputCode"></param>
         /// <returns></returns>
-        public static int GetParentConstrCode(int MyCode)
+        public static int GetParentConstrCode(int InputCode)
         {
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             IOConstructionLink LinkDB = new IOConstructionLink();
             try
             {
-
-                string strBase = BaseDB.CreatePrimarykeyString(MyCode);
+                // 工事情報取得
+                string strBase = BaseDB.CreatePrimarykeyString(InputCode);
                 ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
-                if (!BaseDB.SelectAction(strBase, ref BaseRec)) return MyCode;
+                if (!BaseDB.SelectAction(strBase, ref BaseRec)) return InputCode;
 
-                // 紐付きでない場合は工事コードを返す
-                if (BaseRec.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Tying) return MyCode;
+                // 結合工事のチェック
+                if (BaseRec.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    // 結合工事は結合親工事番号を返す
+                    int FuncCnt = 0;
+                    ArrayList ParList = new ArrayList();
+                    ClsChangeBaseInfoData.GetParentData(InputCode, ref ParList, ref FuncCnt);
+                    // データ無はエラー
+                    if (ParList.Count == 0) return InputCode;
 
-                string strLink = string.Format(" WHERE FluctuationCode = {0}", MyCode);
+                    object[] objRec = (object[])ParList[0];
+                    return CommonMotions.cnvInt(objRec[0]);
+                }
+                else
+                {
+                    // 増減工事でない場合はそのまま工事コードを返す
+                    if (BaseRec.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Tying) return InputCode;
+                }
+                // 増減工事の場合は親コードを検索する
+                string strLink = string.Format(" WHERE FluctuationCode = {0}", InputCode);
                 ConstructionLink LinkRec = new ConstructionLink();
-                if (!LinkDB.SelectAction(strLink, ref LinkRec)) return MyCode;
+                if (!LinkDB.SelectAction(strLink, ref LinkRec)) return InputCode;
 
                 return LinkRec.ConstructionCode;
             }
@@ -97,7 +158,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return MyCode;
+                return InputCode;
             }
             finally
             {
@@ -107,6 +168,97 @@
         }
         #endregion
 
+        #region 結合・増減の対象リストを作成する
+        /// <summary>
+        /// 結合・増減の対象リストを作成する
+        /// </summary>
+        /// <param name="CodeList"></param>
+        public static void GetTargetList(IOConstructionBaseInfo BaseDB, ref List<int> CodeList, bool ParentAdd)
+        {
+            try
+            {
+                // 親工事番号を取得する
+                int ParentCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                // データ無はエラー
+                if (ParentCode == 0) return;
+
+                // 対象工事の結合・増減を確認する
+                string strSQL = "SELECT CONSTRUCTIONCODE, JoinFlg FROM CONSTRUCTIONBASEINFO A";
+                strSQL += BaseDB.CreatePrimarykeyString(m_ConstructionCode);
+                ArrayList BaseList = new ArrayList();
+
+                if (!BaseDB.ExecuteReader(strSQL, ref BaseList)) return;
+                if (BaseList.Count == 0) return;
+
+                bool bJoinFlg = true;
+                object[] objRec1 = (object[])BaseList[0];
+                if (CommonMotions.cnvInt(objRec1[1]) == (int)CommonDefine.BaseInfoJoinFlg.Standard) bJoinFlg = false;
+
+                int iCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+                int LinkJoin = (int)CommonDefine.LinkDataType.JoinType;
+                int LinkFluctuation = (int)CommonDefine.LinkDataType.FluctuationType;
+
+                if (bJoinFlg)
+                {
+                    // 結合工事
+                    strSQL = "SELECT A.FLUCTUATIONCODE, D.FLUCTUATIONCODE";
+                    strSQL += " FROM CONSTRUCTIONLINK A";
+                    strSQL += string.Format(" LEFT OUTER JOIN CONSTRUCTIONBASEINFO B ON B.CONSTRUCTIONCODE = A.FLUCTUATIONCODE AND B.CONSTRUCTIONSTATUSFLG != {0}", iCode);
+                    strSQL += string.Format(" LEFT JOIN CONSTRUCTIONLINK D ON D.CONSTRUCTIONCODE = A.FLUCTUATIONCODE AND D.LINKTYPE = {0}", LinkFluctuation);
+                    strSQL += string.Format(" LEFT OUTER JOIN CONSTRUCTIONBASEINFO F ON F.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE AND F.CONSTRUCTIONSTATUSFLG != {0}", iCode);
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", ParentCode);
+                    strSQL += string.Format(" AND A.LINKTYPE = {0}", LinkJoin);
+                    strSQL += " ORDER BY A.FLUCTUATIONCODE ASC";
+
+                    // 親工事の追加
+                    if (ParentAdd) CodeList.Add(ParentCode);
+                }
+                else
+                {
+                    // 増減工事
+                    strSQL = "SELECT A.CONSTRUCTIONCODE, A.FLUCTUATIONCODE";
+                    strSQL += " FROM CONSTRUCTIONLINK A";
+                    strSQL += string.Format(" LEFT OUTER JOIN CONSTRUCTIONBASEINFO B ON B.CONSTRUCTIONCODE = A.FLUCTUATIONCODE AND B.CONSTRUCTIONSTATUSFLG != {0}", iCode);
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", ParentCode);
+                    strSQL += string.Format(" AND A.LINKTYPE = {0}", LinkFluctuation);
+                    strSQL += " ORDER BY A.FLUCTUATIONCODE ASC";
+
+                    // 親工事の追加
+                    CodeList.Add(ParentCode);
+                }
+
+                ArrayList TargetList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref TargetList)) return;
+                if (TargetList.Count == 0) return;
+
+                int BreakCode = 0;
+                int ConstrCode1 = 0;
+                int ConstrCode2 = 0;
+                foreach (object[] objRec in TargetList)
+                {
+                    ConstrCode1 = CommonMotions.cnvInt(objRec[0]);
+                    ConstrCode2 = CommonMotions.cnvInt(objRec[1]);
+
+                    // 結合工事はコードを評価して追加
+                    if (bJoinFlg)
+                    {
+                        if (BreakCode != ConstrCode1)
+                        {
+                            CodeList.Add(ConstrCode1);
+                            BreakCode = ConstrCode1;
+                        }
+                    }
+                    // 全工事についてコードがあれば追加
+                    if (ConstrCode2 != 0) CodeList.Add(ConstrCode2);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 実行可能プロセスの一覧を取得する
         /// <summary>
         /// 実行可能プロセスの一覧を取得する
@@ -114,8 +266,31 @@
         /// <param name="ConctructionCode"></param>
         public static void GetProcessList(ref List<KeyValuePair<int,string>> ProcList, int OperationPrcess)
         {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             try
             {
+                // 対象工事の結合・増減を確認する
+                string strSQL = "SELECT CONSTRUCTIONCODE, JoinFlg, TyingFlg FROM CONSTRUCTIONBASEINFO A";
+                strSQL += BaseDB.CreatePrimarykeyString(m_ConstructionCode);
+                ArrayList BaseList = new ArrayList();
+
+                if (!BaseDB.ExecuteReader(strSQL, ref BaseList)) return;
+                if (BaseList.Count == 0) return;
+
+                object[] objRec1 = (object[])BaseList[0];
+                m_BaseInfoJoinFlg = CommonMotions.cnvInt(objRec1[1]);
+                m_BaseInfoTyingFlg = CommonMotions.cnvInt(objRec1[2]);
+
+                // 結合・増減工事は構成工事コードを全てとる
+                m_SearchCode = m_ConstructionCode;
+                if (m_BaseInfoJoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard || m_BaseInfoTyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    // 検索工事番号を返す
+                    m_SearchCode = GetParentConstrCode(m_ConstructionCode);
+                    m_CodeList.Clear();
+                    GetTargetList(BaseDB, ref m_CodeList, false);
+                }
+
                 // 0:メニューへ戻る
                 int MenuProcNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
                 string MenuProcName = "メニューへ戻る";
@@ -191,6 +366,13 @@
                     string ProcName = ClsExcute.ProcessExecuteName[ProcNo].Replace("－", "").Replace("入力", "");
                     ProcList.Add(new KeyValuePair<int, string>(ProcNo, ProcName));
                 }
+                // 14：請求書印刷
+                if (ExistRequestPrint())
+                {
+                    int ProcNo = (int)ClsExcute.ProcessExecuteNo.RequestPrint;
+                    string ProcName = ClsExcute.ProcessExecuteName[ProcNo].Replace("－", "").Replace("入力", "");
+                    ProcList.Add(new KeyValuePair<int, string>(ProcNo, ProcName));
+                }
                 //// 15:日報一覧
                 //if (ExistDRConstruction())
                 //{
@@ -203,9 +385,45 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
         }
         #endregion
 
+        #region Where句作成処理
+        /// <summary>
+        /// Where句作成処理
+        /// </summary>
+        /// <returns></returns>
+        private static string WhereString(string para = "")
+        {
+            try
+            {
+                string strSQL = string.Empty;
+
+                if (para.Length == 0)
+                    strSQL = " WHERE CONSTRUCTIONCODE IN (";
+                else
+                    strSQL = string.Format(" WHERE {0}CONSTRUCTIONCODE IN (", para);
+
+                for (int i = 0; i < m_CodeList.Count; i++)
+                {
+                    if (i != 0) strSQL += ", ";
+                    strSQL += m_CodeList[i].ToString();
+                }
+                strSQL += ")";
+                return strSQL;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
         #region 2:工事情報データの存在確認
         /// <summary>
         /// 2:工事情報データの存在確認
@@ -216,6 +434,10 @@
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             try
             {
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo, ref Editflg)) return false;
+
                 string strSQL = BaseDB.CreatePrimarykeyString(m_ConstructionCode);
                 ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
                 if (!BaseDB.SelectAction(strSQL, ref BaseRec)) return false;
@@ -244,14 +466,26 @@
             IOEstimateData EdimateDB = new IOEstimateData();
             try
             {
-                // 工事情報入力時以外はデータ存在チェック
-                if (OperationPrcess != (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo)
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.EstimateInput, ref Editflg)) return false;
+
+                // 工事情報入力時は新規入力があるためデータ存在チェックをしない
+                if (OperationPrcess == (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo) return true;
+
+                string strSQL = string.Empty;
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
                 {
-                    string strSQL = EdimateDB.CreatePrimarykeyString(m_ConstructionCode);
-                    List<EstimateData> EstimateList = new List<EstimateData>();
-                    if (!EdimateDB.SelectAction(strSQL, ref EstimateList)) return false;
-                    if (EstimateList.Count == 0) return false;
+                    strSQL = EdimateDB.CreatePrimarykeyString(m_ConstructionCode);
                 }
+                else
+                {
+                    strSQL = WhereString();
+                }
+                List<EstimateData> EstimateList = new List<EstimateData>();
+                if (!EdimateDB.SelectAction(strSQL, ref EstimateList)) return false;
+                if (EstimateList.Count == 0) return false;
 
                 return true;
             }
@@ -275,20 +509,35 @@
         private static bool ExistEstimateDataPrint()
         {
             IOEstimateData EstimateDB = new IOEstimateData();
-            IOProcessApproval ApprovalDB = new IOProcessApproval();
             try
             {
-                // 見積データの存在確認
-                string strSQL = EstimateDB.CreatePrimarykeyString(m_ConstructionCode);
-                List<EstimateData> EstimateList = new List<EstimateData>();
-                if (!EstimateDB.SelectAction(strSQL, ref EstimateList)) return false;
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.EstimatePrint, ref Editflg)) return false;
+
+                // データの存在確認
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS";
+                strSQL += " FROM ESTIMATEDATA A, PROCESSAPPROVAL B";
+                
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                }
+                else
+                {
+                    strSQL += WhereString("A.");
+                }
+                
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.EstimateApproval);
+                strSQL += string.Format(" AND B.ORDERNO = {0}", CommonDefine.s_Default_OrderNo);
+                strSQL += " AND B.SEQNO = 1";
+                strSQL += string.Format(" AND B.APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS";
+                ArrayList EstimateList = new ArrayList();
+                if (!EstimateDB.ExecuteReader(strSQL, ref EstimateList)) return false;
                 if (EstimateList.Count == 0) return false;
-                
-                // 承認データの確認
-                strSQL += string.Format(" AND APPROVALCODE = {0} AND SEQNO = 1", (int)ClsExcute.ApprovalListNo.EstimateApproval);
-                strSQL += string.Format("  AND APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
-                ProcessApproval ApprovalRec = new ProcessApproval();
-                if (!ApprovalDB.SelectAction(strSQL, ref ApprovalRec)) return false;
 
                 return true;
             }
@@ -300,7 +549,6 @@
             finally
             {
                 EstimateDB.close(); EstimateDB = null;
-                ApprovalDB.close(); ApprovalDB = null;
             }
         }
         #endregion
@@ -315,15 +563,28 @@
             IOEstimateData EdimateDB = new IOEstimateData();
             try
             {
-                // 積算見積書入力以外はデータの存在チェック
-                if (OperationPrcess != (int)ClsExcute.ProcessExecuteNo.EstimateInput)
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.EstimateBudget, ref Editflg)) return false;
+
+                // 積算見積書入力は新規入力があるためデータ存在チェックをしない
+                if (OperationPrcess != (int)ClsExcute.ProcessExecuteNo.EstimateInput) return true;
+
+                string strSQL = string.Empty;
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
                 {
-                    string strSQL = EdimateDB.CreatePrimarykeyString(m_ConstructionCode);
-                    List<EstimateData> EstimateList = new List<EstimateData>();
-                    if (!EdimateDB.SelectAction(strSQL, ref EstimateList)) return false;
-                    if (EstimateList.Count == 0) return false;
+                    strSQL = EdimateDB.CreatePrimarykeyString(m_ConstructionCode);
                 }
+                else
+                {
+                    strSQL = WhereString();
+                }
+                List<EstimateData> EstimateList = new List<EstimateData>();
 
+                if (!EdimateDB.SelectAction(strSQL, ref EstimateList)) return false;
+                if (EstimateList.Count == 0) return false;
+
                 return true;
             }
             catch (Exception ex)
@@ -346,27 +607,39 @@
         private static bool ExistConstructionBudget()
         {
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
-            IOEstimateData EstimateDB = new IOEstimateData();
-            IOProcessApproval ApprovalDB = new IOProcessApproval();
             try
             {
-                // 工事担当者のセット
-                string strSQL = BaseDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += " AND CONSTRUCTIONPERSONCODE != 0";
-                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
-                if (!BaseDB.SelectAction(strSQL, ref BaseRec)) return false;
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.ConstructionBudget, ref Editflg)) return false;
 
-                // 見積書データの存在チェック
-                strSQL = EstimateDB.CreatePrimarykeyString(m_ConstructionCode);
-                List<EstimateData> EstimateList = new List<EstimateData>();
-                if (!EstimateDB.SelectAction(strSQL, ref EstimateList)) return false;
+                // データの存在チェック
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, C.APPROVALCODE, C.APPROVALSTATUS";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A,ESTIMATEDATA B, PROCESSAPPROVAL C";
+                
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                }
+                else
+                {
+                    strSQL += WhereString("A.");
+                }
 
-                // 承認データの確認
-                strSQL += string.Format(" AND APPROVALCODE = {0} AND SEQNO = 1", (int)ClsExcute.ApprovalListNo.EstimateApproval);
-                strSQL += string.Format("  AND APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
-                ProcessApproval ApprovalRec = new ProcessApproval();
-                if (!ApprovalDB.SelectAction(strSQL, ref ApprovalRec)) return false;
+                strSQL += " AND A.CONSTRUCTIONPERSONCODE != 0";
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += " AND C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND C.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.EstimateApproval);
+                strSQL += string.Format(" AND C.ORDERNO = {0}", (int)CommonDefine.s_Default_OrderNo);
+                strSQL += " AND C.SEQNO = 1";
+                strSQL += string.Format(" AND C.APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, C.APPROVALCODE, C.APPROVALSTATUS";
 
+                ArrayList BaseRec = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref BaseRec)) return false;
+                if (BaseRec.Count == 0) return false;
+                
                 return true;
             }
             catch (Exception ex)
@@ -376,8 +649,6 @@
             }
             finally
             {
-                EstimateDB.close(); EstimateDB = null;
-                ApprovalDB.close(); ApprovalDB = null;
                 BaseDB.close(); BaseDB = null;
             }
         }
@@ -391,20 +662,33 @@
         private static bool ExistConstructionDataCopy()
         {
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
-            IOEstimateData EstimateDB = new IOEstimateData();
             try
             {
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.ConstructionCopyList, ref Editflg)) return false;
+
                 // 工事情報の存在確認
-                string strSQL = BaseDB.CreatePrimarykeyString(m_ConstructionCode);
-                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
-                if (!BaseDB.SelectAction(strSQL, ref BaseRec)) return false;
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, COUNT(*)";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A,ESTIMATEDATA B";
 
-                // 見積データの存在確認
-                List<EstimateData> EstimateList = new List<EstimateData>();
-                if (!EstimateDB.SelectAction(strSQL, ref EstimateList)) return false;
-                if (EstimateList.Count == 0) return false;
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                }
+                else
+                {
+                    strSQL += WhereString("A.");
+                }
 
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE";
 
+                ArrayList BaseRec = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref BaseRec)) return false;
+                if (BaseRec.Count == 0) return false;
+
                 return true;
             }
             catch (Exception ex)
@@ -415,7 +699,6 @@
             finally
             {
                 BaseDB.close(); BaseDB = null;
-                EstimateDB.close(); EstimateDB = null;
             }
         }
         #endregion
@@ -428,20 +711,36 @@
         private static bool ExistPurchaseOrder()
         {
             IOConstructionBudget BudgetDB = new IOConstructionBudget();
-            IOProcessApproval ApprovalDB = new IOProcessApproval();
             try
             {
-                // 工事予算書データの存在チェック
-                string strSQL = BudgetDB.CreatePrimarykeyString(m_ConstructionCode);
-                ConstructionBudget BudgetList = new ConstructionBudget();
-                if (!BudgetDB.SelectAction(strSQL, ref BudgetList)) return false;
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry, ref Editflg)) return false;
 
-                // 承認データの確認
-                strSQL += string.Format(" AND APPROVALCODE = {0} AND SEQNO = 1", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
-                strSQL += string.Format("  AND APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
-                ProcessApproval ApprovalRec = new ProcessApproval();
-                if (!ApprovalDB.SelectAction(strSQL, ref ApprovalRec)) return false;
+                // データの存在確認
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS";
+                strSQL += " FROM CONSTRUCTIONBUDGET A, PROCESSAPPROVAL B";
 
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                }
+                else
+                {
+                    strSQL += WhereString("A.");
+                }
+
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL += string.Format(" AND B.ORDERNO = {0}", m_OrderNo);
+                strSQL += " AND B.SEQNO = 1";
+                strSQL += string.Format(" AND B.APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS";
+                ArrayList BudgetList = new ArrayList();
+                if (!BudgetDB.ExecuteReader(strSQL, ref BudgetList)) return false;
+                if (BudgetList.Count == 0) return false;
+
                 return true;
             }
             catch (Exception ex)
@@ -452,7 +751,6 @@
             finally
             {
                 BudgetDB.close(); BudgetDB = null;
-                ApprovalDB.close(); ApprovalDB = null;
             }
         }
         #endregion
@@ -468,17 +766,34 @@
             IOProcessApproval ApprovalDB = new IOProcessApproval();
             try
             {
-                // 注文書データの存在チェック
-                string strSQL = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
-                List<PurchaseOrder> OrderList = new List<PurchaseOrder>();
-                if (!OrderDB.SelectAction(strSQL, ref OrderList)) return false;
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint, ref Editflg)) return false;
 
-                // 承認データの確認
-                strSQL += string.Format(" AND APPROVALCODE = {0} AND SEQNO = 1", (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
-                strSQL += string.Format("  AND APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
-                ProcessApproval ApprovalRec = new ProcessApproval();
-                if (!ApprovalDB.SelectAction(strSQL, ref ApprovalRec)) return false;
+                // データの存在確認
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS";
+                strSQL += " FROM PURCHASEORDER A, PROCESSAPPROVAL B";
 
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                }
+                else
+                {
+                    strSQL += WhereString("A.");
+                }
+
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
+                strSQL += string.Format(" AND B.ORDERNO = {0}", m_OrderNo);
+                strSQL += " AND B.SEQNO = 1";
+                strSQL += string.Format(" AND B.APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS";
+                ArrayList OrderList = new ArrayList();
+                if (!OrderDB.ExecuteReader(strSQL, ref OrderList)) return false;
+                if (OrderList.Count == 0) return false;
+
                 return true;
             }
             catch (Exception ex)
@@ -502,27 +817,30 @@
         private static bool ExistConstructionLedger()
         {
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
-            IOConstructionBudget BudgetDB = new IOConstructionBudget();
-            IOProcessApproval ApprovalDB = new IOProcessApproval();
             try
             {
-                // 工事詳細台帳データの存在チェック
-                string strSQL = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
-                ConstructionLedger LedgerRec = new ConstructionLedger();
-                if (LedgerDB.SelectAction(strSQL, ref LedgerRec)) return true;
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.ConstructionLedger, ref Editflg)) return false;
 
-                // 工事予算書データの存在チェック
-                strSQL = BudgetDB.CreatePrimarykeyString(m_ConstructionCode);
-                ConstructionBudget BudgetRec = new ConstructionBudget();
-                if (!BudgetDB.SelectAction(strSQL, ref BudgetRec)) return false;
+                // データの存在確認
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS, C.CONSTRUCTIONCODE";
+                strSQL += " FROM CONSTRUCTIONLEDGER A";
+                strSQL += " LEFT JOIN PROCESSAPPROVAL B";
+                strSQL += " ON B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL += string.Format(" AND B.ORDERNO = {0}", CommonDefine.s_Default_OrderNo);
+                strSQL += " AND B.SEQNO = 1";
+                strSQL += string.Format(" AND B.APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " LEFT JOIN CONSTRUCTIONLEDGER C";
+                strSQL += " ON C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_SearchCode);
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.APPROVALCODE, B.APPROVALSTATUS, C.CONSTRUCTIONCODE";
+                
+                ArrayList LedgerList = new ArrayList();
+                if (!LedgerDB.ExecuteReader(strSQL, ref LedgerList)) return false;
+                if (LedgerList.Count == 0) return false;
 
-                // 承認データの確認
-                strSQL += string.Format(" AND APPROVALCODE = {0} AND SEQNO = 1", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
-                strSQL += string.Format("  AND APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
-
-                ProcessApproval ApprovalRec = new ProcessApproval();
-                if (!ApprovalDB.SelectAction(strSQL, ref ApprovalRec)) return false;
-
                 return true;
             }
             catch (Exception ex)
@@ -533,8 +851,6 @@
             finally
             {
                 LedgerDB.close(); LedgerDB = null;
-                BudgetDB.close(); BudgetDB = null;
-                ApprovalDB.close(); ApprovalDB = null;
             }
         }
         #endregion
@@ -549,8 +865,23 @@
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
             try
             {
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.TAndPCosts, ref Editflg)) return false;
+
                 // 工事詳細台帳データの存在チェック
-                string strSQL = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
+                string strSQL = string.Empty;
+
+                // 結合工事以外の場合は自データのチェック
+                if (m_BaseInfoJoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    strSQL = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
+                }
+                else
+                {
+                    strSQL = WhereString();
+                }
+
                 ConstructionLedger LedgerList = new ConstructionLedger();
                 if (!LedgerDB.SelectAction(strSQL, ref LedgerList)) return false;
 
@@ -568,6 +899,53 @@
         }
         #endregion
 
+        #region 14:請求書印刷データ存在確認
+        /// <summary>
+        /// 14:請求書印刷データ存在確認
+        /// </summary>
+        /// <returns></returns>
+        private static bool ExistRequestPrint()
+        {
+            IORequestDataDetail db = new IORequestDataDetail();
+            try
+            {
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.RequestPrint, ref Editflg)) return false;
+
+
+                string strSQL = string.Empty;
+
+                List<RequestDataDetail> ReqDtlList = new List<RequestDataDetail>();
+                strSQL = string.Format(" WHERE CONSTRUCTIONCODE = {0} ", m_ConstructionCode);
+                if (!db.SelectAction(strSQL, ref ReqDtlList)) return false;
+
+                bool Approvedflg = false;
+
+                foreach (RequestDataDetail dt in ReqDtlList)
+                {
+                    // 最終承認されている(承認済）の場合
+                    if (ClsApprovalPermission.CheckApprovalData(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.OrderBillingApproval, dt.OrderNo))
+                    {
+                        Approvedflg = true;
+                        break;
+                    }
+                }
+
+                return Approvedflg;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                db.close(); db = null;
+            }
+        }
+        #endregion
+
         #region 15:日報入力存在確認
         /// <summary>
         /// 15:日報入力存在確認
@@ -578,6 +956,10 @@
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
             try
             {
+                // 起動権限チェック
+                int Editflg = 0;
+                if (!ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.DRConstruction, ref Editflg)) return false;
+
                 // 工事詳細台帳データの存在チェック
                 string strSQL = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
                 ConstructionLedger LedgerList = new ConstructionLedger();
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSecurityPermission.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSecurityPermission.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSecurityPermission.cs	(revision 51)
@@ -33,6 +33,10 @@
         private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
         #endregion
 
+        #region 定数
+        #endregion
+
+        #region 旧セキュリティメソッド
         #region 工事データアクセス許可
         /// <summary>
         /// 工事データアクセス許可確認
@@ -362,5 +366,752 @@
             }
         }
         #endregion
+        #endregion
+
+        #region セキュリティメソッド
+
+        #region 対象セキュリティ区分のデータアクセスランク・レンジを返す
+        /// <summary>
+        /// 対象セキュリティ区分のデータアクセスランク・レンジを返す
+        /// </summary>
+        /// <param name="SecCode"></param>
+        /// <returns></returns>
+        public static int GetDataAccessRank(int SecCode, ref int Range)
+        {
+            IOMSecurity SecDB = new IOMSecurity();
+
+            // 初期値として一般ユーザーをセットする
+            int Rank = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;
+            try
+            {
+                // 初期値として参照無をセットする
+                Range = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.None].Key;
+
+                // 担当者マスタより保護区分マスタを取得する
+                string strSQL = "SELECT A.SECCODE, A.SECNAME, A.SECRANK, A.SECRANGE FROM SECURITYMASTER A";
+                strSQL += string.Format(" WHERE A.SECCODE = {0}", SecCode);
+
+                ArrayList arList = new ArrayList();
+                if (!SecDB.ExecuteReader(strSQL, ref arList)) return Rank;
+
+                if (arList.Count == 0) return Rank;
+                object[] objRec = (object[])arList[0];
+
+                // セキュリティランク取得
+                Rank = CommonMotions.cnvInt(objRec[2]);
+                Range = CommonMotions.cnvInt(objRec[3]);
+
+                return Rank;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return Rank;
+            }
+            finally
+            {
+                SecDB.close(); SecDB = null;
+            }
+        }
+        #endregion
+
+        #region ログイン者のデータアクセスランク・レンジを返す
+        /// <summary>
+        /// ログイン者のデータアクセスランク・レンジを返す
+        /// </summary>
+        /// <returns></returns>
+        public static int GetPersonDataAccessRank(ref int Range)
+        {
+            try
+            {
+                int iRet = 0;
+
+                if (CommonMotions.LoginUserProcExe.Count != 0)
+                {   // ログインデータにセキュリティデータがあればそこから取得
+                    iRet = CommonMotions.LoginUserSecurity.SecRank;
+                    Range = CommonMotions.LoginUserSecurity.SecRange;
+                }
+                else
+                {   // 無い場合はDBより取得する
+                    iRet = GetPersonDataAccessRank(CommonMotions.LoginUserData.PersonCode, ref Range);
+                }
+                return iRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;
+            }
+        }
+        #endregion
+
+        #region 対象者のデータアクセスランク・レンジを返す
+        /// <summary>
+        /// 対象者のデータアクセスランク・レンジを返す
+        /// </summary>
+        /// <returns></returns>
+        public static int GetPersonDataAccessRank(int PersonCode, ref int Range)
+        {
+            IOMSecurity SecDB = new IOMSecurity();
+
+            // 初期値として一般ユーザーをセットする
+            int Rank = 0;
+            // 初期値として参照無をセットする
+            Range = 0;
+            try
+            {
+                if (CommonMotions.LoginUserData.SecCode == 0) return Rank;
+
+                // 初期値として一般ユーザーをセットする
+                Rank = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;
+                // 初期値として参照無をセットする
+                Range = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.None].Key;
+                
+                // 担当者マスタより保護区分マスタを取得する
+                string strSQL = "SELECT A.PERSONCODE, A.PERSONNAME, B.SECNAME, B.SECRANK, B.SECRANGE";
+                strSQL += " FROM PERSONINCHARGEMASTER A, SECURITYMASTER B";
+                strSQL += " WHERE B.SECCODE = A.SECCODE";
+                strSQL += string.Format(" AND A.PERSONCODE = {0}", PersonCode);
+
+                ArrayList arList = new ArrayList();
+                if (!SecDB.ExecuteReader(strSQL, ref arList)) return Rank;
+
+                if (arList.Count == 0) return Rank;
+                object[] objRec = (object[])arList[0];
+
+                // セキュリティランク取得
+                Rank = CommonMotions.cnvInt(objRec[3]);
+                Range = CommonMotions.cnvInt(objRec[4]);
+
+                return Rank;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return Rank;
+            }
+            finally
+            {
+                SecDB.close(); SecDB = null;
+            }
+        }
+        #endregion
+
+        #region ログイン者の参照部署を返す
+        /// <summary>
+        /// ログイン者の参照部署を返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool GetRefDepartment(ref List<KeyValuePair<int,string>> DepList)
+        {
+            try
+            {
+                bool bRet = false;
+
+                bRet = GetRefDepartment(CommonMotions.LoginUserData.PersonCode, ref DepList);
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 対象者の参照部署を返す
+        /// <summary>
+        /// 対象者の参照部署を返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool GetRefDepartment(int PersonCode, ref List<KeyValuePair<int, string>> DepList, bool DirectFlg = false, int SecCode = 0)
+        {
+            IOMPersonDepartment PersonDepDB = new IOMPersonDepartment();
+            try
+            {
+                DepList.Clear();
+                string strSQL = string.Empty;
+                
+                // 全部署対象の範囲コードを取得する
+                int AllPathRange = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.AllPath].Key;
+                int TargetRank = 0;
+                int TargetRange = 0;
+                // セキュリティコード直接指定の場合
+                if (DirectFlg)
+                {
+                    TargetRank = GetDataAccessRank(SecCode, ref TargetRange);
+                }
+                else
+                {
+                    TargetRank = GetPersonDataAccessRank(PersonCode, ref TargetRange);
+                }
+
+                // 対象者のセキュリティ範囲が全部署対応ならば全部署をセットする
+                if (TargetRange == AllPathRange)
+                {
+                    strSQL = "SELECT DEPARTMENTCODE, DEPARTMENTSTRING, DISPLAYORDER";
+                    strSQL += " FROM DEPARTMENTMASTER";
+                    strSQL += " WHERE DELETEFLG = 0　ORDER BY DISPLAYORDER";
+                }
+                else
+                {
+                    // 参照部署マスタより部署を取得する
+                    strSQL = "SELECT A.DEPARTMENTCODE, B.DEPARTMENTSTRING, A.AFFILIATIONFLG, A.PERSONCODE";
+                    strSQL += " FROM PERSONDEPARTMENTMASTER A, DEPARTMENTMASTER B";
+                    strSQL += " WHERE B.DEPARTMENTCODE = A.DEPARTMENTCODE";
+                    strSQL += string.Format(" AND A.PERSONCODE = {0}", PersonCode);
+                }
+                ArrayList arList = new ArrayList();
+                if (!PersonDepDB.ExecuteReader(strSQL, ref arList)) return false;
+
+                if (arList.Count == 0) return false;
+                foreach (object[] objRec in arList)
+                {
+                    DepList.Add(new KeyValuePair<int, string>(CommonMotions.cnvInt(objRec[0]), CommonMotions.cnvString(objRec[1])));
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDepDB.close(); PersonDepDB = null;
+            }
+        }
+        #endregion
+
+        #region ログイン者の保護区分を返す
+        /// <summary>
+        /// ログイン者の保護区分を返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool GetSecurityLevel(ref int SecCode, ref String SecName)
+        {
+            try
+            {
+                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;
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 対象者の保護区分を返す
+        /// <summary>
+        /// 対象者の保護区分を返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool GetSecurityLevel(int PersonCode, ref int SecCode, ref String SecName)
+        {
+            IOMSecurity SecDB = new IOMSecurity();
+            try
+            {
+                // 担当者マスタより保護区分マスタを取得する
+                string strSQL = "SELECT A.PERSONCODE, A.PERSONNAME, B.SECCODE, B.SECNAME";
+                strSQL += " FROM PERSONINCHARGEMASTER A, SECURITYMASTER B";
+                strSQL += " WHERE B.SECCODE = A.SECCODE";
+                strSQL += string.Format(" AND A.PERSONCODE = {0}", PersonCode);
+
+                ArrayList arList = new ArrayList();
+                if (!SecDB.ExecuteReader(strSQL, ref arList)) return false;
+
+                if (arList.Count == 0) return false;
+                object[] objRec = (object[])arList[0];
+
+                // セキュリティ取得
+                SecCode = CommonMotions.cnvInt(objRec[2]);
+                SecName = CommonMotions.cnvString(objRec[3]);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                SecDB.close(); SecDB = null;
+            }
+        }
+        #endregion
+
+        #region ログイン者の起動権限を返す
+        /// <summary>
+        /// ログイン者の起動権限を返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool GetExecutePermission(int ExecCode, ref int Editflg)
+        {
+            try
+            {
+                // 旧セキュリティを使用している場合はチェック無
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    Editflg = (int)CommonDefine.ProcessDataEdit.Edit;
+                    return true;
+                }
+
+                bool bRet = false;
+                if (CommonMotions.LoginUserProcExe.Count != 0)
+                {
+                    foreach (ProcessExcute CurRec in CommonMotions.LoginUserProcExe)
+                    {
+                        if (ExecCode == CurRec.ExecCode)
+                        {
+                            bRet = true;
+                            Editflg = CurRec.EditFlg;
+                            break;
+                        }
+                    }
+                }
+                else
+                {
+                    bRet = GetExecutePermission(CommonMotions.LoginUserData.PersonCode, ExecCode, ref Editflg);
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 対象者の起動権限を返す
+        /// <summary>
+        /// 対象者の起動権限を返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool GetExecutePermission(int PersonCode, int ExecCode, ref int Editflg)
+        {
+            IOMProcessExcute ExecDB = new IOMProcessExcute();
+            try
+            {
+                if (PersonCode == CommonMotions.LoginUserData.PersonCode)
+                {   // ログイン者はメモリ上よりチェックする
+                    bool bRet = false;
+                    foreach (ProcessExcute CurRec in CommonMotions.LoginUserProcExe)
+                    {
+                        if (CurRec.ExecCode == ExecCode)
+                        {
+                            bRet = true;
+                            Editflg = CurRec.EditFlg;
+                            break;
+                        }
+                    }
+                    // データが無い場合は起動無
+                    if (!bRet) return false;
+                }
+                else
+                {   // ログイン者以外はDBより読込チェックする
+                    string strSQL = "SELECT B.EXECCODE, B.EDITFLG, A.PERSONCODE, A.PERSONNAME, B.SECCODE";
+                    strSQL += " FROM PERSONINCHARGEMASTER A, PROCESSEXCUTEMASTER B";
+                    strSQL += " WHERE B.SECCODE = A.SECCODE";
+                    strSQL += string.Format(" AND A.PERSONCODE = {0}", PersonCode);
+                    strSQL += string.Format(" AND B.EXECCODE = {0}", ExecCode);
+
+                    ArrayList arList = new ArrayList();
+                    if (!ExecDB.ExecuteReader(strSQL, ref arList)) return false;
+
+                    if (arList.Count == 0) return false;
+                    object[] objRec = (object[])arList[0];
+
+                    // 編集フラグ取得
+                    Editflg = CommonMotions.cnvInt(objRec[1]);
+                }
+                // ここまで来た場合は起動OK
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                ExecDB.close(); ExecDB = null;
+            }
+        }
+        #endregion
+
+        #region ログイン者が対象データにアクセスできるかを返す
+        /// <summary>
+        /// 指定対象者が対象データにアクセスできるかを返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool PersonDataAccess(int ConstructionCode, bool bWriteFlg = true)
+        {
+            try
+            {
+                bool bRet = false;
+
+                bRet = PersonDataAccess(CommonMotions.LoginUserData.PersonCode, ConstructionCode, bWriteFlg);
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 対象者が対象データにアクセスできるかを返す
+        /// <summary>
+        /// 対象者が対象データにアクセスできるかを返す
+        /// </summary>
+        /// <returns></returns>
+        public static bool PersonDataAccess(int PersonCode, int ConstructionCode, bool bWriteFlg = true)
+        {
+            try
+            {
+                // 指定対象者のセキュリティ区分・範囲を取得する
+                int Range = 0;
+                int Rank = GetPersonDataAccessRank(PersonCode, ref Range);
+                // 設定されていない場合は旧メソッドを呼ぶ
+                if (Rank == 0 && Range == 0)
+                {
+                    return ConstructionDataAccessPermission(ConstructionCode, bWriteFlg);
+                }
+
+                int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 経営者アクセス
+                int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者アクセス
+                int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長アクセス
+                int NRank = (int)CommonDefine.SecurityRankPos.NormalAuthority;      // 一般者アクセス
+
+                // 工事情報を取得する
+                int StatusCode = 0;
+                int TransferCode = 0;
+                int TransDepCode = 0;
+                List<KeyValuePair<int, int>> DataArrary = new List<KeyValuePair<int, int>>();
+                if (!GetBaseData(ConstructionCode, ref DataArrary, ref StatusCode, ref TransferCode, ref TransDepCode)) return false;
+
+                // システム管理者は全てON
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                {
+                    return true;
+                }
+                else if (Rank == CommonDefine.SecurityRankList[SRank].Key)           // 経営者アクセス
+                {
+                    // ===== 全データ対象の場合はOK
+                    return true;
+                }
+                else if (Rank == CommonDefine.SecurityRankList[FRank].Key)           // 統括者アクセス
+                {
+                    // ===== 統括者アクセス対象の条件を調べる
+                    return LimitAccesCheck(PersonCode, DataArrary, StatusCode, TransferCode, TransDepCode);
+                }
+                else if (Rank == CommonDefine.SecurityRankList[LRank].Key)      // 所属長アクセス
+                {
+                    // ===== 所属長アクセス対象の条件を調べる
+                    return LimitAccesCheck(PersonCode, DataArrary, StatusCode, TransferCode, TransDepCode);
+                }
+                else if (Rank == CommonDefine.SecurityRankList[NRank].Key)      // 一般者アクセス
+                {
+                    // ===== 一般者アクセス対象の条件を調べる
+                    return NormalAccessCheck(PersonCode, DataArrary, StatusCode);
+                }
+
+                return false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者取得情報配列行数
+        /// <summary>
+        /// 担当者情報配列行数
+        /// </summary>
+        private enum PersonArrary
+        {
+            /// <summary>
+            ///  営業担当者：部署
+            /// </summary>
+            Sales = 0,
+            /// <summary>
+            /// 工事担当者：部署
+            /// </summary>
+            Constr,
+            /// <summary>
+            /// 工事副担当：部署
+            /// </summary>
+            Assist,
+            /// <summary>
+            /// 工事指導員：部署
+            /// </summary>
+            Inst,
+        }
+        #endregion 
+
+        #region 工事情報を取得する
+        /// <summary>
+        /// 工事情報を取得する
+        /// </summary>
+        private static bool GetBaseData(int ConstructionCode, ref List<KeyValuePair<int, int>> DataArrary, ref int StatusCode, ref int TransferCode, ref int TransDepCode)
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                // 工事情報を取得する
+                string strBase = "SELECT A.CONSTRUCTIONCODE,";
+                strBase += " A.SALESPERSONCODE, B.DEPARTMENTCODE,";
+                strBase += " A.CONSTRUCTIONPERSONCODE, C.DEPARTMENTCODE,";
+                strBase += " D.PERSONCODE, D.DEPARTMENTCODE,";
+                strBase += " E.PERSONCODE, E.DEPARTMENTCODE,";
+                strBase += " A.CONSTRUCTIONSTATUSFLG,";
+                strBase += " A.TRANSFERCONSTRUCTION,";
+                strBase += " F.DEPARTMENTCODE";
+                strBase += " FROM CONSTRUCTIONBASEINFO A";
+                strBase += " LEFT JOIN PERSONINCHARGEMASTER B ON B.PERSONCODE = A.SALESPERSONCODE";
+                strBase += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strBase += " LEFT JOIN PERSONINCHARGEMASTER D ON D.PERSONCODE = A.CONSTRSUBPERSONCODE";
+                strBase += " LEFT JOIN PERSONINCHARGEMASTER E ON E.PERSONCODE = A.CONSTRUCTIONINSTRUCTOR";
+                strBase += " LEFT JOIN PERSONINCHARGEMASTER F ON F.PERSONCODE = A.TRANSFERCONSTRUCTION";
+                strBase += BaseDB.CreatePrimarykeyString(ConstructionCode);
+
+                ArrayList arBaseList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strBase, ref arBaseList)) return false;
+                if (arBaseList.Count == 0) return false;
+
+                object[] objBaseRec = (object[])arBaseList[0];
+
+                // ----- 取得データを配列領域へセットする
+                // 営業担当者：部署
+                // 工事担当者：部署
+                // 工事副担当：部署
+                // 工事指導員：部署
+                DataArrary.Add(new KeyValuePair<int, int>(CommonMotions.cnvInt(objBaseRec[1]), CommonMotions.cnvInt(objBaseRec[2])));
+                DataArrary.Add(new KeyValuePair<int, int>(CommonMotions.cnvInt(objBaseRec[3]), CommonMotions.cnvInt(objBaseRec[4])));
+                DataArrary.Add(new KeyValuePair<int, int>(CommonMotions.cnvInt(objBaseRec[5]), CommonMotions.cnvInt(objBaseRec[6])));
+                DataArrary.Add(new KeyValuePair<int, int>(CommonMotions.cnvInt(objBaseRec[7]), CommonMotions.cnvInt(objBaseRec[8])));
+
+                // 工事状態を取得する
+                StatusCode = CommonMotions.cnvInt(objBaseRec[9]);
+                // 引継コードを取得する
+                TransferCode = CommonMotions.cnvInt(objBaseRec[10]);
+                // 引継部署を取得する
+                TransDepCode = CommonMotions.cnvInt(objBaseRec[11]);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region 所属長アクセスチェック
+        /// <summary>
+        /// 所属長アクセスチェック
+        /// </summary>
+        /// <returns></returns>
+        private static bool LimitAccesCheck(int PersonCode, List<KeyValuePair<int, int>> DataArrary, int StatusCode, int TransferCode, int TransDepCode)
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            IOMPersonDepartment PersonDepDB = new IOMPersonDepartment();
+            try
+            {
+                bool bAccessFlg = false;
+
+                int EstimateStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("見積提出")).Key;
+                int TransferStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("部署引継")).Key;
+                int ProvisionalStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("仮 受 注")).Key;
+
+                // ----- 対象者のデータを取得する
+                List<PersonDepartmentMaster> TargetDepartment = new List<PersonDepartmentMaster>();
+                int DepartmentCode = 0;
+                if (PersonCode == CommonMotions.LoginUserData.PersonCode)
+                {   
+                    // ----- ログイン者はメモリより取得
+                    DepartmentCode = CommonMotions.LoginUserData.DepartmentCode;
+                    foreach (PersonDepartmentMaster wrkRec in CommonMotions.LoginUserDepartment)
+                    {
+                        TargetDepartment.Add(wrkRec);
+                    }
+                }
+                else
+                {   
+                    // ----- 以外はDBより取得する
+                    // 担当者マスタ取得
+                    string strPerson = PersonDB.CreatePrimarykeyString(PersonCode);
+                    PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                    PersonDB.SelectAction(strPerson, ref PersonRec);
+                    DepartmentCode = PersonRec.DepartmentCode;
+                    // 担当者参照部署マスタ取得
+                    PersonDepDB.SelectAction(strPerson, ref TargetDepartment);
+                }
+
+                // ------ 状態判定
+                // 部署引継の場合、引継部署・引継担当者部署を検索対象にする
+                if (TransferStatus == StatusCode)
+                {
+                    int RefDepCode = 0;
+                    if (TransferCode <= 99999)
+                    {
+                        RefDepCode = TransferCode;
+                    }
+                    else
+                    {
+                        RefDepCode = TransDepCode;
+                    }
+                    foreach (PersonDepartmentMaster wrkRec in TargetDepartment)
+                    {
+                        if (RefDepCode == wrkRec.DepartmentCode)
+                        {
+                            bAccessFlg = true;
+                            break;
+                        }
+                    }
+                }
+                else if (EstimateStatus <= StatusCode)
+                {   // 見積提出後は参照可能部署ならば常に見ることができる
+                    for (int i = 0; i < DataArrary.Count; i++)
+                    {
+                        foreach (PersonDepartmentMaster wrkRec in TargetDepartment)
+                        {
+                            if (DataArrary[i].Value == wrkRec.DepartmentCode)
+                            {
+                                bAccessFlg = true;
+                                break;
+                            }
+                        }
+                        if (bAccessFlg) break;
+                    }
+                }
+                else
+                {
+                    // 以外の場合は参照部署のみ
+                    for (int i = 0; i < DataArrary.Count; i++)
+                    {
+                        foreach (PersonDepartmentMaster wrkRec in TargetDepartment)
+                        {
+
+                            if (DataArrary[i].Value == wrkRec.DepartmentCode)
+                            {
+                                switch (i)
+                                {
+                                    case (int)PersonArrary.Sales:
+                                        // 営業担当者
+                                        bAccessFlg = true;
+                                        break;
+                                    case (int)PersonArrary.Constr:
+                                        // 仮受注以降でないとアクセス出来ない
+                                        if (StatusCode < ProvisionalStatus) continue;
+
+                                        // 工事担当者
+                                        bAccessFlg = true;
+                                        break;
+                                    case (int)PersonArrary.Assist:
+                                        // 仮受注以降でないとアクセス出来ない
+                                        if (StatusCode < ProvisionalStatus) continue;
+
+                                        // 工事副担当者
+                                        bAccessFlg = true;
+                                        break;
+                                    case (int)PersonArrary.Inst:
+                                        // 仮受注以降でないとアクセス出来ない
+                                        if (StatusCode < ProvisionalStatus) continue;
+
+                                        // 工事指導員
+                                        bAccessFlg = true;
+                                        break;
+                                }
+                            }
+                            if (bAccessFlg) break;
+                        }
+                        if (bAccessFlg) break;
+                    }
+                }
+
+                return bAccessFlg;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+                PersonDepDB.close(); PersonDepDB = null;
+            }
+        }
+        #endregion
+
+        #region 一般者アクセスチェック
+        /// <summary>
+        /// 一般者アクセスチェック
+        /// </summary>
+        /// <returns></returns>
+        private static bool NormalAccessCheck(int PersonCode, List<KeyValuePair<int, int>> DataArrary, int StatusCode)
+        {
+            try
+            {
+                bool bAccessFlg = false;
+
+                // 全てアクセスできる工事状態は以下の状態以外
+                int AccessStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("見積提出")).Key;
+
+                // 担当者コードをチェックする
+                for (int i = 0; i < DataArrary.Count; i++)
+                {
+                    if (DataArrary[i].Key == PersonCode)
+                    {
+                        if (i != (int)PersonArrary.Sales)
+                        {
+                            // 営業担当者以外は仮受注以降でないとアクセス出来ない
+                            if (StatusCode <= AccessStatus) continue;
+                        }
+                        bAccessFlg = true;
+                        break;
+                    }
+                }
+
+                return bAccessFlg;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSystemOnceExecute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSystemOnceExecute.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsSystemOnceExecute.cs	(revision 51)
@@ -76,31 +76,38 @@
             bool ProcessFlg = true;
             try
             {
+                // 初期化に失敗したら処理しない
+                if (!m_bExecuteFlg) return;
+
                 // 本日の初回起動がされている場合は処理しない
                 if (!ExecuteCheck(ref m_lastsessionDate)) return;
+                
                 // 更新済みにするために日付の更新
-                UpDateTargetDate(DateTime.Now);
+                if (!(ProcessFlg = UpDateTargetDate(DateTime.Now))) return;
 
-                // 初期化に失敗したら処理しない
-                if (!m_bExecuteFlg) return;
-
-                // データチェック
+                // ----- データチェック
                 // 日付の期限チェックを行う
-                ProcessFlg = SubmittedDateCheck(m_lastsessionDate);
+                if(!(ProcessFlg = SubmittedDateCheck(m_lastsessionDate))) return;
 
                 // 見積有効期限切れを非受注へ移行する
-                if (ProcessFlg) ProcessFlg &= ChangeNonOrdersData();
+                if (!(ProcessFlg = ChangeNonOrdersData())) return;
 
+                // 開始期日がきた給与を適用する
+                if (!(ProcessFlg = SetNewPayrollCheck())) return;
+
                 // 工事詳細台帳の給与を加算する
-                if (ProcessFlg) ProcessFlg &= CalculateDaysSalary();
+                if (!(ProcessFlg = CalculateDaysSalary(m_lastsessionDate))) return;
 
-                // エラー時は元の日付に更新
-                if (!ProcessFlg) UpDateTargetDate(m_lastsessionDate);
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                // エラー時は元の日付に更新
+                if (!ProcessFlg) UpDateTargetDate(m_lastsessionDate);
+            }
         }
         #endregion
 
@@ -248,10 +255,13 @@
         private bool SubmittedDateCheck(DateTime StartDate)
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
+            IOConstructionBaseInfoDetail cbiDDB = new IOConstructionBaseInfoDetail();
+            IOMessageBoardData mbdDB = new IOMessageBoardData();
+            IOMessageBoardTerget mbtDB = new IOMessageBoardTerget();
             try
             {
                 // 工事基本情報を期限テーブルに設定している状態分取得する
-                string strSQL = " WHERE CONSTRUCTIONSTATUSFLG IN (SELECT DISTINCT CONSTRUCTIONSTATUSFLG FROM TERMMASTER)";
+                string strSQL = " WHERE CONSTRUCTIONSTATUSFLG IN (SELECT DISTINCT A1.CONSTRUCTIONSTATUSFLG FROM TERMMASTER A1)";
                 strSQL = " ORDER BY CONSTRUCTIONSTATUSFLG ASC, CONSTRUCTIONCODE ASC";
                 List<ConstructionBaseInfo> cbiList = new List<ConstructionBaseInfo>();
                 if (!cbiDB.SelectAction(strSQL, ref cbiList)) return true;
@@ -266,6 +276,11 @@
                     StartDate = DateTime.Now.AddDays(-1);
                 }
 
+                cbiDB.connect(); cbiDB.beginTran();
+                cbiDDB.connect(); cbiDDB.beginTran();
+                mbdDB.connect(); mbdDB.beginTran();
+                mbtDB.connect(); mbtDB.beginTran();
+
                 bool procflg = true;
                 // 経過日数分処理を行う
                 for (int ix = 0; ix < diffDays; ix++)
@@ -273,20 +288,44 @@
                     DateTime CriteriaDate = StartDate.AddDays((ix + 1));
                     foreach (ConstructionBaseInfo wrkRec in cbiList)
                     {
-                        string sErrorMessage = string.Empty;
-                        string sBackColor = string.Empty;
-                        string sForeColor = string.Empty;
+                        List<TermMaster> term = new List<TermMaster>();
                         // 増減工事の子は処理しない
                         if (wrkRec.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying) continue;
+                        // 結合工事の親は処理しない
+                        if (wrkRec.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinParent) continue;
                         // チェック
-                        if (!ConstructionStatusCheck(wrkRec, CriteriaDate, ref sErrorMessage, ref sBackColor, ref sForeColor))
+                        if (!ConstructionStatusCheck(wrkRec, CriteriaDate, ref term))
                         {
-                            procflg = false;
-                            break;
+                            // 掲示板にメッセージを載せるためにループ処理
+                            foreach (TermMaster CurTerm in term)
+                            {
+                                // メッセージ作成
+                                if (!MakeMassageData(mbdDB, mbtDB, cbiDDB, wrkRec, CurTerm, CriteriaDate))
+                                {
+                                    procflg = false;
+                                    break;
+                               }
+                            }
                         }
                     }
                     if (!procflg) break;
                 }
+
+                if (procflg)
+                {
+                    cbiDB.commit();
+                    cbiDDB.commit();
+                    mbdDB.commit();
+                    mbtDB.commit();
+                }
+                else
+                {
+                    cbiDB.rollback();
+                    cbiDDB.rollback();
+                    mbdDB.rollback();
+                    mbtDB.rollback();
+                }
+
                 return procflg;
             }
             catch (Exception ex)
@@ -297,6 +336,9 @@
             finally
             {
                 cbiDB.close(); cbiDB = null;
+                cbiDDB.close(); cbiDDB = null;
+                mbdDB.close(); mbdDB = null;
+                mbtDB.close(); mbtDB = null;
             }
         }
         #endregion
@@ -305,27 +347,14 @@
         /// <summary>
         /// チェック処理
         /// </summary>
-        /// <param name="checkRec">対象工事情報</param>
-        /// <param name="NowDate">基準日付</param>
-        /// <param name="sErrorMessage">エラーメッセージ</param>
-        /// <param name="sBackColor">背景色</param>
-        /// <param name="sForeColor">文字色</param>
-        /// <param name="bCreateMessage">秘書からの連絡にメッセージ作成</param>
         /// <returns></returns>
-        public bool ConstructionStatusCheck(ConstructionBaseInfo checkRec,
-                                            DateTime CriteriaDate,
-                                            ref string sErrorMessage,
-                                            ref string sBackColor,
-                                            ref string sForeColor,
-                                            bool bCreateMessage = true)
+        public bool ConstructionStatusCheck(ConstructionBaseInfo checkRec, DateTime CriteriaDate, ref List<TermMaster> TermRec)
         {
             try
             {
                 // 初期化に失敗していたら処理しない
-                if (!m_bExecuteFlg) return false;
+                if (!m_bExecuteFlg) return true;
 
-                TermMaster TermRec = new TermMaster();
-
                 // 取得データの進捗状態がチェック判定テーブルにあるかの存在チェック
                 bool exestFlg = false;
                 int itblCnt = 0;
@@ -449,22 +478,10 @@
                     // チェック項目に該当すればメッセージ・色をセットする
                     if (ErrFlg)
                     {
-                        TermRec = wrkCheck;
-                        sErrorMessage = wrkCheck.SendTitle + "／" + wrkCheck.SendMessage;
-                        sBackColor = wrkCheck.BackColor;
-                        sForeColor = wrkCheck.ForeColor;
-
-
-                        // 掲示板にメッセージを載せない場合があるのでフラグ制御
-                        if (bCreateMessage)
-                        {
-                            // メッセージ作成
-                            MakeMassageData(checkRec, TermRec, CriteriaDate);
-                        }
+                        TermRec.Add(wrkCheck);
+                        bCheckNoError = false;
                     }
                 }
-
-
                 return bCheckNoError;
             }
             catch (Exception ex)
@@ -479,38 +496,39 @@
         /// <summary>
         /// メッセージ作成
         /// </summary>
-        /// <param name="wrkRec"></param>
-        /// <param name="bCreateMessage"></param>
-        /// <param name="DateTime CriteriaDate"></param>
-        /// <returns></returns>
-        private void MakeMassageData(ConstructionBaseInfo wrkRec, TermMaster CheckRec, DateTime CriteriaDate)
+        private bool MakeMassageData(IOMessageBoardData mbdDB,
+                                        IOMessageBoardTerget mbtDB,
+                                        IOConstructionBaseInfoDetail cbiDB,
+                                        ConstructionBaseInfo wrkRec, TermMaster CheckRec, DateTime CriteriaDate)
         {
-            IOConstructionBaseInfoDetail cbiDB = new IOConstructionBaseInfoDetail();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
             try
             {
-                // 工事名称取得
-                string strSQL = string.Format(" Where (ConstructionCode = {0} And DETAILNO = {1})"
-                                                , wrkRec.ConstructionCode, ((int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName).ToString());
-                List<ConstructionBaseInfoDetail> NameList = new List<ConstructionBaseInfoDetail>();
-                ConstructionBaseInfoDetail TmpName = new ConstructionBaseInfoDetail();
-                if (cbiDB.SelectAction(strSQL, ref NameList))
-                    if (NameList.Count != 0) TmpName.DetailString = NameList[0].DetailString;
+                // 工事名称・営業担当者・工事担当者取得
+                string strSQL = "SELECT A.DETAILSTRING, B.PERSONCODE SCODE, B.PERSONNAME SNAME, C.PERSONCODE CCODE, C.PERSONNAME CNAME";
+                strSQL += " FROM CONSTRUCTIONBASEINFO P";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER B ON B.PERSONCODE = P.SALESPERSONCODE";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = P.CONSTRUCTIONPERSONCODE";
+                strSQL += " , CONSTRUCTIONBASEINFODETAIL A";
+                strSQL += string.Format(" WHERE P.CONSTRUCTIONCODE = {0}",wrkRec.ConstructionCode);
+                strSQL += string.Format(" AND A.CONSTRUCTIONCODE = P.CONSTRUCTIONCODE AND A.DETAILNO = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                ArrayList arList = new ArrayList();
+                if (!cbiDB.ExecuteReader(strSQL, ref arList)) return false;
+                
+                string DetailString = string.Empty;
+                int SalesPersonCode = 0;
+                string SalesPersonName = string.Empty;
+                int ConstructionPersonCode = 0;
+                string ConstructionPersonName = string.Empty;
+                foreach (object[] onjwrk in arList)
+                {
+                    DetailString = CommonMotions.cnvString(onjwrk[0]);
+                    SalesPersonCode = CommonMotions.cnvInt(onjwrk[1]);
+                    SalesPersonName = CommonMotions.cnvString(onjwrk[2]);
+                    ConstructionPersonCode = CommonMotions.cnvInt(onjwrk[3]);
+                    ConstructionPersonName = CommonMotions.cnvString(onjwrk[4]);
+                    break;
+                }
 
-                // 営業担当者取得
-                strSQL = string.Format(" Where PersonCode = {0}", wrkRec.SalesPersonCode);
-                List<PersonInChargeMaster> SalesList = new List<PersonInChargeMaster>();
-                PersonInChargeMaster TmpSales = new PersonInChargeMaster();
-                if (picDB.SelectAction(strSQL, ref SalesList))
-                    if (SalesList.Count != 0) TmpSales = SalesList[0];
-
-                // 工事担当者取得
-                strSQL = string.Format(" Where PersonCode = {0}", wrkRec.ConstructionPersonCode);
-                List<PersonInChargeMaster> ConstructionList = new List<PersonInChargeMaster>();
-                PersonInChargeMaster TmpConstruction = new PersonInChargeMaster();
-                if (picDB.SelectAction(strSQL, ref ConstructionList))
-                    if (ConstructionList.Count != 0) TmpConstruction = ConstructionList[0];
-
                 // 新規メッセージ作成
                 MessageBoardData WriteData = new MessageBoardData();
                 List<MessageBoardTerget> WriteDetail = new List<MessageBoardTerget>();
@@ -525,7 +543,7 @@
                 WriteData.LinkType = (int)CommonDefine.LinkType.ConstructionInfo;
                 WriteData.LinkMessage = string.Format("工事番号：{0} 工事名称：{1}"
                                                                             , CommonMotions.cnvStringCodeFromInt(wrkRec.ConstructionCode, "-", 8)
-                                                                            , TmpName.DetailString);
+                                                                            , DetailString);
                 WriteData.LinkCode = string.Format("{0}", CommonMotions.cnvStringCodeFromInt(wrkRec.ConstructionCode, "-", 8));
 
                 // 伝言内容
@@ -542,12 +560,12 @@
 
                 // 掲示板対象者テーブル
                 MessageBoardTerget DetailTbl = new MessageBoardTerget();
-                DetailTbl.ToCode = TmpSales.PersonCode;                                                     // 対象者コード
-                DetailTbl.ToName = TmpSales.PersonName;	                                                    // 対象者
-                if (TmpConstruction.PersonCode != 0)
+                DetailTbl.ToCode = SalesPersonCode;                                                     // 対象者コード
+                DetailTbl.ToName = SalesPersonName;	                                                    // 対象者
+                if (ConstructionPersonCode != 0)
                 {
-                    DetailTbl.ToCode = TmpConstruction.PersonCode;                                          // 対象者コード
-                    DetailTbl.ToName = TmpConstruction.PersonName;	                                        // 対象者
+                    DetailTbl.ToCode = ConstructionPersonCode;                                          // 対象者コード
+                    DetailTbl.ToName = ConstructionPersonName;	                                        // 対象者
                 }
                 WriteDetail.Add(DetailTbl);
 
@@ -555,18 +573,15 @@
                 WriteData.MessageFlag = (int)CommonDefine.MessageFlg.Secretary;
 
                 // 掲示板へメッセージを載せる
-                ClsMessageBoradAccess.CreateMessage(WriteData, WriteDetail);
+                if (!ClsMessageBoradAccess.CreateMessage(mbdDB, mbtDB, WriteData, WriteDetail)) return false;
 
+                return true;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
             }
-            finally
-            {
-                picDB.close(); picDB = null;
-                cbiDB.close(); cbiDB = null;
-            }
         }
         #endregion
 
@@ -584,9 +599,9 @@
                 int iCode3 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("見積提出")).Key;
 
                 // 対象データが存在するかを確認する
-                string strSQL = "SELECT COUNT(*) FROM CONSTRUCTIONBASEINFO WHERE DATE(ESTIMATESSUBMITTEDDATE) != DATE_FORMAT('0001/01/01','%Y/%m/%d')";
-                strSQL += string.Format(" AND DATE(ESTIMATESSUBMITTEDDATE + {0})", s_NonOrderDay);
-                strSQL += string.Format(" < DATE_FORMAT('{0}','%Y/%m/%d')", DateTime.Now.ToShortDateString());
+                string strSQL = "SELECT COUNT(*) FROM CONSTRUCTIONBASEINFO WHERE DATE(ESTIMATESSUBMITTEDDATE) != STR_TO_DATE('0001/01/01','%Y/%m/%d')";
+                strSQL += string.Format(" AND DATE(DATE_ADD(ESTIMATESSUBMITTEDDATE, INTERVAL {0} DAY))", s_NonOrderDay);
+                strSQL += string.Format(" < STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.Now.ToShortDateString());
                 strSQL += string.Format(" AND CONSTRUCTIONSTATUSFLG IN({0}, {1})", iCode2, iCode3);
                 strSQL += string.Format(" AND ESTIMATETYPE IN ({0}, {1})", (int)CommonDefine.BaseInfoEstimateType.Normal, (int)CommonDefine.BaseInfoEstimateType.GetBudget);
                 ArrayList arList = new ArrayList();
@@ -599,15 +614,16 @@
                 if (Common.CommonMotions.cnvInt(wrkcount[0]) == 0) return true;
 
                 // 対象データが存在すれば更新する
-                strSQL = string.Format("UPDATE CONSTRUCTIONBASEINFO SET CONSTRUCTIONSTATUSFLG = {0}", iCode1);
+                strSQL = string.Format("UPDATE CONSTRUCTIONBASEINFO SET CONSTRUCTIONSTATUSFLG = {0},", iCode1);
+                strSQL += string.Format(" NONORDERDATE = STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.Today.ToShortDateString());
                 strSQL += " WHERE CONSTRUCTIONCODE IN";
-                strSQL += " (SELECT CONSTRUCTIONCODE FROM"; // MySql対応（Updateの副問合せ対応）
-                strSQL += " (SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO WHERE DATE(ESTIMATESSUBMITTEDDATE) != DATE_FORMAT('0001/01/01','%Y/%m/%d')";
-                strSQL += string.Format(" AND DATE(ESTIMATESSUBMITTEDDATE + {0})", s_NonOrderDay);
-                strSQL += string.Format(" < DATE_FORMAT('{0}','%Y/%m/%d')", DateTime.Now.ToShortDateString());
+                strSQL += " (SELECT CONSTRUCTIONCODE from ("; // MySql対応（Updateの副問合せ対応）
+                strSQL += " (SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO WHERE DATE(ESTIMATESSUBMITTEDDATE) != STR_TO_DATE('0001/01/01','%Y/%m/%d')";
+                strSQL += string.Format(" AND DATE(DATE_ADD(ESTIMATESSUBMITTEDDATE, INTERVAL {0} DAY))", s_NonOrderDay);
+                strSQL += string.Format(" < STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.Now.ToShortDateString());
                 strSQL += string.Format(" AND CONSTRUCTIONSTATUSFLG IN({0}, {1})", iCode2, iCode3);
                 strSQL += string.Format(" AND ESTIMATETYPE IN ({0}, {1}))", (int)CommonDefine.BaseInfoEstimateType.Normal, (int)CommonDefine.BaseInfoEstimateType.GetBudget);
-                strSQL += " AS TMP)"; // MySql対応（Updateの副問合せ対応）
+                strSQL += " ) AS TMP"; // MySql対応（Updateの副問合せ対応）
                 if (!BaseDB.ExecuteNonQuery(strSQL))
                 {
                     logger.ErrorFormat("工事基本情報更新エラー　非受注案件移行処理失敗：{0}：{1}", CommonMotions.GetMethodName(), strSQL);
@@ -632,13 +648,21 @@
         /// <summary>
         /// 工事詳細台帳の給与を加算する
         /// </summary>
-        private bool CalculateDaysSalary()
+        private bool CalculateDaysSalary(DateTime lastDate)
         {
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
             try
             {
+                int iCode1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+                int iCode2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("施工完了")).Key;
+
                 // 入力完了以外を対象にする
-                string strSQL = " WHERE ComplateFlg <> 1 ORDER BY ConstructionStart ASC";
+                string strSQL = string.Format(" A WHERE A.ComplateFlg <> {0}", (int)CommonDefine.ComplateTitleNo.Complated);
+                strSQL += " AND A.CONSTRUCTIONCODE IN (SELECT A1.CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO A1";
+                strSQL += string.Format(" WHERE A1.CONSTRUCTIONSTATUSFLG != {0}", iCode1);
+                strSQL += string.Format(" AND A1.CONSTRUCTIONSTATUSFLG < {0})", iCode2);
+                strSQL += " AND DATE(A.CONSTRUCTIONSTART) <= DATE(NOW())";
+                strSQL += " ORDER BY A.CONSTRUCTIONSTART ASC";
                 List<ConstructionLedger> LedgerList = new List<ConstructionLedger>();
                 // エラーもしくはデータが無い場合は処理しない
                 if (!LedgerDB.SelectAction(strSQL, ref LedgerList) || LedgerList.Count == 0) return true;
@@ -645,11 +669,8 @@
 
                 foreach (ConstructionLedger CurRec in LedgerList)
                 {
-                    // 当日が範囲外ならば処理しない
-                    if (DateTime.Now < CurRec.ConstructionStart.Date || CurRec.ConstructionEnd.Date < DateTime.Now) continue;
-                    
                     // 給与を加算する
-                    if (!ClsChangeLedgerData.CalculatePayment(CurRec.ConstructionCode, DateTime.Now, false)) break;
+                    ClsChangeLedgerData.CalculatePayment(CurRec, DateTime.Now, lastDate);
                 }
 
                 return true;
@@ -665,5 +686,65 @@
             }
         }
         #endregion
+
+        #region 開始期日がきた給与を適用する
+        /// <summary>
+        /// 開始期日がきた給与を適用する
+        /// </summary>
+        /// <returns></returns>
+        private bool SetNewPayrollCheck()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // 適用する給与と金額が違うデータを検索する
+                string strSQL = "SELECT A.PERSONCODE, A.MONTHLYSALARY, A.YEARSALARY, A.STARTDATE, C.MONTHLYSALARY, C.YEARSALARY";
+                strSQL += " FROM PERSONSALARYMASTER A,";
+                strSQL += " (SELECT PERSONCODE, MAX(STARTDATE) sDate FROM PERSONSALARYMASTER";
+                strSQL += string.Format(" WHERE DATE(STARTDATE) <= STR_TO_DATE('{0}') GROUP BY PERSONCODE) B,", DateTime.Today.ToShortDateString());
+                strSQL += " PERSONINCHARGEMASTER C";
+                strSQL += "  WHERE A.PERSONCODE = B.PERSONCODE AND A.STARTDATE = B.sDate";
+                strSQL += " AND C.PERSONCODE = A.PERSONCODE";
+                strSQL += " AND (A.MONTHLYSALARY != C.MONTHLYSALARY OR A.YEARSALARY <> C.YEARSALARY)";
+                ArrayList arList = new ArrayList();
+                if (!PersonDB.ExecuteReader(strSQL, ref arList)) return false;
+
+                // 更新処理
+                PersonDB.connect(); PersonDB.beginTran();
+                foreach(object[] objRec in arList)
+                {
+                    // 月給与更新
+                    if (!PersonDB.UpdateFeild(CommonMotions.cnvInt(objRec[0]),
+                                            (int)IOMPersonInCharge.ColumnCnt.MonthlySalary,
+                                            CommonMotions.cnvDouble(objRec[1]), false))
+                    {
+                        PersonDB.rollback();
+                        return false;
+                    }
+                    // 年給与更新
+                    if (!PersonDB.UpdateFeild(CommonMotions.cnvInt(objRec[0]),
+                                            (int)IOMPersonInCharge.ColumnCnt.YearSalary,
+                                            CommonMotions.cnvDouble(objRec[2]), false))
+                    {
+                        PersonDB.rollback();
+                        return false;
+                    }
+                }
+
+                PersonDB.commit();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsUpDate.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsUpDate.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsUpDate.cs	(revision 51)
@@ -6,6 +6,7 @@
 using System.Security.Cryptography;
 using System.Text;
 using System.Threading.Tasks;
+using System.IO.Compression;
 
 namespace ProcessManagement.Common
 {
@@ -14,100 +15,80 @@
     /// </summary>
     public static class ClsUpDate
     {
+// ▼自動更新VPS対応▼
+        // サーバからファイルダウンロード
+        private static void download(String serverPath, String downloadSakiPath)
+        {
+            //WebClientオブジェクトを作成
+            System.Net.WebClient wc = new System.Net.WebClient();
+            //ログインユーザー名とパスワードを指定
+            wc.Credentials =
+                new System.Net.NetworkCredential(
+                    CommonDefine.s_FTP_USER_NAME, CommonDefine.s_FTP_PASSWORD);
+            //FTPサーバーからダウンロードする
+            wc.DownloadFile(serverPath, downloadSakiPath);
+            //解放する
+            wc.Dispose();
+        }
+// ▲自動更新VPS対応▲
         #region 使用定義
         //log4netログを使用する
         private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
         #endregion
 
-        #region ファイルのハッシュ値と更新日付を確認する
+        #region ファイルをコピーする
         /// <summary>
         /// ファイルのハッシュ値と更新日付を確認する
         /// </summary>
         /// <returns></returns>
-        public static bool ProgramTimeStampCheck()
+        public static bool UpdateAndEnvFileCopy()
         {
-            try
-            {
-                bool bRet = true;                       // 戻り値  
-                bool bCopyUpdataProc = false;           // アップデートPGコピーフラグ
-                string srcUpdataProc = string.Empty;    // コピー元ファイルパス作成エリア
-                string destUpdataProc = string.Empty;   // コピー先ファイルパス作成エリア
+            bool bRet = true;                       // 戻り値  
 
-                // デバック以外は使わない
-                //return true;
-                // 接続できなければ処理しない
-                if (!Directory.Exists(CommonDefine.s_UPDATE_FILE_PATH)) return true;
+            // Windows TEMPフォルダパス 
+            string tempPath = Path.GetTempPath();
+            // アップデートファイルパス
+            string updateFilePath = tempPath + CommonDefine.s_UPDATE_MODULE;
+            // サーバ更新モジュールzipファイル（ダウンロード後）
+            string updateModuleZip = tempPath + CommonDefine.s_UPDATE_MODULE + ".zip";
 
-                // コピー元(サーバー)ファイルリストを取得する
-                string[] files = Directory.GetFiles(CommonDefine.s_UPDATE_FILE_PATH);
-                foreach (string sourceFile in files)
-                {
-                    // ファイル名を取得する
-                    int spoint = sourceFile.LastIndexOf("\\") + 1;
-                    string Procename = sourceFile.Substring(spoint);
-                    // コピー先(カレント)ファイル名作成
-                    string destinationFile = System.Environment.CurrentDirectory + "\\" + Procename;
-                    // コピー先(カレント)にファイルがない
-                    if (!File.Exists(@destinationFile))
-                    {
-                        // コピープロセスが無い場合はここでコピー
-                        if (CommonDefine.s_UPDATECOPY_NAME == Procename)
-                        {
-                            srcUpdataProc = @sourceFile;
-                            destUpdataProc = @destinationFile;
-                            bCopyUpdataProc = true;
-                        }
-                        else
-                        {
-                            bRet = false;
-                        }
-                        continue;
-                    }
+            // 更新モジュール置き換え
+            // 更新モジュールzipあるか存在チェック
+            if (System.IO.Directory.Exists(tempPath + CommonDefine.s_UPDATE_MODULE))
+            {
+                // zip削除
+                System.IO.File.Delete(updateModuleZip);
+                // ダウンロードファイル削除
+                System.IO.Directory.Delete(tempPath + CommonDefine.s_UPDATE_MODULE, true);
+            }
+            // 更新モジュールZipダウンロード
+            download(
+                CommonDefine.s_FTP_SERVER_PATH + CommonDefine.s_UPDATE_MODULE + ".zip", updateModuleZip);
+            // 更新モジュール解凍
+            ZipFile.ExtractToDirectory(updateModuleZip, tempPath);
 
-                    // ハッシュ値を取得する
-                    // ----- コピー元ファイル
-                    string srcHash = CommonMotions.GetFileHashData(@sourceFile);
-                    // ----- コピー先ファイル
-                    string destHash = CommonMotions.GetFileHashData(@destinationFile);
-
-                    // ファイルが違う
-                    if (srcHash != destHash)
-                    {
-                        // 更新時間を確認する
-                        // ----- コピー元ファイル
-                        DateTime srcTimeStamp = CommonMotions.GetFileTimeStamp(@sourceFile, 'U');
-                        // ----- コピー先ファイル
-                        DateTime destTimeStamp = CommonMotions.GetFileTimeStamp(@destinationFile, 'U');
-                        // コピー元ファイルが新しくない
-                        if (srcTimeStamp <= destTimeStamp) continue;
-                        
-                        // コピープロセスが新しい場合はここでコピー
-                        if (CommonDefine.s_UPDATECOPY_NAME == Procename)
-                        {
-                            srcUpdataProc = @sourceFile;
-                            destUpdataProc = @destinationFile;
-                            bCopyUpdataProc = true;
-                        }
-                        else
-                        {
-                            bRet = false;
-                        }
-                    }
-                }
-
-                // コピープロセスのコピー
-                if (bCopyUpdataProc)
+            // コピー元(サーバー)ファイルリストを取得する
+            string[] files = Directory.GetFiles(updateFilePath);
+            foreach (string sourceFile in files)
+            {
+                // ファイル名を取得する
+                int spoint = sourceFile.LastIndexOf("\\") + 1;
+                string Procename = sourceFile.Substring(spoint);
+                // コピー先(カレント)ファイル名作成
+                string destinationFile = System.Environment.CurrentDirectory + "\\" + Procename;
+                // updatecopy.exeだったらコピー
+                if (CommonDefine.s_UPDATECOPY_NAME == Procename)
                 {
-                    File.Copy(@srcUpdataProc, @destUpdataProc, true);
+                    // コピー
+                    File.Copy(@sourceFile, @destinationFile, true);
                 }
+            }
+            // zip削除
+            System.IO.File.Delete(tempPath + CommonDefine.s_UPDATE_MODULE + ".zip");
+            // ダウンロードファイル削除
+            System.IO.Directory.Delete(tempPath + CommonDefine.s_UPDATE_MODULE, true);
 
-                return bRet;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
+            return bRet;
         }
         #endregion
     }
Index: branches/src/ProcessManagement/ProcessManagement/DB/Core/ABaseDBProcess.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/Core/ABaseDBProcess.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/Core/ABaseDBProcess.cs	(revision 51)
@@ -420,5 +420,49 @@
             }
         }
         #endregion
+
+        #region SetLockWaitime
+        /// <summary>
+        /// MySQL innodb_lock_wait_timeoutを設定
+        /// </summary>
+        /// <param name="seconds">秒</param>
+        /// <returns></returns>
+        public  bool SetLockWaitime(int seconds)
+        {
+            MySqlCommand mycmd = new MySqlCommand();
+            string strSql = "";
+
+            try
+            {
+                //ネクションセット
+                mycmd.Connection = (MySqlConnection)m_connection;
+
+                //SQLセット
+                strSql = "set innodb_lock_wait_timeout=1";
+                mycmd.CommandText = strSql;
+
+                //実行
+                mycmd.ExecuteNonQuery();
+
+                return true;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), myex.Message, strSql);
+                return false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strSql);
+                return false;
+            }
+            finally
+            {
+                mycmd.Dispose();
+                mycmd = null;
+            }
+        }
+
     }
+    #endregion
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/DBCommonMotions.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/DBCommonMotions.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/DBCommonMotions.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -39,6 +39,45 @@
 
         #endregion
 
+        #region 指定テーブルのカラムの属性桁数を取得する
+        /// <summary>
+        /// 指定テーブルのカラムの属性桁数を取得する
+        /// </summary>
+        public int GetTableColumnLength(string TabelName, string ColumnName, bool bConnect = true)
+        {
+            try
+            {
+                int RetLength = 0;
+                ArrayList arData = new ArrayList();
+
+                string strcmd = "SELECT DATA_TYPE,";
+                strcmd += " CASE WHEN DATA_TYPE = 'DECIMAL' THEN NUMERIC_PRECISION";
+                strcmd += " WHEN DATA_TYPE = 'INT' THEN NUMERIC_PRECISION";
+                strcmd += " WHEN DATA_TYPE = 'MEDIUMINT' THEN NUMERIC_PRECISION";
+                strcmd += " WHEN DATA_TYPE = 'SMALLINT' THEN NUMERIC_PRECISION";
+                strcmd += " WHEN DATA_TYPE = 'TINYINT' THEN NUMERIC_PRECISION";
+                strcmd += " WHEN DATA_TYPE = 'DATETIME' THEN DATETIME_PRECISION";
+                strcmd += " ELSE CHARACTER_MAXIMUM_LENGTH END DATA_LENGTH,";
+                strcmd += " COLUMN_NAME";
+                strcmd += " FROM INFORMATION_SCHEMA.COLUMNS";
+                strcmd += string.Format(" WHERE TABLE_NAME = '{0}'", TabelName.ToUpper());
+                strcmd += string.Format(" AND COLUMN_NAME = '{0}'", ColumnName.ToUpper());
+
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return 0;
+
+                object[] objWrk = (object[])arData[0];
+                RetLength = CommonMotions.cnvInt(objWrk[1]);
+
+                return RetLength;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(2), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
         #region 工事基本情報一括レコードコピー処理（コピータイプＡ）
         /// <summary>
         /// 工事基本情報レコードコピー処理（コピータイプＡ）
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOActionScheduleData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOActionScheduleData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOActionScheduleData.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient; 
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -99,7 +99,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -126,7 +126,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -149,7 +149,7 @@
 
                     strcmd += " VALUES (";
 
-                    strcmd += string.Format(" DATE_FORMAT('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
+                    strcmd += string.Format(" STR_TO_DATE('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
                     strcmd += string.Format(", {0}", data.PersonCode.ToString());
                     strcmd += string.Format(", '{0}'", data.ActionSchedule);
                     strcmd += string.Format(", {0}", data.TargetYear.ToString());
@@ -156,8 +156,8 @@
                     strcmd += string.Format(", {0}", data.TargetMonth.ToString());
                     strcmd += string.Format(", {0}", data.TargetDay.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -166,7 +166,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -189,7 +189,7 @@
 
                 strcmd += " SET";
 
-                strcmd += string.Format(" TargetDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
+                strcmd += string.Format(" TargetDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
                 strcmd += string.Format(",PersonCode = {0}", data.PersonCode.ToString());
                 strcmd += string.Format(",ActionSchedule = '{0}'", data.ActionSchedule);
                 strcmd += string.Format(",TargetYear = {0}", data.TargetYear.ToString());
@@ -196,7 +196,7 @@
                 strcmd += string.Format(",TargetMonth = {0}", data.TargetMonth.ToString());
                 strcmd += string.Format(",TargetDay = {0}", data.TargetDay.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -205,7 +205,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -232,7 +232,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -249,23 +249,23 @@
             try
             {
                 // データ取得
-                wrk.TargetDate = DateTime.Parse(objwrk[(int)NameColumn.TargetDate].ToString());
-                wrk.PersonCode = int.Parse(objwrk[(int)NameColumn.PersonCode].ToString());
-                wrk.ActionSchedule = objwrk[(int)NameColumn.ActionSchedule].ToString();
-                wrk.TargetYear = int.Parse(objwrk[(int)NameColumn.TargetYear].ToString());
-                wrk.TargetMonth = int.Parse(objwrk[(int)NameColumn.TargetMonth].ToString());
-                wrk.TargetDay = int.Parse(objwrk[(int)NameColumn.TargetDay].ToString());
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.TargetDate])) wrk.TargetDate = DateTime.Parse(objwrk[(int)NameColumn.TargetDate].ToString());
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.PersonCode])) wrk.PersonCode = int.Parse(objwrk[(int)NameColumn.PersonCode].ToString());
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.ActionSchedule])) wrk.ActionSchedule = objwrk[(int)NameColumn.ActionSchedule].ToString();
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.TargetYear])) wrk.TargetYear = int.Parse(objwrk[(int)NameColumn.TargetYear].ToString());
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.TargetMonth])) wrk.TargetMonth = int.Parse(objwrk[(int)NameColumn.TargetMonth].ToString());
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.TargetDay])) wrk.TargetDay = int.Parse(objwrk[(int)NameColumn.TargetDay].ToString());
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.ENTRY_DATE])) wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                if (!CommonMotions.chkCellBlank(objwrk[(int)NameColumn.UPDATE_DATE])) wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -292,11 +292,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -312,7 +312,7 @@
             string strWork = string.Empty;
             try
             {
-                strWork = string.Format(" Where TargetDate = DATE_FORMAT('{0}','%Y/%m/%d')", TargetDate.ToShortDateString());
+                strWork = string.Format(" Where TargetDate = STR_TO_DATE('{0}','%Y/%m/%d')", TargetDate.ToShortDateString());
                 if(PersonCode != 0)
                     strWork += string.Format(" And PersonCode = {0}", PersonCode.ToString());
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOAttendanceData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOAttendanceData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOAttendanceData.cs	(revision 51)
@@ -0,0 +1,460 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+using ProcessManagement.DB.MySql;
+
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// 出勤日報データＤＢアクセス
+    /// </summary>
+    public class IOAttendanceData : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// データフィールド並び
+        /// </summary>
+        public enum DataColumn
+        {
+            /// <summary>
+            /// 作成者コード
+            /// </summary>
+            PersonCode,
+            /// <summary>
+            /// 日報作成日
+            /// </summary>
+            AttendanceDate,
+            /// <summary>
+            /// 明細行番号
+            /// </summary>
+            SeqNo,
+            /// <summary>
+            /// 工事番号
+            /// </summary>
+            ConstructionCode,
+            /// <summary>
+            /// 残業時間
+            /// </summary>
+            OvertimeHours,
+            /// <summary>
+            /// コメント
+            /// </summary>
+            WorkingComment,
+            /// <summary>
+            /// 登録年月日
+            /// </summary>
+            EntryDate,
+            /// <summary>
+            /// 更新年月日
+            /// </summary>
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOAttendanceData()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region SQL作成
+        /// <summary>
+        /// SQL作成
+        /// </summary>
+        private string CreateSelectSQL()
+        {
+            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            string strcmd = "SELECT";
+
+            strcmd += "  PersonCode";                                       // 担当者コード
+            strcmd += " ,DATE_FORMAT(AttendanceDate, '%Y/%m/%d')";          // 日報作成日
+            strcmd += " ,SeqNo";                                            // 明細行番号
+            strcmd += " ,ConstructionCode";                                 // 工事番号
+            strcmd += " ,OvertimeHours";                                    // 残業時間
+            strcmd += " ,WorkingComment";                                   // コメント
+            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";      // 登録年月日
+            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";     // 更新年月日
+            strcmd += " FROM AttendanceData";
+
+            return strcmd;
+        }
+        #endregion
+
+        #region 複数読込み処理
+        public bool SelectAction(string AddSQLString, ref List<AttendanceData> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    AttendanceData work = new AttendanceData();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1件読込み処理
+        public bool SelectAction(string AddSQLString, ref AttendanceData data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, 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);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1件追加処理
+        /// <summary>
+        /// 担当者毎経費データ追加
+        /// </summary>
+        /// <param name="data">担当者毎経費データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(AttendanceData work, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "INSERT INTO AttendanceData";
+                strcmd += "  (PersonCode";      // 担当者コード
+                strcmd += " ,AttendanceDate";   // 日報作成日
+                strcmd += " ,SeqNo";            // 明細行番号
+                strcmd += " ,ConstructionCode"; // 工事番号
+                strcmd += " ,OvertimeHours";    // 残業時間
+                strcmd += " ,WorkingComment";   // コメント
+                strcmd += " ,EntryDate";        // 登録年月日
+                strcmd += " ,UpdateDate)";      // 更新年月日
+
+                strcmd += " VALUES (";
+
+                strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
+                                            , work.AttendanceDate.ToShortDateString()); // 日報作成日
+                strcmd += string.Format(", {0}", work.SeqNo);                           // 明細行番号
+                strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
+                strcmd += string.Format(", {0}", work.OvertimeHours);                   // 残業時間
+                strcmd += string.Format(",'{0}'", work.WorkingComment);                 // コメント
+
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 複数追加処理
+        public bool InsertAction(List<AttendanceData> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                foreach (AttendanceData work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 更新処理
+        /// <summary>
+        /// 担当者毎経費データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">担当者毎経費データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, AttendanceData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE AttendanceData";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
+                strcmd += string.Format(",AttendanceDate = STR_TO_DATE('{0}','%Y/%m/%d')"
+                                        , data.AttendanceDate.ToShortDateString());             // 日報作成日
+                strcmd += string.Format(",SeqNo =  {0} ", data.SeqNo);                          // 明細行番号
+                strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
+                strcmd += string.Format(",OvertimeHours = {0}", data.OvertimeHours);            // 残業時間
+                strcmd += string.Format(",WorkingComment = '{0}'", data.WorkingComment);        // コメント
+                
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM AttendanceData", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <param name="ConstructionCode"></param>
+        /// <param name="FeildNo"></param>
+        /// <param name="value"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateFeild(int PersonCode, DateTime AttendanceDate, int SeqNo, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE AttendanceData";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)DataColumn.PersonCode:
+                        strcmd += string.Format(" PersonCode = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.AttendanceDate:
+                        strcmd += string.Format(" AttendanceDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)DataColumn.SeqNo:
+                        strcmd += string.Format(" SeqNo = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.OvertimeHours:
+                        strcmd += string.Format(" OvertimeHours = {0}", (double)value);
+                        break;
+                    case (int)DataColumn.WorkingComment:
+                        strcmd += string.Format(" WorkingComment = '{0}'", CommonMotions.cnvString(value));
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(PersonCode, AttendanceDate, SeqNo);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データセット処理
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref AttendanceData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.PersonCode = int.Parse(objwrk[(int)DataColumn.PersonCode].ToString());                  // 担当者コード
+                wrk.AttendanceDate = DateTime.Parse(objwrk[(int)DataColumn.AttendanceDate].ToString());     // 日報作成日
+                wrk.SeqNo = int.Parse(objwrk[(int)DataColumn.SeqNo].ToString());                            // 明細行番号
+                wrk.ConstructionCode = int.Parse(objwrk[(int)DataColumn.ConstructionCode].ToString());      // 工事番号
+                wrk.OvertimeHours = double.Parse(objwrk[(int)DataColumn.OvertimeHours].ToString());         // 残業時間
+                wrk.WorkingComment = objwrk[(int)DataColumn.WorkingComment].ToString();                     // 当日作業内容
+                
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 検索文字列作成処理
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="PersonCode"></param>
+        /// <param name="ActionDate"></param>
+        /// <param name="DataType"></param>
+        /// <param name="DataAddCount"></param>
+        /// <returns></returns>
+        public string CreatePrimarykeyString(int PersonCode, DateTime AttendanceDate, int SeqNo = 0)
+        {
+            string strWork = "";
+            try
+            {
+                strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
+                if (AttendanceDate != DateTime.MinValue)
+                    strWork += string.Format(" AND AttendanceDate = STR_TO_DATE('{0}','%Y/%m/%d')", AttendanceDate.ToShortDateString());
+                if (SeqNo != 0)
+                    strWork += string.Format(" AND SeqNo = {0}", SeqNo);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+
+        #region 追加番号の最大値を取得
+        /// <summary>
+        /// 追加番号の最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxAddDataCount(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(SeqNo), 0) FROM AttendanceData" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals("null"))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+            return iRet;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBankBusinessDayMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBankBusinessDayMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBankBusinessDayMaster.cs	(revision 51)
@@ -0,0 +1,257 @@
+﻿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 IOBankBusinessDayMaster : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            YearMonth = 0,
+            BankBusinessDay,
+            Note,
+            DeleteFlg,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOBankBusinessDayMaster()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<BankBusinessDayMaster> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += "  YearMonth, BankBusinessDay, Note, DeleteFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM BankBusinessDayMaster";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    BankBusinessDayMaster work = new BankBusinessDayMaster();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 新規登録
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(List<BankBusinessDayMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (BankBusinessDayMaster work in data)
+                {
+                    strcmd = "INSERT INTO BankBusinessDayMaster";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.YearMonth.ToString());
+                    strcmd += string.Format(", {0}", work.BankBusinessDay.ToString());
+                    strcmd += string.Format(", '{0}'", work.Note.ToString());
+                    strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新登録
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateAction(string AddSQLString, BankBusinessDayMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE BankBusinessDayMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" YearMonth = {0}", data.YearMonth.ToString());
+                strcmd += string.Format(",BankBusinessDay = {0}", data.BankBusinessDay.ToString());
+                strcmd += string.Format(",Note = '{0}'", data.Note);
+                strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = "Update BankBusinessDayMaster Set DeleteFlg = 1";
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 構造体設定
+        /// </summary>
+        /// <param name="objwrk"></param>
+        /// <param name="wrk"></param>
+        public void Reader2Struct(object[] objwrk, ref BankBusinessDayMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.YearMonth = int.Parse(objwrk[(int)NameColumn.YearMonth].ToString());
+                wrk.BankBusinessDay = int.Parse(objwrk[(int)NameColumn.BankBusinessDay].ToString());
+                wrk.Note = objwrk[(int)NameColumn.Note].ToString();
+                wrk.DeleteFlg = int.Parse(objwrk[(int)NameColumn.DeleteFlg].ToString());
+
+                wrk.EntryDate = objwrk[(int)NameColumn.EntryDate].ToString()=="" ? DateTime.Parse("2001/01/01"): DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = objwrk[(int)NameColumn.UpdateDate].ToString()=="" ? DateTime.Parse("2001/01/01") : DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int YearMonth, int BankBusinessDay)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where YearMonth = {0} and BankBusinessDay = {1}", YearMonth, BankBusinessDay);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingData.cs	(revision 51)
@@ -0,0 +1,290 @@
+﻿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 IOBillingData : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            CompanyCode = 0,
+            TargetDate,
+            SeqNo,
+            BillPrice,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOBillingData()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<BillingData> data, bool bConnect = true)
+        {
+            // インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " CompanyCode,TargetDate,SeqNo,BillPrice";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM BillingData";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    BillingData work = new BillingData();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 新規登録
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(List<BillingData> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (BillingData work in data)
+                {
+                    strcmd = "INSERT INTO BillingData";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.CompanyCode.ToString());
+                    strcmd += string.Format(", {0}", work.TargetDate.ToString());
+                    strcmd += string.Format(", {0}", work.SeqNo.ToString());
+                    strcmd += string.Format(", {0}", work.BillPrice.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新登録
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateAction(string AddSQLString, BillingData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE BillingData";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" BillPrice = {0}", data.BillPrice.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM BillingData", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 構造体へセット
+        /// </summary>
+        /// <param name="objwrk"></param>
+        /// <param name="wrk"></param>
+        public void Reader2Struct(object[] objwrk, ref BillingData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.CompanyCode = int.Parse(objwrk[(int)NameColumn.CompanyCode].ToString());
+                wrk.TargetDate = int.Parse(objwrk[(int)NameColumn.TargetDate].ToString());
+                wrk.SeqNo = int.Parse(objwrk[(int)NameColumn.SeqNo].ToString());
+                wrk.BillPrice = long.Parse(objwrk[(int)NameColumn.BillPrice].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+
+        #endregion
+
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int CompanyCode, int TargetDate, int SeqNo)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2}", CompanyCode, TargetDate, SeqNo);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        /// <param name="MaterialItemCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLock(int CompanyCode, int TargetDate, int SeqNo, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from BillingData where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} for update;",
+                                        CompanyCode, TargetDate, SeqNo);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingDataDetail.cs	(revision 51)
@@ -0,0 +1,311 @@
+﻿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 IOBillingDataDetail: MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            CompanyCode = 0,
+            TargetDate,
+            SeqNo,
+            LineCount,
+            ConstructionCode,
+            FieldName,
+            BillPrice,
+            HighwPrice,
+            HardwPrice,
+            IndsWasteTax,
+            Note,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOBillingDataDetail()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<BillingDataDetail> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " CompanyCode,TargetDate,SeqNo,LineCount,ConstructionCode,FieldName,BillPrice,HighwPrice,HardwPrice,IndsWasteTax,Note";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM BillingDataDetail";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    BillingDataDetail work = new BillingDataDetail();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 新規登録
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(List<BillingDataDetail> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (BillingDataDetail work in data)
+                {
+                    strcmd = "INSERT INTO BillingDataDetail";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.CompanyCode.ToString());
+                    strcmd += string.Format(", {0}", work.TargetDate.ToString());
+                    strcmd += string.Format(", {0}", work.SeqNo.ToString());
+                    strcmd += string.Format(", {0}", work.LineCount.ToString());
+                    strcmd += string.Format(", {0}", work.ConstructionCode.ToString());
+                    strcmd += string.Format(", '{0}'", work.FieldName.ToString());
+                    strcmd += string.Format(", {0}", work.BillPrice.ToString());
+                    strcmd += string.Format(", {0}", work.HighwPrice.ToString());
+                    strcmd += string.Format(", {0}", work.HardwPrice.ToString());
+                    strcmd += string.Format(", {0}", work.IndsWasteTax.ToString());
+                    strcmd += string.Format(", '{0}'", work.Note.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新登録
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateAction(string AddSQLString, BillingDataDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE BillingDataDetail";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode.ToString());
+                strcmd += string.Format(",FieldName = '{0}'", data.FieldName);
+                strcmd += string.Format(",BillPrice = {0}", data.BillPrice.ToString());
+                strcmd += string.Format(",HighwPrice = {0}", data.HighwPrice.ToString());
+                strcmd += string.Format(",HardwPrice = {0}", data.HardwPrice.ToString());
+                strcmd += string.Format(",IndsWasteTax = {0}", data.IndsWasteTax.ToString());
+                strcmd += string.Format(",Note = '{0}'", data.Note);
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM BillingDataDetail", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 構造体設定
+        /// </summary>
+        /// <param name="objwrk"></param>
+        /// <param name="wrk"></param>
+        public void Reader2Struct(object[] objwrk, ref BillingDataDetail wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.CompanyCode = int.Parse(objwrk[(int)NameColumn.CompanyCode].ToString());
+                wrk.TargetDate = int.Parse(objwrk[(int)NameColumn.TargetDate].ToString());
+                wrk.SeqNo = int.Parse(objwrk[(int)NameColumn.SeqNo].ToString());
+                wrk.LineCount= int.Parse(objwrk[(int)NameColumn.LineCount].ToString());
+                wrk.ConstructionCode = long.Parse(objwrk[(int)NameColumn.ConstructionCode].ToString());
+                wrk.FieldName = objwrk[(int)NameColumn.FieldName].ToString();
+                wrk.BillPrice=long.Parse(objwrk[(int)NameColumn.BillPrice].ToString());
+                wrk.HighwPrice=long.Parse(objwrk[(int)NameColumn.HighwPrice].ToString());
+                wrk.HardwPrice=long.Parse(objwrk[(int)NameColumn.HardwPrice].ToString());
+                wrk.IndsWasteTax = long.Parse(objwrk[(int)NameColumn.IndsWasteTax].ToString());
+                wrk.Note = objwrk[(int)NameColumn.Note].ToString();
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+
+        #endregion
+
+
+        #region パブリックメソッド（特殊処理）
+
+        public string CreatePrimarykeyString(int CompanyCode, int TargetDate,int SeqNo, int LineCount)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} and LineCount = {3}", CompanyCode, TargetDate, SeqNo, LineCount);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        /// <param name="MaterialItemCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLock(int CompanyCode, int TargetDate, int SeqNo, int LineCount, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from BillingDataDetail where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} and LineCount = {3} for update;",
+                                        CompanyCode, TargetDate, SeqNo, LineCount);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingPaymentSummary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingPaymentSummary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOBillingPaymentSummary.cs	(revision 51)
@@ -0,0 +1,320 @@
+﻿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 IOBillingPaymentSummary : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            CompanyCode = 0,
+            TargetDate,
+            ChargePaymentKind,
+            Payday,
+            BillPriceStotal,
+            ConsumptionTaxRate,
+            ConsumptionTaxPrice,
+            HighwPriceStotal,
+            HardwPriceStotal,
+            IndsWasteTaxStotal,
+            CnstrPriceRate,
+            CnstrPriceStotal,
+            BillingPriceTotal,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOBillingPaymentSummary()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<BillingPaymentSummary> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " CompanyCode,TargetDate,ChargePaymentKind,DATE_FORMAT(Payday, '%Y/%m/%d'),BillPriceStotal,ConsumptionTaxRate,ConsumptionTaxPrice,HighwPriceStotal,HardwPriceStotal,IndsWasteTaxStotal,CnstrPriceRate,CnstrPriceStotal,BillingPriceTotal";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM BillingPaymentSummary";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    BillingPaymentSummary work = new BillingPaymentSummary();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 新規登録
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(List<BillingPaymentSummary> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (BillingPaymentSummary work in data)
+                {
+                    strcmd = "INSERT INTO BillingPaymentSummary";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.CompanyCode.ToString());
+                    strcmd += string.Format(", {0}", work.TargetDate.ToString());
+                    strcmd += string.Format(", {0}", work.ChargePaymentKind.ToString());
+                    strcmd += string.Format(", DATE_FORMAT(DATE_FORMAT('{0}','%Y/%m/%d'),'%Y/%m/%d')", work.Payday.ToString());
+                    strcmd += string.Format(", {0}", work.BillPriceStotal.ToString());
+                    strcmd += string.Format(", {0}", work.ConsumptionTaxRate.ToString());
+                    strcmd += string.Format(", {0}", work.ConsumptionTaxPrice.ToString());
+                    strcmd += string.Format(", {0}", work.HighwPriceStotal.ToString());
+                    strcmd += string.Format(", {0}", work.HardwPriceStotal.ToString());
+                    strcmd += string.Format(", {0}", work.IndsWasteTaxStotal.ToString());
+                    strcmd += string.Format(", {0}", work.CnstrPriceRate.ToString());
+                    strcmd += string.Format(", {0}", work.CnstrPriceStotal.ToString());
+                    strcmd += string.Format(", {0}", work.BillingPriceTotal.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新登録
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateAction(string AddSQLString, BillingPaymentSummary data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE BillingPaymentSummary";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" Payday = DATE_FORMAT(DATE_FORMAT('{0}','%Y/%m/%d'),'%Y/%m/%d')", data.Payday.ToString());
+                strcmd += string.Format(",BillPriceStotal = {0}", data.BillPriceStotal.ToString());
+
+                strcmd += string.Format(",ConsumptionTaxRate = {0}", data.ConsumptionTaxRate.ToString());
+                strcmd += string.Format(",ConsumptionTaxPrice = {0}", data.ConsumptionTaxPrice.ToString());
+                strcmd += string.Format(",HighwPriceStotal = {0}", data.HighwPriceStotal.ToString());
+                strcmd += string.Format(",HardwPriceStotal = {0}", data.HardwPriceStotal.ToString());
+                strcmd += string.Format(",IndsWasteTaxStotal = {0}", data.IndsWasteTaxStotal.ToString());
+
+                strcmd += string.Format(",CnstrPriceRate = {0}", data.CnstrPriceRate.ToString());
+                strcmd += string.Format(",CnstrPriceStotal = {0}", data.CnstrPriceStotal.ToString());
+                strcmd += string.Format(",BillingPriceTotal = {0}", data.BillingPriceTotal.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM BillingPaymentSummary", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 構造体設定
+        /// </summary>
+        /// <param name="objwrk"></param>
+        /// <param name="wrk"></param>
+        public void Reader2Struct(object[] objwrk, ref BillingPaymentSummary wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.CompanyCode = int.Parse(objwrk[(int)NameColumn.CompanyCode].ToString());
+                wrk.TargetDate = int.Parse(objwrk[(int)NameColumn.TargetDate].ToString());
+                wrk.ChargePaymentKind = int.Parse(objwrk[(int)NameColumn.ChargePaymentKind].ToString());
+                wrk.Payday = DateTime.Parse(objwrk[(int)NameColumn.Payday].ToString());
+                wrk.BillingPriceTotal = long.Parse(objwrk[(int)NameColumn.BillingPriceTotal].ToString());
+
+                wrk.ConsumptionTaxRate = double.Parse(objwrk[(int)NameColumn.ConsumptionTaxRate].ToString());
+                wrk.ConsumptionTaxPrice = long.Parse(objwrk[(int)NameColumn.ConsumptionTaxPrice].ToString());
+
+
+                wrk.HighwPriceStotal = long.Parse(objwrk[(int)NameColumn.HighwPriceStotal].ToString());
+                wrk.HardwPriceStotal = long.Parse(objwrk[(int)NameColumn.HardwPriceStotal].ToString());
+                wrk.IndsWasteTaxStotal = long.Parse(objwrk[(int)NameColumn.IndsWasteTaxStotal].ToString());
+                wrk.CnstrPriceRate = double.Parse(objwrk[(int)NameColumn.CnstrPriceRate].ToString());
+                wrk.CnstrPriceStotal = long.Parse(objwrk[(int)NameColumn.HighwPriceStotal].ToString());
+
+                wrk.BillingPriceTotal = long.Parse(objwrk[(int)NameColumn.BillingPriceTotal].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        /// <param name="MaterialItemCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLock(int CompanyCode, int TargetDate, int ChargePaymentKind, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from BillingPaymentSummary where CompanyCode = {0} and TargetDate = {1} and ChargePaymentKind = {2} for update;",
+                                        CompanyCode, TargetDate, ChargePaymentKind);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+        public string CreatePrimarykeyString(int CompanyCode, int TargetDate, int ChargePaymentKind)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where CompanyCode = {0} and TargetDate = {1} and ChargePaymentKind = {2}", CompanyCode, TargetDate, ChargePaymentKind);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfo.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfo.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -33,54 +33,55 @@
         /// </summary>
         public enum TableColumn
         {
-            CONSTRUCTION_CODE = 0,
-            TYINGFLG,
-            CONSTRUCTION_YEAR,
-            CONSTRUCTION_PERIOD,
-            REQUESTED_DATE,
-            ESTIMATESSUBMITDEADLINE,
-            ESTIMATESSUBMITTED_DATE,
-            PROVISIONALORDERDATE,
-            ORDER_DATE,
-            ORDERSTARTINGDATE,
-            ORDERCOMPLETIONDATE,
-            PREPARATIONSTARTDATE,
-            CONSTRUCTIONSTARTINGDATE,
-            CONSTRUCTIONCOMPLETION_DATE,
-            NONORDERDATE,
-            ORDERS_DECISION_PRICE,
-            ORDERS_DECISION_PRICE_IN_TAX,
-            SALES_PERSON_CODE,
-            CONSTRPERSONCODE,
-            CONSTRSUBPERSONCODE,
-            CONSTRUCTIONINSTRUCTOR,
-            TRANSFERCONSTRUCTION,
-            TRANSFERCONSTRUCTIONDATE,
-            ORDERERS_DIVISION,
-            ORDERERS_CODE,
-            ESTIMATESEXPIRATIONDATE,
-            CONSTRUCTIONPERIODSTART,
-            CONSTRUCTIONPERIODEND,
-            CONSTRUCTIONPERIODSTART2,
-            CONSTRUCTIONPERIODEND2,
-            START_DATE,
-            END_DATE,
-            PURCHASEORDERMAILINGDATE,
-            PURCHASEORDERRETURNDATE,
-            PURCHASEORDERRETURNCHECKDATE,
-            CONSUMPTIONTAX_FLG,
-            PRIMECONTRACTOR_FLG,
-            SALESCOST_FLG,
-            CONSTRUCTIONSTATUS_FLG,
-            CONSTRUCTIONTYPE,
-            ESTIMATETYPE,
-            BILLINGSTARTDATE,
-            BILLINGDATE,
-            BILLINGSPLITFLG,
-            BILLINGSENDDATE,
-            LEDGERCOMPLATEDATE,
-            ENTRY_DATE,
-            UPDATE_DATE,
+            ConstructionCode = 0,
+            TyingFlg,
+            JoinFlg,
+            ConstructionYear,
+            ConstructionPeriod,
+            RequestedDate,
+            EstimatessubmitDeadLine,
+            EstimatessubmittedDate,
+            ProvisionAlorderDate,
+            OrderDate,
+            OrderStartingDate,
+            OrderCompletionDate,
+            PreparationStartDate,
+            ConstructionStartingDate,
+            ConstructionCompletionDate,
+            NonOrderDate,
+            OrdersDecisionPrice,
+            OrdersDecisionPriceInTax,
+            SalesPersonCode,
+            ConstrPersonCode,
+            ConstrSubPersonCode,
+            ConstructionInstructor,
+            TransferConstruction,
+            TransferConstructionDate,
+            OrderersDivision,
+            OrderersCode,
+            EstimatesExpirationDate,
+            ConstructionPeriodStart,
+            ConstructionPeriodEnd,
+            ConstructionPeriodStart2,
+            ConstructionPeriodEnd2,
+            StartDate,
+            EndDate,
+            PurchaseOrderMailingDate,
+            PurchaseOrderReturnDate,
+            PurchaseOrderReturnCheckDate,
+            ConsumptionTaxFlg,
+            PrimecontractorFlg,
+            SalesCostFlg,
+            ConstructionStatusFlg,
+            ConstructionType,
+            EstimateType,
+            BillingStartDate,
+            BillingDate,
+            BillingSplitFlg,
+            BillingSendDate,
+            LedgerComplateDate,
+            EntryDate,
+            UpdateDate,
         }
         #endregion
 
@@ -106,6 +107,7 @@
 
             strcmd += "  ConstructionCode";
             strcmd += ", TyingFlg";
+            strcmd += ", JoinFlg";
             strcmd += ", ConstructionYear";
             strcmd += ", ConstructionPeriod";
             strcmd += ", DATE_FORMAT(RequestedDate, '%Y/%m/%d')";
@@ -238,6 +240,7 @@
                     strcmd = "INSERT INTO ConstructionBaseInfo";
                     strcmd += " (ConstructionCode";
                     strcmd += ", TyingFlg";
+                    strcmd += ", JoinFlg";
                     strcmd += ", ConstructionYear";
                     strcmd += ", ConstructionPeriod";
                     strcmd += ", RequestedDate";
@@ -289,20 +292,21 @@
 
                     strcmd += string.Format("  {0}", data.ConstructionCode);
                     strcmd += string.Format(", {0}", data.TyingFlg);
+                    strcmd += string.Format(", {0}", data.JoinFlg);
                     strcmd += string.Format(", {0}", data.ConstructionYear);
                     strcmd += string.Format(", {0}", data.ConstructionPeriod);
 
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.RequestedDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.EstimatesSubmitDeadline.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.EstimatesSubmittedDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ProvisionalOrderDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.OrderDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.OrderStartingDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.OrderCompletionDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.PreparationStartDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionStartingDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionCompletionDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.NonOrderDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.RequestedDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.EstimatesSubmitDeadline.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.EstimatesSubmittedDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.ProvisionalOrderDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.OrderDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.OrderStartingDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.OrderCompletionDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.PreparationStartDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionStartingDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionCompletionDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.NonOrderDate.ToShortDateString());
 
                     strcmd += string.Format(", {0}", data.OrdersDecisionPrice);
                     strcmd += string.Format(", {0}", data.OrdersDecisionPriceInTax);
@@ -313,21 +317,21 @@
                     strcmd += string.Format(", {0}", data.ConstructionInstructor);
 
                     strcmd += string.Format(", {0}", data.TransferConstruction);
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.TransferConstructionDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.TransferConstructionDate.ToShortDateString());
 
                     strcmd += string.Format(", {0}", data.OrderersDivision);
                     strcmd += string.Format(", {0}", data.OrderersCode);
 
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.EstimatesExpirationDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodStart.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodStart2.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd2.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.StartDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.EndDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.PurchaseOrderMailingDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.PurchaseOrderReturnDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.PurchaseOrderReturnCheckDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.EstimatesExpirationDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodStart.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodStart2.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd2.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.StartDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.EndDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.PurchaseOrderMailingDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.PurchaseOrderReturnDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.PurchaseOrderReturnCheckDate.ToShortDateString());
 
                     strcmd += string.Format(", {0}", data.ConsumptionTaxFlg);
                     strcmd += string.Format(", {0}", data.PrimeContractorFlg);
@@ -337,14 +341,14 @@
                     strcmd += string.Format(", {0}", data.ConstructionType);
                     strcmd += string.Format(", {0}", data.EstimateType);
 
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.BillingStartDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.BillingDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.BillingStartDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.BillingDate.ToShortDateString());
                     strcmd += string.Format(", {0}", data.BillingSplitFlg);
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.BillingSendDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.LedgerComplateDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.BillingSendDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", data.LedgerComplateDate.ToShortDateString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -403,20 +407,21 @@
 
                 strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode);
                 strcmd += string.Format(", TyingFlg = {0}", data.TyingFlg);
+                strcmd += string.Format(", JoinFlg = {0}", data.JoinFlg);
                 strcmd += string.Format(", ConstructionYear = {0}", data.ConstructionYear);
                 strcmd += string.Format(", ConstructionPeriod = {0}", data.ConstructionPeriod);
 
-                strcmd += string.Format(", RequestedDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.RequestedDate.ToShortDateString());
-                strcmd += string.Format(", EstimatesSubmitDeadline = DATE_FORMAT('{0}','%Y/%m/%d')", data.EstimatesSubmitDeadline.ToShortDateString());
-                strcmd += string.Format(", EstimatesSubmittedDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.EstimatesSubmittedDate.ToShortDateString());
-                strcmd += string.Format(", ProvisionalOrderDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.ProvisionalOrderDate.ToShortDateString());
-                strcmd += string.Format(", OrderDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.OrderDate.ToShortDateString());
-                strcmd += string.Format(", OrderStartingDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.OrderStartingDate.ToShortDateString());
-                strcmd += string.Format(", OrderCompletionDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.OrderCompletionDate.ToShortDateString());
-                strcmd += string.Format(", PreparationStartDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.PreparationStartDate.ToShortDateString());
-                strcmd += string.Format(", ConstructionStartingDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionStartingDate.ToShortDateString());
-                strcmd += string.Format(", ConstructionCompletionDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionCompletionDate.ToShortDateString());
-                strcmd += string.Format(", NonOrderDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.NonOrderDate.ToShortDateString());
+                strcmd += string.Format(", RequestedDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.RequestedDate.ToShortDateString());
+                strcmd += string.Format(", EstimatesSubmitDeadline = STR_TO_DATE('{0}','%Y/%m/%d')", data.EstimatesSubmitDeadline.ToShortDateString());
+                strcmd += string.Format(", EstimatesSubmittedDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.EstimatesSubmittedDate.ToShortDateString());
+                strcmd += string.Format(", ProvisionalOrderDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.ProvisionalOrderDate.ToShortDateString());
+                strcmd += string.Format(", OrderDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.OrderDate.ToShortDateString());
+                strcmd += string.Format(", OrderStartingDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.OrderStartingDate.ToShortDateString());
+                strcmd += string.Format(", OrderCompletionDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.OrderCompletionDate.ToShortDateString());
+                strcmd += string.Format(", PreparationStartDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.PreparationStartDate.ToShortDateString());
+                strcmd += string.Format(", ConstructionStartingDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionStartingDate.ToShortDateString());
+                strcmd += string.Format(", ConstructionCompletionDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionCompletionDate.ToShortDateString());
+                strcmd += string.Format(", NonOrderDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.NonOrderDate.ToShortDateString());
 
                 strcmd += string.Format(", OrdersDecisionPrice = {0}", data.OrdersDecisionPrice);
                 strcmd += string.Format(", OrdersDecisionPriceInTax = {0}", data.OrdersDecisionPriceInTax);
@@ -427,21 +432,21 @@
                 strcmd += string.Format(", ConstructionInstructor = {0}", data.ConstructionInstructor);
 
                 strcmd += string.Format(", TransferConstruction = {0}", data.TransferConstruction);
-                strcmd += string.Format(", TransferConstructionDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.TransferConstructionDate.ToShortDateString());
+                strcmd += string.Format(", TransferConstructionDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.TransferConstructionDate.ToShortDateString());
 
                 strcmd += string.Format(", OrderersDivision = {0}", data.OrderersDivision);
                 strcmd += string.Format(", OrderersCode = {0}", data.OrderersCode);
 
-                strcmd += string.Format(", EstimatesExpirationDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.EstimatesExpirationDate.ToShortDateString());
-                strcmd += string.Format(", ConstructionPeriodStart = DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodStart.ToShortDateString());
-                strcmd += string.Format(", ConstructionPeriodEnd = DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd.ToShortDateString());
-                strcmd += string.Format(", ConstructionPeriodStart2 = DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodStart2.ToShortDateString());
-                strcmd += string.Format(", ConstructionPeriodEnd2 = DATE_FORMAT('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd2.ToShortDateString());
-                strcmd += string.Format(", StartDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.StartDate.ToShortDateString());
-                strcmd += string.Format(", EndDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.EndDate.ToShortDateString());
-                strcmd += string.Format(", PurchaseOrderMailingDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.PurchaseOrderMailingDate.ToShortDateString());
-                strcmd += string.Format(", PurchaseOrderReturnDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.PurchaseOrderReturnDate.ToShortDateString());
-                strcmd += string.Format(", PurchaseOrderReturnCheckDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.PurchaseOrderReturnCheckDate.ToShortDateString());
+                strcmd += string.Format(", EstimatesExpirationDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.EstimatesExpirationDate.ToShortDateString());
+                strcmd += string.Format(", ConstructionPeriodStart = STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodStart.ToShortDateString());
+                strcmd += string.Format(", ConstructionPeriodEnd = STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd.ToShortDateString());
+                strcmd += string.Format(", ConstructionPeriodStart2 = STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodStart2.ToShortDateString());
+                strcmd += string.Format(", ConstructionPeriodEnd2 = STR_TO_DATE('{0}','%Y/%m/%d')", data.ConstructionPeriodEnd2.ToShortDateString());
+                strcmd += string.Format(", StartDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.StartDate.ToShortDateString());
+                strcmd += string.Format(", EndDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.EndDate.ToShortDateString());
+                strcmd += string.Format(", PurchaseOrderMailingDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.PurchaseOrderMailingDate.ToShortDateString());
+                strcmd += string.Format(", PurchaseOrderReturnDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.PurchaseOrderReturnDate.ToShortDateString());
+                strcmd += string.Format(", PurchaseOrderReturnCheckDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.PurchaseOrderReturnCheckDate.ToShortDateString());
 
                 strcmd += string.Format(", ConsumptionTaxFlg = {0}", data.ConsumptionTaxFlg);
                 strcmd += string.Format(", PrimeContractorFlg = {0}", data.PrimeContractorFlg);
@@ -451,13 +456,13 @@
                 strcmd += string.Format(", ConstructionType = {0}", data.ConstructionType);
                 strcmd += string.Format(", EstimateType = {0}", data.EstimateType);
 
-                strcmd += string.Format(", BillingStartDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.BillingStartDate.ToShortDateString());
-                strcmd += string.Format(", BillingDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.BillingDate.ToShortDateString());
+                strcmd += string.Format(", BillingStartDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.BillingStartDate.ToShortDateString());
+                strcmd += string.Format(", BillingDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.BillingDate.ToShortDateString());
                 strcmd += string.Format(", BillingSplitFlg = {0}", data.BillingSplitFlg);
-                strcmd += string.Format(", BillingSendDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.BillingSendDate.ToShortDateString());
-                strcmd += string.Format(", LedgerComplateDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.LedgerComplateDate.ToShortDateString());
+                strcmd += string.Format(", BillingSendDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.BillingSendDate.ToShortDateString());
+                strcmd += string.Format(", LedgerComplateDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.LedgerComplateDate.ToShortDateString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -510,66 +515,67 @@
             try
             {
                 // データ取得
-                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.CONSTRUCTION_CODE].ToString());
-                wrk.TyingFlg = int.Parse(objwrk[(int)TableColumn.TYINGFLG].ToString());
-                wrk.ConstructionYear = int.Parse(objwrk[(int)TableColumn.CONSTRUCTION_YEAR].ToString());
-                wrk.ConstructionPeriod = int.Parse(objwrk[(int)TableColumn.CONSTRUCTION_PERIOD].ToString());
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());
+                wrk.TyingFlg = int.Parse(objwrk[(int)TableColumn.TyingFlg].ToString());
+                wrk.JoinFlg = int.Parse(objwrk[(int)TableColumn.JoinFlg].ToString());
+                wrk.ConstructionYear = int.Parse(objwrk[(int)TableColumn.ConstructionYear].ToString());
+                wrk.ConstructionPeriod = int.Parse(objwrk[(int)TableColumn.ConstructionPeriod].ToString());
 
-                wrk.RequestedDate = DateTime.Parse(objwrk[(int)TableColumn.REQUESTED_DATE].ToString());
-                wrk.EstimatesSubmitDeadline = DateTime.Parse(objwrk[(int)TableColumn.ESTIMATESSUBMITDEADLINE].ToString());
-                wrk.EstimatesSubmittedDate = DateTime.Parse(objwrk[(int)TableColumn.ESTIMATESSUBMITTED_DATE].ToString());
-                wrk.ProvisionalOrderDate = DateTime.Parse(objwrk[(int)TableColumn.PROVISIONALORDERDATE].ToString());
-                wrk.OrderDate = DateTime.Parse(objwrk[(int)TableColumn.ORDER_DATE].ToString());
-                wrk.OrderStartingDate = DateTime.Parse(objwrk[(int)TableColumn.ORDERSTARTINGDATE].ToString());
-                wrk.OrderCompletionDate = DateTime.Parse(objwrk[(int)TableColumn.ORDERCOMPLETIONDATE].ToString());
-                wrk.PreparationStartDate = DateTime.Parse(objwrk[(int)TableColumn.PREPARATIONSTARTDATE].ToString());
-                wrk.ConstructionStartingDate = DateTime.Parse(objwrk[(int)TableColumn.CONSTRUCTIONSTARTINGDATE].ToString());
-                wrk.ConstructionCompletionDate = DateTime.Parse(objwrk[(int)TableColumn.CONSTRUCTIONCOMPLETION_DATE].ToString());
-                wrk.NonOrderDate = DateTime.Parse(objwrk[(int)TableColumn.NONORDERDATE].ToString());
+                wrk.RequestedDate = DateTime.Parse(objwrk[(int)TableColumn.RequestedDate].ToString());
+                wrk.EstimatesSubmitDeadline = DateTime.Parse(objwrk[(int)TableColumn.EstimatessubmitDeadLine].ToString());
+                wrk.EstimatesSubmittedDate = DateTime.Parse(objwrk[(int)TableColumn.EstimatessubmittedDate].ToString());
+                wrk.ProvisionalOrderDate = DateTime.Parse(objwrk[(int)TableColumn.ProvisionAlorderDate].ToString());
+                wrk.OrderDate = DateTime.Parse(objwrk[(int)TableColumn.OrderDate].ToString());
+                wrk.OrderStartingDate = DateTime.Parse(objwrk[(int)TableColumn.OrderStartingDate].ToString());
+                wrk.OrderCompletionDate = DateTime.Parse(objwrk[(int)TableColumn.OrderCompletionDate].ToString());
+                wrk.PreparationStartDate = DateTime.Parse(objwrk[(int)TableColumn.PreparationStartDate].ToString());
+                wrk.ConstructionStartingDate = DateTime.Parse(objwrk[(int)TableColumn.ConstructionStartingDate].ToString());
+                wrk.ConstructionCompletionDate = DateTime.Parse(objwrk[(int)TableColumn.ConstructionCompletionDate].ToString());
+                wrk.NonOrderDate = DateTime.Parse(objwrk[(int)TableColumn.NonOrderDate].ToString());
 
-                wrk.OrdersDecisionPrice = double.Parse(objwrk[(int)TableColumn.ORDERS_DECISION_PRICE].ToString());
-                wrk.OrdersDecisionPriceInTax = double.Parse(objwrk[(int)TableColumn.ORDERS_DECISION_PRICE_IN_TAX].ToString());
+                wrk.OrdersDecisionPrice = double.Parse(objwrk[(int)TableColumn.OrdersDecisionPrice].ToString());
+                wrk.OrdersDecisionPriceInTax = double.Parse(objwrk[(int)TableColumn.OrdersDecisionPriceInTax].ToString());
 
-                wrk.SalesPersonCode = int.Parse(objwrk[(int)TableColumn.SALES_PERSON_CODE].ToString());
-                wrk.ConstructionPersonCode = int.Parse(objwrk[(int)TableColumn.CONSTRPERSONCODE].ToString());
-                wrk.ConstrSubPersonCode = int.Parse(objwrk[(int)TableColumn.CONSTRSUBPERSONCODE].ToString());
-                wrk.ConstructionInstructor = int.Parse(objwrk[(int)TableColumn.CONSTRUCTIONINSTRUCTOR].ToString());
+                wrk.SalesPersonCode = int.Parse(objwrk[(int)TableColumn.SalesPersonCode].ToString());
+                wrk.ConstructionPersonCode = int.Parse(objwrk[(int)TableColumn.ConstrPersonCode].ToString());
+                wrk.ConstrSubPersonCode = int.Parse(objwrk[(int)TableColumn.ConstrSubPersonCode].ToString());
+                wrk.ConstructionInstructor = int.Parse(objwrk[(int)TableColumn.ConstructionInstructor].ToString());
 
-                wrk.TransferConstruction = int.Parse(objwrk[(int)TableColumn.TRANSFERCONSTRUCTION].ToString());
-                wrk.TransferConstructionDate = DateTime.Parse(objwrk[(int)TableColumn.TRANSFERCONSTRUCTIONDATE].ToString());
+                wrk.TransferConstruction = int.Parse(objwrk[(int)TableColumn.TransferConstruction].ToString());
+                wrk.TransferConstructionDate = DateTime.Parse(objwrk[(int)TableColumn.TransferConstructionDate].ToString());
 
-                wrk.OrderersDivision = int.Parse(objwrk[(int)TableColumn.ORDERERS_DIVISION].ToString());
-                wrk.OrderersCode = int.Parse(objwrk[(int)TableColumn.ORDERERS_CODE].ToString());
+                wrk.OrderersDivision = int.Parse(objwrk[(int)TableColumn.OrderersDivision].ToString());
+                wrk.OrderersCode = int.Parse(objwrk[(int)TableColumn.OrderersCode].ToString());
 
-                wrk.EstimatesExpirationDate = DateTime.Parse(objwrk[(int)TableColumn.ESTIMATESEXPIRATIONDATE].ToString());
-                wrk.ConstructionPeriodStart = DateTime.Parse(objwrk[(int)TableColumn.CONSTRUCTIONPERIODSTART].ToString());
-                wrk.ConstructionPeriodEnd = DateTime.Parse(objwrk[(int)TableColumn.CONSTRUCTIONPERIODEND].ToString());
-                wrk.ConstructionPeriodStart2 = DateTime.Parse(objwrk[(int)TableColumn.CONSTRUCTIONPERIODSTART2].ToString());
-                wrk.ConstructionPeriodEnd2 = DateTime.Parse(objwrk[(int)TableColumn.CONSTRUCTIONPERIODEND2].ToString());
+                wrk.EstimatesExpirationDate = DateTime.Parse(objwrk[(int)TableColumn.EstimatesExpirationDate].ToString());
+                wrk.ConstructionPeriodStart = DateTime.Parse(objwrk[(int)TableColumn.ConstructionPeriodStart].ToString());
+                wrk.ConstructionPeriodEnd = DateTime.Parse(objwrk[(int)TableColumn.ConstructionPeriodEnd].ToString());
+                wrk.ConstructionPeriodStart2 = DateTime.Parse(objwrk[(int)TableColumn.ConstructionPeriodStart2].ToString());
+                wrk.ConstructionPeriodEnd2 = DateTime.Parse(objwrk[(int)TableColumn.ConstructionPeriodEnd2].ToString());
 
-                wrk.StartDate = DateTime.Parse(objwrk[(int)TableColumn.START_DATE].ToString());
-                wrk.EndDate = DateTime.Parse(objwrk[(int)TableColumn.END_DATE].ToString());
+                wrk.StartDate = DateTime.Parse(objwrk[(int)TableColumn.StartDate].ToString());
+                wrk.EndDate = DateTime.Parse(objwrk[(int)TableColumn.EndDate].ToString());
 
-                wrk.PurchaseOrderMailingDate = DateTime.Parse(objwrk[(int)TableColumn.PURCHASEORDERMAILINGDATE].ToString());
-                wrk.PurchaseOrderReturnDate = DateTime.Parse(objwrk[(int)TableColumn.PURCHASEORDERRETURNDATE].ToString());
-                wrk.PurchaseOrderReturnCheckDate = DateTime.Parse(objwrk[(int)TableColumn.PURCHASEORDERRETURNCHECKDATE].ToString());
+                wrk.PurchaseOrderMailingDate = DateTime.Parse(objwrk[(int)TableColumn.PurchaseOrderMailingDate].ToString());
+                wrk.PurchaseOrderReturnDate = DateTime.Parse(objwrk[(int)TableColumn.PurchaseOrderReturnDate].ToString());
+                wrk.PurchaseOrderReturnCheckDate = DateTime.Parse(objwrk[(int)TableColumn.PurchaseOrderReturnCheckDate].ToString());
 
-                wrk.ConsumptionTaxFlg = int.Parse(objwrk[(int)TableColumn.CONSUMPTIONTAX_FLG].ToString());
-                wrk.PrimeContractorFlg = int.Parse(objwrk[(int)TableColumn.PRIMECONTRACTOR_FLG].ToString());
-                wrk.SalesCostFlg = int.Parse(objwrk[(int)TableColumn.SALESCOST_FLG].ToString());
-                wrk.ConstructionStatusFlg = int.Parse(objwrk[(int)TableColumn.CONSTRUCTIONSTATUS_FLG].ToString());
+                wrk.ConsumptionTaxFlg = int.Parse(objwrk[(int)TableColumn.ConsumptionTaxFlg].ToString());
+                wrk.PrimeContractorFlg = int.Parse(objwrk[(int)TableColumn.PrimecontractorFlg].ToString());
+                wrk.SalesCostFlg = int.Parse(objwrk[(int)TableColumn.SalesCostFlg].ToString());
+                wrk.ConstructionStatusFlg = int.Parse(objwrk[(int)TableColumn.ConstructionStatusFlg].ToString());
 
-                wrk.ConstructionType = int.Parse(objwrk[(int)TableColumn.CONSTRUCTIONTYPE].ToString());
-                wrk.EstimateType = int.Parse(objwrk[(int)TableColumn.ESTIMATETYPE].ToString());
+                wrk.ConstructionType = int.Parse(objwrk[(int)TableColumn.ConstructionType].ToString());
+                wrk.EstimateType = int.Parse(objwrk[(int)TableColumn.EstimateType].ToString());
 
-                wrk.BillingStartDate = DateTime.Parse(objwrk[(int)TableColumn.BILLINGSTARTDATE].ToString());
-                wrk.BillingDate = DateTime.Parse(objwrk[(int)TableColumn.BILLINGDATE].ToString());
-                wrk.BillingSplitFlg = int.Parse(objwrk[(int)TableColumn.BILLINGSPLITFLG].ToString());
-                wrk.BillingSendDate = DateTime.Parse(objwrk[(int)TableColumn.BILLINGSENDDATE].ToString());
-                wrk.LedgerComplateDate = DateTime.Parse(objwrk[(int)TableColumn.LEDGERCOMPLATEDATE].ToString());
+                wrk.BillingStartDate = DateTime.Parse(objwrk[(int)TableColumn.BillingStartDate].ToString());
+                wrk.BillingDate = DateTime.Parse(objwrk[(int)TableColumn.BillingDate].ToString());
+                wrk.BillingSplitFlg = int.Parse(objwrk[(int)TableColumn.BillingSplitFlg].ToString());
+                wrk.BillingSendDate = DateTime.Parse(objwrk[(int)TableColumn.BillingSendDate].ToString());
+                wrk.LedgerComplateDate = DateTime.Parse(objwrk[(int)TableColumn.LedgerComplateDate].ToString());
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.ENTRY_DATE].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UPDATE_DATE].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
@@ -603,147 +609,150 @@
                 strcmd += " SET";
                 switch (FeildNo)
                 {
-                    case (int)TableColumn.CONSTRUCTION_CODE:
+                    case (int)TableColumn.ConstructionCode:
                         strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.TYINGFLG:
+                    case (int)TableColumn.TyingFlg:
                         strcmd += string.Format(" TyingFlg = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.CONSTRUCTION_YEAR:
+                    case (int)TableColumn.JoinFlg:
+                        strcmd += string.Format(" JoinFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ConstructionYear:
                         strcmd += string.Format(" ConstructionYear = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.CONSTRUCTION_PERIOD:
+                    case (int)TableColumn.ConstructionPeriod:
                         strcmd += string.Format(" ConstructionPeriod = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.REQUESTED_DATE:
-                        strcmd += string.Format(" RequestedDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.RequestedDate:
+                        strcmd += string.Format(" RequestedDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.ESTIMATESSUBMITDEADLINE:
-                        strcmd += string.Format(" EstimatesSubmitDeadline = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.EstimatessubmitDeadLine:
+                        strcmd += string.Format(" EstimatesSubmitDeadline = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.ESTIMATESSUBMITTED_DATE:
-                        strcmd += string.Format(" EstimatesSubmittedDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.EstimatessubmittedDate:
+                        strcmd += string.Format(" EstimatesSubmittedDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.PROVISIONALORDERDATE:
-                        strcmd += string.Format(" ProvisionalOrderDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.ProvisionAlorderDate:
+                        strcmd += string.Format(" ProvisionalOrderDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.ORDER_DATE:
-                        strcmd += string.Format(" OrderDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.OrderDate:
+                        strcmd += string.Format(" OrderDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.ORDERSTARTINGDATE:
-                        strcmd += string.Format(" OrderStartingDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.OrderStartingDate:
+                        strcmd += string.Format(" OrderStartingDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.ORDERCOMPLETIONDATE:
-                        strcmd += string.Format(" OrderCompletionDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.OrderCompletionDate:
+                        strcmd += string.Format(" OrderCompletionDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.PREPARATIONSTARTDATE:
-                        strcmd += string.Format(" PreparationStartDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.PreparationStartDate:
+                        strcmd += string.Format(" PreparationStartDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONSTARTINGDATE:
-                        strcmd += string.Format(" ConstructionStartingDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.ConstructionStartingDate:
+                        strcmd += string.Format(" ConstructionStartingDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONCOMPLETION_DATE:
-                        strcmd += string.Format(" ConstructionCompletionDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.ConstructionCompletionDate:
+                        strcmd += string.Format(" ConstructionCompletionDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.NONORDERDATE:
-                        strcmd += string.Format(" NonOrderDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.NonOrderDate:
+                        strcmd += string.Format(" NonOrderDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.ORDERS_DECISION_PRICE:
+                    case (int)TableColumn.OrdersDecisionPrice:
                         strcmd += string.Format(" OrdersDecisionPrice = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.ORDERS_DECISION_PRICE_IN_TAX:
+                    case (int)TableColumn.OrdersDecisionPriceInTax:
                         strcmd += string.Format(" OrdersDecisionPriceInTax = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.SALES_PERSON_CODE:
+                    case (int)TableColumn.SalesPersonCode:
                         strcmd += string.Format(" SalesPersonCode = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.CONSTRPERSONCODE:
+                    case (int)TableColumn.ConstrPersonCode:
                         strcmd += string.Format(" ConstructionPersonCode = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.CONSTRSUBPERSONCODE:
+                    case (int)TableColumn.ConstrSubPersonCode:
                         strcmd += string.Format(" ConstrSubPersonCode = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONINSTRUCTOR:
+                    case (int)TableColumn.ConstructionInstructor:
                         strcmd += string.Format(" ConstructionInstructor = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.TRANSFERCONSTRUCTION:
+                    case (int)TableColumn.TransferConstruction:
                         strcmd += string.Format(" TransferConstruction = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.TRANSFERCONSTRUCTIONDATE:
-                        strcmd += string.Format(" TransferConstructionDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.TransferConstructionDate:
+                        strcmd += string.Format(" TransferConstructionDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.ORDERERS_DIVISION:
+                    case (int)TableColumn.OrderersDivision:
                         strcmd += string.Format(" OrderersDivision = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.ORDERERS_CODE:
+                    case (int)TableColumn.OrderersCode:
                         strcmd += string.Format(" OrderersCode = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.ESTIMATESEXPIRATIONDATE:
-                        strcmd += string.Format(" EstimatesExpirationDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.EstimatesExpirationDate:
+                        strcmd += string.Format(" EstimatesExpirationDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONPERIODSTART:
-                        strcmd += string.Format(" ConstructionPeriodStart = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.ConstructionPeriodStart:
+                        strcmd += string.Format(" ConstructionPeriodStart = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONPERIODEND:
-                        strcmd += string.Format(" ConstructionPeriodEnd = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.ConstructionPeriodEnd:
+                        strcmd += string.Format(" ConstructionPeriodEnd = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONPERIODSTART2:
-                        strcmd += string.Format(" ConstructionPeriodStart2 = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.ConstructionPeriodStart2:
+                        strcmd += string.Format(" ConstructionPeriodStart2 = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONPERIODEND2:
-                        strcmd += string.Format(" ConstructionPeriodEnd2 = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.ConstructionPeriodEnd2:
+                        strcmd += string.Format(" ConstructionPeriodEnd2 = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.START_DATE:
-                        strcmd += string.Format(" StartDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.StartDate:
+                        strcmd += string.Format(" StartDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.END_DATE:
-                        strcmd += string.Format(" EndDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.EndDate:
+                        strcmd += string.Format(" EndDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.PURCHASEORDERMAILINGDATE:
-                        strcmd += string.Format(" PurchaseOrderMailingDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.PurchaseOrderMailingDate:
+                        strcmd += string.Format(" PurchaseOrderMailingDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.PURCHASEORDERRETURNDATE:
-                        strcmd += string.Format(" PurchaseOrderReturnDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.PurchaseOrderReturnDate:
+                        strcmd += string.Format(" PurchaseOrderReturnDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.PURCHASEORDERRETURNCHECKDATE:
-                        strcmd += string.Format(" PurchaseOrderReturnCheckDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.PurchaseOrderReturnCheckDate:
+                        strcmd += string.Format(" PurchaseOrderReturnCheckDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.CONSUMPTIONTAX_FLG:
+                    case (int)TableColumn.ConsumptionTaxFlg:
                         strcmd += string.Format(" ConsumptionTaxFlg = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.PRIMECONTRACTOR_FLG:
+                    case (int)TableColumn.PrimecontractorFlg:
                         strcmd += string.Format(" PrimeContractorFlg = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.SALESCOST_FLG:
+                    case (int)TableColumn.SalesCostFlg:
                         strcmd += string.Format(" SalesCostFlg = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONSTATUS_FLG:
+                    case (int)TableColumn.ConstructionStatusFlg:
                         strcmd += string.Format(" ConstructionStatusFlg = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.CONSTRUCTIONTYPE:
+                    case (int)TableColumn.ConstructionType:
                         strcmd += string.Format(" ConstructionType = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.ESTIMATETYPE:
+                    case (int)TableColumn.EstimateType:
                         strcmd += string.Format(" EstimateType = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.BILLINGSTARTDATE:
-                        strcmd += string.Format(" BillingStartDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.BillingStartDate:
+                        strcmd += string.Format(" BillingStartDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.BILLINGDATE:
-                        strcmd += string.Format(" BillingDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.BillingDate:
+                        strcmd += string.Format(" BillingDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.BILLINGSPLITFLG:
+                    case (int)TableColumn.BillingSplitFlg:
                         strcmd += string.Format(" BillingSplitFlg = {0}", ((int)value).ToString());
                         break;
-                    case (int)TableColumn.BILLINGSENDDATE:
-                        strcmd += string.Format(" BillingSendDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.BillingSendDate:
+                        strcmd += string.Format(" BillingSendDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
-                    case (int)TableColumn.LEDGERCOMPLATEDATE:
-                        strcmd += string.Format(" LedgerComplateDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                    case (int)TableColumn.LedgerComplateDate:
+                        strcmd += string.Format(" LedgerComplateDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
                 }
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += CreatePrimarykeyString(ConstructionCode);
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -770,7 +779,7 @@
             //Oracle インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
-            int iRet = 0;
+            int iRet = -1;
             try
             {
                 // SQL作成
@@ -783,17 +792,17 @@
                 foreach (object[] objwrk in arData)
                 {
                     if (objwrk[0].ToString().Equals("null"))
-                        iRet = 0;
+                        iRet = -1;
                     else
                         iRet = int.Parse(objwrk[0].ToString());
                 }
-
+                return iRet;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return -1;
             }
-            return iRet;
         }
         #endregion
 
@@ -842,8 +851,8 @@
                 // SQL実行
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
 
-                //strcmd = "UPDATE ConstructionBaseInfo SET EntryDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                //strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                //strcmd = "UPDATE ConstructionBaseInfo SET EntryDate = TO_DATE(TO_CHAR(sysdate,'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                //strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 //strcmd += CreatePrimarykeyString(FromCode);
 
                 //// SQL実行
@@ -926,7 +935,6 @@
         /// <returns></returns>
         public int CreateNewCounstructionCode(int PeriodValue)
         {
-            IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();                // 工事基本情報
             try
             {
                 int iRetCode = 0;
@@ -944,7 +952,7 @@
                 }
                 strWhere = string.Format(" WHERE {0} <= CONSTRUCTIONCODE AND CONSTRUCTIONCODE < {1}", (MinCode * 1000000), (MaxCode * 1000000));
 
-                int icnt = cbiDB.SelectMaxConstructionCodeCount(strWhere);
+                int icnt = SelectMaxConstructionCodeCount(strWhere);
                 if (icnt != 0)
                 {   // ----- データがある時
                     // 年度の連番を取得する
@@ -967,10 +975,6 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
                 return 0;
             }
-            finally
-            {
-                cbiDB.close(); cbiDB = null;
-            }
         }
         #endregion
 
@@ -989,7 +993,7 @@
                 
                 // 枝番最大値の工事番号取得
                 string strSQL = "SELECT IFNULL(MAX(CONSTRUCTIONCODE), -1) FROM CONSTRUCTIONBASEINFO";
-                strSQL += string.Format(" WHERE TRUNCATE(CONSTRUCTIONCODE / 100, 0) = {0}", CommonMotions.cnvTruncate(NowCode / 100));
+                strSQL += string.Format(" WHERE TRUNCATE(CONSTRUCTIONCODE / 100,0) = {0}", CommonMotions.cnvTruncate(NowCode / 100));
                 ArrayList arList = new ArrayList();
 
                 // データが無ければ抜ける
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfoDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfoDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBaseInfoDetail.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient; 
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -75,9 +75,9 @@
         }
         #endregion
 
-        #region 読込み処理
+        #region 読込み処理（1件）
         /// <summary>
-        /// 工事基本情報明細検索
+        /// 工事基本情報明細検索（1件）
         /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
         /// <param name="data">工事基本情報データ</param>
@@ -98,7 +98,6 @@
                 // データセット
                 foreach (object[] objwrk in arData)
                 {
-                    ConstructionBaseInfoDetail work = new ConstructionBaseInfoDetail();
                     Reader2Struct(objwrk, ref data);
                     break;
                 }
@@ -113,9 +112,9 @@
         }
         #endregion
 
-        #region 読込み処理
+        #region 読込み処理（複数件）
         /// <summary>
-        /// 工事基本情報明細検索
+        /// 工事基本情報明細検索（複数件）
         /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
         /// <param name="data">工事基本情報データ</param>
@@ -171,8 +170,8 @@
                 strcmd += string.Format(", {0}", data.DetailNo);
                 strcmd += string.Format(",'{0}'", data.DetailString);
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -231,7 +230,7 @@
                 strcmd += string.Format(" ,DetailNo = {0}", data.DetailNo);
                 strcmd += string.Format(" ,DetailString = '{0}'", data.DetailString);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -304,6 +303,47 @@
 
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true, int DetailNo = 0)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionBaseInfoDetail";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.CONSTRUCTION_CODE:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.DETAIL_NO:
+                        strcmd += string.Format(" DetailNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.DETAIL_STRING:
+                        strcmd += string.Format(" DetailString = '{0}'", value.ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode, DetailNo);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region 検索の文字列を返す
 
         /// <summary>
@@ -352,8 +392,8 @@
                 // SQL実行
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
 
-                //strcmd = "UPDATE ConstructionBaseInfoDetail SET EntryDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                //strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                //strcmd = "UPDATE ConstructionBaseInfoDetail SET EntryDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                //strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
                 //strcmd += CreatePrimarykeyString(FromCode);
 
                 //// SQL実行
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBudget.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBudget.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -31,7 +31,7 @@
         /// <summary>
         /// 工事予算書データフィールド並び
         /// </summary>
-        public enum ConstructionBudgetColumn
+        public enum TableColumn
         {
             ConstructionCode = 0,	    // 工事番号
 
@@ -253,12 +253,12 @@
                 strcmd += string.Format(",'{0}'", work.InstructorName);                 // 工事指導員名
                 strcmd += string.Format(", {0}", work.InstructorCosts);                 // 工事指導員給与
                 
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')",
                                         work.CreateDate.ToShortDateString());           // 作成日
                 strcmd += string.Format(", {0}", work.ConstructionTimes);               // 工期（単位・月）
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')",
                                         work.ConstructionStart.ToShortDateString());    // 契約工期開始
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')",
                                         work.ConstructionEnd.ToShortDateString());      // 契約工期完了
 
                 strcmd += string.Format(", {0}", work.InstructorTimes);                 // 指導員稼働月数
@@ -269,8 +269,8 @@
                 strcmd += string.Format(", {0}", work.I_SalaryFlg);                     // 指導員給与振分区分
                 strcmd += string.Format(", {0}", work.I_SalaryDays);                    // 指導員振分日数
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -341,12 +341,12 @@
                 strcmd += string.Format(", InstructorCode = {0}", data.InstructorCode);                 // 工事指導員コード
                 strcmd += string.Format(", InstructorName = '{0}'", data.InstructorName);               // 工事指導員名
                 strcmd += string.Format(", InstructorCosts = {0}", data.InstructorCosts);               // 工事指導員給与
-                strcmd += string.Format(", CreateDate = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", CreateDate = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                         data.CreateDate.ToShortDateString());           // 作成日
                 strcmd += string.Format(", ConstructionTimes = {0}", data.ConstructionTimes);           // 工期（単位・月）
-                strcmd += string.Format(", ConstructionStart = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", ConstructionStart = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                         data.ConstructionStart.ToShortDateString());    // 契約工期開始
-                strcmd += string.Format(", ConstructionEnd = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", ConstructionEnd = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                         data.ConstructionEnd.ToShortDateString());      // 契約工期完了
 
                 strcmd += string.Format(", InstructorTimes = {0}", data.InstructorTimes);               // 指導員稼働月数
@@ -358,7 +358,7 @@
                 strcmd += string.Format(", I_SalaryFlg = {0}", data.I_SalaryFlg);                       // 指導員給与振分区分
                 strcmd += string.Format(", I_SalaryDays = {0}", data.I_SalaryDays);                     // 指導員振分日数
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -400,6 +400,101 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionBudget";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:	    // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CreatorCode:          // 作成者コード
+                        strcmd += string.Format(" CreatorCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CreatorName:    	    // 作成者名
+                        strcmd += string.Format(" CreatorName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.CreatorCosts:	        // 作成者給与
+                        strcmd += string.Format(" CreatorCosts = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.AssistantCode:        // 副担当者コード
+                        strcmd += string.Format(" AssistantCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.AssistantName:        // 副担当者名
+                        strcmd += string.Format(" AssistantName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.AssistantCosts:       // 副担当者給与
+                        strcmd += string.Format(" AssistantCosts = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.InstructorCode:	    // 工事指導員コード
+                        strcmd += string.Format(" InstructorCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.InstructorName:	    // 工事指導員名
+                        strcmd += string.Format(" InstructorName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.InstructorCosts:	    // 工事指導員給与
+                        strcmd += string.Format(" InstructorCosts = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.CreateDate:	        // 作成日
+                        strcmd += string.Format(" CreateDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.ConstructionTimes:	// 工期（単位・月）
+                        strcmd += string.Format(" ConstructionTimes = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.ConstructionStart:    // 契約工期開始
+                        strcmd += string.Format(" ConstructionStart = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.ConstructionEnd:      // 契約工期完了
+                        strcmd += string.Format(" ConstructionEnd = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.InstructorTimes:	    // 指導員稼働月数
+                        strcmd += string.Format(" InstructorTimes = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.SalaryFlg:            // 給与振分区分
+                        strcmd += string.Format(" SalaryFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.SalaryDays:           // 振分日数
+                        strcmd += string.Format(" SalaryDays = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.A_SalaryFlg:          // 副担当者給与振分区分
+                        strcmd += string.Format(" A_SalaryFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.A_SalaryDays:         // 副担当者振分日数
+                        strcmd += string.Format(" A_SalaryDays = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.I_SalaryFlg:          // 指導員給与振分区分
+                        strcmd += string.Format(" I_SalaryFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.I_SalaryDays:         // 指導員振分日数
+                        strcmd += string.Format(" I_SalaryDays = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -412,34 +507,33 @@
             {
                 // データ取得
 
-                wrk.ConstructionCode = int.Parse(objwrk[(int)ConstructionBudgetColumn.ConstructionCode].ToString());	// 工事番号
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());	// 工事番号
 
-                wrk.CreatorCode = int.Parse(objwrk[(int)ConstructionBudgetColumn.CreatorCode].ToString());                  // 作成者コード
-                wrk.CreatorName = objwrk[(int)ConstructionBudgetColumn.CreatorName].ToString();                             // 作成者名
-                wrk.CreatorCosts = double.Parse(objwrk[(int)ConstructionBudgetColumn.CreatorCosts].ToString());             // 作成者給与
-                wrk.AssistantCode = int.Parse(objwrk[(int)ConstructionBudgetColumn.AssistantCode].ToString());              // 副担当者コード
-                wrk.AssistantName = objwrk[(int)ConstructionBudgetColumn.AssistantName].ToString();                         // 副担当者名
-                //wrk.AssistantCosts = int.Parse(objwrk[(int)ConstructionBudgetColumn.AssistantCosts].ToString());            // 副担当者給与
-                wrk.AssistantCosts = double.Parse(objwrk[(int)ConstructionBudgetColumn.AssistantCosts].ToString());            // 副担当者給与
-                wrk.InstructorCode = int.Parse(objwrk[(int)ConstructionBudgetColumn.InstructorCode].ToString());            // 工事指導員コード
-                wrk.InstructorName = objwrk[(int)ConstructionBudgetColumn.InstructorName].ToString();                       // 工事指導員名
-                wrk.InstructorCosts = double.Parse(objwrk[(int)ConstructionBudgetColumn.InstructorCosts].ToString());       // 工事指導員給与
-                wrk.CreateDate = DateTime.Parse(objwrk[(int)ConstructionBudgetColumn.CreateDate].ToString());               // 作成日
-                wrk.ConstructionTimes = double.Parse(objwrk[(int)ConstructionBudgetColumn.ConstructionTimes].ToString());   // 工期（単位・月）
-                wrk.ConstructionStart = DateTime.Parse(objwrk[(int)ConstructionBudgetColumn.ConstructionStart].ToString()); // 契約工期開始
-                wrk.ConstructionEnd = DateTime.Parse(objwrk[(int)ConstructionBudgetColumn.ConstructionEnd].ToString());     // 契約工期完了
+                wrk.CreatorCode = int.Parse(objwrk[(int)TableColumn.CreatorCode].ToString());                  // 作成者コード
+                wrk.CreatorName = objwrk[(int)TableColumn.CreatorName].ToString();                             // 作成者名
+                wrk.CreatorCosts = double.Parse(objwrk[(int)TableColumn.CreatorCosts].ToString());             // 作成者給与
+                wrk.AssistantCode = int.Parse(objwrk[(int)TableColumn.AssistantCode].ToString());              // 副担当者コード
+                wrk.AssistantName = objwrk[(int)TableColumn.AssistantName].ToString();                         // 副担当者名
+                wrk.AssistantCosts = int.Parse(objwrk[(int)TableColumn.AssistantCosts].ToString());            // 副担当者給与
+                wrk.InstructorCode = int.Parse(objwrk[(int)TableColumn.InstructorCode].ToString());            // 工事指導員コード
+                wrk.InstructorName = objwrk[(int)TableColumn.InstructorName].ToString();                       // 工事指導員名
+                wrk.InstructorCosts = double.Parse(objwrk[(int)TableColumn.InstructorCosts].ToString());       // 工事指導員給与
+                wrk.CreateDate = DateTime.Parse(objwrk[(int)TableColumn.CreateDate].ToString());               // 作成日
+                wrk.ConstructionTimes = double.Parse(objwrk[(int)TableColumn.ConstructionTimes].ToString());   // 工期（単位・月）
+                wrk.ConstructionStart = DateTime.Parse(objwrk[(int)TableColumn.ConstructionStart].ToString()); // 契約工期開始
+                wrk.ConstructionEnd = DateTime.Parse(objwrk[(int)TableColumn.ConstructionEnd].ToString());     // 契約工期完了
 
-                wrk.InstructorTimes = double.Parse(objwrk[(int)ConstructionBudgetColumn.InstructorTimes].ToString());       // 指導員稼働月数
+                wrk.InstructorTimes = double.Parse(objwrk[(int)TableColumn.InstructorTimes].ToString());       // 指導員稼働月数
 
-                wrk.SalaryFlg = int.Parse(objwrk[(int)ConstructionBudgetColumn.SalaryFlg].ToString());                      // 給与振分区分
-                wrk.SalaryDays = int.Parse(objwrk[(int)ConstructionBudgetColumn.SalaryDays].ToString());                    // 振分日数
-                wrk.A_SalaryFlg = int.Parse(objwrk[(int)ConstructionBudgetColumn.A_SalaryFlg].ToString());                  // 副担当者給与振分区分
-                wrk.A_SalaryDays = int.Parse(objwrk[(int)ConstructionBudgetColumn.A_SalaryDays].ToString());                // 副担当者振分日数
-                wrk.I_SalaryFlg = int.Parse(objwrk[(int)ConstructionBudgetColumn.I_SalaryFlg].ToString());                  // 指導員給与振分区分
-                wrk.I_SalaryDays = int.Parse(objwrk[(int)ConstructionBudgetColumn.I_SalaryDays].ToString());                // 指導員振分日数
+                wrk.SalaryFlg = int.Parse(objwrk[(int)TableColumn.SalaryFlg].ToString());                      // 給与振分区分
+                wrk.SalaryDays = int.Parse(objwrk[(int)TableColumn.SalaryDays].ToString());                    // 振分日数
+                wrk.A_SalaryFlg = int.Parse(objwrk[(int)TableColumn.A_SalaryFlg].ToString());                  // 副担当者給与振分区分
+                wrk.A_SalaryDays = int.Parse(objwrk[(int)TableColumn.A_SalaryDays].ToString());                // 副担当者振分日数
+                wrk.I_SalaryFlg = int.Parse(objwrk[(int)TableColumn.I_SalaryFlg].ToString());                  // 指導員給与振分区分
+                wrk.I_SalaryDays = int.Parse(objwrk[(int)TableColumn.I_SalaryDays].ToString());                // 指導員振分日数
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)ConstructionBudgetColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ConstructionBudgetColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBudgetDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBudgetDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionBudgetDetail.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -208,8 +208,8 @@
                 strcmd += string.Format(", {0}", work.NegotiateFlg);            // 協力業者交渉フラグ
 
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -285,7 +285,7 @@
                 strcmd += string.Format(", NegotiateFlg = {0}", data.NegotiateFlg);                 // 協力業者交渉フラグ
 
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -327,6 +327,86 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionBudgetDetail";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)DataColumn.ConstructionCode:      // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.GroupCount:             // グループ番号
+                        strcmd += string.Format(" GroupCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.LineCount:              // 行番号
+                        strcmd += string.Format(" LineCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.ComponentCode:          // 構成キー
+                        strcmd += string.Format(" ComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.ItemCode:		        // 工種キー
+                        strcmd += string.Format(" ItemCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.FirstString:            // 項目名称
+                        strcmd += string.Format(" FirstString = '{0}'", value.ToString());
+                        break;
+                    case (int)DataColumn.SecondString:           // 工事内容
+                        strcmd += string.Format(" SecondString = '{0}'", value.ToString());
+                        break;
+                    case (int)DataColumn.CompanyType:            // 協力会社コードタイプ
+                        strcmd += string.Format(" CompanyType = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.CompanyCode:            // 協力会社コード
+                        strcmd += string.Format(" CompanyCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.CompanyName:            // 協力会社名称
+                        strcmd += string.Format(" CompanyName = '{0}'", value.ToString());
+                        break;
+                    case (int)DataColumn.EstimatePrice:          // 見積時金額
+                        strcmd += string.Format(" EstimatePrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)DataColumn.NegotiationPrice:       // 交渉時金額
+                        strcmd += string.Format(" NegotiationPrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)DataColumn.OrderDesiredAmount:     // 発注希望金額
+                        strcmd += string.Format(" OrderDesiredAmount = {0}", ((double)value).ToString());
+                        break;
+                    case (int)DataColumn.ExecutionAmount:        // 実行金額
+                        strcmd += string.Format(" ExecutionAmount = {0}", ((double)value).ToString());
+                        break;
+                    case (int)DataColumn.AmountConfigRate:       // 金額構成率
+                        strcmd += string.Format(" AmountConfigRate = {0}", ((double)value).ToString());
+                        break;
+                    case (int)DataColumn.NegotiateFlg:           // 協力業者交渉フラグ
+                        strcmd += string.Format(" NegotiateFlg = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedger.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedger.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedger.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient; 
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -228,12 +228,12 @@
                 strcmd += string.Format(", {0}", work.ConstructionPeriod);              // 事業期
                 strcmd += string.Format(", {0}", work.CreatorCode);                     // 作成者コード
                 strcmd += string.Format(",'{0}'", work.CreatorName);                    // 作成者名
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')",
                                         work.CreateDate.ToShortDateString());           // 作成日
                 strcmd += string.Format(", {0}", work.ConstructionTimes);               // 工期（単位・月）
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')",
                                         work.ConstructionStart.ToShortDateString());    // 契約工期開始
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')",
                                         work.ConstructionEnd.ToShortDateString());      // 契約工期完了
 
                 strcmd += string.Format(",{0}", work.OrdersDecisionPrice);              // 税抜受注決定金額
@@ -248,8 +248,8 @@
                 strcmd += string.Format(",{0}", work.IntegrationFlg);                   // 受注金額積算フラグ
 
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -312,12 +312,12 @@
                 strcmd += string.Format(", ConstructionPeriod = {0}", data.ConstructionPeriod);     // 事業期
                 strcmd += string.Format(", CreatorCode = {0}", data.CreatorCode);                   // 作成者コード
                 strcmd += string.Format(", CreatorName = '{0}'", data.CreatorName);                 // 作成者名
-                strcmd += string.Format(", CreateDate = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", CreateDate = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                         data.CreateDate.ToShortDateString());       // 作成日
                 strcmd += string.Format(", ConstructionTimes = {0}", data.ConstructionTimes);       // 工期（単位・月）
-                strcmd += string.Format(", ConstructionStart = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", ConstructionStart = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                         data.ConstructionStart.ToShortDateString());// 契約工期開始
-                strcmd += string.Format(", ConstructionEnd = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(", ConstructionEnd = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                         data.ConstructionEnd.ToShortDateString());  // 契約工期完了
 
                 strcmd += string.Format(", OrdersDecisionPrice = {0}", data.OrdersDecisionPrice);   // 税抜受注決定金額
@@ -331,7 +331,7 @@
                 strcmd += string.Format(", ComplateFlg = {0}", data.ComplateFlg);                   // 入力完了フラグ
                 strcmd += string.Format(", IntegrationFlg = {0}", data.IntegrationFlg);             // 受注金額積算フラグ
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -407,16 +407,16 @@
                         strcmd += string.Format(" CreatorName = '{0}'", value.ToString());
                         break;
                     case (int)DataColumn.CreateDate:	            // 作成日
-                        strcmd += string.Format(" CreateDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        strcmd += string.Format(" CreateDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
                     case (int)DataColumn.ConstructionTimes:         // 工期（単位・月）
                         strcmd += string.Format(" ConstructionTimes = {0}", ((int)value).ToString());
                         break;
                     case (int)DataColumn.ConstructionStart:         // 契約工期開始
-                        strcmd += string.Format(" ConstructionStart = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        strcmd += string.Format(" ConstructionStart = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
                     case (int)DataColumn.ConstructionEnd:           // 契約工期完了
-                        strcmd += string.Format(" ConstructionEnd = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        strcmd += string.Format(" ConstructionEnd = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
                     case (int)DataColumn.OrdersDecisionPrice:       // 税抜受注決定金額
                         strcmd += string.Format(" OrdersDecisionPrice = {0}", ((int)value).ToString());
@@ -452,7 +452,7 @@
                         break;
                 }
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += CreatePrimarykeyString(ConstructionCode);
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -497,7 +497,7 @@
                 wrk.GrossProfit = double.Parse(objwrk[(int)DataColumn.GrossProfit].ToString());                   // 粗利
                 wrk.Allowance = double.Parse(objwrk[(int)DataColumn.Allowance].ToString());                       // 給与
                 wrk.NetProfit = double.Parse(objwrk[(int)DataColumn.NetProfit].ToString());                       // 純利益
-                wrk.ComplateFlg = double.Parse(objwrk[(int)DataColumn.ComplateFlg].ToString());                   // 入力完了フラグ
+                wrk.ComplateFlg = int.Parse(objwrk[(int)DataColumn.ComplateFlg].ToString());                   // 入力完了フラグ
                 wrk.IntegrationFlg = int.Parse(objwrk[(int)DataColumn.IntegrationFlg].ToString());                // 受注金額積算フラグ
 
                 wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedgerDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedgerDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedgerDetail.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient; 
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -54,6 +54,10 @@
             SalaryFlg,              // 給与振分区分
             SalaryDays,             // 給与振分日数
             OperatingFlg,           // 担当中フラグ
+            SourceCode,             // 元工事番号
+            JoinTitleFlg,           // 工事名称タイトル
+            SalaryOnRegist,         // 登録時月額給与
+            PurchaseOrderFlg,       // 注文書発行フラグ
 
             EntryDate,
             UpdateDate,
@@ -100,6 +104,10 @@
             strcmd += ", SalaryFlg";                // 給与振分区分
             strcmd += ", SalaryDays";               // 給与振分日数
             strcmd += ", OperatingFlg";             // 担当中フラグ
+            strcmd += ", SourceCode";               // 元工事番号
+            strcmd += ", JoinTitleFlg";             // 工事名称タイトル
+            strcmd += ", SalaryOnRegist";           // 登録時月額給与
+            strcmd += ", PurchaseOrderFlg";         // 注文書発行フラグ
 
             strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
@@ -215,6 +223,10 @@
                 strcmd += ", SalaryFlg";                // 給与振分区分
                 strcmd += ", SalaryDays";               // 給与振分日数
                 strcmd += ", OperatingFlg";             // 担当中フラグ
+                strcmd += ", SourceCode";               // 元工事番号
+                strcmd += ", JoinTitleFlg";             // 工事名称タイトル
+                strcmd += ", SalaryOnRegist";           // 登録時月額給与
+                strcmd += ", PurchaseOrderFlg";         // 注文書発行フラグ
 
                 strcmd += ", EntryDate";
                 strcmd += ", UpdateDate)";
@@ -244,9 +256,13 @@
                 strcmd += string.Format(", {0}", work.SalaryFlg);               // 給与振分区分
                 strcmd += string.Format(", {0}", work.SalaryDays);              // 給与振分日数
                 strcmd += string.Format(", {0}", work.OperatingFlg);            // 担当中フラグ
+                strcmd += string.Format(", {0}", work.SourceCode);              // 元工事番号
+                strcmd += string.Format(", {0}", work.JoinTitleFlg);            // 工事名称タイトル
+                strcmd += string.Format(", {0}", work.SalaryOnRegist);          // 登録時月額給与
+                strcmd += string.Format(", {0}", work.PurchaseOrderFlg);        // 注文書発行フラグ
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -326,8 +342,12 @@
                 strcmd += string.Format(", SalaryFlg = {0}", data.SalaryFlg);                       // 給与振分区分
                 strcmd += string.Format(", SalaryDays = {0}", data.SalaryDays);                     // 給与振分日数
                 strcmd += string.Format(", OperatingFlg = {0}", data.OperatingFlg);                 // 担当中フラグ
+                strcmd += string.Format(", SourceCode = {0}", data.SourceCode);                     // 元工事番号
+                strcmd += string.Format(", JoinTitleFlg = {0}", data.JoinTitleFlg);                 // 工事名称タイトルフラグ
+                strcmd += string.Format(", SalaryOnRegist = {0}", data.SalaryOnRegist);             // 登録時月額給与
+                strcmd += string.Format(", PurchaseOrderFlg = {0}", data.PurchaseOrderFlg);         // 注文書発行フラグ
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -403,6 +423,10 @@
                 wrk.SalaryFlg = int.Parse(objwrk[(int)DataColumn.SalaryFlg].ToString());                        // 給与振分区分
                 wrk.SalaryDays = int.Parse(objwrk[(int)DataColumn.SalaryDays].ToString());                      // 給与振分日数
                 wrk.OperatingFlg = int.Parse(objwrk[(int)DataColumn.OperatingFlg].ToString());                  // 担当中フラグ
+                wrk.SourceCode = int.Parse(objwrk[(int)DataColumn.SourceCode].ToString());                      // 元工事番号
+                wrk.JoinTitleFlg = int.Parse(objwrk[(int)DataColumn.JoinTitleFlg].ToString());                  // 工事名称タイトルフラグ
+                wrk.SalaryOnRegist = double.Parse(objwrk[(int)DataColumn.SalaryOnRegist].ToString());           // 登録時月額給与
+                wrk.PurchaseOrderFlg = int.Parse(objwrk[(int)DataColumn.PurchaseOrderFlg].ToString());          // 注文書発行フラグ
 
                 wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
                 wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
@@ -409,7 +433,7 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("オラクルエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
             }
             catch (Exception ex)
             {
@@ -418,18 +442,43 @@
         }
         #endregion
 
+        #region 1項目の更新を行う（キー指定）
+        /// <summary>
+        /// 1項目の更新を行う（キー指定）
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, int GroupCount = 0, int LineCount = 0, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionLedgerDetail";
+
+                strcmd += " SET";
+
+                UpdateFeildSQL(FeildNo, value, ref strcmd);
+                
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode, GroupCount, LineCount);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region 1項目の更新を行う
         /// <summary>
         /// 1項目の更新を行う
         /// </summary>
-        /// <param name="ConstructionCode"></param>
-        /// <param name="FeildNo"></param>
-        /// <param name="value"></param>
-        /// <param name="GroupCount"></param>
-        /// <param name="LineCount"></param>
-        /// <param name="bConnect"></param>
         /// <returns></returns>
-        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, int GroupCount = 0, int LineCount = 0, bool bConnect = true)
+        public bool UpdateFeild(string strWhere, int FeildNo, object value, bool bConnect = true)
         {
             string strcmd = "";
             try
@@ -437,6 +486,32 @@
                 strcmd = "UPDATE ConstructionLedgerDetail";
 
                 strcmd += " SET";
+                
+                UpdateFeildSQL(FeildNo, value, ref strcmd);
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += strWhere;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1項目更新SQL作成処理
+        /// <summary>
+        /// 1項目更新SQL作成処理
+        /// </summary>
+        public void UpdateFeildSQL(int FeildNo, object value, ref string strcmd)
+        {
+            try
+            {
                 switch (FeildNo)
                 {
                     case (int)DataColumn.ConstructionCode:	    // 工事番号
@@ -499,21 +574,26 @@
                     case (int)DataColumn.OperatingFlg:          // 担当中フラグ
                         strcmd += string.Format(" OperatingFlg = {0}", ((int)value).ToString());
                         break;
+                    case (int)DataColumn.SourceCode:            // 元工事番号
+                        strcmd += string.Format(" SourceCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.JoinTitleFlg:          // 工事名称タイトルフラグ
+                        strcmd += string.Format(" JoinTitleFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.SalaryOnRegist:        // 登録時月額給与
+                        strcmd += string.Format(" SalaryOnRegist = {0}", ((double)value).ToString());
+                        break;
+                    case (int)DataColumn.PurchaseOrderFlg:      // 注文書発行フラグ
+                        strcmd += string.Format(" PurchaseOrderFlg = {0}", ((int)value).ToString());
+                        break;
+
                     default:
                         break;
                 }
-                
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += CreatePrimarykeyString(ConstructionCode, GroupCount, LineCount);
-
-                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
-
-                return true;
             }
             catch (MySqlException myex)
             {
                 logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
-                return false;
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedgerExcute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedgerExcute.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLedgerExcute.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -33,14 +33,31 @@
         /// </summary>
         public enum TableColumn
         {
-            ConstructionCode = 0,	// 工事番号
+            /// <summary>
+            /// 工事番号
+            /// </summary>
+            ConstructionCode = 0,
+            /// <summary>
+            /// グループ番号
+            /// </summary>
+            GroupCount,
+            /// <summary>
+            /// 行番号
+            /// </summary>
+            LineCount,
+            /// <summary>
+            /// 列番号
+            /// </summary>
+            ColumnCount,
+            /// <summary>
+            /// 支払金額
+            /// </summary>
+            PaymentAmount,
+            /// <summary>
+            /// 対象年月
+            /// </summary>
+            TargetMonth,
 
-            GroupCount,             // グループ番号
-            LineCount,              // 行番号
-            ColumnCount,            // 列番号
-            PaymentAmount,          // 支払金額
-            TargetMonth,            // 対象年月
-
             EntryDate,
             UpdateDate,
         }
@@ -191,10 +208,10 @@
                 strcmd += string.Format(", {0}", work.ColumnCount);             // 列番号
 
                 strcmd += string.Format(", {0}", work.PaymentAmount);           // 支払金額
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')",work.TargetMonth.ToShortDateString());  // 対象年月
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')",work.TargetMonth.ToShortDateString());  // 対象年月
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -256,9 +273,9 @@
                 strcmd += string.Format(", LineCount = {0}", data.LineCount);                       // 行番号
                 strcmd += string.Format(", ColumnCount = {0}", data.ColumnCount);                   // 列番号
                 strcmd += string.Format(", PaymentAmount = {0}", data.PaymentAmount);               // 支払金額
-                strcmd += string.Format(", TargetMonth = DATE_FORMAT('{0}','%Y/%m/%d')", data.TargetMonth.ToShortDateString());   // 対象年月
+                strcmd += string.Format(", TargetMonth = STR_TO_DATE('{0}','%Y/%m/%d')", data.TargetMonth.ToShortDateString());   // 対象年月
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -300,6 +317,62 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionLedgerExcute";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    // 工事番号
+                    case (int)TableColumn.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    // グループ番号
+                    case (int)TableColumn.GroupCount:
+                        strcmd += string.Format(" GroupCount = {0}", ((int)value).ToString());
+                        break;
+                    // 行番号
+                    case (int)TableColumn.LineCount:
+                        strcmd += string.Format(" LineCount = {0}", ((int)value).ToString());
+                        break;
+                    // 列番号
+                    case (int)TableColumn.ColumnCount:
+                        strcmd += string.Format(" ColumnCount = {0}", ((int)value).ToString());
+                        break;
+                    // 支払金額
+                    case (int)TableColumn.PaymentAmount:
+                        strcmd += string.Format(" PaymentAmount = {0}", ((double)value).ToString());
+                        break;
+                    // 対象年月
+                    case (int)TableColumn.TargetMonth:
+                        strcmd += string.Format(" TargetMonth = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -379,13 +452,13 @@
                         break;
                     // 対象年月
                     case (int)TableColumn.TargetMonth:
-                        strcmd += string.Format(" TargetMonth = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        strcmd += string.Format(" TargetMonth = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
                     default:
                         break;
                 }
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += CreatePrimarykeyString(ConstructionCode, GroupCount, LineCount, ColumnCount);
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLink.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLink.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionLink.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -31,12 +31,13 @@
         /// <summary>
         /// 工事増減情報フィールド並び
         /// </summary>
-        public enum ConstructionLinkColumn
+        public enum TableColumn
         {
-            CONSTRUCTION_CODE = 0,
-            FLUCTUATION_CODE,
-            ENTRY_DATE,
-            UPDATE_DATE,
+            ConstructionCode = 0,
+            FluctuationCode,
+            LinkType,
+            EntryDate,
+            UpdateDate,
         }
 
         #endregion
@@ -64,7 +65,7 @@
         {
             // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
             string strcmd = "SELECT";
-            strcmd += "  ConstructionCode, FluctuationCode";
+            strcmd += "  ConstructionCode, FluctuationCode, LinkType";
             strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += " FROM ConstructionLink";
@@ -73,9 +74,9 @@
         }
         #endregion
 
-        #region 読込み処理
+        #region 読込み処理（1件読込み）
         /// <summary>
-        /// 工事増減情報検索
+        /// 工事増減情報検索（1件読込み）
         /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
         /// <param name="data">工事増減情報データ</param>
@@ -111,9 +112,9 @@
         }
         #endregion
 
-        #region 読込み処理
+        #region 読込み処理（複数件読込み）
         /// <summary>
-        /// 工事増減情報検索
+        /// 工事増減情報検索（複数件読込み）
         /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
         /// <param name="data">工事増減情報データ</param>
@@ -149,9 +150,9 @@
         }
         #endregion
 
-        #region 追加処理
+        #region 追加処理（1件追加）
         /// <summary>
-        /// 工事増減情報追加
+        /// 工事増減情報追加（1件追加）
         /// </summary>
         /// <param name="data">工事増減情報データ</param>
         /// <returns>true：成功 false：失敗</returns>
@@ -162,14 +163,19 @@
             {
 
                 strcmd = "INSERT INTO ConstructionLink";
-
+                strcmd += " (ConstructionCode,";
+                strcmd += " FluctuationCode,";
+                strcmd += " LinkType,";
+                strcmd += " EntryDate,";
+                strcmd += " UpdateDate)";
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", data.ConstructionCode);
                 strcmd += string.Format(", {0}", data.FluctuationCode);
+                strcmd += string.Format(", {0}", data.LinkType);
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -182,7 +188,15 @@
                 return false;
             }
         }
+        #endregion
+
+        #region 追加処理（複数件追加）
         /// <summary>
+        /// 工事増減情報追加（複数件追加）
+        /// </summary>
+        /// <param name="data">工事増減情報データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        /// <summary>
         /// 工事増減情報追加
         /// </summary>
         /// <param name="data">工事増減情報データ</param>
@@ -225,9 +239,10 @@
                 strcmd += " SET";
 
                 strcmd += string.Format("  ConstructionCode = {0}", data.ConstructionCode);
-                strcmd += string.Format(" ,DetailNo = {0}", data.FluctuationCode);
+                strcmd += string.Format(", DetailNo = {0}", data.FluctuationCode);
+                strcmd += string.Format(", LinkType = {0}", data.LinkType);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -280,11 +295,12 @@
             try
             {
                 // データ取得
-                wrk.ConstructionCode = int.Parse(objwrk[(int)ConstructionLinkColumn.CONSTRUCTION_CODE].ToString());
-                wrk.FluctuationCode = int.Parse(objwrk[(int)ConstructionLinkColumn.FLUCTUATION_CODE].ToString());
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());
+                wrk.FluctuationCode = int.Parse(objwrk[(int)TableColumn.FluctuationCode].ToString());
+                wrk.LinkType = int.Parse(objwrk[(int)TableColumn.LinkType].ToString());
                 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)ConstructionLinkColumn.ENTRY_DATE].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ConstructionLinkColumn.UPDATE_DATE].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
@@ -299,6 +315,82 @@
 
         #endregion
 
+        #region 1項目更新処理（親コードでの更新）
+        /// <summary>
+        /// 1項目の更新を行う（親コードでの更新）
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionLink";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.FluctuationCode:
+                        strcmd += string.Format(" FluctuationCode = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1項目更新処理（子コードでの更新）
+        /// <summary>
+        /// 1項目の更新を行う（子コードでの更新）
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild2(int FluctuationCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionLink";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.FluctuationCode:
+                        strcmd += string.Format(" FluctuationCode = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += string.Format(" WHERE FluctuationCode = {0}", FluctuationCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region 検索の文字列を返す
 
         /// <summary>
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionMaterialInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionMaterialInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionMaterialInfo.cs	(revision 51)
@@ -0,0 +1,357 @@
+﻿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 IOConstructionMaterialInfo : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            ConstructionCode=0,
+            MaterialItemCode,
+            RentCount,
+            RepayCount,
+            CompleteFlg,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOConstructionMaterialInfo()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region パブリックメソッド
+        /// <summary>
+        /// 検索
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool SelectAction(string AddSQLString, ref List<ConstructionMaterialInfo> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " ConstructionCode,MaterialItemCode,RentCount,RepayCount,CompleteFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM ConstructionMaterialInfo";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    ConstructionMaterialInfo work = new ConstructionMaterialInfo();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 追加
+        /// </summary>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<ConstructionMaterialInfo> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (ConstructionMaterialInfo work in data)
+                {
+                    strcmd = "INSERT INTO ConstructionMaterialInfo";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.ConstructionCode .ToString());
+                    strcmd += string.Format(", {0}", work.MaterialItemCode .ToString());
+                    strcmd += string.Format(", {0}", work.RentCount .ToString());
+                    strcmd += string.Format(", {0}", work.RepayCount .ToString());
+                    strcmd += string.Format(", {0}", work.CompleteFlg.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, ConstructionMaterialInfo data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE ConstructionMaterialInfo";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" RentCount = {0}", data.RentCount.ToString());
+                strcmd += string.Format(",RepayCount = {0}", data.RepayCount.ToString());
+                strcmd += string.Format(",CompleteFlg = {0}", data.CompleteFlg.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM ConstructionMaterialInfo", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref ConstructionMaterialInfo wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.ConstructionCode   = int.Parse(objwrk[(int)NameColumn.ConstructionCode ].ToString());
+                wrk.MaterialItemCode  = int.Parse(objwrk[(int)NameColumn.MaterialItemCode ].ToString());
+                wrk.RentCount  = int.Parse(objwrk[(int)NameColumn.RentCount ].ToString());
+                wrk.RepayCount  = int.Parse(objwrk[(int)NameColumn.RepayCount ].ToString());
+                wrk.CompleteFlg  = int.Parse(objwrk[(int)NameColumn.CompleteFlg ].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate ].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate ].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int ConstructionCode,int MaterialItemCode)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where ConstructionCode = {0} and MaterialItemCode = {1}", ConstructionCode, MaterialItemCode);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        /// <summary>
+        /// 最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxConstructionCodeKeyCount(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(ConstructionCode), 0) FROM ConstructionMaterialInfo" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals(""))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+
+            return iRet;
+        }
+
+        /// <summary>
+        /// 指定資材の件数を取得する
+        /// </summary>
+        /// <param name="MaterialKindCode">資材種類コード</param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaterialItemCount(int MaterialItemCode, bool bConnect = true)
+        {
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT COUNT(*) FROM ConstructionMaterialInfo where CompleteFlg = 0 and MaterialItemCode = " + MaterialItemCode;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                iRet = int.Parse((((object[])arData[0])[0]).ToString());
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+
+            return iRet;
+        }
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        /// <param name="MaterialItemCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLock(int ConstructionCode,int MaterialItemCode, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            
+            try
+            {
+                strcmd = string.Format("select * from ConstructionMaterialInfo  where ConstructionCode = {0} and MaterialItemCode = {1} for update;",
+                                        ConstructionCode,MaterialItemCode);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+#endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionProgressDate.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionProgressDate.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOConstructionProgressDate.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -110,7 +110,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -136,7 +136,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -156,11 +156,11 @@
                     strcmd += string.Format("  {0}", data.ConstructionCode.ToString());
                     strcmd += string.Format(", {0}", data.ConstructionStatusFlg.ToString());
                     strcmd += string.Format(", {0}", data.PreviousStatusFlg.ToString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')", data.ChangeDate.ToString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.ChangeDate.ToString());
                     strcmd += string.Format(", {0}", data.ChangePersonCode.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -169,7 +169,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -195,10 +195,10 @@
                 strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode.ToString());
                 strcmd += string.Format(",ConstructionStatusFlg = {0}", data.ConstructionStatusFlg.ToString());
                 strcmd += string.Format(",PreviousStatusFlg = {0}", data.PreviousStatusFlg.ToString());
-                strcmd += string.Format(",ChangeDate = DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')", data.ChangeDate.ToString());
+                strcmd += string.Format(",ChangeDate = STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.ChangeDate.ToString());
                 strcmd += string.Format(",ChangePersonCode = {0}", data.ChangePersonCode.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -207,7 +207,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -234,12 +234,59 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ConstructionProgressDate";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)ColumnName.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.ConstructionStatusFlg:
+                        strcmd += string.Format(" ConstructionStatusFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.PreviousStatusFlg:
+                        strcmd += string.Format(" PreviousStatusFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.ChangeDate:
+                        strcmd += string.Format(" ChangeDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)ColumnName.ChangePersonCode:
+                        strcmd += string.Format(" ChangePersonCode = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region データセット処理
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -262,11 +309,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOCostDataOfPerson.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOCostDataOfPerson.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOCostDataOfPerson.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -43,7 +43,10 @@
             SuppliersName,      // 支払先名称
             PaymentContent,     // 支払内容
             PaymentType,        // 支払方法フラグ
-            EntryPrice,	        // 金額
+            EntryPrice,	        // 金額（税抜）
+            EntryPriceInTax,    // 金額（税込）
+            SlipNumber,         // 伝票番号
+
             ComplateFlg,        // 引込済みフラグ
             ApprovalFlg,        // 承認フラグ
 
@@ -83,7 +86,10 @@
             strcmd += " ,SuppliersName";                        // 支払先名称
             strcmd += " ,PaymentContent";                       // 支払内容
             strcmd += " ,PaymentType";                          // 支払方法フラグ
-            strcmd += " ,EntryPrice";	                        // 金額
+            strcmd += " ,EntryPrice";	                        // 金額（税抜）
+            strcmd += " ,EntryPriceInTax";                      // 金額（税込）
+            strcmd += " ,SlipNumber";                           // 伝票番号
+
             strcmd += " ,ComplateFlg";                          // 引込済みフラグ
             strcmd += " ,ApprovalFlg";                          // 承認フラグ
 
@@ -172,11 +178,28 @@
             try
             {
                 strcmd = "INSERT INTO CostDataOfPerson";
+                strcmd += "  (PersonCode";                          // 担当者コード
+                strcmd += " ,ActionDate";                           // 対象日付
+                strcmd += " ,DataType";                             // データ区分
+                strcmd += " ,DataAddCount";                         // データ追加番号
+                strcmd += " ,TargetMonth";                          // 対象年月
+                strcmd += " ,ConstructionCode";                     // 工事番号
+                strcmd += " ,SuppliersCode";                        // 支払先コード
+                strcmd += " ,SuppliersName";                        // 支払先名称
+                strcmd += " ,PaymentContent";                       // 支払内容
+                strcmd += " ,PaymentType";                          // 支払方法フラグ
+                strcmd += " ,EntryPrice";	                        // 金額（税抜）
+                strcmd += " ,EntryPriceInTax";                      // 金額（税込）
+                strcmd += " ,SlipNumber";                           // 伝票番号
+                strcmd += " ,ComplateFlg";                          // 引込済みフラグ
+                strcmd += " ,ApprovalFlg";                          // 承認フラグ
+                strcmd += " ,EntryDate";
+                strcmd += " ,UpdateDate)";
 
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.ActionDate.ToShortDateString());     // 対象日付
                 strcmd += string.Format(", {0}", work.DataType);                        // データ区分
                 strcmd += string.Format(", {0}", work.DataAddCount);                    // データ追加番号
@@ -186,12 +209,15 @@
                 strcmd += string.Format(",'{0}'", work.SuppliersName);                  // 支払先名称
                 strcmd += string.Format(",'{0}'", work.PaymentContent);                 // 支払内容
                 strcmd += string.Format(", {0}", work.PaymentType);                     // 支払方法フラグ
-                strcmd += string.Format(", {0}", work.EntryPrice);	                    // 金額
+                strcmd += string.Format(", {0}", work.EntryPrice);	                    // 金額（税抜）
+                strcmd += string.Format(", {0}", work.EntryPriceInTax);	                // 金額（税込）
+                strcmd += string.Format(",'{0}'", work.SlipNumber);                     // 伝票番号
+
                 strcmd += string.Format(", {0}", work.ComplateFlg);                     // 引込済みフラグ
                 strcmd += string.Format(", {0}", work.ApprovalFlg);                     // 承認フラグ
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -245,7 +271,7 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",ActionDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",ActionDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.ActionDate.ToShortDateString());                  // 対象日付
                 strcmd += string.Format(",DataType = {0}", data.DataType);                      // データ区分
                 strcmd += string.Format(",DataAddCount = {0}", data.DataAddCount);              // データ追加番号
@@ -255,11 +281,13 @@
                 strcmd += string.Format(",SuppliersName = '{0}'", data.SuppliersName);          // 支払先名称
                 strcmd += string.Format(",PaymentContent = '{0}'", data.PaymentContent);        // 支払内容
                 strcmd += string.Format(",PaymentType = {0}", data.PaymentType);                // 支払方法フラグ
-                strcmd += string.Format(",EntryPrice = {0}", data.EntryPrice);                  // 金額
+                strcmd += string.Format(",EntryPrice = {0}", data.EntryPrice);                  // 金額（税抜）
+                strcmd += string.Format(",EntryPriceInTax = {0}", data.EntryPriceInTax);        // 金額（税込）
+                strcmd += string.Format(",SlipNumber = '{0}'", data.SlipNumber);                // 伝票番号
                 strcmd += string.Format(",ComplateFlg = {0}", data.ComplateFlg);                // 引込済みフラグ
                 strcmd += string.Format(",ApprovalFlg = {0}", data.ApprovalFlg);                // 承認フラグ
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -322,7 +350,9 @@
                 wrk.SuppliersName = objwrk[(int)CostDataOfPersonColumn.SuppliersName].ToString();                       // 支払先名称
                 wrk.PaymentContent = objwrk[(int)CostDataOfPersonColumn.PaymentContent].ToString();                     // 支払内容
                 wrk.PaymentType = int.Parse(objwrk[(int)CostDataOfPersonColumn.PaymentType].ToString());                // 支払方法フラグ
-                wrk.EntryPrice = double.Parse(objwrk[(int)CostDataOfPersonColumn.EntryPrice].ToString());               // 金額
+                wrk.EntryPrice = double.Parse(objwrk[(int)CostDataOfPersonColumn.EntryPrice].ToString());               // 金額（税抜）
+                wrk.EntryPriceInTax = double.Parse(objwrk[(int)CostDataOfPersonColumn.EntryPriceInTax].ToString());     // 金額（税込）
+                wrk.SlipNumber = objwrk[(int)CostDataOfPersonColumn.SlipNumber].ToString();                             // 伝票番号
                 wrk.ComplateFlg = int.Parse(objwrk[(int)CostDataOfPersonColumn.ComplateFlg].ToString());                // 引込済みフラグ
                 wrk.ApprovalFlg = int.Parse(objwrk[(int)CostDataOfPersonColumn.ApprovalFlg].ToString());                // 承認フラグ
 
@@ -356,7 +386,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (ActionDate != DateTime.MinValue)
-                    strWork += string.Format(" AND ActionDate = DATE_FORMAT('{0}','%Y/%m/%d')", ActionDate.ToShortDateString());
+                    strWork += string.Format(" AND ActionDate = STR_TO_DATE('{0}','%Y/%m/%d')", ActionDate.ToShortDateString());
                 if (DataType != 0)
                     strWork += string.Format(" AND DataType = {0}", DataType);
                 if (DataAddCount != 0)
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyData.cs	(revision 51)
@@ -6,9 +6,9 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using Oracle.ManagedDataAccess.Client;
 
-using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Oracle;
 using ProcessManagement.DB.Core;
 using ProcessManagement.DataModel;
 using ProcessManagement.Common;
@@ -18,7 +18,7 @@
     /// <summary>
     /// 日報データＤＢアクセス
     /// </summary>
-    public class IODailyData : MySqlProcess
+    public class IODailyData : OracleProcess
     {
         #region 定義部
         /// <summary>
@@ -86,12 +86,12 @@
             string strcmd = "SELECT";
 
             strcmd += "  PersonCode";                                       // 担当者コード
-            strcmd += " ,DATE_FORMAT(DailyDataDate, '%Y/%m/%d')";             // 日報作成日
+            strcmd += " ,TO_CHAR(DailyDataDate, 'YYYY/MM/DD')";             // 日報作成日
             strcmd += " ,LineCount";                                        // 行番号
             strcmd += " ,ConstructionCode";                                 // 工事番号
             strcmd += " ,WorkContentsText";                                 // 作業内容
-            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";      // 登録年月日
-            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";     // 更新年月日
+            strcmd += ", TO_CHAR(EntryDate, 'YYYY/MM/DD HH24:MI:ss')";      // 登録年月日
+            strcmd += ", TO_CHAR(UpdateDate, 'YYYY/MM/DD HH24:MI:ss')";     // 更新年月日
             strcmd += " FROM DailyData";
 
             return strcmd;
@@ -179,14 +179,14 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", TO_DATE('{0}','YYYY/MM/DD')"
                                             , work.DailyDataDate.ToShortDateString());  // 日報作成日
                 strcmd += string.Format(", {0}", work.LineCoount);                      // 行番号
                 strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
                 strcmd += string.Format(",'{0}'", work.WorkContentsText);               // 作業内容
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -240,13 +240,13 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')"
                                         , data.DailyDataDate.ToShortDateString());              // 日報作成日
                 strcmd += string.Format(",LineCoount = {0}", data.LineCoount);                  // 行番号
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",WorkContentsText = '{0}'", data.WorkContentsText);    // 作業内容
                 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -308,9 +308,9 @@
                 wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
                 wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
             }
-            catch (MySqlException myex)
+            catch (OracleException oraex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("オラクルエラー：{0}：{1}", CommonMotions.GetMethodName(2), oraex.Message);
             }
             catch (Exception ex)
             {
@@ -335,7 +335,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (DailyDataDate != DateTime.MinValue)
-                    strWork += string.Format(" AND DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", DailyDataDate.ToShortDateString());
+                    strWork += string.Format(" AND DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')", DailyDataDate.ToShortDateString());
                 if (LineCount != 0)
                     strWork += string.Format(" AND LineCount = {0}", LineCount);
             }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataConstruction.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataConstruction.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataConstruction.cs	(revision 51)
@@ -174,13 +174,13 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.DailyDataDate.ToShortDateString());  // 日報作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
                 strcmd += string.Format(",'{0}'", work.Weather);                        // 天気
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -239,7 +239,7 @@
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",Weather = '{0}'", data.Weather);                      // 天気
                 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -254,6 +254,54 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <param name="ConstructionCode"></param>
+        /// <param name="FeildNo"></param>
+        /// <param name="value"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateFeild(int PersonCode, DateTime DailyDataDate, int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE DailyDataConstruction";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)DataColumn.PersonCode:
+                        strcmd += string.Format(" PersonCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.DailyDataDate:
+                        strcmd += string.Format(" DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)DataColumn.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.Weather:
+                        strcmd += string.Format(" Weather = '{0}'", value.ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(PersonCode, DailyDataDate, ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region 削除処理
         /// <summary>
         /// 担当者毎経費データ削除
@@ -327,7 +375,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (DailyDataDate != DateTime.MinValue)
-                    strWork += string.Format(" AND DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", DailyDataDate.ToShortDateString());
+                    strWork += string.Format(" AND DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyDataDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
             }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataDetail.cs	(revision 51)
@@ -205,11 +205,24 @@
             try
             {
                 strcmd = "INSERT INTO DailyDataDetail";
+                strcmd += "  (PersonCode";      // 担当者コード
+                strcmd += " ,DailyDataDate";    // 日報作成日
+                strcmd += " ,ConstructionCode"; // 工事番号
+                strcmd += " ,SeqNo";            // 明細行番号
+                strcmd += " ,JobCategoryCode";  // 職種キー
+                strcmd += " ,CompanyCode";      // 協力会社コード
+                strcmd += " ,TodayHeadCount";   // 当日人員数
+                strcmd += " ,TotalHeadCount";   // 累計人員数
+                strcmd += " ,TodayWork";        // 当日作業内容
+                strcmd += " ,NextdayWork";      // 翌日作業内容
+                strcmd += " ,NextdayHeadCount"; // 翌日人員数
+                strcmd += " ,EntryDate";        // 登録年月日
+                strcmd += " ,UpdateDate)";      // 更新年月日
 
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.DailyDataDate.ToShortDateString());  // 日報作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
                 strcmd += string.Format(", {0}", work.SeqNo);                           // 明細行番号
@@ -221,8 +234,8 @@
                 strcmd += string.Format(",'{0}'", work.NextdayWork);                    // 翌日作業内容
                 strcmd += string.Format(", {0}", work.NextdayHeadCount);                // 翌日人員数
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -276,7 +289,7 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.DailyDataDate.ToShortDateString());              // 日報作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",SeqNo =  {0} ", data.SeqNo);                          // 明細行番号
@@ -288,7 +301,7 @@
                 strcmd += string.Format(",NextdayWork = '{0}'", data.NextdayWork);              // 翌日作業内容
                 strcmd += string.Format(",NextdayHeadCount =  {0} ", data.NextdayHeadCount);    // 翌日人員数
                 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -330,6 +343,75 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <param name="ConstructionCode"></param>
+        /// <param name="FeildNo"></param>
+        /// <param name="value"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateFeild(int PersonCode, DateTime DailyDataDate, int ConstructionCode, int SeqNo, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE DailyDataDetail";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)DataColumn.PersonCode:
+                        strcmd += string.Format(" PersonCode = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.DailyDataDate:
+                        strcmd += string.Format(" DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)DataColumn.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.SeqNo:
+                        strcmd += string.Format(" SeqNo = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.JobCategoryCode:
+                        strcmd += string.Format(" JobCategoryCode = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.CompanyCode:
+                        strcmd += string.Format(" CompanyCode = {0}", (int)value);
+                        break;
+                    case (int)DataColumn.TodayHeadCount:
+                        strcmd += string.Format(" TodayHeadCount = {0}", (double)value);
+                        break;
+                    case (int)DataColumn.TotalHeadCount:
+                        strcmd += string.Format(" TotalHeadCount = {0}", (double)value);
+                        break;
+                    case (int)DataColumn.TodayWork:
+                        strcmd += string.Format(" TodayWork = '{0}'", CommonMotions.cnvString(value));
+                        break;
+                    case (int)DataColumn.NextdayWork:
+                        strcmd += string.Format(" NextdayWork = '{0}'", CommonMotions.cnvString(value));
+                        break;
+                    case (int)DataColumn.NextdayHeadCount:
+                        strcmd += string.Format(" NextdayHeadCount = {0}", (double)value);
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(PersonCode, DailyDataDate, ConstructionCode, SeqNo);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region データセット処理
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -376,7 +458,7 @@
         /// <param name="DataType"></param>
         /// <param name="DataAddCount"></param>
         /// <returns></returns>
-        public string CreatePrimarykeyString(int PersonCode, DateTime DailyDataDate, int ConstructionCode, int SeqNo)
+        public string CreatePrimarykeyString(int PersonCode, DateTime DailyDataDate, int ConstructionCode = 0, int SeqNo = 0)
         {
             string strWork = "";
             try
@@ -383,7 +465,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (DailyDataDate != DateTime.MinValue)
-                    strWork += string.Format(" AND DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", DailyDataDate.ToShortDateString());
+                    strWork += string.Format(" AND DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyDataDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
                 if (SeqNo != 0)
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataField.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataField.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataField.cs	(revision 51)
@@ -186,17 +186,17 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.DailyDataDate.ToShortDateString());  // 日報作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
                 strcmd += string.Format(", {0}", work.SeqNo);                           // 明細行番号
 
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')"
                                             , work.PatrolTime.ToString());              // 巡回時間
                 strcmd += string.Format(",'{0}'", work.ContentsText);                   // 内容
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -250,16 +250,16 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.DailyDataDate.ToShortDateString());              // 日報作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",SeqNo =  {0} ", data.SeqNo);                          // 明細行番号
 
-                strcmd += string.Format(",PatrolTime = DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')"
+                strcmd += string.Format(",PatrolTime = STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')"
                                         , data.PatrolTime.ToShortDateString());                 // 巡回時間
                 strcmd += string.Format(",ContentsText = '{0}'", data.ContentsText);            // 内容
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -350,7 +350,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (DailyDataDetailDate != DateTime.MinValue)
-                    strWork += string.Format(" AND DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
+                    strWork += string.Format(" AND DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
                 if (SeqNo != 0)
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataMaterials.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataMaterials.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataMaterials.cs	(revision 51)
@@ -201,7 +201,7 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.DailyDataDate.ToShortDateString());  // 日報作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
                 strcmd += string.Format(", {0}", work.SeqNo);                           // 明細行番号
@@ -211,8 +211,8 @@
                 strcmd += string.Format(",'{0}'", work.Delivery);                       // 納入業者
                 strcmd += string.Format(",'{0}'", work.QualityControl);                 // 品質管理事項
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -266,7 +266,7 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.DailyDataDate.ToShortDateString());              // 日報作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",SeqNo =  {0} ", data.SeqNo);                          // 明細行番号
@@ -277,7 +277,7 @@
                 strcmd += string.Format(",Delivery = '{0}'", data.Delivery);                    // 納入業者
                 strcmd += string.Format(",QualityControl = '{0}'", data.QualityControl);        // 品質管理事項
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -371,7 +371,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (DailyDataDetailDate != DateTime.MinValue)
-                    strWork += string.Format(" AND DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
+                    strWork += string.Format(" AND DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
                 if (SeqNo != 0)
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataSubcontractors.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataSubcontractors.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataSubcontractors.cs	(revision 51)
@@ -186,7 +186,7 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.DailyDataDate.ToShortDateString());  // 日報作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
                 strcmd += string.Format(", {0}", work.SeqNo);                           // 明細行番号
@@ -194,8 +194,8 @@
                 strcmd += string.Format(",'{0}'", work.Attendee);                       // 出席者
                 strcmd += string.Format(",'{0}'", work.ContentsText);                       // 内容
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -249,7 +249,7 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.DailyDataDate.ToShortDateString());              // 日報作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",SeqNo =  {0} ", data.SeqNo);                          // 明細行番号
@@ -257,7 +257,7 @@
                 strcmd += string.Format(",Attendee = '{0}'", data.Attendee);                    // 出席者
                 strcmd += string.Format(",ContentsText = '{0}'", data.ContentsText);                    // 内容
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -348,7 +348,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (DailyDataDetailDate != DateTime.MinValue)
-                    strWork += string.Format(" AND DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
+                    strWork += string.Format(" AND DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
                 if (SeqNo != 0)
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataVehicles.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataVehicles.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODailyDataVehicles.cs	(revision 51)
@@ -206,7 +206,7 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                      // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.DailyDataDate.ToShortDateString());  // 日報作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                // 工事番号
                 strcmd += string.Format(", {0}", work.SeqNo);                           // 明細行番号
@@ -214,13 +214,13 @@
                 strcmd += string.Format(",'{0}'", work.Performance);                    // 性能
                 strcmd += string.Format(",'{0}'", work.Owner);                          // 所有会社
                 strcmd += string.Format(",'{0}'", work.Driver);                         // 当日運転者
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')"
                                             , work.StartWorkingTime.ToString());        // 作業時間開始
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')"
                                             , work.EndWorkingTime.ToString());          // 作業時間終了
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -274,7 +274,7 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.DailyDataDate.ToShortDateString());              // 日報作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",SeqNo =  {0} ", data.SeqNo);                          // 明細行番号
@@ -283,12 +283,12 @@
                 strcmd += string.Format(",TodayWork = '{0}'", data.Performance);                 // 性能
                 strcmd += string.Format(",TodayWork = '{0}'", data.Owner);                       // 所有会社
                 strcmd += string.Format(",TodayWork = '{0}'", data.Driver);                      // 当日運転者
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')"
+                strcmd += string.Format(",DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')"
                                         , data.StartWorkingTime.ToString());                    // 作業時間開始
-                strcmd += string.Format(",DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')"
+                strcmd += string.Format(",DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')"
                                         , data.EndWorkingTime.ToString());                      // 作業時間終了
                 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -383,7 +383,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (DailyDataDetailDate != DateTime.MinValue)
-                    strWork += string.Format(" AND DailyDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
+                    strWork += string.Format(" AND DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyDataDetailDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
                 if (SeqNo != 0)
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODeadLineMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODeadLineMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODeadLineMaster.cs	(revision 51)
@@ -0,0 +1,264 @@
+﻿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 IODeadLineMaster : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            LabourKind = 0,
+            DeadLine,
+            PayDay,
+            Note,
+            DeleteFlg,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IODeadLineMaster()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<DeadLineMaster> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += "  LabourKind, DeadLine, PayDay, Note, DeleteFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM DeadLineMaster";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    DeadLineMaster work = new DeadLineMaster();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 新規登録
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(List<DeadLineMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (DeadLineMaster work in data)
+                {
+                    strcmd = "INSERT INTO DeadLineMaster";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.LabourKind.ToString());
+                    strcmd += string.Format(", {0}", work.DeadLine.ToString());
+                    strcmd += string.Format(", {0}", work.PayDay.ToString());
+                    strcmd += string.Format(", '{0}'", work.Note.ToString());
+                    strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新登録
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateAction(string AddSQLString, DeadLineMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE DeadLineMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" LabourKind = {0}", data.LabourKind.ToString());
+                strcmd += string.Format(",DeadLine = {0}", data.DeadLine.ToString());
+                strcmd += string.Format(",PayDay = {0}", data.PayDay.ToString());
+                strcmd += string.Format(",Note = '{0}'", data.Note);
+                strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
+ 
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = "Update DeadLineMaster Set DeleteFlg = 1";
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 構造体設定
+        /// </summary>
+        /// <param name="objwrk"></param>
+        /// <param name="wrk"></param>
+        public void Reader2Struct(object[] objwrk, ref DeadLineMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.LabourKind = int.Parse(objwrk[(int)NameColumn.LabourKind].ToString());
+                wrk.DeadLine = int.Parse(objwrk[(int)NameColumn.DeadLine].ToString());
+                wrk.PayDay = int.Parse(objwrk[(int)NameColumn.PayDay].ToString());
+                wrk.Note = objwrk[(int)NameColumn.Note].ToString();
+                wrk.DeleteFlg = int.Parse(objwrk[(int)NameColumn.DeleteFlg].ToString());
+
+                wrk.EntryDate = objwrk[(int)NameColumn.EntryDate].ToString()=="" ? DateTime.Parse("2001/01/01") : DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = objwrk[(int)NameColumn.UpdateDate].ToString()=="" ? DateTime.Parse("2001/01/01") : DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int LabourKind)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where LabourKind = {0}", LabourKind);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        #endregion
+
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositApprovalInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositApprovalInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositApprovalInfo.cs	(revision 51)
@@ -0,0 +1,378 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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 IODepositApprovalInfo : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 入金確認承認データフィールド並び
+        /// </summary>
+        public enum ColumnName
+        {
+            OrderersDivision,
+            OrderersCode,
+            TargetDate,
+            SeqNo,
+            LineCount,
+            ApprovalNo,
+            ApprovalPerson,
+            ApprovalPersonName,
+            ApprovalAuthority,
+            ApprovalDate,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IODepositApprovalInfo()
+            : 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作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            string strcmd = "SELECT";
+            strcmd += " OrderersDivision";
+            strcmd += ",OrderersCode";
+            strcmd += ",TargetDate";
+            strcmd += ",SeqNo";
+            strcmd += ",LineCount";
+            strcmd += ",ApprovalNo";
+            strcmd += ",ApprovalPerson";
+            strcmd += ",ApprovalPersonName";
+            strcmd += ",ApprovalAuthority";
+            strcmd += ",DATE_FORMAT(ApprovalDate, '%Y/%m/%d')";
+            strcmd += ",DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += ",DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM DepositApprovalInfo";
+
+            return strcmd;
+        }
+        #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<DepositApprovalInfo> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    DepositApprovalInfo work = new DepositApprovalInfo();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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 DepositApprovalInfo data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // データセット
+                object[] objwrk = (object[])arData[0];
+                Reader2Struct(objwrk, ref data);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+        #endregion
+
+        #region 入金確認承認データ追加（複数）
+        /// <summary>
+        /// 入金確認承認データ追加（複数）
+        /// </summary>
+        /// <param name="data">承認データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<DepositApprovalInfo> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                foreach (DepositApprovalInfo work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金確認承認データ追加（1件）
+        /// <summary>
+        /// 入金確認承認データ追加（1件）
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(DepositApprovalInfo data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                    strcmd = "INSERT INTO DepositApprovalInfo";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", data.OrderersDivision.ToString());
+                    strcmd += string.Format(", {0}", data.OrderersCode.ToString());
+                    strcmd += string.Format(", {0}", data.TargetDate.ToString());
+                    strcmd += string.Format(", {0}", data.SeqNo.ToString());
+                    strcmd += string.Format(", {0}", data.LineCount.ToString());
+                    strcmd += string.Format(", {0}", data.ApprovalNo.ToString());
+                    strcmd += string.Format(", {0}", data.ApprovalPerson.ToString());
+                    strcmd += string.Format(", '{0}'", data.ApprovalPersonName.ToString());
+                    strcmd += string.Format(", {0}", data.ApprovalAuthority.ToString());
+                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y%m%d')", data.ApprovalDate.ToString());
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金確認承認データ更新
+        /// <summary>
+        /// 入金確認承認データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">入金データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, DepositApprovalInfo data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE DepositApprovalInfo";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" OrderersDivision = {0}", data.OrderersDivision.ToString());
+                strcmd += string.Format(",OrderersCode = {0}", data.OrderersCode.ToString());
+                strcmd += string.Format(",TargetDate = {0}", data.TargetDate.ToString());
+                strcmd += string.Format(",SeqNo = {0}", data.SeqNo.ToString());
+                strcmd += string.Format(",LineCount = {0}", data.LineCount.ToString());
+                strcmd += string.Format(",ApprovalNo = {0}", data.ApprovalNo.ToString());
+                strcmd += string.Format(",ApprovalPerson = {0}", data.ApprovalPerson.ToString());
+                strcmd += string.Format(",ApprovalPersonName = '{0}'", data.ApprovalPersonName.ToString());
+                strcmd += string.Format(",ApprovalAuthority = {0}", data.ApprovalAuthority.ToString());
+                strcmd += string.Format(",ApprovalDate = DATE_FORMAT('{0}','%Y%m%d')", data.ApprovalDate.ToString());
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM DepositApprovalInfo", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref DepositApprovalInfo wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.OrderersDivision = int.Parse(objwrk[(int)ColumnName.OrderersDivision].ToString());
+                wrk.OrderersCode = int.Parse(objwrk[(int)ColumnName.OrderersCode].ToString());
+                wrk.TargetDate = objwrk[(int)ColumnName.TargetDate].ToString();
+                wrk.SeqNo = int.Parse(objwrk[(int)ColumnName.SeqNo].ToString());
+                wrk.LineCount = int.Parse(objwrk[(int)ColumnName.LineCount].ToString());
+                wrk.ApprovalNo = int.Parse(objwrk[(int)ColumnName.ApprovalNo].ToString());
+                wrk.ApprovalPerson = int.Parse(objwrk[(int)ColumnName.ApprovalPerson].ToString());
+                wrk.ApprovalPersonName = objwrk[(int)ColumnName.ApprovalPersonName].ToString();
+                wrk.ApprovalAuthority = int.Parse(objwrk[(int)ColumnName.ApprovalAuthority].ToString());
+                wrk.ApprovalDate = DateTime.Parse(objwrk[(int)ColumnName.ApprovalDate].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)ColumnName.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ColumnName.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString( int OrderersDivision, int OrderersCode = 0, string TargetDate = "", int SeqNo = 0, int LineCount = 0, int ApprovalNo = 0)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where OrderersDivision = {0}", OrderersDivision.ToString());
+                if (OrderersCode != 0)
+                    strWork += string.Format(" And OrderersCode = {0}", OrderersCode.ToString());
+                if (!TargetDate.Equals(""))
+                    strWork += " And TargetDate = " + TargetDate;
+                if (SeqNo != 0)
+                    strWork += string.Format(" And SeqNo = {0}", SeqNo.ToString());
+                if (LineCount != 0)
+                    strWork += string.Format(" And LineCount = {0}", LineCount.ToString());
+                if (ApprovalNo != 0)
+                    strWork += string.Format(" And ApprovalNo = {0}", ApprovalNo.ToString());
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositData.cs	(revision 51)
@@ -0,0 +1,358 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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 IODepositData : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 入金データフィールド並び
+        /// </summary>
+        public enum ColumnName
+        {
+            OrderersDivision,
+            OrderersCode,
+            TargetDate,
+            SeqNo,
+            DepositDate,
+            DepositAmountCash,
+            DepositAmountBill,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IODepositData()
+            : 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作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            string strcmd = "SELECT";
+            strcmd += " OrderersDivision";
+            strcmd += ",OrderersCode";
+            strcmd += ",TargetDate";
+            strcmd += ",SeqNo";
+            strcmd += ",DATE_FORMAT(DepositDate, '%Y/%m/%d')";
+            strcmd += ",DepositAmountCash";
+            strcmd += ",DepositAmountBill";
+            strcmd += ",DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += ",DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM DepositData";
+
+            return strcmd;
+        }
+        #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<DepositData> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    DepositData work = new DepositData();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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 DepositData data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // データセット
+                object[] objwrk = (object[])arData[0];
+                Reader2Struct(objwrk, ref data);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+        #endregion
+
+        #region 入金データ追加（複数）
+        /// <summary>
+        /// 入金データ追加（複数）
+        /// </summary>
+        /// <param name="data">承認データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<DepositData> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                foreach (DepositData work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金データ追加（1件）
+        /// <summary>
+        /// 入金データ追加（1件）
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(DepositData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                    strcmd = "INSERT INTO DepositData";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", data.OrderersDivision.ToString());
+                    strcmd += string.Format(", {0}", data.OrderersCode.ToString());
+                    strcmd += string.Format(", {0}", data.TargetDate.ToString());
+                    strcmd += string.Format(", {0}", data.SeqNo.ToString());
+                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.DepositDate.ToShortDateString());
+                    strcmd += string.Format(", {0}", data.DepositAmountCash.ToString());
+                    strcmd += string.Format(", {0}", data.DepositAmountBill.ToString());
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金データ更新
+        /// <summary>
+        /// 入金データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">入金データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, DepositData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE DepositData";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" OrderersDivision = {0}", data.OrderersDivision.ToString());
+                strcmd += string.Format(",OrderersCode = {0}", data.OrderersCode.ToString());
+                strcmd += string.Format(",TargetDate = {0}", data.TargetDate.ToString());
+                strcmd += string.Format(",SeqNo = {0}", data.SeqNo.ToString());
+                strcmd += string.Format(",DepositDate = DATE_FORMAT('{0}','%Y%m%d')", data.DepositDate.ToString());
+                strcmd += string.Format(",DepositAmountCash = {0}", data.DepositAmountCash.ToString());
+                strcmd += string.Format(",DepositAmountBill = {0}", data.DepositAmountBill.ToString());
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM DepositData", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref DepositData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.OrderersDivision = int.Parse(objwrk[(int)ColumnName.OrderersDivision].ToString());
+                wrk.OrderersCode = int.Parse(objwrk[(int)ColumnName.OrderersCode].ToString());
+                wrk.TargetDate = objwrk[(int)ColumnName.TargetDate].ToString();
+                wrk.SeqNo = int.Parse(objwrk[(int)ColumnName.SeqNo].ToString());
+                wrk.DepositDate = DateTime.Parse(objwrk[(int)ColumnName.DepositDate].ToString());
+                wrk.DepositAmountCash = int.Parse(objwrk[(int)ColumnName.DepositAmountCash].ToString());
+                wrk.DepositAmountBill = int.Parse(objwrk[(int)ColumnName.DepositAmountBill].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)ColumnName.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ColumnName.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString( int OrderersDivision, int OrderersCode = 0, string TargetDate = "", int SeqNo = 0)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where OrderersDivision = {0}", OrderersDivision.ToString());
+                if (OrderersCode != 0)
+                    strWork += string.Format(" And OrderersCode = {0}", OrderersCode.ToString());
+                if (!TargetDate.Equals(""))
+                    strWork += " And TargetDate = " + TargetDate;
+                if (SeqNo != 0)
+                    strWork += string.Format(" And SeqNo = {0}", SeqNo.ToString());
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IODepositDataDetail.cs	(revision 51)
@@ -0,0 +1,423 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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 IODepositDataDetail : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 請求データフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            OrderersDivision = 0,
+            OrderersCode,
+            TargetDate,
+            SeqNo,
+            LineCount,
+            RequestNo,
+            OrderNo,
+            DepositAmount,
+            DiscountAmount,
+            CnstrPrice,
+            Fees,
+            OtherAdjustments,
+            CarryAmount,
+            ApprovalPersonCode,
+            ApprovalDate,
+            ApprovalEndFlg,
+            ENTRY_DATE,
+            UPDATE_DATE,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="connectionString"></param>
+        public IODepositDataDetail()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<DepositDataDetail> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " OrderersDivision";
+                strcmd += " ,OrderersCode";
+                strcmd += " ,DATE_FORMAT(TargetDate, '%Y/%m/%d')";
+                strcmd += " ,SeqNo";
+                strcmd += " ,LineCount";
+                strcmd += " ,RequestNo";
+                strcmd += " ,OrderNo";
+                strcmd += " ,DepositAmount";
+                strcmd += " ,DiscountAmount";
+                strcmd += " ,CnstrPrice";
+                strcmd += " ,Fees";
+                strcmd += " ,OtherAdjustments";
+                strcmd += " ,CarryAmount";
+                strcmd += " ,ApprovalPersonCode";
+                strcmd += " ,DATE_FORMAT(ApprovalDate, '%Y/%m/%d')";
+                strcmd += " ,ApprovalEndFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM DepositDataDetail";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    DepositDataDetail work = new DepositDataDetail();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金明細データ複数追加
+        /// <summary>
+        /// 入金明細データ複数追加
+        /// </summary>
+        /// <param name="data">入金明細データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<DepositDataDetail> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (DepositDataDetail work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金明細データ１件追加
+        /// <summary>
+        /// 入金明細データ１件追加
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(DepositDataDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO DepositDataDetail";
+
+                strcmd += " VALUES (";
+
+                strcmd += string.Format(" {0}", data.OrderersDivision.ToString());
+                strcmd += string.Format(", {0}", data.OrderersCode.ToString());
+                strcmd += string.Format(", {0}", data.TargetDate.ToString());
+                strcmd += string.Format(", {0}", data.SeqNo.ToString());
+                strcmd += string.Format(", {0}", data.LineCount.ToString());
+                strcmd += string.Format(", {0}", data.RequestNo.ToString());
+                strcmd += string.Format(", {0}", data.OrderNo.ToString());
+                strcmd += string.Format(", {0}", data.DepositAmount.ToString());
+                strcmd += string.Format(", {0}", data.DiscountAmount.ToString());
+                strcmd += string.Format(", {0}", data.CnstrPrice.ToString());
+                strcmd += string.Format(", {0}", data.Fees.ToString());
+                strcmd += string.Format(", {0}", data.OtherAdjustments.ToString());
+                strcmd += string.Format(", {0}", data.CarryAmount.ToString());
+                strcmd += string.Format(", {0}", data.ApprovalPersonCode.ToString());
+                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ApprovalDate.ToShortDateString());
+                strcmd += string.Format(", {0}", data.ApprovalEndFlg ? 1 : 0);
+
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金明細データ更新
+        /// <summary>
+        /// 入金明細データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">入金明細データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, DepositDataDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE DepositDataDetail";
+
+                strcmd += " SET";
+
+//                strcmd += string.Format(" OrderersDivision = {0}", data.OrderersDivision.ToString());
+//                strcmd += string.Format(",OrderersCode = {0}", data.OrderersCode.ToString());
+//                strcmd += string.Format(",TargetDate = '{0}'", data.TargetDate);
+//                strcmd += string.Format(",SeqNo = {0}", data.SeqNo.ToString());
+//                strcmd += string.Format(",LineCount = {0}", data.LineCount.ToString());
+                strcmd += string.Format(" RequestNo = {0}", data.RequestNo.ToString());
+                strcmd += string.Format(",OrderNo = {0}", data.OrderNo.ToString());
+                strcmd += string.Format(",DepositAmount = {0}", data.DepositAmount.ToString());
+                strcmd += string.Format(",DiscountAmount = {0}", data.DiscountAmount.ToString());
+                strcmd += string.Format(",CnstrPrice = {0}", data.CnstrPrice.ToString());
+                strcmd += string.Format(",Fees = {0}", data.Fees.ToString());
+                strcmd += string.Format(",OtherAdjustments = {0}", data.OtherAdjustments.ToString());
+                strcmd += string.Format(",CarryAmount = {0}", data.CarryAmount.ToString());
+                strcmd += string.Format(",ApprovalPersonCode = {0}", data.ApprovalPersonCode.ToString());
+                strcmd += string.Format(",ApprovalDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.ApprovalDate.ToShortDateString());
+                strcmd += string.Format(",ApprovalEndFlg = {0}", data.ApprovalEndFlg ? 1 : 0);
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += string.Format(" where OrderersDivision = {0} and OrderersCode = {1} and TargetDate = {2} and SeqNo = {3} and LineCount = {4} ",
+                    data.OrderersDivision, data.OrderersCode, data.TargetDate, data.SeqNo, data.LineCount);
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 入金明細データ削除
+        /// <summary>
+        /// 入金明細データ削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM DepositDataDetail", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref DepositDataDetail wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.OrderersDivision = int.Parse(objwrk[(int)NameColumn.OrderersDivision].ToString());
+                wrk.OrderersCode = int.Parse(objwrk[(int)NameColumn.OrderersCode].ToString());
+                wrk.TargetDate = objwrk[(int)NameColumn.TargetDate].ToString();
+                wrk.SeqNo = int.Parse(objwrk[(int)NameColumn.SeqNo].ToString());
+                wrk.LineCount = int.Parse(objwrk[(int)NameColumn.LineCount].ToString());
+                wrk.RequestNo = int.Parse(objwrk[(int)NameColumn.RequestNo].ToString());
+                wrk.OrderNo = int.Parse(objwrk[(int)NameColumn.OrderNo].ToString());
+                wrk.DepositAmount = int.Parse(objwrk[(int)NameColumn.DepositAmount].ToString());
+                wrk.DiscountAmount = int.Parse(objwrk[(int)NameColumn.DiscountAmount].ToString());
+                wrk.CnstrPrice = int.Parse(objwrk[(int)NameColumn.CnstrPrice].ToString());
+                wrk.Fees = int.Parse(objwrk[(int)NameColumn.Fees].ToString());
+                wrk.OtherAdjustments = int.Parse(objwrk[(int)NameColumn.OtherAdjustments].ToString());
+                wrk.CarryAmount = int.Parse(objwrk[(int)NameColumn.CarryAmount].ToString());
+                wrk.ApprovalPersonCode = int.Parse(objwrk[(int)NameColumn.ApprovalPersonCode].ToString());
+                wrk.ApprovalDate = DateTime.Parse(objwrk[(int)NameColumn.ApprovalDate].ToString());
+                wrk.ApprovalEndFlg = (int.Parse(objwrk[(int)NameColumn.ApprovalEndFlg].ToString()) != 0);
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 構造体クリア
+        /// <summary>
+        /// 構造体クリア
+        /// </summary>
+        /// <param name="wrk"></param>
+        public void ClearStruct(ref DepositDataDetail wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.OrderersDivision = 0;
+                wrk.OrderersCode = 0;
+                wrk.TargetDate = string.Empty;
+                wrk.SeqNo = 0;
+                wrk.LineCount = 0;
+                wrk.RequestNo = 0;
+                wrk.OrderNo = 0;
+                wrk.DepositAmount = 0;
+                wrk.DiscountAmount = 0;
+                wrk.CnstrPrice = 0;
+                wrk.Fees = 0;
+                wrk.OtherAdjustments = 0;
+                wrk.CarryAmount = 0;
+                wrk.ApprovalPersonCode = 0;
+                wrk.ApprovalDate = DateTime.MinValue;
+                wrk.ApprovalEndFlg = false;
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int OrderersDivision, int OrderersCode = 0, string TargetDate = "", int SeqNo = 0, int LineCount = 0)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where OrderersDivision = {0}", OrderersDivision.ToString());
+                if (OrderersCode != 0)
+                    strWork += string.Format(" And OrderersCode = {0}", OrderersCode.ToString());
+                if (!TargetDate.Equals(""))
+                    strWork += " And TargetDate = " + TargetDate;
+                if (SeqNo != 0)
+                    strWork += string.Format(" And SeqNo = {0}", SeqNo.ToString());
+                if (LineCount != 0)
+                    strWork += string.Format(" And LineCount = {0}", LineCount.ToString());
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+
+        #region サブキー検索の文字列を返す
+        /// <summary>
+        /// サブキー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreateSubkeyString(int RequestNo, int OrderNo = 0)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where RequestNo = {0}", RequestNo.ToString());
+                if (OrderNo != 0)
+                    strWork += string.Format(" And OrderNo = {0}", OrderNo.ToString());
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateBudget.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateBudget.cs	(revision 51)
@@ -31,7 +31,7 @@
         /// <summary>
         /// 積算予算ページデータフィールド並び
         /// </summary>
-        public enum EstimateBudgetColumn
+        public enum TableColumn
         {
             ConstructionCode = 0,	    // 工事番号
             ConstructionTime,	        // 工期
@@ -184,7 +184,7 @@
                 strcmd += string.Format("  {0}", work.ConstructionCode);                    // 工事番号
                 strcmd += string.Format(", {0}", work.ConstructionTime);	                // 工期
                 strcmd += string.Format(", {0}", work.IntegratedCode);                      // 積算者
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')",
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')",
                                                 work.DataCreateDate.ToShortDateString());   // データ引込日
                 strcmd += string.Format(", {0}", work.RetValue1);                           // 予定価格
                 strcmd += string.Format(", {0}", work.RetValue2);                           // 直接工事費
@@ -192,8 +192,8 @@
                 strcmd += string.Format(", {0}", work.RetValue4);                           // 積み上げ現場管理費
                 strcmd += string.Format(", {0}", work.RetPercent);                          // 一般管理費率
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -255,7 +255,7 @@
 
                 strcmd += string.Format(",ConstructionTime = {0}", data.ConstructionTime);                      // 工期
                 strcmd += string.Format(",IntegratedCode = {0}", data.IntegratedCode);                          // 積算者
-                strcmd += string.Format(",DataCreateDate = DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')",
+                strcmd += string.Format(",DataCreateDate = STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')",
                                                                     data.DataCreateDate.ToShortDateString());   // データ引込日
                 strcmd += string.Format(",RetValue1 = {0}", data.RetValue1);                                    // 予定価格
                 strcmd += string.Format(",RetValue2 = {0}", data.RetValue2);                                    // 直接工事費
@@ -263,7 +263,7 @@
                 strcmd += string.Format(",RetValue4 = {0}", data.RetValue4);                                    // 積み上げ現場管理費
                 strcmd += string.Format(",RetPercent = {0}", data.RetPercent);                                  // 一般管理費率
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -317,19 +317,19 @@
             {
                 // データ取得
 
-                wrk.ConstructionCode = int.Parse(objwrk[(int)EstimateBudgetColumn.ConstructionCode].ToString());	        // 工事番号
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());	        // 工事番号
 
-                wrk.ConstructionTime = double.Parse(objwrk[(int)EstimateBudgetColumn.ConstructionTime].ToString());	        // 工期
-                wrk.IntegratedCode = int.Parse(objwrk[(int)EstimateBudgetColumn.IntegratedCode].ToString());                // 積算者
-                wrk.DataCreateDate = DateTime.Parse(objwrk[(int)EstimateBudgetColumn.DataCreateDate].ToString());           // 引込日
-                wrk.RetValue1 = double.Parse(objwrk[(int)EstimateBudgetColumn.RetValue1].ToString());	                    // 予定価格
-                wrk.RetValue2 = double.Parse(objwrk[(int)EstimateBudgetColumn.RetValue2].ToString());	                    // 直接工事費
-                wrk.RetValue3 = double.Parse(objwrk[(int)EstimateBudgetColumn.RetValue3].ToString());	                    // 積み上げ共通仮設費
-                wrk.RetValue4 = double.Parse(objwrk[(int)EstimateBudgetColumn.RetValue4].ToString());	                    // 積み上げ現場管理費
-                wrk.RetPercent = double.Parse(objwrk[(int)EstimateBudgetColumn.RetPercent].ToString());	                    // 一般管理費率
+                wrk.ConstructionTime = double.Parse(objwrk[(int)TableColumn.ConstructionTime].ToString());	        // 工期
+                wrk.IntegratedCode = int.Parse(objwrk[(int)TableColumn.IntegratedCode].ToString());                // 積算者
+                wrk.DataCreateDate = DateTime.Parse(objwrk[(int)TableColumn.DataCreateDate].ToString());           // 引込日
+                wrk.RetValue1 = double.Parse(objwrk[(int)TableColumn.RetValue1].ToString());	                    // 予定価格
+                wrk.RetValue2 = double.Parse(objwrk[(int)TableColumn.RetValue2].ToString());	                    // 直接工事費
+                wrk.RetValue3 = double.Parse(objwrk[(int)TableColumn.RetValue3].ToString());	                    // 積み上げ共通仮設費
+                wrk.RetValue4 = double.Parse(objwrk[(int)TableColumn.RetValue4].ToString());	                    // 積み上げ現場管理費
+                wrk.RetPercent = double.Parse(objwrk[(int)TableColumn.RetPercent].ToString());	                    // 一般管理費率
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)EstimateBudgetColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)EstimateBudgetColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
@@ -342,6 +342,65 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE EstimateBudget";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:	    // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ConstructionTime:	    // 工期
+                        strcmd += string.Format(" ConstructionTime = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.IntegratedCode:	    // 積算者
+                        strcmd += string.Format(" IntegratedCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.DataCreateDate:       // データ引込日
+                        strcmd += string.Format(" DataCreateDate = TO_DATE('{0}','YYYY/MM/DD')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.RetValue1:            // 予定価格
+                        strcmd += string.Format(" RetValue1 = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.RetValue2:            // 直接工事費
+                        strcmd += string.Format(" RetValue2 = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.RetValue3:            // 積み上げ共通仮設費
+                        strcmd += string.Format(" RetValue3 = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.RetValue4:            // 積み上げ現場管理費
+                        strcmd += string.Format(" RetValue4 = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.RetPercent:           // 一般管理費率
+                        strcmd += string.Format(" RetPercent = {0}", ((double)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(sysdate,'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region 主キー検索の文字列を返す
 
         /// <summary>
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateBudgetDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateBudgetDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateBudgetDetail.cs	(revision 51)
@@ -31,7 +31,7 @@
         /// <summary>
         /// 積算予算データ明細フィールド並び
         /// </summary>
-        public enum EstimateBudgetDetailColumn
+        public enum TableColumn
         {
             ConstructionCode = 0,	// 工事番号
 
@@ -91,7 +91,7 @@
         }
         #endregion
 
-        #region パブリックメソッド
+        #region 積算予算データ明細検索
         /// <summary>
         /// 積算予算データ明細検索
         /// </summary>
@@ -128,8 +128,12 @@
                 return false;
             }
         }
+        #endregion
 
         #region 1件データ読込処理
+        /// <summary>
+        /// 1件データ読込処理
+        /// </summary>
         public bool SelectAction(string AddSQLString, ref EstimateBudgetDetail data, bool bConnect = true)
         {
             //Oracle インターフェース
@@ -162,6 +166,7 @@
         }
         #endregion
 
+        #region 積算予算データ明細追加
         /// <summary>
         /// 積算予算データ明細追加
         /// </summary>
@@ -190,8 +195,8 @@
                 strcmd += string.Format(", {0}", work.NegotiationPrice);        // 交渉時金額
                 strcmd += string.Format(",'{0}'", work.Notes);                  // 注意事項
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -204,7 +209,9 @@
                 return false;
             }
         }
+        #endregion
 
+        #region 積算予算データ明細追加
         /// <summary>
         /// 積算予算データ明細追加
         /// </summary>
@@ -227,7 +234,9 @@
                 return false;
             }
         }
+        #endregion
 
+        #region 積算予算データ明細更新
         /// <summary>
         /// 積算予算データ明細更新
         /// </summary>
@@ -257,7 +266,7 @@
                 strcmd += string.Format(", NegotiationPrice = {0}", data.NegotiationPrice);         // 交渉時金額
                 strcmd += string.Format(", Notes = '{0}'", data.Notes);                             // 注意事項
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -270,8 +279,9 @@
                 return false;
             }
         }
+        #endregion
 
-
+        #region 積算予算データ明細削除
         /// <summary>
         /// 積算予算データ明細削除
         /// </summary>
@@ -296,8 +306,75 @@
                 return false;
             }
         }
+        #endregion
 
+        #region 1項目更新処理
         /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE EstimateBudgetDetail";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:     // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.GroupCount:           // グループ番号
+                        strcmd += string.Format(" GroupCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.LineCount:            // 行番号
+                        strcmd += string.Format(" LineCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ComponentCode:        // 構成キー
+                        strcmd += string.Format(" ComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ItemCode:		        // 工種キー
+                        strcmd += string.Format(" ItemCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CompanyCode:          // 協力会社コード
+                        strcmd += string.Format(" CompanyCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.FirstString:          // 構成名称
+                        strcmd += string.Format(" FirstString = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.SecondString:         // 工種名称・協力会社名
+                        strcmd += string.Format(" SecondString = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.EstimatePrice:        // 見積時金額
+                        strcmd += string.Format(" EstimatePrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.NegotiationPrice:     // 交渉時金額
+                        strcmd += string.Format(" NegotiationPrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.Notes:                // 注意事項
+                        strcmd += string.Format(" Notes = '{0}'", value.ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
         /// OracleDataReaderより構造体へセットする
         /// </summary>
         /// <param name="reader">OracleDataReader</param>
@@ -308,22 +385,22 @@
             {
                 // データ取得
 
-                wrk.ConstructionCode = int.Parse(objwrk[(int)EstimateBudgetDetailColumn.ConstructionCode].ToString());          // 工事番号
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());          // 工事番号
 
-                wrk.GroupCount = int.Parse(objwrk[(int)EstimateBudgetDetailColumn.GroupCount].ToString());	                    // グループ番号
-                wrk.LineCount = int.Parse(objwrk[(int)EstimateBudgetDetailColumn.LineCount].ToString());	                    // 行番号
-                wrk.ComponentCode = int.Parse(objwrk[(int)EstimateBudgetDetailColumn.ComponentCode].ToString());	            // 構成キー
-                wrk.ItemCode = int.Parse(objwrk[(int)EstimateBudgetDetailColumn.ItemCode].ToString());		                    // 工種キー
-                wrk.CompanyCode = int.Parse(objwrk[(int)EstimateBudgetDetailColumn.CompanyCode].ToString());	                // 協力会社コード
-                wrk.FirstString = objwrk[(int)EstimateBudgetDetailColumn.FirstString].ToString();	                            // 構成名称
-                wrk.SecondString = objwrk[(int)EstimateBudgetDetailColumn.SecondString].ToString();	                            // 工種名称・協力会社名
-                wrk.EstimatePrice = double.Parse(objwrk[(int)EstimateBudgetDetailColumn.EstimatePrice].ToString());	            // 見積時金額
-                wrk.NegotiationPrice = double.Parse(objwrk[(int)EstimateBudgetDetailColumn.NegotiationPrice].ToString());	    // 交渉時金額
+                wrk.GroupCount = int.Parse(objwrk[(int)TableColumn.GroupCount].ToString());	                    // グループ番号
+                wrk.LineCount = int.Parse(objwrk[(int)TableColumn.LineCount].ToString());	                    // 行番号
+                wrk.ComponentCode = int.Parse(objwrk[(int)TableColumn.ComponentCode].ToString());	            // 構成キー
+                wrk.ItemCode = int.Parse(objwrk[(int)TableColumn.ItemCode].ToString());		                    // 工種キー
+                wrk.CompanyCode = int.Parse(objwrk[(int)TableColumn.CompanyCode].ToString());	                // 協力会社コード
+                wrk.FirstString = objwrk[(int)TableColumn.FirstString].ToString();	                            // 構成名称
+                wrk.SecondString = objwrk[(int)TableColumn.SecondString].ToString();	                            // 工種名称・協力会社名
+                wrk.EstimatePrice = double.Parse(objwrk[(int)TableColumn.EstimatePrice].ToString());	            // 見積時金額
+                wrk.NegotiationPrice = double.Parse(objwrk[(int)TableColumn.NegotiationPrice].ToString());	    // 交渉時金額
 
-                wrk.Notes = objwrk[(int)EstimateBudgetDetailColumn.Notes].ToString();                                           // 注意事項
+                wrk.Notes = objwrk[(int)TableColumn.Notes].ToString();                                           // 注意事項
                 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)EstimateBudgetDetailColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)EstimateBudgetDetailColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
@@ -336,7 +413,7 @@
         }
         #endregion
 
-        #region パブリックメソッド（特殊処理）
+        #region 主キー検索の文字列を返す
         /// <summary>
         /// 主キー検索の文字列を返す
         /// </summary>
@@ -362,6 +439,9 @@
 
             return strWork;
         }
+        #endregion
+
+        #region 構造体クリア
         /// <summary>
         /// 構造体クリア
         /// </summary>
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateData.cs	(revision 51)
@@ -179,8 +179,8 @@
                 strcmd += string.Format(", {0}", work.MyExpensesFlg);           // 自社経費フラグ
                 strcmd += string.Format(", {0}", work.InputFlg);                // 入力フラグ
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -244,7 +244,7 @@
                 strcmd += string.Format(", MyExpensesFlg = {0}", data.MyExpensesFlg);       // 自社経費フラグ
                 strcmd += string.Format(", InputFlg = {0}", data.InputFlg);                 // 入力フラグ
                 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -286,6 +286,68 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE EstimateData";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:     // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.LineCount:            // 行番号
+                        strcmd += string.Format(" LineCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ComponentCode:        // 構成キー
+                        strcmd += string.Format(" ComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.FixedItemCode:        // 固定項目キー
+                        strcmd += string.Format(" FixedItemCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ItemName:             // 作業名称
+                        strcmd += string.Format(" ItemName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.WorkName:             // 品質・形状・寸法
+                        strcmd += string.Format(" WorkName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.PriceValue:           // 金額
+                        strcmd += string.Format(" PriceValue = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.Note:                 // 備考
+                        strcmd += string.Format(" Note = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.MyExpensesFlg:
+                        strcmd += string.Format(" MyExpensesFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.InputFlg:
+                        strcmd += string.Format(" InputFlg = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region データセット処理
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -320,8 +382,40 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(2), ex.Message);
             }
         }
+        #endregion
 
-
+        #region データクリア処理
+        /// <summary>
+        /// データクリア処理
+        /// </summary>
+        /// <param name="wrk">構造体</param>
+        public void ClearStruct(ref EstimateData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.ConstructionCode = 0;           // 工事番号
+                wrk.LineCount = 0;                  // 行番号
+                wrk.ComponentCode = 0;              // 構成キー
+                wrk.FixedItemCode = string.Empty;	// 固定項目キー
+                wrk.ItemName = string.Empty;      	// 作業名称
+                wrk.WorkName = string.Empty;      	// 品質・形状・寸法
+                wrk.PriceValue = 0;                 // 金額
+                wrk.Note = string.Empty;			// 備考
+                wrk.MyExpensesFlg = 0;              // 自社経費フラグ
+                wrk.InputFlg = 0;                   // 入力フラグ
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            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 最大値取得処理
@@ -410,8 +504,8 @@
                 // SQL実行
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
 
-                //strcmd = "UPDATE EstimateData SET EntryDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                //strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                //strcmd = "UPDATE EstimateData SET EntryDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                //strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
                 //strcmd += CreatePrimarykeyString(FromCode);
 
                 //// SQL実行
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateDataBody.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateDataBody.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateDataBody.cs	(revision 51)
@@ -180,8 +180,8 @@
                 strcmd += string.Format(",'{0}'", work.PageTitle);	        // ページ表示名
                 strcmd += string.Format(", {0}", work.DetailLineCount);     // 明細行番号
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -249,7 +249,7 @@
                 strcmd += string.Format(",PageTitle ='{0}'", data.PageTitle);                // ページ表示名
                 strcmd += string.Format(",DetailLineCount = {0}", data.DetailLineCount);    // 明細行番号
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -291,6 +291,65 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE EstimateDataBody";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:     // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PageCount:		    // ページ番号
+                        strcmd += string.Format(" PageCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.Category:             // 頁区分
+                        strcmd += string.Format(" Category = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.UnionComponentCode:	// 所属構成キー
+                        strcmd += string.Format(" UnionComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ComponentCode:		// 構成キー
+                        strcmd += string.Format(" ComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ItemCode:		        // 工種キー
+                        strcmd += string.Format(" ItemCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.SelectComponent:		// 選択構成キー
+                        strcmd += string.Format(" SelectComponent = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PageTitle:            // ページ表示名
+                        strcmd += string.Format(" PageTitle = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.DetailLineCount:      // 明細行番号
+                        strcmd += string.Format(" DetailLineCount = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region データセット処理
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -327,6 +386,41 @@
         }
         #endregion
 
+        #region データクリア処理
+        /// <summary>
+        /// データクリア処理
+        /// </summary>
+        /// <param name="wrk">構造体</param>
+        public void ClearStruct(ref EstimateDataBody wrk)
+        {
+            try
+            {
+                // データ取得
+
+                wrk.ConstructionCode = 0;       // 工事番号
+                wrk.PageCount = 0;              // ページ番号
+                wrk.Category = 0;               // ページ区分
+                wrk.UnionComponentCode = 0;     // 所属構成キー
+                wrk.ComponentCode = 0;          // 構成キー
+                wrk.ItemCode = 0;               // 工種キー
+                wrk.SelectComponent = 0;        // 選択構成キー
+                wrk.PageTitle = string.Empty;   // ページ表示名
+                wrk.DetailLineCount = 0;        // 選択構成キー
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            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>
         /// 主キー検索の文字列を返す
@@ -375,8 +469,8 @@
                 // SQL実行
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
 
-                //strcmd = "UPDATE EstimateDataBody SET EntryDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                //strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                //strcmd = "UPDATE EstimateDataBody SET EntryDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                //strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
                 //strcmd += CreatePrimarykeyString(FromCode);
 
                 //// SQL実行
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateDataDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOEstimateDataDetail.cs	(revision 51)
@@ -209,8 +209,8 @@
                     strcmd += string.Format(", {0}", work.MyExpensesFlg);       // 自社経費フラグ
                     strcmd += string.Format(", {0}", work.InputFlg);            // 入力フラグ
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -287,7 +287,7 @@
                 strcmd += string.Format(",MyExpensesFlg = {0}", data.MyExpensesFlg);        // 自社経費フラグ
                 strcmd += string.Format(",InputFlg = {0}", data.InputFlg);                  // 入力フラグ
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -329,6 +329,89 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE EstimateDataDetail";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:	// 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PageCount:		        // ページ番号
+                        strcmd += string.Format(" PageCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.LineCount:		        // 行番号
+                        strcmd += string.Format(" LineCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.DataType:               // データタイプ
+                        strcmd += string.Format(" DataType = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ComponentCode:		    // 構成キー
+                        strcmd += string.Format(" ComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ItemCode:		        // 工種キー
+                        strcmd += string.Format(" ItemCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.SpecCode:		        // 規格・寸法キー
+                        strcmd += string.Format(" SpecCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ItemName:		        // 作業名称
+                        strcmd += string.Format(" ItemName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.SpecName:		        // 作業／品質・形状・寸法
+                        strcmd += string.Format(" SpecName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.UnitCount:		        // 数量
+                        strcmd += string.Format(" UnitCount = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.UnitName:		        // 単位
+                        strcmd += string.Format(" UnitName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.UnitPrice:		        // 単価
+                        strcmd += string.Format(" UnitPrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.LineTotal:		        // 金額
+                        strcmd += string.Format(" LineTotal = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.Note:			        // 備考
+                        strcmd += string.Format(" Note = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.CompanyCode:            // 協力会社コード
+                        strcmd += string.Format(" CompanyCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.MyExpensesFlg:
+                        strcmd += string.Format(" MyExpensesFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.InputFlg:
+                        strcmd += string.Format(" InputFlg = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region データセット処理
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -373,6 +456,49 @@
         }
         #endregion
 
+        #region データクリア処理
+        /// <summary>
+        /// データクリア処理
+        /// </summary>
+        /// <param name="wrk">構造体</param>
+        public void ClearStruct(ref EstimateDataDetail wrk)
+        {
+            try
+            {
+                // データ取得
+
+                wrk.ConstructionCode = 0;       // 工事番号
+                wrk.PageCount = 0;		        // ページ番号
+                wrk.LineCount = 0;		        // 行番号
+                wrk.DataType = 0;	            // データタイプ
+                wrk.ComponentCode = 0;	        // 構成キー（行）
+                wrk.ItemCode = 0;		        // 工種キー
+                wrk.SpecCode = 0;		        // 規格・寸法キー
+                wrk.ItemName = string.Empty;    // 作業名称
+                wrk.SpecName = string.Empty;	// 作業／品質・形状・寸法
+                wrk.UnitCount = 0;		        // 数量
+                wrk.UnitName = string.Empty;    // 単位
+                wrk.UnitPrice = 0;		        // 単価
+                wrk.LineTotal = 0;		        // 金額
+                wrk.Note = string.Empty;		// 備考
+                wrk.CompanyCode = 0;		    // 協力会社コード
+                wrk.MyExpensesFlg = 0;          // 自社経費フラグ
+                wrk.InputFlg = 0;               // 入力フラグ
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            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>
         /// 工事コードの最大値を取得する
@@ -462,8 +588,8 @@
                 // SQL実行
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
 
-                //strcmd = "UPDATE EstimateDataDetail SET EntryDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                //strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                //strcmd = "UPDATE EstimateDataDetail SET EntryDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                //strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
                 //strcmd += CreatePrimarykeyString(FromCode);
 
                 //// SQL実行
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOInputSearchLogData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOInputSearchLogData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOInputSearchLogData.cs	(revision 51)
@@ -139,7 +139,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -167,7 +167,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -203,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -241,7 +241,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -268,7 +268,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -293,11 +293,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMApproval.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMApproval.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMApproval.cs	(revision 51)
@@ -99,7 +99,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -124,7 +124,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -145,8 +145,8 @@
                     strcmd += string.Format(", {0}", data.ApprovalPerson.ToString());
                     strcmd += string.Format(", {0}", data.ApprovalAuthority.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -155,7 +155,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -183,7 +183,7 @@
                 strcmd += string.Format(",ApprovalPerson = {0}", data.ApprovalPerson.ToString());
                 strcmd += string.Format(",ApprovalAuthority = {0}", data.ApprovalAuthority.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -192,7 +192,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -218,7 +218,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -249,7 +249,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
@@ -262,15 +262,15 @@
         /// </summary>
         /// <param name="BusinessTypeCode"></param>
         /// <returns>Where文字列</returns>
-        public string CreatePrimarykeyString(int ApprovalCode, int DepartmentCode = 0, int SeqNo = 0)
+        public string CreatePrimarykeyString(int ApprovalCode, int DepartmentCode = -1, int SeqNo = -1)
         {
             string strWork = string.Empty;
             try
             {
                 strWork = string.Format(" Where ApprovalCode = {0}", ApprovalCode.ToString());
-                if (DepartmentCode!=0)
+                if (DepartmentCode != -1)
                     strWork += string.Format(" And DepartmentCode = {0}", DepartmentCode.ToString());
-                if (SeqNo != 0)
+                if (SeqNo != -1)
                     strWork += string.Format(" And SeqNo = {0}", SeqNo.ToString());
 
             }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMBusinessType.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMBusinessType.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMBusinessType.cs	(revision 51)
@@ -91,7 +91,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -118,8 +118,8 @@
                     strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
                     strcmd += string.Format(", '{0}'", work.BusinessTypeName);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -128,7 +128,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -153,7 +153,7 @@
                 strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
                 strcmd += string.Format(",BusinessTypeName = '{0}'", data.BusinessTypeName);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -162,7 +162,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -188,7 +188,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -216,7 +216,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCategoryName.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCategoryName.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCategoryName.cs	(revision 51)
@@ -5,9 +5,9 @@
 using System.Collections;
 
 using log4net;
-using Oracle.ManagedDataAccess.Client;
+using MySql.Data.MySqlClient;
 
-using ProcessManagement.DB.Oracle;
+using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
 using ProcessManagement.DataModel;
 
@@ -18,7 +18,7 @@
     /// <summary>
     /// カテゴリ名称マスタアクセスクラス
     /// </summary>
-    public class IOMCategoryName : OracleProcess
+    public class IOMCategoryName : MySqlProcess
     {
         #region 定義部
         /// <summary>
@@ -79,8 +79,8 @@
                 strcmd += " ,CategoryName";
                 strcmd += " ,DeleteFlg";
 
-                strcmd += " ,TO_CHAR(EntryDate, 'YYYY/MM/DD HH24:MI:ss')";
-                strcmd += " ,TO_CHAR(UpdateDate, 'YYYY/MM/DD HH24:MI:ss')";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
                 strcmd += " FROM CategoryNameMaster";
                 strcmd += AddSQLString;
 
@@ -128,8 +128,8 @@
                     strcmd += string.Format(",'{0}'", work.CategoryName.ToString());
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
-                    strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -165,7 +165,7 @@
                 strcmd += string.Format(",CategoryName ='{0}'", data.CategoryName.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -259,9 +259,9 @@
                 wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
                 wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
             }
-            catch (OracleException oraex)
+            catch (MySqlException myex)
             {
-                logger.ErrorFormat("オラクルエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostLarge.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostLarge.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostLarge.cs	(revision 51)
@@ -103,7 +103,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -134,7 +134,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -163,8 +163,8 @@
                     strcmd += string.Format(", '{0}'", work.CommentText);
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -173,7 +173,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -200,7 +200,7 @@
                 strcmd += string.Format(",CommentText = '{0}'", data.CommentText);
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -209,7 +209,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -235,7 +235,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -272,7 +272,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -301,7 +301,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostLinkMS.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostLinkMS.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostLinkMS.cs	(revision 51)
@@ -99,7 +99,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -131,7 +131,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -157,8 +157,8 @@
                 strcmd += string.Format(", {0}", work.MiddleCode.ToString());
                 strcmd += string.Format(", {0}", work.ItemCode.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -167,7 +167,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -190,7 +190,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -217,7 +217,7 @@
                 strcmd += string.Format(",MiddleCode = {0}", data.MiddleCode.ToString());
                 strcmd += string.Format(",ItemCode = {0}", data.ItemCode.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -226,7 +226,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -253,7 +253,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -283,7 +283,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostMiddle.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostMiddle.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostMiddle.cs	(revision 51)
@@ -105,7 +105,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -136,7 +136,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -166,8 +166,8 @@
                     strcmd += string.Format(", '{0}'", work.CommentText);
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -176,7 +176,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -204,7 +204,7 @@
                 strcmd += string.Format(",CommentText = '{0}'", data.CommentText);
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -213,7 +213,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -239,7 +239,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -276,7 +276,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -306,7 +306,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostMiddleSearchWord.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostMiddleSearchWord.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMCommonCostMiddleSearchWord.cs	(revision 51)
@@ -101,7 +101,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -132,7 +132,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -158,8 +158,8 @@
                 strcmd += string.Format(", {0}", work.SeqNo.ToString());
                 strcmd += string.Format(", '{0}'", work.SearchWord);
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -168,7 +168,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -192,7 +192,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -218,7 +218,7 @@
                 strcmd += string.Format(",SeqNo = {0}", data.SeqNo.ToString());
                 strcmd += string.Format(",SearchWord = '{0}'", data.SearchWord);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -227,7 +227,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -253,7 +253,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -282,7 +282,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponent.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponent.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponent.cs	(revision 51)
@@ -57,9 +57,9 @@
 
         #endregion
 
-        #region パブリックメソッド
+        #region 工事構成マスタ検索文字作成
         /// <summary>
-        /// 工事構成マスタ検索
+        /// 工事構成マスタ検索文字作成
         /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
         /// <param name="data">工事構成マスタデータ</param>
@@ -81,6 +81,16 @@
 
             return strcmd;
         }
+        #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<ComponentMaster> data, bool bConnect = true)
         {
             //Oracle インターフェース
@@ -107,11 +117,21 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 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 ComponentMaster data, bool bConnect = true)
         {
             //Oracle インターフェース
@@ -138,52 +158,80 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
         }
+        #endregion
 
+        #region 工事構成マスタ追加（1件）
         /// <summary>
-        /// 工事構成マスタ追加
+        /// 工事構成マスタ追加（1件）
         /// </summary>
         /// <param name="data">工事構成マスタデータ</param>
         /// <returns>true：成功 false：失敗</returns>
-        public bool InsertAction(List<ComponentMaster> data, bool bConnect = true)
+        public bool InsertAction(ComponentMaster data, bool bConnect = true)
         {
             string strcmd = "";
             try
             {
 
-                foreach (ComponentMaster work in data)
-                {
-                    strcmd = "INSERT INTO ComponentMaster";
+                strcmd = "INSERT INTO ComponentMaster";
 
-                    strcmd += " VALUES (";
+                strcmd += " VALUES (";
 
-                    strcmd += string.Format("  {0}", work.ComponentCode.ToString());
-                    strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
-                    strcmd += string.Format(", '{0}'", work.ComponentName);
-                    strcmd += string.Format(", {0}", work.SubitemsFlg.ToString());
-                    strcmd += string.Format(", {0}", work.DirectInputFlg.ToString());
-                    strcmd += string.Format(", {0}", work.MyExpensesFlg.ToString());
-                    strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
+                strcmd += string.Format("  {0}", data.ComponentCode.ToString());
+                strcmd += string.Format(", {0}", data.DisplayOrder.ToString());
+                strcmd += string.Format(", '{0}'", data.ComponentName);
+                strcmd += string.Format(", {0}", data.SubitemsFlg.ToString());
+                strcmd += string.Format(", {0}", data.DirectInputFlg.ToString());
+                strcmd += string.Format(", {0}", data.MyExpensesFlg.ToString());
+                strcmd += string.Format(", {0}", data.DeleteFlg.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd = strcmd + ")";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
 
-                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 工事構成マスタ追加（複数）
+        /// <summary>
+        /// 工事構成マスタ追加（複数）
+        /// </summary>
+        /// <param name="data">工事構成マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<ComponentMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (ComponentMaster work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
                 }
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
+        #region 工事構成マスタ更新
         /// <summary>
         /// 工事構成マスタ更新
         /// </summary>
@@ -208,7 +256,7 @@
                 strcmd += string.Format(",MyExpensesFlg = {0}", data.MyExpensesFlg.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -217,12 +265,13 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
-
+        #region 工事構成マスタ削除
         /// <summary>
         /// 工事構成マスタ削除
         /// </summary>
@@ -243,11 +292,13 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
+        #region 論理削除
         /// <summary>
         /// 論理削除
         /// </summary>
@@ -280,10 +331,13 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
         /// </summary>
@@ -311,14 +365,44 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 構造体をクリアする
+        /// <summary>
+        /// 構造体をクリアする
+        /// </summary>
+        /// <param name="wrk">構造体</param>
+        public void ClearStruct(ref ComponentMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.ComponentCode = 0;
+                wrk.DisplayOrder = 0;
+                wrk.ComponentName = string.Empty;
+                wrk.SubitemsFlg = 0;
+                wrk.DirectInputFlg = 0;
+                wrk.MyExpensesFlg = 0;
+                wrk.DeleteFlg = 0;
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
         #endregion
 
-        #region パブリックメソッド（特殊処理）
-
+        #region 最大値を取得する
         /// <summary>
         /// 最大値を取得する
         /// </summary>
@@ -355,7 +439,9 @@
 
             return iRet;
         }
+        #endregion
 
+        #region 主キー検索の文字列を返す
         /// <summary>
         /// 主キー検索の文字列を返す
         /// </summary>
@@ -420,7 +506,7 @@
                         break;
                 }
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += CreatePrimarykeyString(ComponentCode);
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentLink.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentLink.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentLink.cs	(revision 51)
@@ -99,7 +99,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -131,7 +131,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -157,8 +157,8 @@
                 strcmd += string.Format(", {0}", work.ItemCode.ToString());
                 strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -167,7 +167,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -190,7 +190,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -217,7 +217,7 @@
                 strcmd += string.Format(",ItemCode = {0}", data.ItemCode.ToString());
                 strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -226,7 +226,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -253,7 +253,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -283,7 +283,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentToTypeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentToTypeMaster.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMComponentToTypeMaster.cs	(revision 51)
@@ -109,7 +109,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -151,7 +151,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -176,8 +176,8 @@
                 strcmd += string.Format("  {0}", work.ComponentCode.ToString());
                 strcmd += string.Format(", {0}", work.TypeCode.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -186,7 +186,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -212,7 +212,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -238,7 +238,7 @@
                 strcmd += string.Format(" ComponentCode = {0}", data.ComponentCode.ToString());
                 strcmd += string.Format(",ItemCode = {0}", data.TypeCode.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -247,7 +247,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -274,7 +274,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -303,7 +303,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionItem.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionItem.cs	(revision 51)
@@ -105,7 +105,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -137,7 +137,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -166,8 +166,8 @@
                 strcmd += string.Format(", {0}", work.MyExpensesFlg.ToString());
                 strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -176,7 +176,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -198,7 +198,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -228,7 +228,7 @@
                 strcmd += string.Format(",MyExpensesFlg = {0}", data.MyExpensesFlg.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -237,7 +237,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -264,7 +264,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -301,7 +301,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -334,7 +334,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionItemOLD.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionItemOLD.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionItemOLD.cs	(revision 51)
@@ -5,9 +5,9 @@
 using System.Collections;
 
 using log4net;
-using Oracle.ManagedDataAccess.Client;
+using MySql.Data.MySqlClient;
 
-using ProcessManagement.DB.Oracle;
+using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
 using ProcessManagement.DataModel;
 
@@ -18,7 +18,7 @@
     /// <summary>
     /// 工事項目マスタアクセスクラス
     /// </summary>
-    public class IOMConstructionItemOLD : OracleProcess
+    public class IOMConstructionItemOLD : MySqlProcess
     {
         #region 定義部
         /// <summary>
@@ -73,8 +73,8 @@
             strcmd += " ,ItemName";
             strcmd += " ,SubitemsFlg";
             strcmd += " ,DeleteFlg";
-            strcmd += " ,TO_CHAR(EntryDate, 'YYYY/MM/DD HH24:MI:ss')";
-            strcmd += " ,TO_CHAR(UpdateDate, 'YYYY/MM/DD HH24:MI:ss')";
+            strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += " FROM ConstructionItemMaster_OLD";
 
             return strcmd;
@@ -167,8 +167,8 @@
                     strcmd += string.Format(", {0}", work.SubitemsFlg.ToString());
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
-                    strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -205,7 +205,7 @@
                 strcmd += string.Format(",SubitemsFlg = {0}", data.SubitemsFlg.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -301,9 +301,9 @@
                 wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
                 wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
             }
-            catch (OracleException oraex)
+            catch (MySqlException myex)
             {
-                logger.ErrorFormat("オラクルエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionSpec.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionSpec.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionSpec.cs	(revision 51)
@@ -141,7 +141,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -171,8 +171,8 @@
                 strcmd += string.Format(",{0}", work.UnitPrice);
                 strcmd += string.Format(",{0}", work.DeleteFlg);
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -236,7 +236,7 @@
                 strcmd += string.Format(",UnitPrice = {0}", data.UnitPrice);
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -308,7 +308,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionSpecUnitPrice.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionSpecUnitPrice.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionSpecUnitPrice.cs	(revision 51)
@@ -175,8 +175,8 @@
 
                     strcmd += string.Format(",{0}", data.UnitPrice);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -232,7 +232,7 @@
 
                 strcmd += string.Format(",UnitPrice = {0}", data.UnitPrice);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionTypeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionTypeMaster.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionTypeMaster.cs	(revision 51)
@@ -104,7 +104,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -135,7 +135,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -164,8 +164,8 @@
                 strcmd += string.Format(", {0}", work.PublicFlg.ToString());
                 strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -174,7 +174,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -192,7 +192,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -221,7 +221,7 @@
                 strcmd += string.Format(",PublicFlg = {0}", data.PublicFlg.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -230,7 +230,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -257,7 +257,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -292,7 +292,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -320,11 +320,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionWork.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionWork.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMConstructionWork.cs	(revision 51)
@@ -6,9 +6,9 @@
 using System.Collections;
 
 using log4net;
-using Oracle.ManagedDataAccess.Client;
+using MySql.Data.MySqlClient;
 
-using ProcessManagement.DB.Oracle;
+using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
 using ProcessManagement.DataModel;
 using ProcessManagement.Common;
@@ -18,7 +18,7 @@
     /// <summary>
     /// 施工工種マスタＤＢアクセス
     /// </summary>
-    public class IOMConstructionWork : OracleProcess
+    public class IOMConstructionWork : MySqlProcess
     {
         #region 定義部
         /// <summary>
@@ -87,8 +87,8 @@
                 strcmd += ", UnitPrice";
                 strcmd += ", DeleteFlg";
 
-                strcmd += ", TO_CHAR(EntryDate, 'YYYY/MM/DD HH24:MI:ss')";
-                strcmd += ", TO_CHAR(UpdateDate, 'YYYY/MM/DD HH24:MI:ss')";
+                strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
                 strcmd += " FROM ConstructionWorkMaster";
                 strcmd += AddSQLString;
 
@@ -140,8 +140,8 @@
                     strcmd += string.Format(",{0}", work.UnitPrice);
                     strcmd += string.Format(",{0}", work.DeleteFlg);
 
-                    strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
-                    strcmd += ", TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -182,7 +182,7 @@
                 strcmd += string.Format(",UnitPrice = {0}", data.UnitPrice);
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg);
 
-                strcmd += ", UpdateDate = TO_DATE(TO_CHAR(sysdate,'YYYY/MM/DD HH24:MI:SS'),'YYYY/MM/DD HH24:MI:SS')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -284,9 +284,9 @@
                 wrk.EntryDate = DateTime.Parse(objwrk[(int)ConstructionWorkMasterColumn.EntryDate].ToString());
                 wrk.UpdateDate = DateTime.Parse(objwrk[(int)ConstructionWorkMasterColumn.UpdateDate].ToString());
             }
-            catch (OracleException oraex)
+            catch (MySqlException myex)
             {
-                logger.ErrorFormat("オラクルエラー：{0}：{1}", CommonMotions.GetMethodName(2), oraex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDepartment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDepartment.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDepartment.cs	(revision 51)
@@ -114,7 +114,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -154,7 +154,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -186,8 +186,8 @@
                     strcmd += string.Format(", {0}", work.StaffAssignFlg.ToString());
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -196,7 +196,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -226,7 +226,7 @@
                 strcmd += string.Format(",StaffAssignFlg = {0}", data.StaffAssignFlg.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -235,7 +235,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -262,7 +262,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -299,7 +299,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -328,11 +328,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -359,11 +359,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDepartmentExpenses.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDepartmentExpenses.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDepartmentExpenses.cs	(revision 51)
@@ -140,7 +140,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -181,7 +181,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -219,8 +219,8 @@
                 strcmd += string.Format(", {0}", data.ExpensesRatio.ToString());
                 strcmd += string.Format(", {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -229,7 +229,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -255,7 +255,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -285,7 +285,7 @@
                 strcmd += string.Format(",ExpensesRatio = {0}", data.ExpensesRatio.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -294,7 +294,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -321,7 +321,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -358,7 +358,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -387,11 +387,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDivision.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDivision.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMDivision.cs	(revision 51)
@@ -104,7 +104,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -135,7 +135,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -164,8 +164,8 @@
                     strcmd += string.Format(",'{0}'", work.NameString.ToString());
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -174,7 +174,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -201,7 +201,7 @@
                 strcmd += string.Format(",NameString = '{0}'", data.NameString.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -210,7 +210,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -236,7 +236,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -271,7 +271,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -296,11 +296,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMExpenses.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMExpenses.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMExpenses.cs	(revision 51)
@@ -104,7 +104,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -135,7 +135,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -164,8 +164,8 @@
                     strcmd += string.Format(", {0}", work.ExpensesRatio.ToString());
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -174,7 +174,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -201,7 +201,7 @@
                 strcmd += string.Format(",ExpensesRatio = {0}", data.ExpensesRatio.ToString());
                 strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -210,7 +210,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -236,7 +236,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -271,7 +271,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWhere);
                 return false;
             }
         }
@@ -296,11 +296,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMHolidayCalender.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMHolidayCalender.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMHolidayCalender.cs	(revision 51)
@@ -103,7 +103,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -173,7 +173,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -209,7 +209,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -236,7 +236,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -260,11 +260,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMOrderers.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMOrderers.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMOrderers.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -193,8 +193,8 @@
                     strcmd += ", '" + work.Note + "'";
                     strcmd += string.Format(", {0}", work.DeleteFlg);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -240,7 +240,7 @@
                 strcmd += " ,Note = '" + data.Note + "'";
                 strcmd += string.Format(" ,DeleteFlg = {0}", data.DeleteFlg);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonDepartment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonDepartment.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonDepartment.cs	(revision 51)
@@ -0,0 +1,358 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// 担当者対象部署マスタＤＢアクセス
+    /// </summary>
+    public class IOMPersonDepartment : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 担当者対象部署マスタフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            PersonCode = 0,
+            DepartmentCode,
+            AffiliationFlg,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMPersonDepartment()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region 担当者対象部署マスタ検索文字列作成
+        /// <summary>
+        /// 担当者対象部署マスタ検索文字列作成
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">担当者対象部署マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        private string CreateSelectSQL()
+        {
+            string strcmd = "SELECT";
+            strcmd += "  PersonCode";
+            strcmd += ", DepartmentCode";
+
+            strcmd += ", AffiliationFlg";
+
+            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM PersonDepartmentMaster";
+
+            return strcmd;
+        }
+        #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<PersonDepartmentMaster> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    PersonDepartmentMaster work = new PersonDepartmentMaster();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者対象部署マスタ１件検索
+        /// <summary>
+        /// 担当者対象部署マスタ１件検索
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref PersonDepartmentMaster data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // データセット
+                object[] objwrk = (object[])arData[0];
+                Reader2Struct(objwrk, ref data);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者対象部署マスタ追加
+        /// <summary>
+        /// 担当者対象部署マスタ追加
+        /// </summary>
+        /// <param name="data">担当者対象部署マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(PersonDepartmentMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO PersonDepartmentMaster";
+
+                strcmd += " (PersonCode";
+                strcmd += ", DepartmentCode";
+
+                strcmd += ", AffiliationFlg";
+
+                strcmd += ", EntryDate";
+                strcmd += ", UpdateDate)";
+
+                strcmd += " VALUES (";
+
+                strcmd += string.Format("  {0}", data.PersonCode);
+                strcmd += string.Format(", {0}", data.DepartmentCode);
+
+                strcmd += string.Format(", {0}", data.AffiliationFlg.ToString());
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者対象部署マスタ追加
+        /// <summary>
+        /// 担当者対象部署マスタ追加
+        /// </summary>
+        /// <param name="data">担当者対象部署マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<PersonDepartmentMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                foreach (PersonDepartmentMaster work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者対象部署マスタ更新
+        /// <summary>
+        /// 担当者対象部署マスタ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">担当者対象部署マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, PersonDepartmentMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE PersonDepartmentMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format("  PersonCode = {0}", data.PersonCode.ToString());
+                strcmd += string.Format(", DepartmentCode = {0}", data.DepartmentCode.ToString());
+
+                strcmd += string.Format(", AffiliationFlg = {0}", data.AffiliationFlg);
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM PersonDepartmentMaster", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref PersonDepartmentMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.PersonCode = int.Parse(objwrk[(int)NameColumn.PersonCode].ToString());
+                wrk.DepartmentCode = int.Parse(objwrk[(int)NameColumn.DepartmentCode].ToString());
+
+                wrk.AffiliationFlg = int.Parse(objwrk[(int)NameColumn.AffiliationFlg].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(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 構造体クリア
+        /// <summary>
+        /// 構造体クリア
+        /// </summary>
+        /// <param name="wrk"></param>
+        public void ClearStruct(ref PersonDepartmentMaster wrk)
+        {
+            wrk.PersonCode = 0;                     // 担当者コード
+            wrk.DepartmentCode = 0;                 // 部署コード
+
+            wrk.AffiliationFlg = 0;                 // 所属フラグ
+            wrk.EntryDate = DateTime.MinValue;      // 登録日付
+            wrk.UpdateDate = DateTime.MinValue;     // 更新日付
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="ItemCode">大工種キー</param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int PersonCode, int DepartmentCode = 0)
+        {
+            string strWork = "";
+            try
+            {
+                strWork = string.Format(" Where PersonCode = {0}", PersonCode);
+                if (DepartmentCode != 0)
+                    strWork += string.Format(" And DepartmentCode = {0}", DepartmentCode);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonInCharge.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonInCharge.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonInCharge.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -32,7 +32,7 @@
         /// <summary>
         /// 担当者マスタフィールド並び
         /// </summary>
-        public enum NameColumn
+        public enum ColumnCnt
         {
             PersonCode = 0,
             DisplayOrder,
@@ -41,6 +41,7 @@
             EndDate,
             PassWord,
             SecurityManagement,
+            SecCode,
             MsgBackColor,
             DisplayString,
             DepartmentCode,
@@ -86,6 +87,7 @@
             strcmd += ", DATE_FORMAT(EndDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += ", PassWord";
             strcmd += ", SecurityManagement";
+            strcmd += ", SecCode";
             strcmd += ", MsgBackColor";
             strcmd += ", DisplayString";
             strcmd += ", DepartmentCode";
@@ -206,6 +208,7 @@
                     strcmd += ", EndDate";
                     strcmd += ", PassWord";
                     strcmd += ", SecurityManagement";
+                    strcmd += ", SecCode";
                     strcmd += ", MsgBackColor";
                     strcmd += ", DisplayString";
                     strcmd += ", DepartmentCode";
@@ -225,10 +228,11 @@
                     strcmd += string.Format("  {0}", work.PersonCode);
                     strcmd += string.Format(", {0}", work.DisplayOrder);
                     strcmd += string.Format(", '{0}'", work.PersonName);
-                    strcmd += string.Format(", DATE_FORMAT('{0}' ,'%Y/%m/%d')", work.StartDate.ToShortDateString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}' ,'%Y/%m/%d')", work.EndDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}' ,'%Y/%m/%d')", work.StartDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}' ,'%Y/%m/%d')", work.EndDate.ToShortDateString());
                     strcmd += string.Format(", '{0}'", work.PassWord);
                     strcmd += string.Format(", {0}", work.SecurityManagement);
+                    strcmd += string.Format(", {0}", work.SecCode);
                     strcmd += string.Format(", '{0}'", work.MsgBackColor);
                     strcmd += string.Format(", '{0}'", work.DisplayString);
                     strcmd += string.Format(", {0}", work.DepartmentCode);
@@ -240,8 +244,8 @@
                     strcmd += string.Format(", {0}", work.LedgerFlg);
 
                     strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -276,10 +280,11 @@
                 strcmd += string.Format("  PersonCode = {0}", data.PersonCode.ToString());
                 strcmd += string.Format(", DisplayOrder = {0}", data.DisplayOrder.ToString());
                 strcmd += string.Format(", PersonName = '{0}'", data.PersonName);
-                strcmd += string.Format(", StartDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.StartDate.ToShortDateString());
-                strcmd += string.Format(", EndDate = DATE_FORMAT('{0}','%Y/%m/%d')",data.EndDate.ToShortDateString());
+                strcmd += string.Format(", StartDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.StartDate.ToShortDateString());
+                strcmd += string.Format(", EndDate = STR_TO_DATE('{0}','%Y/%m/%d')",data.EndDate.ToShortDateString());
                 strcmd += string.Format(", PassWord = '{0}'", data.PassWord);
                 strcmd += string.Format(", SecurityManagement = {0}", data.SecurityManagement.ToString());
+                strcmd += string.Format(", SecCode = {0}", data.SecCode.ToString());
                 strcmd += string.Format(", MsgBackColor = '{0}'", data.MsgBackColor);
                 strcmd += string.Format(", DisplayString = '{0}'", data.DisplayString);
                 strcmd += string.Format(", DepartmentCode = {0}", data.DepartmentCode.ToString());
@@ -291,7 +296,7 @@
                 strcmd += string.Format(", LedgerFlg = {0}", data.LedgerFlg);
                 
                 strcmd += string.Format(", DeleteFlg = {0}", data.DeleteFlg);
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -333,6 +338,96 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <param name="PersonCode"></param>
+        /// <param name="FeildNo"></param>
+        /// <param name="value"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateFeild(int PersonCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE PersonInChargeMaster";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)ColumnCnt.PersonCode:
+                        strcmd += string.Format(" PersonCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnCnt.DisplayOrder:
+                        strcmd += string.Format(" DisplayOrder = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnCnt.PersonName:
+                        strcmd += string.Format(" PersonName = '{0}'", value.ToString());
+                        break;
+                    case (int)ColumnCnt.StartDate:
+                        strcmd += string.Format(" StartDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)ColumnCnt.EndDate:
+                        strcmd += string.Format(" EndDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)ColumnCnt.PassWord:
+                        strcmd += string.Format(" PassWord = '{0}'", value.ToString());
+                        break;
+                    case (int)ColumnCnt.SecurityManagement:
+                        strcmd += string.Format(" SecurityManagement = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnCnt.SecCode:
+                        strcmd += string.Format(" SecCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnCnt.MsgBackColor:
+                        strcmd += string.Format(" MsgBackColor = '{0}'", value.ToString());
+                        break;
+                    case (int)ColumnCnt.DisplayString:
+                        strcmd += string.Format(" DisplayString = '{0}'", value.ToString());
+                        break;
+                    case (int)ColumnCnt.DepartmentCode:
+                        strcmd += string.Format(" DepartmentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnCnt.MonthlySalary:
+                        strcmd += string.Format(" MonthlySalary = {0}", ((double)value).ToString());
+                        break;
+                    case (int)ColumnCnt.YearSalary:
+                        strcmd += string.Format(" YearSalary = {0}", ((double)value).ToString());
+                        break;
+                    case (int)ColumnCnt.Qualification:
+                        strcmd += string.Format(" Qualification = '{0}'", value.ToString());
+                        break;
+                    case (int)ColumnCnt.SealPrintName:
+                        strcmd += string.Format(" SealPrintName = '{0}'", value.ToString());
+                        break;
+                    case (int)ColumnCnt.EmployeeClassFlg:
+                        strcmd += string.Format(" EmployeeClassFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnCnt.LedgerFlg:
+                        strcmd += string.Format(" LedgerFlg = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnCnt.DeleteFlg:
+                        strcmd += string.Format(" DeleteFlg = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(PersonCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -344,26 +439,27 @@
             try
             {
                 // データ取得
-                wrk.PersonCode = int.Parse(objwrk[(int)NameColumn.PersonCode].ToString());
-                wrk.DisplayOrder = int.Parse(objwrk[(int)NameColumn.DisplayOrder].ToString());
-                wrk.PersonName = objwrk[(int)NameColumn.PersonName].ToString();
-                wrk.StartDate = DateTime.Parse(objwrk[(int)NameColumn.StartDate].ToString());
-                wrk.EndDate = DateTime.Parse(objwrk[(int)NameColumn.EndDate].ToString());
-                wrk.PassWord = objwrk[(int)NameColumn.PassWord].ToString();
-                wrk.SecurityManagement = int.Parse(objwrk[(int)NameColumn.SecurityManagement].ToString());
-                wrk.MsgBackColor = objwrk[(int)NameColumn.MsgBackColor].ToString();
-                wrk.DisplayString = objwrk[(int)NameColumn.DisplayString].ToString();
-                wrk.DepartmentCode = int.Parse(objwrk[(int)NameColumn.DepartmentCode].ToString());
-                wrk.MonthlySalary = double.Parse(objwrk[(int)NameColumn.MonthlySalary].ToString());
-                wrk.YearSalary = double.Parse(objwrk[(int)NameColumn.YearSalary].ToString());
-                wrk.Qualification = objwrk[(int)NameColumn.Qualification].ToString();
-                wrk.SealPrintName = objwrk[(int)NameColumn.SealPrintName].ToString();
-                wrk.EmployeeClassFlg = int.Parse(objwrk[(int)NameColumn.EmployeeClassFlg].ToString());
-                wrk.LedgerFlg = int.Parse(objwrk[(int)NameColumn.LedgerFlg].ToString());
+                wrk.PersonCode = int.Parse(objwrk[(int)ColumnCnt.PersonCode].ToString());
+                wrk.DisplayOrder = int.Parse(objwrk[(int)ColumnCnt.DisplayOrder].ToString());
+                wrk.PersonName = objwrk[(int)ColumnCnt.PersonName].ToString();
+                wrk.StartDate = DateTime.Parse(objwrk[(int)ColumnCnt.StartDate].ToString());
+                wrk.EndDate = DateTime.Parse(objwrk[(int)ColumnCnt.EndDate].ToString());
+                wrk.PassWord = objwrk[(int)ColumnCnt.PassWord].ToString();
+                wrk.SecurityManagement = int.Parse(objwrk[(int)ColumnCnt.SecurityManagement].ToString());
+                wrk.SecCode = int.Parse(objwrk[(int)ColumnCnt.SecCode].ToString());
+                wrk.MsgBackColor = objwrk[(int)ColumnCnt.MsgBackColor].ToString();
+                wrk.DisplayString = objwrk[(int)ColumnCnt.DisplayString].ToString();
+                wrk.DepartmentCode = int.Parse(objwrk[(int)ColumnCnt.DepartmentCode].ToString());
+                wrk.MonthlySalary = double.Parse(objwrk[(int)ColumnCnt.MonthlySalary].ToString());
+                wrk.YearSalary = double.Parse(objwrk[(int)ColumnCnt.YearSalary].ToString());
+                wrk.Qualification = objwrk[(int)ColumnCnt.Qualification].ToString();
+                wrk.SealPrintName = objwrk[(int)ColumnCnt.SealPrintName].ToString();
+                wrk.EmployeeClassFlg = int.Parse(objwrk[(int)ColumnCnt.EmployeeClassFlg].ToString());
+                wrk.LedgerFlg = int.Parse(objwrk[(int)ColumnCnt.LedgerFlg].ToString());
 
-                wrk.DeleteFlg = int.Parse(objwrk[(int)NameColumn.DeleteFlg].ToString());
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+                wrk.DeleteFlg = int.Parse(objwrk[(int)ColumnCnt.DeleteFlg].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)ColumnCnt.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ColumnCnt.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
@@ -390,6 +486,7 @@
             wrk.EndDate = DateTime.MinValue;        // マスタ使用開始年月日付
             wrk.PassWord = string.Empty;	        // パスワード
             wrk.SecurityManagement = 0;             // 機密区分
+            wrk.SecCode = 0;                        // 保護区分番号
             wrk.MsgBackColor = string.Empty;	    // メッセージ背景色
             wrk.DisplayString = string.Empty;	    // 表示・印刷名称
             wrk.DepartmentCode = 0;                 // 部署コード
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonSalary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonSalary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMPersonSalary.cs	(revision 51)
@@ -0,0 +1,372 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// 担当者給与マスタＤＢアクセス
+    /// </summary>
+    public class IOMPersonSalary : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 担当者給与マスタフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            PersonCode = 0,
+            StartDate,
+            MonthlySalary,
+            YearSalary,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMPersonSalary()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region 担当者給与マスタ検索文字列作成
+        /// <summary>
+        /// 担当者給与マスタ検索文字列作成
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">担当者給与マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        private string CreateSelectSQL()
+        {
+            string strcmd = "SELECT";
+            strcmd += "  PersonCode";
+
+            strcmd += ", DATE_FORMAT(StartDate, '%Y/%m/%d %H:%i:%s')";
+
+            strcmd += ", MonthlySalary";
+            strcmd += ", YearSalary";
+
+            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM PersonSalaryMaster";
+
+            return strcmd;
+        }
+        #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<PersonSalaryMaster> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    PersonSalaryMaster work = new PersonSalaryMaster();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者給与マスタ１件検索
+        /// <summary>
+        /// 担当者給与マスタ１件検索
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool SelectAction(string AddSQLString, ref PersonSalaryMaster data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // データセット
+                object[] objwrk = (object[])arData[0];
+                Reader2Struct(objwrk, ref data);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者給与マスタ追加
+        /// <summary>
+        /// 担当者給与マスタ追加
+        /// </summary>
+        /// <param name="data">担当者給与マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(PersonSalaryMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO PersonSalaryMaster";
+
+                strcmd += " (PersonCode";
+
+                strcmd += ", StartDate";
+
+                strcmd += ", MonthlySalary";
+                strcmd += ", YearSalary";
+
+                strcmd += ", EntryDate";
+                strcmd += ", UpdateDate)";
+
+                strcmd += " VALUES (";
+
+                strcmd += string.Format("  {0}", data.PersonCode);
+
+                strcmd += string.Format(", STR_TO_DATE('{0}' ,'%Y/%m/%d')", data.StartDate.ToShortDateString());
+
+                strcmd += string.Format(", {0}", data.MonthlySalary);
+                strcmd += string.Format(", {0}", data.YearSalary);
+
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者給与マスタ追加
+        /// <summary>
+        /// 担当者給与マスタ追加
+        /// </summary>
+        /// <param name="data">担当者給与マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<PersonSalaryMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                foreach (PersonSalaryMaster work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者給与マスタ更新
+        /// <summary>
+        /// 担当者給与マスタ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">担当者給与マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, PersonSalaryMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE PersonSalaryMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format("  PersonCode = {0}", data.PersonCode.ToString());
+                
+                strcmd += string.Format(", StartDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.StartDate.ToShortDateString());
+                
+                strcmd += string.Format(", MonthlySalary = {0}", data.MonthlySalary.ToString());
+                strcmd += string.Format(", YearSalary = {0}", data.YearSalary.ToString());
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM PersonSalaryMaster", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref PersonSalaryMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.PersonCode = int.Parse(objwrk[(int)NameColumn.PersonCode].ToString());
+                wrk.StartDate = DateTime.Parse(objwrk[(int)NameColumn.StartDate].ToString());
+                wrk.MonthlySalary = double.Parse(objwrk[(int)NameColumn.MonthlySalary].ToString());
+                wrk.YearSalary = double.Parse(objwrk[(int)NameColumn.YearSalary].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(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 構造体クリア
+        /// <summary>
+        /// 構造体クリア
+        /// </summary>
+        /// <param name="wrk"></param>
+        public void ClearStruct(ref PersonSalaryMaster wrk)
+        {
+            wrk.PersonCode = 0;                     // 担当者コード
+            wrk.StartDate = DateTime.MinValue;      // マスタ使用開始年月日付
+
+            wrk.MonthlySalary = 0;                  // 月給金額
+            wrk.YearSalary = 0;	                    // 年棒金額
+
+            wrk.EntryDate = DateTime.MinValue;      // 登録日付
+            wrk.UpdateDate = DateTime.MinValue;     // 更新日付
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="ItemCode">大工種キー</param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int PersonCode, DateTime StartDate)
+        {
+            string strWork = "";
+            try
+            {
+                strWork = string.Format(" Where PersonCode = {0}", PersonCode);
+                if (StartDate.Date != DateTime.MinValue)
+                    strWork = string.Format(" AND StartDate = STR_TO_DATE('{0}','%Y/%m/%d')", StartDate.ToShortDateString());
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMProcessExcute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMProcessExcute.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMProcessExcute.cs	(revision 51)
@@ -0,0 +1,343 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// 起動対象マスタＤＢアクセス
+    /// </summary>
+    public class IOMProcessExcute : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 起動対象マスタフィールド並び
+        /// </summary>
+        public enum DataColumn
+        {
+            SecCode = 0,
+            ExecCode,
+            EditFlg,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMProcessExcute()
+            : 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作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            string strcmd = "SELECT";
+            strcmd += "  SecCode";
+            strcmd += " ,ExecCode";
+            strcmd += " ,EditFlg";
+            strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM ProcessExcuteMaster";
+
+            return strcmd;
+        }
+        #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<ProcessExcute> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    ProcessExcute work = new ProcessExcute();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("起動対象エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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 ProcessExcute data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, 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);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 起動対象マスタ追加（１件）
+        /// <summary>
+        /// 起動対象マスタ追加（１件）
+        /// </summary>
+        /// <param name="data">起動対象マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(ProcessExcute data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO ProcessExcuteMaster";
+                strcmd += " (SecCode";
+                strcmd += ", ExecCode";
+                strcmd += ", EditFlg";
+                strcmd += ", EntryDate";
+                strcmd += ", UpdateDate)";
+
+                strcmd += " VALUES (";
+
+                strcmd += data.SecCode.ToString();
+
+                strcmd += ", " + data.ExecCode.ToString();
+                strcmd += ", " + data.EditFlg.ToString();
+
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("起動対象エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 起動対象マスタ複数件追加
+        /// <summary>
+        /// 起動対象マスタ複数件追加
+        /// </summary>
+        /// <param name="data">起動対象マスタ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<ProcessExcute> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                foreach (ProcessExcute work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 起動対象マスタ更新
+        /// <summary>
+        /// 起動対象マスタ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">起動対象マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, ProcessExcute data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE ProcessExcuteMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" SecCode = {0}", data.SecCode.ToString());
+
+                strcmd += string.Format(",ExecCode = {0}", data.ExecCode.ToString());
+
+                strcmd += string.Format(",EditFlg = {0}", data.EditFlg.ToString());
+                
+                strcmd += " ,UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("起動対象エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM ProcessExcuteMaster", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("起動対象エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref ProcessExcute wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.SecCode = int.Parse(objwrk[(int)DataColumn.SecCode].ToString());
+
+                wrk.ExecCode = int.Parse(objwrk[(int)DataColumn.ExecCode].ToString());
+                wrk.EditFlg = int.Parse(objwrk[(int)DataColumn.EditFlg].ToString());
+                
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("起動対象エラー：{0}：{1}", CommonMotions.GetMethodName(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        public string CreatePrimarykeyString(int SecCode, int ExecCode = 0)
+        {
+            string strWork = "";
+            try
+            {
+                strWork = string.Format(" Where SecCode = {0}", SecCode);
+                if (ExecCode != 0)
+                    strWork = string.Format(" And ExecCode = {0}", ExecCode);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSecurity.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSecurity.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSecurity.cs	(revision 51)
@@ -0,0 +1,489 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Data;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// 保護区分マスタＤＢアクセス
+    /// </summary>
+    public class IOMSecurity : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 保護区分マスタフィールド並び
+        /// </summary>
+        public enum DataColumn
+        {
+            SecCode = 0,
+            DisplayOrder,
+            SecName,
+            SecRank,
+            SecRange,
+            GeneralAffairs,
+            SelectBackColor,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMSecurity()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region 保護区分マスタ検索文字作成
+        /// <summary>
+        /// 保護区分マスタ検索文字作成
+        /// </summary>
+        private string CreateSelectSQL()
+        {
+            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            string strcmd = "SELECT";
+            strcmd += "  SecCode";
+            strcmd += " ,DisplayOrder";
+            strcmd += " ,SecName";
+            strcmd += " ,SecRank";
+            strcmd += " ,SecRange";
+            strcmd += " ,GeneralAffairs";
+            strcmd += " ,SelectBackColor";
+
+            strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM SecurityMaster";
+
+            return strcmd;
+        }
+        #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<SecurityMaster> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    SecurityMaster work = new SecurityMaster();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("保護区分エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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 SecurityMaster data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, 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);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 保護区分マスタ追加（1件）
+        /// <summary>
+        /// 保護区分マスタ追加（1件）
+        /// </summary>
+        /// <param name="data">保護区分マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(SecurityMaster work, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO SecurityMaster";
+                strcmd += " (SecCode";
+                strcmd += " ,DisplayOrder";
+                strcmd += " ,SecName";
+                strcmd += " ,SecRank";
+                strcmd += " ,SecRange";
+                strcmd += " ,GeneralAffairs";
+                strcmd += " ,SelectBackColor";
+                strcmd += " ,EntryDate";
+                strcmd += " ,UpdateDate)";
+
+                strcmd += " VALUES (";
+
+                strcmd += work.SecCode.ToString();
+                strcmd += string.Format(", {0}", work.DisplayOrder);
+                strcmd += string.Format(",'{0}'", work.SecName);
+                strcmd += string.Format(", {0}", work.SecRank);
+                strcmd += string.Format(", {0}", work.SecRange);
+                strcmd += string.Format(", {0}", work.GeneralAffairs);
+                strcmd += string.Format(",'{0}'", work.SelectBackColor);
+
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("保護区分エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 保護区分マスタ追加
+        /// <summary>
+        /// 保護区分マスタ追加
+        /// </summary>
+        /// <param name="data">保護区分マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<SecurityMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (SecurityMaster work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("保護区分エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 保護区分マスタ更新
+        /// <summary>
+        /// 保護区分マスタ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">保護区分マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, SecurityMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE SecurityMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" SecCode = {0}", data.SecCode);
+                strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder);
+                strcmd += string.Format(",SecName = '{0}'", data.SecName);
+                strcmd += string.Format(",SecRank = {0}", data.SecRank);
+                strcmd += string.Format(",SecRange = {0}", data.SecRange);
+                strcmd += string.Format(",GeneralAffairs = {0}", data.GeneralAffairs);
+                strcmd += string.Format(",SelectBackColor = '{0}'", data.SelectBackColor);
+                
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("保護区分エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM SecurityMaster", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("保護区分エラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <param name="SecurityCode"></param>
+        /// <param name="FeildNo"></param>
+        /// <param name="value"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateFeild(int SecurityCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE SecurityMaster";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int) DataColumn.SecCode:
+                        strcmd += string.Format(" SecurityCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.DisplayOrder:
+                        strcmd += string.Format(" DisplayOrder = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.SecName:
+                        strcmd += string.Format(" SecurityName = '{0}'", value.ToString());
+                        break;
+                    case (int)DataColumn.SecRank:
+                        strcmd += string.Format(" SecurityRank = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.SecRange:
+                        strcmd += string.Format(" SecurityRange = {0}", ((int)value).ToString());
+                        break;
+                    case (int)DataColumn.GeneralAffairs:
+                        strcmd += string.Format(" GeneralAffairs = {0}", ((int)value).ToString());
+                        break;
+
+                    case (int)DataColumn.SelectBackColor:
+                        strcmd += string.Format(" SelectBackColor = '{0}'", value.ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(SecurityCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref SecurityMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.SecCode = int.Parse(objwrk[(int)DataColumn.SecCode].ToString());
+                wrk.DisplayOrder = int.Parse(objwrk[(int)DataColumn.DisplayOrder].ToString());
+                wrk.SecName = objwrk[(int)DataColumn.SecName].ToString();
+                wrk.SecRank = int.Parse(objwrk[(int)DataColumn.SecRank].ToString());
+                wrk.SecRange = int.Parse(objwrk[(int)DataColumn.SecRange].ToString());
+                wrk.GeneralAffairs = int.Parse(objwrk[(int)DataColumn.GeneralAffairs].ToString());
+                wrk.SelectBackColor = objwrk[(int)DataColumn.SelectBackColor].ToString();
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)DataColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)DataColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("保護区分エラー：{0}：{1}", CommonMotions.GetMethodName(2), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="ItemCode">大工種キー</param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int SecurityCode)
+        {
+            string strWork = "";
+            try
+            {
+                strWork = string.Format(" Where SecCode = {0}", SecurityCode);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+
+        #region 保護区分コードの最大値を取得する
+        /// <summary>
+        /// 保護区分コードの最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxSecurityCount(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(SecCode), 0) FROM SecurityMaster" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                object[] objwrk = (object[])arData[0];
+                iRet = CommonMotions.cnvInt(objwrk[0]) + 1;
+
+                return iRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return -1;
+            }
+        }
+        #endregion
+
+        #region 表示順の最大値を取得する
+        /// <summary>
+        /// 表示順の最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxDisplayCount(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(DISPLAYORDER), 0) FROM SecurityMaster" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                object[] objwrk = (object[])arData[0];
+                iRet = CommonMotions.cnvInt(objwrk[0]) + 1;
+
+                return iRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return -1;
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractor.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractor.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractor.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -32,7 +32,7 @@
         /// <summary>
         /// 協力会社マスタフィールド並び
         /// </summary>
-        public enum SubContractorColumn
+        public enum TableColumn
         {
             CompanyCode = 0,
             DisplayOrder,
@@ -225,13 +225,13 @@
                 strcmd += ", '" + data.PhoneNumber + "'";
                 strcmd += ", '" + data.FaxNumber + "'";
                 strcmd += ", '" + data.JapaneseSyllabary + "'";
-                strcmd += ", DATE_FORMAT('" + data.StartDate.ToShortDateString() + "','%Y/%m/%d')";
+                strcmd += ", STR_TO_DATE('" + data.StartDate.ToShortDateString() + "','%Y/%m/%d')";
                 strcmd += ", '" + data.Note + "'";
                 strcmd += string.Format(",  {0} ", data.labourKind.ToString());
                 strcmd += string.Format(",  {0} ", data.DeleteFlg.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -306,12 +306,12 @@
                 strcmd += " ,PhoneNumber = '" + data.PhoneNumber + "'";
                 strcmd += " ,FaxNumber = '" + data.FaxNumber + "'";
                 strcmd += " ,JapaneseSyllabary = '" + data.JapaneseSyllabary + "'";
-                strcmd += " ,StartDate = DATE_FORMAT('" + data.StartDate.ToShortDateString() + "','%Y/%m/%d')";
+                strcmd += " ,StartDate = STR_TO_DATE('" + data.StartDate.ToShortDateString() + "','%Y/%m/%d')";
                 strcmd += " ,Note = '" + data.Note + "'";
                 strcmd += string.Format(", labourKind = {0}", data.labourKind);
                 strcmd += string.Format(", DeleteFlg = {0}", data.DeleteFlg);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -353,6 +353,105 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <param name="ConstructionCode"></param>
+        /// <param name="FeildNo"></param>
+        /// <param name="value"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateFeild(int CompanyCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE SubContractorMaster";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.CompanyCode:
+                        strcmd += string.Format(" CompanyCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.DisplayOrder:
+                        strcmd += string.Format(" DisplayOrder = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CorporateStatusName:
+                        strcmd += string.Format(" CorporateStatusName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.CorporateStatusPoint:
+                        strcmd += string.Format(" CorporateStatusPoint = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CompanyName:
+                        strcmd += string.Format(" CompanyName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.CEOPositionName:
+                        strcmd += string.Format(" CEOPositionName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.CEOName:
+                        strcmd += string.Format(" CEOName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.ContactPersonName:
+                        strcmd += string.Format(" ContactPersonName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.ZipCode:
+                        strcmd += string.Format(" ZipCode = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.Address1:
+                        strcmd += string.Format(" Address1 = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.Address2:
+                        strcmd += string.Format(" Address2 = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.Address3:
+                        strcmd += string.Format(" Address3 = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.CellPhoneNumber:
+                        strcmd += string.Format(" CellPhoneNumber = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.MailAddress:
+                        strcmd += string.Format(" MailAddress = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.PhoneNumber:
+                        strcmd += string.Format(" PhoneNumber = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.FaxNumber:
+                        strcmd += string.Format(" FaxNumber = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.JapaneseSyllabary:
+                        strcmd += string.Format(" JapaneseSyllabary = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.StartDate:
+                        strcmd += string.Format(" StartDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.Note:
+                        strcmd += string.Format(" Note = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.labourKind:
+                        strcmd += string.Format(" labourKind = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.DeleteFlg:
+                        strcmd += string.Format(" DeleteFlg = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(CompanyCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -364,30 +463,30 @@
             try
             {
                 // データ取得
-                wrk.CompanyCode = int.Parse(objwrk[(int)SubContractorColumn.CompanyCode].ToString());
-                wrk.DisplayOrder = int.Parse(objwrk[(int)SubContractorColumn.DisplayOrder].ToString());
-                wrk.CorporateStatusName = objwrk[(int)SubContractorColumn.CorporateStatusName].ToString();
-                wrk.CorporateStatusPoint = int.Parse(objwrk[(int)SubContractorColumn.CorporateStatusPoint].ToString());
-                wrk.CompanyName = objwrk[(int)SubContractorColumn.CompanyName].ToString();
-                wrk.CEOPositionName = objwrk[(int)SubContractorColumn.CEOPositionName].ToString();
-                wrk.CEOName = objwrk[(int)SubContractorColumn.CEOName].ToString();
-                wrk.ContactPersonName = objwrk[(int)SubContractorColumn.ContactPersonName].ToString();
-                wrk.ZipCode = objwrk[(int)SubContractorColumn.ZipCode].ToString();
-                wrk.Address1 = objwrk[(int)SubContractorColumn.Address1].ToString();
-                wrk.Address2 = objwrk[(int)SubContractorColumn.Address2].ToString();
-                wrk.Address3 = objwrk[(int)SubContractorColumn.Address3].ToString();
-                wrk.CellPhoneNumber = objwrk[(int)SubContractorColumn.CellPhoneNumber].ToString();
-                wrk.MailAddress = objwrk[(int)SubContractorColumn.MailAddress].ToString();
-                wrk.PhoneNumber = objwrk[(int)SubContractorColumn.PhoneNumber].ToString();
-                wrk.FaxNumber = objwrk[(int)SubContractorColumn.FaxNumber].ToString();
-                wrk.JapaneseSyllabary = objwrk[(int)SubContractorColumn.JapaneseSyllabary].ToString();
-                wrk.StartDate = DateTime.Parse(objwrk[(int)SubContractorColumn.StartDate].ToString());
-                wrk.Note = objwrk[(int)SubContractorColumn.Note].ToString();
-                wrk.labourKind = int.Parse(objwrk[(int)SubContractorColumn.labourKind].ToString());
-                wrk.DeleteFlg = int.Parse(objwrk[(int)SubContractorColumn.DeleteFlg].ToString());
+                wrk.CompanyCode = int.Parse(objwrk[(int)TableColumn.CompanyCode].ToString());
+                wrk.DisplayOrder = int.Parse(objwrk[(int)TableColumn.DisplayOrder].ToString());
+                wrk.CorporateStatusName = objwrk[(int)TableColumn.CorporateStatusName].ToString();
+                wrk.CorporateStatusPoint = int.Parse(objwrk[(int)TableColumn.CorporateStatusPoint].ToString());
+                wrk.CompanyName = objwrk[(int)TableColumn.CompanyName].ToString();
+                wrk.CEOPositionName = objwrk[(int)TableColumn.CEOPositionName].ToString();
+                wrk.CEOName = objwrk[(int)TableColumn.CEOName].ToString();
+                wrk.ContactPersonName = objwrk[(int)TableColumn.ContactPersonName].ToString();
+                wrk.ZipCode = objwrk[(int)TableColumn.ZipCode].ToString();
+                wrk.Address1 = objwrk[(int)TableColumn.Address1].ToString();
+                wrk.Address2 = objwrk[(int)TableColumn.Address2].ToString();
+                wrk.Address3 = objwrk[(int)TableColumn.Address3].ToString();
+                wrk.CellPhoneNumber = objwrk[(int)TableColumn.CellPhoneNumber].ToString();
+                wrk.MailAddress = objwrk[(int)TableColumn.MailAddress].ToString();
+                wrk.PhoneNumber = objwrk[(int)TableColumn.PhoneNumber].ToString();
+                wrk.FaxNumber = objwrk[(int)TableColumn.FaxNumber].ToString();
+                wrk.JapaneseSyllabary = objwrk[(int)TableColumn.JapaneseSyllabary].ToString();
+                wrk.StartDate = DateTime.Parse(objwrk[(int)TableColumn.StartDate].ToString());
+                wrk.Note = objwrk[(int)TableColumn.Note].ToString();
+                wrk.labourKind = int.Parse(objwrk[(int)TableColumn.labourKind].ToString());
+                wrk.DeleteFlg = int.Parse(objwrk[(int)TableColumn.DeleteFlg].ToString());
                 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)SubContractorColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)SubContractorColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorItem.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorItem.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -101,7 +101,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -133,7 +133,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -161,8 +161,8 @@
                     strcmd += string.Format(" ,'{0}'", work.ItemName);
                     strcmd += string.Format(" ,{0}", work.DeleteFlg.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -171,7 +171,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -197,7 +197,7 @@
                 strcmd += string.Format(", ItemName = '{0}'", data.ItemName);
                 strcmd += string.Format(", DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -206,7 +206,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -232,7 +232,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -257,11 +257,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobCategory.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobCategory.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobCategory.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -111,7 +111,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -153,7 +153,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -181,8 +181,8 @@
                 strcmd += string.Format(" ,'{0}'", data.JobCategoryName);
                 strcmd += string.Format(" ,{0}", data.DeleteFlg.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -191,7 +191,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -217,7 +217,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -245,7 +245,7 @@
                 strcmd += string.Format(", JobCategoryName = '{0}'", data.JobCategoryName);
                 strcmd += string.Format(", DeleteFlg = {0}", data.DeleteFlg.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -254,7 +254,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -281,7 +281,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -308,11 +308,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobItem.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobItem.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -99,7 +99,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -130,7 +130,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -157,8 +157,8 @@
                     strcmd += string.Format(", {0}", work.ItemCode.ToString());
                     strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -167,7 +167,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -192,7 +192,7 @@
                 strcmd += string.Format(",ItemCode = {0}", data.ItemCode.ToString());
                 strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -201,7 +201,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -227,7 +227,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -251,11 +251,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobLink.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobLink.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSubContractorJobLink.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -107,7 +107,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -148,7 +148,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -177,8 +177,8 @@
                     strcmd += string.Format(", {0}", work.JobCategoryCode.ToString());
                     strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -187,7 +187,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -214,7 +214,7 @@
                 strcmd += string.Format(",JobCategoryCode = {0}", data.JobCategoryCode.ToString());
                 strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -223,7 +223,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -250,7 +250,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -276,11 +276,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSuppliers.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSuppliers.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSuppliers.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -183,8 +183,8 @@
                 strcmd += ", '" + data.Note + "'";
                 strcmd += string.Format(", {0}", data.DeleteFlg);
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -228,8 +228,8 @@
                     strcmd += ", '" + work.Note + "'";
                     strcmd += string.Format(", {0}", work.DeleteFlg);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -274,7 +274,7 @@
                 strcmd += " ,Note = '" + data.Note + "'";
                 strcmd += string.Format(" ,DeleteFlg = {0}", data.DeleteFlg);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSystem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSystem.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMSystem.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -30,9 +30,9 @@
 
         #region 定数
         /// <summary>
-        /// 自社マスタフィールド並び
+        /// システムマスタフィールド並び
         /// </summary>
-        public enum OurCompanyColumn
+        public enum SystemColumn
         {
             SYSTEM_CODE = 0,
             COMPANY_NAME1,
@@ -49,6 +49,7 @@
             OFFICE_EXPENSES,
             OPERATING_EXPENSES,
             CONSUMPTION_TAX,
+            COOPERATION_RATE,
             EXCEL_SAVEPATH,
             BUSINESSPERIOD,
             ConstructionYear,
@@ -75,16 +76,16 @@
 
         #endregion
 
-        #region パブリックメソッド
+        #region システムマスタ検索文字作成
         /// <summary>
-        /// 自社マスタ検索
+        /// システムマスタ検索文字作成
         /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
-        /// <param name="data">自社マスタデータ</param>
+        /// <param name="data">システムマスタデータ</param>
         /// <returns>true：成功 false：失敗</returns>
         private string CreateSelectSQL()
         {
-            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            // SQL作成
             string strcmd = "SELECT";
             strcmd += " SystemCode";
             strcmd += ", CompanyName1";
@@ -101,6 +102,7 @@
             strcmd += ", OfficeExpenses";
             strcmd += ", OperatingExpenses";
             strcmd += ", ConsumptionTax";
+            strcmd += ", CooperationRate";
             strcmd += ", ExcelSavePath";
             strcmd += ", BusinessPeriod";
             strcmd += ", ConstructionYear";
@@ -116,15 +118,25 @@
 
             return strcmd;
         }
+        #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<SystemMaster> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = CreateSelectSQL() + AddSQLString;
 
                 // SQL実行
@@ -146,15 +158,25 @@
                 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 SystemMaster data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = CreateSelectSQL() + AddSQLString;
 
                 // SQL実行
@@ -175,11 +197,13 @@
                 return false;
             }
         }
+        #endregion
 
+        #region システムマスタ追加
         /// <summary>
-        /// 自社マスタ追加
+        /// システムマスタ追加
         /// </summary>
-        /// <param name="data">自社マスタデータ</param>
+        /// <param name="data">システムマスタデータ</param>
         /// <returns>true：成功 false：失敗</returns>
         public bool InsertAction(List<SystemMaster> data, bool bConnect = true)
         {
@@ -190,6 +214,33 @@
                 foreach (SystemMaster work in data)
                 {
                     strcmd = "INSERT INTO SystemMaster";
+                    strcmd += " (SystemCode";
+                    strcmd += ", CompanyName1";
+                    strcmd += ", CompanyName2";
+                    strcmd += ", CEOName";
+                    strcmd += ", CEOPositionName";
+                    strcmd += ", ZipCode";
+                    strcmd += ", Address1";
+                    strcmd += ", Address2";
+                    strcmd += ", Address3";
+                    strcmd += ", PhoneNumber";
+                    strcmd += ", FaxNumber";
+                    strcmd += ", ConstructionExpenses";
+                    strcmd += ", OfficeExpenses";
+                    strcmd += ", OperatingExpenses";
+                    strcmd += ", ConsumptionTax";
+                    strcmd += ", CooperationRate";
+                    strcmd += ", ExcelSavePath";
+                    strcmd += ", BusinessPeriod";
+                    strcmd += ", ConstructionYear";
+                    strcmd += ", BusinessBeginningDate";
+                    strcmd += ", ConstructionBeginningDate";
+                    strcmd += ", ConstructionNoBase";
+                    strcmd += ", SloganString1";
+                    strcmd += ", SloganString2";
+                    strcmd += ", SloganString3";
+                    strcmd += ", EntryDate";
+                    strcmd += ", UpdateDate)";
 
                     strcmd += " VALUES (";
 
@@ -208,6 +259,7 @@
                     strcmd += ", " + work.OfficeExpenses.ToString();
                     strcmd += ", " + work.OperatingExpenses.ToString();
                     strcmd += ", " + work.ConsumptionTax.ToString();
+                    strcmd += ", " + work.CooperationRate.ToString();
                     strcmd += ",'" + work.ExcelSavePath + "'";
 
                     strcmd += ", " + work.BusinessPeriod.ToString();
@@ -220,8 +272,8 @@
                     strcmd += ",'" + work.SloganString2 + "'";
                     strcmd += ",'" + work.SloganString3 + "'";
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -234,12 +286,14 @@
                 return false;
             }
         }
+        #endregion
 
+        #region システムマスタ更新
         /// <summary>
-        /// 自社マスタ更新
+        /// システムマスタ更新
         /// </summary>
         /// <param name="AddSQLString">更新条件SQL文字列</param>
-        /// <param name="data">自社マスタデータ</param>
+        /// <param name="data">システムマスタデータ</param>
         /// <returns>true：成功 false：失敗</returns>
         public bool UpdateAction(string AddSQLString, SystemMaster data, bool bConnect = true)
         {
@@ -266,6 +320,7 @@
                 strcmd += " ,OfficeExpenses = " + data.OfficeExpenses.ToString();
                 strcmd += " ,OperatingExpenses = " + data.OperatingExpenses.ToString();
                 strcmd += " ,ConsumptionTax = " + data.ConsumptionTax.ToString();
+                strcmd += " ,CooperationRate = " + data.CooperationRate.ToString();
                 strcmd += " ,ExcelSavePath = '" + data.ExcelSavePath + "'";
                 
                 strcmd += " ,BusinessPeriod = " + data.BusinessPeriod.ToString();
@@ -277,8 +332,8 @@
                 strcmd += " ,SloganString1 = '" + data.SloganString1 + "'";
                 strcmd += " ,SloganString2 = '" + data.SloganString2 + "'";
                 strcmd += " ,SloganString3 = '" + data.SloganString3 + "'";
-
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -291,17 +346,18 @@
                 return false;
             }
         }
+        #endregion
 
-
+        #region システムマスタ削除
         /// <summary>
-        /// 自社マスタ削除
+        /// システムマスタ削除
         /// </summary>
         /// <param name="AddSQLString">削除条件SQL文字列</param>
-        /// <param name="data">自社マスタデータ</param>
+        /// <param name="data">システムマスタデータ</param>
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -317,11 +373,12 @@
                 return false;
             }
         }
+        #endregion
 
+        #region 構造体へセットする
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref SystemMaster wrk)
         {
@@ -328,35 +385,36 @@
             try
             {
                 // データ取得
-                wrk.SystemCode = int.Parse(objwrk[(int)OurCompanyColumn.SYSTEM_CODE].ToString());
-                wrk.CompanyName1 = objwrk[(int)OurCompanyColumn.COMPANY_NAME1].ToString();
-                wrk.CompanyName2 = objwrk[(int)OurCompanyColumn.COMPANY_NAME2].ToString();
-                wrk.CEOName = objwrk[(int)OurCompanyColumn.CEO_NAME].ToString();
-                wrk.CEOPositionName = objwrk[(int)OurCompanyColumn.CEOPOSITION_NAME].ToString();
-                wrk.ZipCode = objwrk[(int)OurCompanyColumn.ZIP_CODE].ToString();
-                wrk.Address1 = objwrk[(int)OurCompanyColumn.ADDRESS1].ToString();
-                wrk.Address2 = objwrk[(int)OurCompanyColumn.ADDRESS2].ToString();
-                wrk.Address3 = objwrk[(int)OurCompanyColumn.ADDRESS3].ToString();
-                wrk.PhoneNumber = objwrk[(int)OurCompanyColumn.PHONE_NUMBER].ToString();
-                wrk.FaxNumber = objwrk[(int)OurCompanyColumn.FAX_NUMBER].ToString();
-                wrk.ConstructionExpenses = double.Parse(objwrk[(int)OurCompanyColumn.CONSTRUCTION_EXPENSES].ToString());
-                wrk.OfficeExpenses = double.Parse(objwrk[(int)OurCompanyColumn.OFFICE_EXPENSES].ToString());
-                wrk.OperatingExpenses = double.Parse(objwrk[(int)OurCompanyColumn.OPERATING_EXPENSES].ToString());
-                wrk.ConsumptionTax = double.Parse(objwrk[(int)OurCompanyColumn.CONSUMPTION_TAX].ToString());
-                wrk.ExcelSavePath = objwrk[(int)OurCompanyColumn.EXCEL_SAVEPATH].ToString();
+                wrk.SystemCode = int.Parse(objwrk[(int)SystemColumn.SYSTEM_CODE].ToString());
+                wrk.CompanyName1 = objwrk[(int)SystemColumn.COMPANY_NAME1].ToString();
+                wrk.CompanyName2 = objwrk[(int)SystemColumn.COMPANY_NAME2].ToString();
+                wrk.CEOName = objwrk[(int)SystemColumn.CEO_NAME].ToString();
+                wrk.CEOPositionName = objwrk[(int)SystemColumn.CEOPOSITION_NAME].ToString();
+                wrk.ZipCode = objwrk[(int)SystemColumn.ZIP_CODE].ToString();
+                wrk.Address1 = objwrk[(int)SystemColumn.ADDRESS1].ToString();
+                wrk.Address2 = objwrk[(int)SystemColumn.ADDRESS2].ToString();
+                wrk.Address3 = objwrk[(int)SystemColumn.ADDRESS3].ToString();
+                wrk.PhoneNumber = objwrk[(int)SystemColumn.PHONE_NUMBER].ToString();
+                wrk.FaxNumber = objwrk[(int)SystemColumn.FAX_NUMBER].ToString();
+                wrk.ConstructionExpenses = double.Parse(objwrk[(int)SystemColumn.CONSTRUCTION_EXPENSES].ToString());
+                wrk.OfficeExpenses = double.Parse(objwrk[(int)SystemColumn.OFFICE_EXPENSES].ToString());
+                wrk.OperatingExpenses = double.Parse(objwrk[(int)SystemColumn.OPERATING_EXPENSES].ToString());
+                wrk.ConsumptionTax = double.Parse(objwrk[(int)SystemColumn.CONSUMPTION_TAX].ToString());
+                wrk.CooperationRate = double.Parse(objwrk[(int)SystemColumn.COOPERATION_RATE].ToString());
+                wrk.ExcelSavePath = objwrk[(int)SystemColumn.EXCEL_SAVEPATH].ToString();
 
-                wrk.BusinessPeriod = int.Parse(objwrk[(int)OurCompanyColumn.BUSINESSPERIOD].ToString());
-                wrk.ConstructionYear = int.Parse(objwrk[(int)OurCompanyColumn.ConstructionYear].ToString());
-                wrk.BusinessBeginningDate = objwrk[(int)OurCompanyColumn.BusinessBeginningDate].ToString();
-                wrk.ConstructionBeginningDate = objwrk[(int)OurCompanyColumn.ConstructionBeginningDate].ToString();
-                wrk.ConstructionNoBase = int.Parse(objwrk[(int)OurCompanyColumn.ConstructionNoBase].ToString());
+                wrk.BusinessPeriod = int.Parse(objwrk[(int)SystemColumn.BUSINESSPERIOD].ToString());
+                wrk.ConstructionYear = int.Parse(objwrk[(int)SystemColumn.ConstructionYear].ToString());
+                wrk.BusinessBeginningDate = objwrk[(int)SystemColumn.BusinessBeginningDate].ToString();
+                wrk.ConstructionBeginningDate = objwrk[(int)SystemColumn.ConstructionBeginningDate].ToString();
+                wrk.ConstructionNoBase = int.Parse(objwrk[(int)SystemColumn.ConstructionNoBase].ToString());
 
-                wrk.SloganString1 = objwrk[(int)OurCompanyColumn.SloganString1].ToString();
-                wrk.SloganString2 = objwrk[(int)OurCompanyColumn.SloganString2].ToString();
-                wrk.SloganString3 = objwrk[(int)OurCompanyColumn.SloganString3].ToString();
+                wrk.SloganString1 = objwrk[(int)SystemColumn.SloganString1].ToString();
+                wrk.SloganString2 = objwrk[(int)SystemColumn.SloganString2].ToString();
+                wrk.SloganString3 = objwrk[(int)SystemColumn.SloganString3].ToString();
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)OurCompanyColumn.ENTRY_DATE].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)OurCompanyColumn.UPDATE_DATE].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)SystemColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)SystemColumn.UPDATE_DATE].ToString());
             }
             catch (MySqlException myex)
             {
@@ -369,10 +427,9 @@
         }
         #endregion
 
-        #region パブリックメソッド（特殊処理）
-
+        #region コードの最大値を取得する
         /// <summary>
-        /// 協力会社コードの最大値を取得する
+        /// コードの最大値を取得する
         /// </summary>
         /// <param name="AddSQLString"></param>
         /// <param name="bConnect"></param>
@@ -379,7 +436,7 @@
         /// <returns></returns>
         public int SelectMaxSystemCodeCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMTerm.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMTerm.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMTerm.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -69,13 +69,13 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool SelectAction(string AddSQLString, ref List<TermMaster> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = "SELECT";
                 strcmd += "  ConstructionStatusFlg";
                 strcmd += " ,FieldNo";
@@ -87,8 +87,8 @@
                 strcmd += " ,SendMessage";
                 strcmd += " ,BackColor";
                 strcmd += " ,ForeColor";
-                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
-                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(EntryDate,'%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate,'%Y/%m/%d %H:%i:%s')";
                 strcmd += " FROM TermMaster";
                 strcmd += AddSQLString;
 
@@ -107,7 +107,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -138,8 +138,8 @@
                 strcmd += string.Format(",'{0}'", data.BackColor);
                 strcmd += string.Format(",'{0}'", data.ForeColor);
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -148,7 +148,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -166,7 +166,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -197,7 +197,7 @@
                 strcmd += string.Format(",BackColor = '{0}'", data.BackColor);
                 strcmd += string.Format(",ForeColor = '{0}'", data.ForeColor);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -206,7 +206,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -220,7 +220,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -232,15 +232,14 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
 
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref TermMaster wrk)
         {
@@ -265,11 +264,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
@@ -309,7 +308,7 @@
         /// <returns></returns>
         public int GetMaxSeqNoCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMUnit.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMUnit.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMUnit.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -62,13 +62,13 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool SelectAction(string AddSQLString, ref List<UnitMaster> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = "SELECT";
                 strcmd += " UnitKey, DisplayOrder, UnitName";
                 strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
@@ -91,7 +91,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -118,8 +118,8 @@
                     strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
                     strcmd += string.Format(", '{0}'", work.UnitName);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -128,7 +128,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -153,7 +153,7 @@
                 strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
                 strcmd += string.Format(",UnitName = '{0}'", data.UnitName);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -162,7 +162,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -176,7 +176,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -188,15 +188,14 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
 
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref UnitMaster wrk)
         {
@@ -212,11 +211,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
@@ -253,7 +252,7 @@
         /// <returns></returns>
         public int SelectMaxUnitKeyCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMVehicle.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMVehicle.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMVehicle.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -79,13 +79,13 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool SelectAction(string AddSQLString, ref List<VehicleMaster> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = "SELECT";
 
                 strcmd += " VehicleCode";
@@ -96,11 +96,11 @@
                 strcmd += ",ModelCode";
                 strcmd += ",DepartmentCode";
                 strcmd += ",VehicleScheduleFlg";
-                strcmd += ",DATE_FORMAT(PurchaseDate, '%Y/%m/%d')";
+                strcmd += ",DATE_FORMAT(PurchaseDate, '%Y/%m/%d %H:%i:%s')";
                 strcmd += ",PurchaseName";
                 strcmd += ",PurchaseContactPersons";
                 strcmd += ",PurchasePhone";
-                strcmd += ",DATE_FORMAT(LeaseDate, '%Y/%m/%d')";
+                strcmd += ",DATE_FORMAT(LeaseDate, '%Y/%m/%d %H:%i:%s')";
                 strcmd += ",LeaseDestination";
                 strcmd += ",LeaseContactPersons";
                 strcmd += ",LeasePhone";
@@ -109,8 +109,8 @@
                 strcmd += ",InsurancePhone";
                 strcmd += ",Note";
 
-                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
-                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(EntryDate,'%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate,'%Y/%m/%d %H:%i:%s')";
                 strcmd += " FROM VehicleMaster";
                 strcmd += AddSQLString;
 
@@ -129,7 +129,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -162,11 +162,11 @@
                     strcmd += string.Format(",'{0}'", work.ModelCode);
                     strcmd += string.Format(", {0}", work.DepartmentCode.ToString());
                     strcmd += string.Format(", {0}", work.VehicleScheduleFlg.ToString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", work.PurchaseDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%dD')", work.PurchaseDate.ToShortDateString());
                     strcmd += string.Format(",'{0}'", work.PurchaseName);
                     strcmd += string.Format(",'{0}'", work.PurchaseContactPersons);
                     strcmd += string.Format(",'{0}'", work.PurchasePhone);
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", work.LeaseDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", work.LeaseDate.ToShortDateString());
                     strcmd += string.Format(",'{0}'", work.LeaseDestination);
                     strcmd += string.Format(",'{0}'", work.LeaseContactPersons);
                     strcmd += string.Format(",'{0}'", work.LeasePhone);
@@ -175,8 +175,8 @@
                     strcmd += string.Format(",'{0}'", work.InsurancePhone);
                     strcmd += string.Format(",'{0}'", work.Note);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -185,7 +185,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -220,7 +220,7 @@
                 strcmd += string.Format(",PurchaseName = '{0}'", data.PurchaseName);
                 strcmd += string.Format(",PurchaseContactPersons = '{0}'", data.PurchaseContactPersons);
                 strcmd += string.Format(",PurchasePhone = '{0}'", data.PurchasePhone);
-                strcmd += string.Format(",LeaseDate = DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')", data.LeaseDate.ToShortDateString());
+                strcmd += string.Format(",LeaseDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.LeaseDate.ToShortDateString());
                 strcmd += string.Format(",LeaseDestination = '{0}'", data.LeaseDestination);
                 strcmd += string.Format(",LeaseContactPersons = '{0}'", data.LeaseContactPersons);
                 strcmd += string.Format(",LeasePhone = '{0}'", data.LeasePhone);
@@ -230,7 +230,7 @@
                 strcmd += string.Format(",Note = '{0}'", data.Note);
 
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -239,7 +239,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -254,7 +254,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -266,17 +266,16 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
         #endregion
 
-        #region OracleDataReaderより構造体へセットする
+        #region 構造体へセットする
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref VehicleMaster wrk)
         {
@@ -309,11 +308,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -354,11 +353,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -395,7 +394,7 @@
         /// <returns></returns>
         public int SelectMaxVehicleKeyCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMVehicleRecordData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMVehicleRecordData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMVehicleRecordData.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -66,19 +66,19 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool SelectAction(string AddSQLString, ref List<VehicleRecordData> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = "SELECT";
 
                 strcmd += " VehicleCode";
                 strcmd += ",DivisionCode";
                 strcmd += ",SeqNo";
-                strcmd += ",DATE_FORMAT(RecordDate, '%Y/%m/%d')";
+                strcmd += ",DATE_FORMAT(RecordDate, '%Y/%m/%d %H:%i:%s')";
                 strcmd += ",Mileage";
                 strcmd += ",Content";
                 strcmd += ",PaymentCost";
@@ -103,7 +103,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -129,13 +129,13 @@
                     strcmd += string.Format("  {0}", work.VehicleCode.ToString());
                     strcmd += string.Format(", {0}", work.DivisionCode.ToString());
                     strcmd += string.Format(", {0}", work.SeqNo.ToString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", work.RecordDate.ToShortDateString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", work.RecordDate.ToShortDateString());
                     strcmd += string.Format(", {0}", work.Mileage.ToString());
                     strcmd += string.Format(",'{0}'", work.Content);
                     strcmd += string.Format(", {0}", work.PaymentCost.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -144,7 +144,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -168,12 +168,12 @@
                 strcmd += string.Format(" VehicleCode = {0}", data.VehicleCode.ToString());
                 strcmd += string.Format(",DivisionCode = {0}", data.DivisionCode.ToString());
                 strcmd += string.Format(",SeqNo = {0}", data.SeqNo.ToString());
-                strcmd += string.Format(",RecordDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.RecordDate.ToShortDateString());
+                strcmd += string.Format(",RecordDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.RecordDate.ToShortDateString());
                 strcmd += string.Format(",Mileage = {0}", data.Mileage.ToString());
                 strcmd += string.Format(",Content = '{0}'", data.Content);
                 strcmd += string.Format(",PaymentCost = {0}", data.PaymentCost.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -182,7 +182,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -196,7 +196,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -208,15 +208,14 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
 
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref VehicleRecordData wrk)
         {
@@ -236,11 +235,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
@@ -280,7 +279,7 @@
         /// <returns></returns>
         public int SelectMaxVehicleKeyCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialInfo.cs	(revision 51)
@@ -0,0 +1,314 @@
+﻿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 IOMaterialInfo : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            MaterialItemCode = 0,
+            MaterialCount,
+            RentCount,
+            DeleteFlg,
+            ENTRY_DATE,
+            UPDATE_DATE
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMaterialInfo()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+        #endregion
+
+        #region パブリックメソッド
+        /// <summary>
+        /// 検索
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool SelectAction(string AddSQLString, ref List<MaterialInfo> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " MaterialItemCode, MaterialCount, RentCount, DeleteFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM MaterialInfo";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    MaterialInfo work = new MaterialInfo();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 追加
+        /// </summary>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<MaterialInfo> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (MaterialInfo work in data)
+                {
+                    strcmd = "INSERT INTO MaterialInfo";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.MaterialItemCode .ToString());
+                    strcmd += string.Format(", {0}", work.MaterialCount .ToString());
+                    strcmd += string.Format(", {0}", work.RentCount.ToString());
+                    strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, MaterialInfo data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE MaterialInfo";
+                strcmd += " SET";
+
+                strcmd += string.Format(" MaterialCount = {0}", data.MaterialCount.ToString());
+                strcmd += string.Format(",RentCount = {0}", data.RentCount.ToString());
+                strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = "Update MaterialInfo Set DeleteFlg = 1";
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref MaterialInfo wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.MaterialItemCode = int.Parse(objwrk[(int)NameColumn.MaterialItemCode].ToString());
+                wrk.MaterialCount = int.Parse(objwrk[(int)NameColumn.MaterialCount].ToString());
+                wrk.RentCount  = int.Parse(objwrk[(int)NameColumn.RentCount].ToString());
+                wrk.DeleteFlg = int.Parse(objwrk[(int)NameColumn.DeleteFlg].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int MaterialItemCode)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where MaterialItemCode = {0}", MaterialItemCode);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+
+
+        /// <summary>
+        /// 排他行ロック
+        /// </summary>
+        /// <param name="MaterialTypesCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLockUpdate(int MaterialItemCode, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from MaterialInfo where MaterialItemCode = {0} for update;", MaterialItemCode);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+        /// <summary>
+        /// 共有行ロック
+        /// </summary>
+        /// <param name="MaterialTypesCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLockShare(int MaterialItemCode, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from MaterialInfo where MaterialItemCode = {0} lock in share mode;", MaterialItemCode);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialItem.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialItem.cs	(revision 51)
@@ -0,0 +1,384 @@
+﻿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 IOMaterialItem : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 資材品目マスタフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            MaterialItemCode = 0,
+            MaterialKindCode,
+            MaterialItemName,
+            DisplayOrder,
+            DeleteFlg,
+            ENTRY_DATE,
+            UPDATE_DATE
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMaterialItem()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region パブリックメソッド
+        /// <summary>
+        /// 資材品目マスタ検索
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">資材品目マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool SelectAction(string AddSQLString, ref List<MaterialItemMaster> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " MaterialItemCode, MaterialKindCode, MaterialItemName, DisplayOrder, DeleteFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM MaterialItemMaster";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    MaterialItemMaster work = new MaterialItemMaster();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 資材品目マスタ追加
+        /// </summary>
+        /// <param name="data">資材品目マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<MaterialItemMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (MaterialItemMaster work in data)
+                {
+                    strcmd = "INSERT INTO MaterialItemMaster";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.MaterialItemCode.ToString());
+                    strcmd += string.Format(", {0}", work.MaterialKindCode.ToString());
+                    strcmd += string.Format(", '{0}'", work.MaterialItemName);
+                    strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
+                    strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 資材品目マスタ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">資材品目マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, MaterialItemMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE MaterialItemMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" MaterialItemCode = {0}", data.MaterialItemCode.ToString());
+                strcmd += string.Format(",MaterialKindCode = {0}", data.MaterialKindCode.ToString());
+                strcmd += string.Format(",MaterialItemName = '{0}'", data.MaterialItemName);
+                strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
+                strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+
+        /// <summary>
+        /// 資材品目マスタ削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <param name="data">資材品目マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = "Update MaterialItemMaster Set DeleteFlg = 1,DisplayOrder = 999";
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref MaterialItemMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.MaterialItemCode  = int.Parse(objwrk[(int)NameColumn.MaterialItemCode].ToString());
+                wrk.MaterialKindCode = int.Parse(objwrk[(int)NameColumn.MaterialKindCode].ToString());
+                wrk.MaterialItemName  = objwrk[(int)NameColumn.MaterialItemName].ToString();
+                wrk.DisplayOrder = int.Parse(objwrk[(int)NameColumn.DisplayOrder].ToString());
+                wrk.DeleteFlg = int.Parse(objwrk[(int)NameColumn.DeleteFlg].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int MaterialItemCode)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where MaterialItemCode = {0}", MaterialItemCode);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        /// <summary>
+        /// 最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxMaterialItemKeyCount(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(MaterialItemCode), 0) FROM MaterialItemMaster" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals(""))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+
+            return iRet;
+        }
+
+        /// <summary>
+        /// 指定資材種類の件数を取得する
+        /// </summary>
+        /// <param name="MaterialKindCode">資材種類コード</param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectkindItemCount(int MaterialKindCode, bool bConnect = true)
+        {
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = string.Format("SELECT COUNT(*) FROM MaterialItemMaster where MaterialKindCode = {0} and Deleteflg = 0" , MaterialKindCode);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                iRet = int.Parse((((object[])arData[0])[0]).ToString());
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+
+            return iRet;
+        }
+
+        /// <summary>
+        /// タイムアウト設定
+        /// </summary>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool SetTimeOut(int time, bool bConnect = true)
+        {
+            //インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("set innodb_lock_wait_timeout = {0};", time);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        /// <param name="MaterialTypesCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLock(int MaterialItemCode, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from MaterialItemMaster  where MaterialItemCode = {0} for update;", MaterialItemCode);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialRecordInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialRecordInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialRecordInfo.cs	(revision 51)
@@ -0,0 +1,334 @@
+﻿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
+{
+    public class IOMaterialRecordInfo : MySqlProcess 
+    {
+
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            MaterialItemCode = 0,
+            ProcessDate,
+            SeqNo,
+            RecKind,
+            ConstructionCode,
+            PersonCode,
+            MaterialCount,
+            RepayPlanDate,
+            CommentText,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMaterialRecordInfo()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+        #endregion
+
+        #region パブリックメソッド
+        /// <summary>
+        /// 検索
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool SelectAction(string AddSQLString, ref List<MaterialRecordInfo> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " MaterialItemCode,DATE_FORMAT(ProcessDate, '%Y/%m/%d %H:%i:%s'),SeqNo,RecKind,ConstructionCode,PersonCode,MaterialCount,DATE_FORMAT(RepayPlanDate, '%Y/%m/%d %H:%i:%s'),CommentText";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM MaterialRecordInfo";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    MaterialRecordInfo work = new MaterialRecordInfo();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 追加
+        /// </summary>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<MaterialRecordInfo> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (MaterialRecordInfo work in data)
+                {
+                    strcmd = "INSERT INTO MaterialRecordInfo";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.MaterialItemCode.ToString());
+                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", work.ProcessDate.ToString());
+                    strcmd += string.Format(", {0}", work.SeqNo.ToString());
+                    strcmd += string.Format(", {0}", work.RecKind.ToString());
+                    strcmd += string.Format(", {0}", work.ConstructionCode.ToString());
+                    strcmd += string.Format(", {0}", work.PersonCode.ToString());
+                    strcmd += string.Format(", {0}", work.MaterialCount.ToString());
+                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", work.RepayPlanDate.ToString());
+                    strcmd += string.Format(", '{0}'", work.CommentText.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, MaterialRecordInfo data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE MaterialRecordInfo";
+                strcmd += " SET";
+
+                strcmd += string.Format(" RecKind = {0}", data.RecKind.ToString());
+                strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode.ToString());
+                strcmd += string.Format(",PersonCode = {0}", data.PersonCode.ToString());
+                strcmd += string.Format(",MaterialCount = {0}", data.MaterialCount.ToString());
+                strcmd += string.Format(",RepayPlanDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.RepayPlanDate.ToString());
+                strcmd += string.Format(",CommentText = '{0}'", data.CommentText.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM MaterialRecordInfo", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref MaterialRecordInfo wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.MaterialItemCode = int.Parse(objwrk[(int)NameColumn.MaterialItemCode].ToString());
+                wrk.ProcessDate = DateTime.Parse(objwrk[(int)NameColumn.ProcessDate].ToString());
+                wrk.SeqNo  = int.Parse(objwrk[(int)NameColumn.SeqNo ].ToString());
+                wrk.RecKind = int.Parse(objwrk[(int)NameColumn.RecKind].ToString());
+                wrk.ConstructionCode = int.Parse(objwrk[(int)NameColumn.ConstructionCode].ToString());
+                wrk.PersonCode = int.Parse(objwrk[(int)NameColumn.PersonCode].ToString());
+                wrk.MaterialCount = int.Parse(objwrk[(int)NameColumn.MaterialCount].ToString());
+                wrk.RepayPlanDate = DateTime.Parse(objwrk[(int)NameColumn.RepayPlanDate].ToString());
+                wrk.CommentText = objwrk[(int)NameColumn.CommentText].ToString();
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int MaterialItemCode, DateTime ProcessDate)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where MaterialItemCode = {0} and ProcessDate = DATE_FORMAT('{1}','%Y/%m/%d')", MaterialItemCode, ProcessDate);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        /// <summary>
+        /// 最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxMaterialRecordKeyCount(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(SeqNo), 0) FROM MaterialRecordInfo" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals(""))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+
+            return iRet;
+        }
+
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        /// <param name="MaterialItemCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLock(int MaterialItemCode, DateTime ProcessDate, int SeqNo, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from MaterialrecordInfo  where MaterialItemCode = {0} and ProcessDate = DATE_FORMAT('{1}','%Y/%m/%d') and SeqNo = {2} for update;",
+                                        MaterialItemCode, ProcessDate, SeqNo);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialTypes.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialTypes.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMaterialTypes.cs	(revision 51)
@@ -0,0 +1,325 @@
+﻿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 IOMaterialTypes : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 資材種類マスタフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            MaterialTypesCode = 0,
+            MaterialTypesName,
+            DisplayOrder,
+            DeleteFlg,
+            ENTRY_DATE,
+            UPDATE_DATE
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOMaterialTypes()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #endregion
+
+        #region パブリックメソッド
+        /// <summary>
+        /// 資材種類マスタ検索
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">資材種類マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool SelectAction(string AddSQLString, ref List<MaterialKindMaster> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " MaterialKindCode, MaterialKindName, DisplayOrder, DeleteFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM MaterialKindMaster";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    MaterialKindMaster work = new MaterialKindMaster();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 資材種類マスタ追加
+        /// </summary>
+        /// <param name="data">資材種類マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<MaterialKindMaster> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (MaterialKindMaster work in data)
+                {
+                    strcmd = "INSERT INTO MaterialKindMaster";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.MaterialKindCode.ToString());
+                    strcmd += string.Format(", '{0}'", work.MaterialKindName);
+                    strcmd += string.Format(", {0}", work.DisplayOrder.ToString());
+                    strcmd += string.Format(", {0}", work.DeleteFlg.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 資材種類マスタ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">業種マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, MaterialKindMaster data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE MaterialKindMaster";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" MaterialKindCode = {0}", data.MaterialKindCode.ToString());
+                strcmd += string.Format(",MaterialKindName = '{0}'", data.MaterialKindName);
+                strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
+                strcmd += string.Format(",DeleteFlg = {0}", data.DeleteFlg.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+
+        /// <summary>
+        /// 資材種類マスタ削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <param name="data">資材種類マスタデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = "Update MaterialKindMaster Set DeleteFlg = 1,DisplayOrder = 999";
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref MaterialKindMaster wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.MaterialKindCode  = int.Parse(objwrk[(int)NameColumn.MaterialTypesCode].ToString());
+                wrk.MaterialKindName = objwrk[(int)NameColumn.MaterialTypesName].ToString();
+                wrk.DisplayOrder = int.Parse(objwrk[(int)NameColumn.DisplayOrder].ToString());
+                wrk.DeleteFlg = int.Parse(objwrk[(int)NameColumn.DeleteFlg].ToString());
+
+                wrk.EntryDate = objwrk[(int)NameColumn.ENTRY_DATE].ToString() == "" ? DateTime.Parse("2001/01/01") : DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = objwrk[(int)NameColumn.UPDATE_DATE].ToString()=="" ? DateTime.Parse("2001/01/01") : DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int MaterialTypesCode)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where MaterialKindCode = {0}", MaterialTypesCode);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        /// <summary>
+        /// 最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxMaterialKindKeyCount(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(MaterialKindCode), 0) FROM MaterialKindMaster" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals(""))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+
+            return iRet;
+        }
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        /// <param name="MaterialTypesCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RowLock(int MaterialTypesCode, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from MaterialKindMaster  where MaterialKindCode={0} for update", MaterialTypesCode);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+             
+        }
+
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBoardData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBoardData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBoardData.cs	(revision 51)
@@ -31,7 +31,7 @@
         /// <summary>
         /// 掲示板データフィールド並び
         /// </summary>
-        public enum NameColumn
+        public enum ColumnCnt
         {
             RecordNumber = 0,       // レコード番号
             BranchNumber,           // レコード枝番
@@ -133,7 +133,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -174,7 +174,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -192,38 +192,56 @@
             try
             {
 
-                    strcmd = "INSERT INTO MessageBoardData";
+                strcmd = "INSERT INTO MessageBoardData";
 
-                    strcmd += " VALUES (";
+                strcmd += " (RecordNumber,";
+                strcmd += " BranchNumber,";
+                strcmd += " FromCode,";
+                strcmd += " FromName,";
+                strcmd += " MessageTitile,";
+                strcmd += " MessageContent,";
+                strcmd += " LinkType,";
+                strcmd += " LinkMessage,";
+                strcmd += " LinkCode,";
+                strcmd += " WritingDate,";
+                strcmd += " PersonCode,";
+                strcmd += " ShareFlag,";
+                strcmd += " MessageColor,";
+                strcmd += " BackColor,";
+                strcmd += " MessageFlag,";
+                strcmd += " EntryDate,";
+                strcmd += " UpdateDate)";
 
-                    strcmd += string.Format("  {0} ", data.RecordNumber.ToString());
-                    strcmd += string.Format(", {0} ", data.BranchNumber.ToString());
-                    strcmd += string.Format(", {0} ", data.FromCode);
-                    strcmd += string.Format(",'{0}'", data.FromName);
-                    strcmd += string.Format(",'{0}'", data.MessageTitle);
-                    strcmd += string.Format(",'{0}'", data.MessageContent);
-                    strcmd += string.Format(", {0} ", data.LinkType);
-                    strcmd += string.Format(",'{0}'", data.LinkMessage);
-                    strcmd += string.Format(",'{0}'", data.LinkCode);
+                strcmd += " VALUES (";
 
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')", data.WritingDate.ToString());
-                    strcmd += string.Format(", {0} ", data.PersonCode.ToString());
-                    strcmd += string.Format(", {0} ", data.ShareFlag.ToString());
-                    strcmd += string.Format(",'{0}'", data.MessageColor);
-                    strcmd += string.Format(",'{0}'", data.BackColor);
-                    strcmd += string.Format(", {0} ", data.MessageFlag.ToString());
+                strcmd += string.Format("  {0} ", data.RecordNumber.ToString());
+                strcmd += string.Format(", {0} ", data.BranchNumber.ToString());
+                strcmd += string.Format(", {0} ", data.FromCode);
+                strcmd += string.Format(",'{0}'", data.FromName);
+                strcmd += string.Format(",'{0}'", data.MessageTitle);
+                strcmd += string.Format(",'{0}'", data.MessageContent);
+                strcmd += string.Format(", {0} ", data.LinkType);
+                strcmd += string.Format(",'{0}'", data.LinkMessage);
+                strcmd += string.Format(",'{0}'", data.LinkCode);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd = strcmd + ")";
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.WritingDate.ToString());
+                strcmd += string.Format(", {0} ", data.PersonCode.ToString());
+                strcmd += string.Format(", {0} ", data.ShareFlag.ToString());
+                strcmd += string.Format(",'{0}'", data.MessageColor);
+                strcmd += string.Format(",'{0}'", data.BackColor);
+                strcmd += string.Format(", {0} ", data.MessageFlag.ToString());
 
-                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
 
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
                 return true;
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -249,7 +267,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -288,7 +306,7 @@
                 strcmd += string.Format(",BackColor = '{0}'", data.BackColor.ToString());
                 strcmd += string.Format(",MessageFlag = {0} ", data.MessageFlag);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -297,7 +315,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -324,7 +342,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -341,32 +359,32 @@
             try
             {
                 // データ取得
-                wrk.RecordNumber = int.Parse(objwrk[(int)NameColumn.RecordNumber].ToString());
-                wrk.BranchNumber = int.Parse(objwrk[(int)NameColumn.BranchNumber].ToString());
-                wrk.FromCode = int.Parse(objwrk[(int)NameColumn.FromCode].ToString());
-                wrk.FromName = objwrk[(int)NameColumn.FromName].ToString();
-                wrk.MessageTitle = objwrk[(int)NameColumn.MessageTitle].ToString();
-                wrk.MessageContent = objwrk[(int)NameColumn.MessageContent].ToString();
-                wrk.LinkType = int.Parse(objwrk[(int)NameColumn.LinkType].ToString());
-                wrk.LinkMessage = objwrk[(int)NameColumn.LinkMessage].ToString();
-                wrk.LinkCode = objwrk[(int)NameColumn.LinkCode].ToString();
-                wrk.WritingDate = DateTime.Parse(objwrk[(int)NameColumn.WritingDate].ToString());
-                wrk.PersonCode = int.Parse(objwrk[(int)NameColumn.PersonCode].ToString());
-                wrk.ShareFlag = int.Parse(objwrk[(int)NameColumn.ShareFlag].ToString());
-                wrk.MessageColor = objwrk[(int)NameColumn.MessageColor].ToString();
-                wrk.BackColor = objwrk[(int)NameColumn.BackColor].ToString();
-                wrk.MessageFlag = int.Parse(objwrk[(int)NameColumn.MessageFlag].ToString());
+                wrk.RecordNumber = int.Parse(objwrk[(int)ColumnCnt.RecordNumber].ToString());
+                wrk.BranchNumber = int.Parse(objwrk[(int)ColumnCnt.BranchNumber].ToString());
+                wrk.FromCode = int.Parse(objwrk[(int)ColumnCnt.FromCode].ToString());
+                wrk.FromName = objwrk[(int)ColumnCnt.FromName].ToString();
+                wrk.MessageTitle = objwrk[(int)ColumnCnt.MessageTitle].ToString();
+                wrk.MessageContent = objwrk[(int)ColumnCnt.MessageContent].ToString();
+                wrk.LinkType = int.Parse(objwrk[(int)ColumnCnt.LinkType].ToString());
+                wrk.LinkMessage = objwrk[(int)ColumnCnt.LinkMessage].ToString();
+                wrk.LinkCode = objwrk[(int)ColumnCnt.LinkCode].ToString();
+                wrk.WritingDate = DateTime.Parse(objwrk[(int)ColumnCnt.WritingDate].ToString());
+                wrk.PersonCode = int.Parse(objwrk[(int)ColumnCnt.PersonCode].ToString());
+                wrk.ShareFlag = int.Parse(objwrk[(int)ColumnCnt.ShareFlag].ToString());
+                wrk.MessageColor = objwrk[(int)ColumnCnt.MessageColor].ToString();
+                wrk.BackColor = objwrk[(int)ColumnCnt.BackColor].ToString();
+                wrk.MessageFlag = int.Parse(objwrk[(int)ColumnCnt.MessageFlag].ToString());
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)ColumnCnt.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ColumnCnt.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBoardDataTerget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBoardDataTerget.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBoardDataTerget.cs	(revision 51)
@@ -57,7 +57,7 @@
 
         #region パブリックメソッド
         /// <summary>
-        /// 掲示板データ検索
+        /// 掲示板データ検索SQL作成
         /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
         /// <param name="data">掲示板データデータ</param>
@@ -77,6 +77,16 @@
 
             return strcmd;
         }
+        #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<MessageBoardTerget> data, bool bConnect = true)
         {
             //Oracle インターフェース
@@ -103,10 +113,20 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
+
+        #region データ検索（１件）
+        /// <summary>
+        /// データ検索（１件）
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
         public bool SelectAction(string AddSQLString, ref MessageBoardTerget data, bool bConnect = true)
         {
             //Oracle インターフェース
@@ -134,13 +154,15 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
+        #region 掲示板データ追加（1件）
         /// <summary>
-        /// 掲示板データ追加
+        /// 掲示板データ追加（1件）
         /// </summary>
         /// <param name="data">掲示板データデータ</param>
         /// <returns>true：成功 false：失敗</returns>
@@ -149,9 +171,16 @@
             string strcmd = "";
             try
             {
-
                 strcmd = "INSERT INTO MessageBoardTerget";
 
+                strcmd += " (RecordNumber";
+                strcmd += ",BranchNumber";
+                strcmd += ",SeqNum";
+                strcmd += ",ToCode";
+                strcmd += ",ToName";
+                strcmd += " ,EntryDate";
+                strcmd += " ,UpdateDate)";
+
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0} ", CommonMotions.cnvInt(work.RecordNumber.ToString()));
@@ -160,8 +189,8 @@
                 strcmd += string.Format(", {0} ", work.ToCode);
                 strcmd += string.Format(",'{0}'", work.ToName.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -170,13 +199,15 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
+        #region 掲示板データ追加（複数件）
         /// <summary>
-        /// 掲示板データ追加
+        /// 掲示板データ追加（複数件）
         /// </summary>
         /// <param name="data">掲示板データデータ</param>
         /// <returns>true：成功 false：失敗</returns>
@@ -185,7 +216,6 @@
             string strcmd = "";
             try
             {
-
                 foreach (MessageBoardTerget work in data)
                 {
                     if (!InsertAction(work, bConnect)) return false;
@@ -194,11 +224,13 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
+        #region 掲示板データ更新
         /// <summary>
         /// 掲示板データ更新
         /// </summary>
@@ -210,7 +242,6 @@
             string strcmd = "";
             try
             {
-
                 strcmd = "UPDATE MessageBoardTerget";
 
                 strcmd += " SET";
@@ -221,7 +252,7 @@
                 strcmd += string.Format(",ToCode = {0} ", data.ToCode);
                 strcmd += string.Format(",ToName = '{0}'", data.ToName.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -230,12 +261,13 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
-
+        #region 掲示板データ削除
         /// <summary>
         /// 掲示板データ削除
         /// </summary>
@@ -256,11 +288,13 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
+        #endregion
 
+        #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
         /// </summary>
@@ -282,18 +316,47 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 構造体をクリアする
+        /// <summary>
+        /// 構造体をクリアする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void ClearStruct(ref MessageBoardTerget wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.RecordNumber = 0;
+                wrk.BranchNumber = 0;
+                wrk.SeqNum = 0;
+                wrk.ToCode = 0;
+                wrk.ToName = string.Empty;
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
         #endregion
 
-        #region パブリックメソッド（特殊処理）
-
+        #region 主キー検索の文字列を返す
         /// <summary>
         /// 主キー検索の文字列を返す
         /// 他のテーブルは0のキーを許さないが
@@ -319,9 +382,11 @@
 
             return strWork;
         }
+        #endregion
 
+        #region 最大値を取得する(RecordNumber)
         /// <summary>
-        /// 最大値を取得する
+        /// 最大値を取得する(RecordNumber)
         /// </summary>
         /// <param name="AddSQLString"></param>
         /// <param name="bConnect"></param>
@@ -356,8 +421,11 @@
 
             return iRet;
         }
+        #endregion
+
+        #region 最大値を取得する(BranchNumber)
         /// <summary>
-        /// 最大値を取得する
+        /// 最大値を取得する(BranchNumber)
         /// </summary>
         /// <param name="AddSQLString"></param>
         /// <param name="bConnect"></param>
@@ -392,8 +460,11 @@
 
             return iRet;
         }
+        #endregion
+
+        #region 最大値を取得する(SeqNum)
         /// <summary>
-        /// 最大値を取得する
+        /// 最大値を取得する(SeqNum)
         /// </summary>
         /// <param name="AddSQLString"></param>
         /// <param name="bConnect"></param>
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBrowsingHistory.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBrowsingHistory.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOMessageBrowsingHistory.cs	(revision 51)
@@ -106,7 +106,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -140,7 +140,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -166,10 +166,10 @@
                 strcmd += string.Format(", {0} ", CommonMotions.cnvInt(work.BranchNumber.ToString()));
                 strcmd += string.Format(", {0} ", work.SeqNum);
                 strcmd += string.Format(", {0} ", work.BrowsingCode);
-                strcmd += string.Format(", DATE_FORMAT('{0}','YYYY/MM/DD  HH24:MI:SS')", work.BrowsingDate.ToString());
+                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s')", work.BrowsingDate.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -178,7 +178,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -203,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -232,7 +232,7 @@
                 strcmd += string.Format(",BrowsingCode = {0} ", data.BrowsingCode);
                 strcmd += string.Format(",BrowsingDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.BrowsingDate.ToShortDateString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -241,7 +241,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -268,7 +268,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -296,11 +296,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOOrdersPriceData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOOrdersPriceData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOOrdersPriceData.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient; 
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -31,7 +31,7 @@
         /// <summary>
         /// 担当者毎経費データフィールド並び
         /// </summary>
-        public enum OrdersPriceDataColumn
+        public enum TableColumn
         {
             ConstructionCode = 0,       // 工事コード
             ChangeNo,	                // 変更番号
@@ -67,7 +67,7 @@
         /// </summary>
         private string CreateSelectSQL()
         {
-            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            // SQL作成
             string strcmd = "SELECT";
 
             strcmd += "  ConstructionCode";             // 工事コード
@@ -92,7 +92,7 @@
         #region 複数読込み処理
         public bool SelectAction(string AddSQLString, ref List<OrdersPriceData> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -125,7 +125,7 @@
         #region 1件読込み処理
         public bool SelectAction(string AddSQLString, ref OrdersPriceData data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -172,7 +172,7 @@
                 strcmd += string.Format("  {0}", work.ConstructionCode);                    // 工事コード
 
                 strcmd += string.Format(", {0}", work.ChangeNo);	                        // 変更番号
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                                 , work.ChangeDate.ToShortDateString());	    // 変更日
                 strcmd += string.Format(", {0}", work.ChangePersonCode);                    // 変更者コード
                 strcmd += string.Format(",'{0}'", work.ChangePersonName);                   // 変更者名
@@ -184,8 +184,8 @@
 
                 strcmd += string.Format(",'{0}'", work.ChangeComment);                      // 変更理由
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -241,7 +241,7 @@
                 strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode);                  // 工事コード
 
                 strcmd += string.Format(",ChangeNo = {0}", data.ChangeNo);	                                // 変更番号
-                strcmd += string.Format(",ChangeDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",ChangeDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.ChangeDate.ToShortDateString());	                            // 変更日
                 strcmd += string.Format(",ChangePersonCode = {0}", data.ChangePersonCode);                  // 変更者コード
                 strcmd += string.Format(",ChangePersonName = '{0}'", data.ChangePersonName);                // 変更者名
@@ -253,7 +253,7 @@
 
                 strcmd += string.Format(",ChangeComment = '{0}'", data.ChangeComment);                      // 変更理由
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -277,7 +277,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -297,9 +297,8 @@
 
         #region データセット処理
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref OrdersPriceData wrk)
         {
@@ -306,25 +305,25 @@
             try
             {
                 // データ取得
-                wrk.ConstructionCode = int.Parse(objwrk[(int)OrdersPriceDataColumn.ConstructionCode].ToString());                   // 工事コード
-                wrk.ChangeNo = int.Parse(objwrk[(int)OrdersPriceDataColumn.ChangeNo].ToString());	                                // 変更番号
-                wrk.ChangeDate = DateTime.Parse(objwrk[(int)OrdersPriceDataColumn.ChangeDate].ToString());	                        // 変更日
-                wrk.ChangePersonCode = int.Parse(objwrk[(int)OrdersPriceDataColumn.ChangePersonCode].ToString());                   // 変更者コード
-                wrk.ChangePersonName = objwrk[(int)OrdersPriceDataColumn.ChangePersonName].ToString();                              // 変更者名
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());                   // 工事コード
+                wrk.ChangeNo = int.Parse(objwrk[(int)TableColumn.ChangeNo].ToString());	                                // 変更番号
+                wrk.ChangeDate = DateTime.Parse(objwrk[(int)TableColumn.ChangeDate].ToString());	                        // 変更日
+                wrk.ChangePersonCode = int.Parse(objwrk[(int)TableColumn.ChangePersonCode].ToString());                   // 変更者コード
+                wrk.ChangePersonName = objwrk[(int)TableColumn.ChangePersonName].ToString();                              // 変更者名
 
-                wrk.BeforeValue = int.Parse(objwrk[(int)OrdersPriceDataColumn.BeforeValue].ToString());                             // 変更前税抜受注金額
-                wrk.BeforeValueInTax = int.Parse(objwrk[(int)OrdersPriceDataColumn.BeforeValueInTax].ToString());                   // 　〃　税込受注金額
-                wrk.AfterValue = int.Parse(objwrk[(int)OrdersPriceDataColumn.AfterValue].ToString());                               // 変更後税抜受注金額
-                wrk.AfterValueInTax = int.Parse(objwrk[(int)OrdersPriceDataColumn.AfterValueInTax].ToString());                     // 　〃　税込受注金額
+                wrk.BeforeValue = int.Parse(objwrk[(int)TableColumn.BeforeValue].ToString());                             // 変更前税抜受注金額
+                wrk.BeforeValueInTax = int.Parse(objwrk[(int)TableColumn.BeforeValueInTax].ToString());                   // 　〃　税込受注金額
+                wrk.AfterValue = int.Parse(objwrk[(int)TableColumn.AfterValue].ToString());                               // 変更後税抜受注金額
+                wrk.AfterValueInTax = int.Parse(objwrk[(int)TableColumn.AfterValueInTax].ToString());                     // 　〃　税込受注金額
 
-                wrk.ChangeComment = objwrk[(int)OrdersPriceDataColumn.ChangeComment].ToString();                                    // 変更理由
+                wrk.ChangeComment = objwrk[(int)TableColumn.ChangeComment].ToString();                                    // 変更理由
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)OrdersPriceDataColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)OrdersPriceDataColumn.UpdateDate].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);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
@@ -333,6 +332,68 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE OrdersPriceData";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:         // 工事コード
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ChangeNo:	                // 変更番号
+                        strcmd += string.Format(" ChangeNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ChangeDate:	            // 変更日
+                        strcmd += string.Format(" ChangeDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.ChangePersonCode:         // 変更者コード
+                        strcmd += string.Format(" ChangePersonCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ChangePersonName:         // 変更者名
+                        strcmd += string.Format(" ChangePersonName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.BeforeValue:              // 変更前税抜受注金額
+                        strcmd += string.Format(" BeforeValue = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.BeforeValueInTax:         // 　〃　税込受注金額
+                        strcmd += string.Format(" BeforeValueInTax = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.AfterValue:               // 変更後税抜受注金額
+                        strcmd += string.Format(" AfterValue = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.AfterValueInTax:          // 　〃　税込受注金額
+                        strcmd += string.Format(" AfterValueInTax = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.ChangeComment:            // 変更理由
+                        strcmd += string.Format(" ChangeComment = '{0}'", value.ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region 検索文字列作成処理
         /// <summary>
         /// 主キー検索の文字列を返す
@@ -369,7 +430,7 @@
         /// <returns></returns>
         public int SelectMaxAddDataCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPaymentApprovalInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPaymentApprovalInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPaymentApprovalInfo.cs	(revision 51)
@@ -0,0 +1,299 @@
+﻿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 IOPaymentApprovalInfo : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            CompanyCode = 0,
+            TargetDate,
+            SeqNo,
+            LineCount,
+            ApprovalNo,
+            ApprovalPerson,
+            ApprovalPersonName,
+            ApprovalAuthority,
+            ApprovalDate,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOPaymentApprovalInfo()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<PaymentApprovalInfo> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " CompanyCode,TargetDate,SeqNo,LineCount,ApprovalNo,ApprovalPerson,ApprovalPersonName,ApprovalAuthority";
+                strcmd += " ,DATE_FORMAT(ApprovalDate, '%Y/%m/%d')";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM PaymentApprovalInfo";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    PaymentApprovalInfo work = new PaymentApprovalInfo();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 新規登録
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(List<PaymentApprovalInfo> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (PaymentApprovalInfo work in data)
+                {
+                    strcmd = "INSERT INTO PaymentApprovalInfo";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.CompanyCode.ToString());
+                    strcmd += string.Format(", {0}", work.TargetDate.ToString());
+                    strcmd += string.Format(", {0}", work.SeqNo.ToString());
+                    strcmd += string.Format(", {0}", work.LineCount.ToString());
+                    strcmd += string.Format(", {0}", work.ApprovalNo.ToString());
+                    strcmd += string.Format(", {0}", work.ApprovalPerson.ToString());
+                    strcmd += string.Format(", '{0}'", work.ApprovalPersonName);
+                    strcmd += string.Format(", {0}", work.ApprovalAuthority.ToString());
+                    strcmd += string.Format(", DATE_FORMAT(DATE_FORMAT('{0}','%Y/%m/%d'),'%Y/%m/%d')", work.ApprovalDate.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新登録
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateAction(string AddSQLString, PaymentApprovalInfo data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE PaymentApprovalInfo";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" ApprovalPerson = {0}", data.ApprovalPerson.ToString());
+                strcmd += string.Format(",ApprovalPersonName = '{0}'", data.ApprovalPersonName);
+                strcmd += string.Format(",ApprovalAuthority = {0}", data.ApprovalAuthority.ToString());
+                strcmd += string.Format(",ApprovalDate = DATE_FORMAT(DATE_FORMAT('{0}','%Y/%m/%d'),'%Y/%m/%d')", data.ApprovalDate.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM PaymentApprovalInfo", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+
+        /// <summary>
+        /// 構造体設定
+        /// </summary>
+        /// <param name="objwrk"></param>
+        /// <param name="wrk"></param>
+        public void Reader2Struct(object[] objwrk, ref PaymentApprovalInfo wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.CompanyCode = int.Parse(objwrk[(int)NameColumn.CompanyCode].ToString());
+                wrk.TargetDate = int.Parse(objwrk[(int)NameColumn.TargetDate].ToString());
+                wrk.SeqNo = int.Parse(objwrk[(int)NameColumn.SeqNo].ToString());
+                wrk.LineCount = int.Parse(objwrk[(int)NameColumn.LineCount].ToString());
+                wrk.ApprovalNo = int.Parse(objwrk[(int)NameColumn.ApprovalNo].ToString());
+                wrk.ApprovalPerson = int.Parse(objwrk[(int)NameColumn.ApprovalPerson].ToString());
+                wrk.ApprovalPersonName = objwrk[(int)NameColumn.ApprovalPersonName].ToString();
+                wrk.ApprovalAuthority = int.Parse(objwrk[(int)NameColumn.ApprovalAuthority].ToString());
+                wrk.ApprovalDate = DateTime.Parse(objwrk[(int)NameColumn.ApprovalDate].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        public bool RowLock(int CompanyCode, int TargetDate, int SeqNo, int LineCount, int ApprovalNo, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from PaymentApprovalInfo Where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} and LineCount = {3} and ApprovalNo = {4} for update;",
+                                        CompanyCode, TargetDate, SeqNo, LineCount, ApprovalNo);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+        public string CreatePrimarykeyString(int CompanyCode, int TargetDate, int SeqNo, int LineCount, int ApprovalNo)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} and LineCount = {3} and ApprovalNo = {4}", CompanyCode, TargetDate, SeqNo, LineCount,ApprovalNo);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPaymentDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPaymentDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPaymentDataDetail.cs	(revision 51)
@@ -0,0 +1,368 @@
+﻿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 IOPaymentDataDetail : MySqlProcess
+    {
+                #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// フィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            CompanyCode = 0,
+            TargetDate,
+            SeqNo,
+            LineCount,
+            BillPrice,
+            DiscountPrice,
+            OffsetPrice,
+            NextCoPrice,
+            HighwPrice,
+            HardwPrice,
+            IndsWasteTax,
+            CnstrPrice,
+            CnstrPriceExist,
+            ApprovalPersonCode,
+            ApprovalDate,
+            ApprovalEndFlg,
+            EntryDate,
+            UpdateDate,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOPaymentDataDetail()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<PaymentDataDetail> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " CompanyCode,TargetDate,SeqNo,LineCount,BillPrice,DiscountPrice,OffsetPrice,NextCoPrice,HighwPrice,HardwPrice,IndsWasteTax,CnstrPrice,CnstrPriceExist,ApprovalPersonCode,ApprovalDate,ApprovalEndFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM PaymentDataDetail";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    PaymentDataDetail work = new PaymentDataDetail();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+
+        /// <summary>
+        /// 新規登録
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(List<PaymentDataDetail> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (PaymentDataDetail work in data)
+                {
+                    strcmd = "INSERT INTO PaymentDataDetail";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", work.CompanyCode.ToString());
+                    strcmd += string.Format(", {0}", work.TargetDate.ToString());
+                    strcmd += string.Format(", {0}", work.SeqNo.ToString());
+                    strcmd += string.Format(", {0}", work.LineCount.ToString());
+                    strcmd += string.Format(", {0}", work.BillPrice.ToString());
+
+                    strcmd += string.Format(", {0}", work.DiscountPrice.ToString());
+                    strcmd += string.Format(", {0}", work.OffsetPrice.ToString());
+                    strcmd += string.Format(", {0}", work.NextCoPrice.ToString());
+                    strcmd += string.Format(", {0}", work.HighwPrice.ToString());
+                    strcmd += string.Format(", {0}", work.HardwPrice.ToString());
+                    strcmd += string.Format(", {0}", work.IndsWasteTax.ToString());
+                    strcmd += string.Format(", {0}", work.CnstrPrice.ToString());
+
+                    strcmd += string.Format(", {0}", work.CnstrPriceExist.ToString());
+                    strcmd += string.Format(", {0}", work.ApprovalPersonCode.ToString());
+                    strcmd += string.Format(", DATE_FORMAT(DATE_FORMAT('{0}','%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')", work.ApprovalDate.ToString());
+                    strcmd += string.Format(", {0}", work.ApprovalEndFlg.ToString());
+
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 更新登録
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool UpdateAction(string AddSQLString, PaymentDataDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE PaymentDataDetail";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" BillPrice = {0}", data.BillPrice.ToString());
+                strcmd += string.Format(",DiscountPrice = {0}", data.DiscountPrice.ToString());
+                strcmd += string.Format(",OffsetPrice = {0}", data.OffsetPrice.ToString());
+                strcmd += string.Format(",NextCoPrice = {0}", data.NextCoPrice.ToString());
+                strcmd += string.Format(",HighwPrice = {0}", data.HighwPrice.ToString());
+                strcmd += string.Format(",HardwPrice = {0}", data.HardwPrice.ToString());
+                strcmd += string.Format(",IndsWasteTax = {0}", data.IndsWasteTax.ToString());
+
+                strcmd += string.Format(",CnstrPrice = {0}", data.CnstrPrice.ToString());
+                strcmd += string.Format(",CnstrPriceExist = {0}", data.CnstrPriceExist.ToString());
+                strcmd += string.Format(",ApprovalPersonCode = {0}", data.ApprovalPersonCode.ToString());
+                strcmd += string.Format(",ApprovalDate = DATE_FORMAT(DATE_FORMAT('{0}','%Y/%m/%d'),'%Y/%m/%d')", data.ApprovalDate.ToString());
+                strcmd += string.Format(",ApprovalEndFlg = {0}", data.ApprovalEndFlg.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 削除
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM PaymentDataDetail", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+
+
+        /// <summary>
+        /// 構造体設定
+        /// </summary>
+        /// <param name="objwrk"></param>
+        /// <param name="wrk"></param>
+        public void Reader2Struct(object[] objwrk, ref PaymentDataDetail wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.CompanyCode = int.Parse(objwrk[(int)NameColumn.CompanyCode].ToString());
+                wrk.TargetDate = int.Parse(objwrk[(int)NameColumn.TargetDate].ToString());
+                wrk.SeqNo = int.Parse(objwrk[(int)NameColumn.SeqNo].ToString());
+                wrk.LineCount = int.Parse(objwrk[(int)NameColumn.LineCount].ToString());
+                wrk.BillPrice = long.Parse(objwrk[(int)NameColumn.BillPrice].ToString());
+                wrk.DiscountPrice = long.Parse(objwrk[(int)NameColumn.DiscountPrice].ToString());
+
+                wrk.OffsetPrice = long.Parse(objwrk[(int)NameColumn.OffsetPrice].ToString());
+                wrk.NextCoPrice = long.Parse(objwrk[(int)NameColumn.NextCoPrice].ToString());
+                wrk.HighwPrice = long.Parse(objwrk[(int)NameColumn.HighwPrice].ToString());
+                wrk.HardwPrice = long.Parse(objwrk[(int)NameColumn.HardwPrice].ToString());
+                wrk.IndsWasteTax = long.Parse(objwrk[(int)NameColumn.IndsWasteTax].ToString());
+
+                wrk.CnstrPrice = long.Parse(objwrk[(int)NameColumn.CnstrPrice].ToString());
+                wrk.CnstrPriceExist = int.Parse(objwrk[(int)NameColumn.CnstrPriceExist].ToString());
+                wrk.ApprovalPersonCode = int.Parse(objwrk[(int)NameColumn.ApprovalPersonCode].ToString());
+
+                wrk.ApprovalDate = DateTime.Parse(objwrk[(int)NameColumn.ApprovalDate].ToString());
+                wrk.ApprovalEndFlg = int.Parse(objwrk[(int)NameColumn.ApprovalEndFlg].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UpdateDate].ToString());
+            }
+            catch (MySqlException oraex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), oraex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region パブリックメソッド（特殊処理）
+
+        /// <summary>
+        /// 件数取得
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int DataCount(string AddSQLString, bool bConnect = true)
+        { 
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iReturn = 0;
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT count(CompanyCode)";
+                strcmd += " FROM PaymentDataDetail ";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return -1;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    iReturn = CommonMotions.cnvInt(objwrk[0]);
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+            return iReturn;
+        }
+
+        public string CreatePrimarykeyString(int CompanyCode, int TargetDate, int SeqNo, int LineCount)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} and LineCount = {3}", CompanyCode, TargetDate, SeqNo, LineCount);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+
+        /// <summary>
+        /// 行ロック
+        /// </summary>
+        public bool RowLock(int CompanyCode, int TargetDate, int SeqNo, int LineCount, bool bConnect = true)
+        {
+
+            //インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = string.Format("select * from PaymentDataDetail where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} and LineCount = {3} for update;",
+                                        CompanyCode, TargetDate, SeqNo, LineCount);
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+
+        }
+
+
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPointingOutComment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPointingOutComment.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPointingOutComment.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;  
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -95,13 +95,13 @@
         #region 複数データ読込み処理
         public bool SelectAction(string AddSQLString, ref List<PointingOutComment> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = CreateSelectSQL() + AddSQLString;
 
                 // SQL実行
@@ -128,13 +128,13 @@
         #region 1件データ読込処理
         public bool SelectAction(string AddSQLString, ref PointingOutComment data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                // SQL作成
                 strcmd = CreateSelectSQL() + AddSQLString;
 
                 // SQL実行
@@ -187,8 +187,8 @@
                     strcmd += string.Format(", {0}", data.CurrentWidth);
                     strcmd += string.Format(", {0}", data.CurrentHeight);
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -256,7 +256,7 @@
                 strcmd += string.Format(",CurrentWidth = {0}", data.CurrentWidth);
                 strcmd += string.Format(",CurrentHeight = {0}", data.CurrentHeight);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -280,7 +280,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -300,9 +300,8 @@
 
         #region 読込みオブジェクトセット処理
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref PointingOutComment wrk)
         {
@@ -328,7 +327,7 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
@@ -348,7 +347,7 @@
         /// <returns></returns>
         public int SelectMaxConstructionCodeCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsData.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -94,19 +94,19 @@
         /// </summary>
         private string CreateSelectSQL()
         {
-            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            // SQL作成
             string strcmd = "SELECT";
 
             strcmd += "  PersonCode";                                       // 担当者コード
-            strcmd += " ,DATE_FORMAT(ProceedingsDataDate, '%Y/%m/%d')";         // 議事録作成日
+            strcmd += " ,DATE_FORMAT(ProceedingsDataDate, '%Y/%m/%d')";       // 議事録作成日
             strcmd += " ,ConstructionCode";                                 // 工事番号
-            strcmd += " ,DATE_FORMAT(StartMeetingTime, '%Y/%m/%d')";            // 会議時間開始
-            strcmd += " ,DATE_FORMAT(EndMeetingTime, '%Y/%m/%d')";              // 会議時間終了
+            strcmd += " ,DATE_FORMAT(StartMeetingTime, '%Y/%m/%d')";          // 会議時間開始
+            strcmd += " ,DATE_FORMAT(EndMeetingTime, '%Y/%m/%d')";            // 会議時間終了
             strcmd += " ,MeetingPalce1";                                    // 打合せ場所１
             strcmd += " ,MeetingPalce2";                                    // 打合せ場所２
             strcmd += " ,MeetingPalce3";                                    // 打合せ場所３
-            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";          // 登録年月日
-            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";         // 更新年月日
+            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";      // 登録年月日
+            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";     // 更新年月日
             strcmd += " FROM ProceedingsData";
 
             return strcmd;
@@ -116,7 +116,7 @@
         #region 複数読込み処理
         public bool SelectAction(string AddSQLString, ref List<ProceedingsData> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -149,7 +149,7 @@
         #region 1件読込み処理
         public bool SelectAction(string AddSQLString, ref ProceedingsData data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -194,19 +194,19 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                          // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.ProceedingsDataDate.ToShortDateString());// 議事録作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                    // 工事番号
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.StartMeetingTime.ToShortDateString());   // 会議時間開始
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.StartMeetingTime.ToShortDateString());   // 会議時間終了
                 strcmd += string.Format(",'{0}'", work.MeetingPalce1);                      // 打合せ場所１
                 strcmd += string.Format(",'{0}'", work.MeetingPalce2);                      // 打合せ場所２
                 strcmd += string.Format(",'{0}'", work.MeetingPalce3);                      // 打合せ場所３
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -260,18 +260,18 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",ProceedingsDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",ProceedingsDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.ProceedingsDataDate.ToShortDateString());        // 議事録作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
-                strcmd += string.Format(",StartMeetingTime = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",StartMeetingTime = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.StartMeetingTime.ToShortDateString());           // 会議時間開始
-                strcmd += string.Format(",EndMeetingTime = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",EndMeetingTime = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.EndMeetingTime.ToShortDateString());             // 会議時間終了
                 strcmd += string.Format(",MeetingPalce1 = '{0}'", data.MeetingPalce1);          // 打合せ場所１
                 strcmd += string.Format(",MeetingPalce2 = '{0}'", data.MeetingPalce2);          // 打合せ場所２
                 strcmd += string.Format(",MeetingPalce3 = '{0}'", data.MeetingPalce3);          // 打合せ場所３
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -295,7 +295,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -315,9 +315,8 @@
 
         #region データセット処理
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref ProceedingsData wrk)
         {
@@ -339,7 +338,7 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
@@ -364,7 +363,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (ProceedingsDataDate != DateTime.MinValue)
-                    strWork += string.Format(" AND ProceedingsDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", ProceedingsDataDate.ToShortDateString());
+                    strWork += string.Format(" AND ProceedingsDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", ProceedingsDataDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
             }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsDataAttendee.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsDataAttendee.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsDataAttendee.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -86,17 +86,17 @@
         /// </summary>
         private string CreateSelectSQL()
         {
-            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            // SQL作成
             string strcmd = "SELECT";
 
             strcmd += "  PersonCode";                                       // 担当者コード
-            strcmd += " ,DATE_FORMAT(ProceedingsDataDate, '%Y/%m/%d')";         // 議事録作成日
+            strcmd += " ,DATE_FORMAT(ProceedingsDataDate, '%Y/%m/%d')";       // 議事録作成日
             strcmd += " ,ConstructionCode";                                 // 工事番号
             strcmd += " ,SeqNo";                                            // データ行番号
             strcmd += " ,Department";                                       // 出席者所属
             strcmd += " ,AttendeeName";                                     // 出席者氏名
-            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";          // 登録年月日
-            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";         // 更新年月日
+            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";      // 登録年月日
+            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";     // 更新年月日
             strcmd += " FROM ProceedingsDataAttendee";
 
             return strcmd;
@@ -106,7 +106,7 @@
         #region 複数読込み処理
         public bool SelectAction(string AddSQLString, ref List<ProceedingsDataAttendee> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -139,7 +139,7 @@
         #region 1件読込み処理
         public bool SelectAction(string AddSQLString, ref ProceedingsDataAttendee data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -184,7 +184,7 @@
                 strcmd += " VALUES (";
 
                 strcmd += string.Format("  {0}", work.PersonCode);                          // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
                                             , work.ProceedingsDataDate.ToShortDateString());      // 議事録作成日
                 strcmd += string.Format(", {0}", work.ConstructionCode);                    // 工事番号
                 strcmd += string.Format(", {0}", work.SeqNo);                               // データ行番号
@@ -192,8 +192,8 @@
                 strcmd += string.Format(",'{0}'", work.Department);                         // 出席者所属
                 strcmd += string.Format(",'{0}'", work.AttendeeName);                       // 出席者氏名
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -247,7 +247,7 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",ProceedingsDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
+                strcmd += string.Format(",ProceedingsDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
                                         , data.ProceedingsDataDate.ToShortDateString());        // 議事録作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",SeqNo = {0}", data.SeqNo);                            // データ行番号
@@ -255,7 +255,7 @@
                 strcmd += string.Format(",Department = '{0}'", data.Department);                // 出席者所属
                 strcmd += string.Format(",AttendeeName = '{0}'", data.AttendeeName);            // 出席者氏名
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -279,7 +279,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -299,9 +299,8 @@
 
         #region データセット処理
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref ProceedingsDataAttendee wrk)
         {
@@ -321,7 +320,7 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
@@ -346,7 +345,7 @@
             {
                 strWork = string.Format(" WHERE PersonCode = {0}", PersonCode);
                 if (ProceedingsDataDate != DateTime.MinValue)
-                    strWork += string.Format(" AND ProceedingsDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", ProceedingsDataDate.ToShortDateString());
+                    strWork += string.Format(" AND ProceedingsDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", ProceedingsDataDate.ToShortDateString());
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
             }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsDataDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProceedingsDataDetail.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -90,18 +90,18 @@
         /// </summary>
         private string CreateSelectSQL()
         {
-            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            // SQL作成
             string strcmd = "SELECT";
 
             strcmd += "  PersonCode";                                       // 担当者コード
-            strcmd += " ,DATE_FORMAT(ProceedingsDataDate, '%Y/%m/%d')";         // 議事録作成日
+            strcmd += " ,DATE_FORMAT(ProceedingsDataDate, '%Y/%m/%d')";       // 議事録作成日
             strcmd += " ,ConstructionCode";                                 // 工事番号
             strcmd += " ,SeqNo";                                            // データ行番号
             strcmd += " ,TitileNo";                                         // 議題番号
             strcmd += " ,Titile";                                           // 議題
             strcmd += " ,Contents";                                         // 内容
-            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";          // 登録年月日
-            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";         // 更新年月日
+            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";      // 登録年月日
+            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";     // 更新年月日
             strcmd += " FROM ProceedingsDataDetail";
 
             return strcmd;
@@ -111,7 +111,7 @@
         #region 複数読込み処理
         public bool SelectAction(string AddSQLString, ref List<ProceedingsDataDetail> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -144,7 +144,7 @@
         #region 1件読込み処理
         public bool SelectAction(string AddSQLString, ref ProceedingsDataDetail data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -188,18 +188,18 @@
 
                 strcmd += " VALUES (";
 
-                strcmd += string.Format("  {0}", work.PersonCode);                              // 担当者コード
-                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')"
-                                            , work.ProceedingsDataDate.ToShortDateString());    // 議事録作成日
-                strcmd += string.Format(", {0}", work.ConstructionCode);                        // 工事番号
-                strcmd += string.Format(", {0}", work.SeqNo);                                   // データ行番号
+                strcmd += string.Format("  {0}", work.PersonCode);                          // 担当者コード
+                strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')"
+                                            , work.ProceedingsDataDate.ToShortDateString());      // 議事録作成日
+                strcmd += string.Format(", {0}", work.ConstructionCode);                    // 工事番号
+                strcmd += string.Format(", {0}", work.SeqNo);                               // データ行番号
 
-                strcmd += string.Format(", {0}", work.TitleNo);                                 // 議題番号
-                strcmd += string.Format(",'{0}'", work.Title);                                  // 議題
-                strcmd += string.Format(",'{0}'", work.Contents);                               // 内容
+                strcmd += string.Format(", {0}", work.TitleNo);                            // 議題番号
+                strcmd += string.Format(",'{0}'", work.Title);                             // 議題
+                strcmd += string.Format(",'{0}'", work.Contents);                           // 内容
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -253,8 +253,8 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PersonCode = {0}", data.PersonCode);                  // 担当者コード
-                strcmd += string.Format(",ProceedingsDataDate = DATE_FORMAT('{0}','%Y/%m/%d')"
-                                        , data.ProceedingsDataDate.ToShortDateString());        // 議事録作成日
+                strcmd += string.Format(",ProceedingsDataDate = STR_TO_DATE('{0}','%Y/%m/%d')"
+                                        , data.ProceedingsDataDate.ToShortDateString());              // 議事録作成日
                 strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode);      // 工事番号
                 strcmd += string.Format(",SeqNo = {0}", data.SeqNo);                            // データ行番号
 
@@ -262,7 +262,7 @@
                 strcmd += string.Format(",Titile = '{0}'", data.Title);                         // 議題
                 strcmd += string.Format(",Contents = '{0}'", data.Contents);                    // 内容
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -286,7 +286,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -306,9 +306,8 @@
 
         #region データセット処理
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 構造体へセットする
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref ProceedingsDataDetail wrk)
         {
@@ -329,7 +328,7 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
@@ -356,7 +355,7 @@
                 if (ConstructionCode != 0)
                     strWork += string.Format(" AND ConstructionCode = {0}", ConstructionCode);
                 if (ProceedingsDataDate != DateTime.MinValue)
-                    strWork += string.Format(" AND ProceedingsDataDate = DATE_FORMAT('{0}','%Y/%m/%d')", ProceedingsDataDate.ToShortDateString());
+                    strWork += string.Format(" AND ProceedingsDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", ProceedingsDataDate.ToShortDateString());
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProcessApproval.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProcessApproval.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProcessApproval.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -35,6 +35,7 @@
         {
             ConstructionCode,
             ApprovalCode,
+            OrderNo,
             SeqNo,
             PersonCode,
             PetitionApprovalDate,
@@ -67,14 +68,15 @@
         /// <returns>true：成功 false：失敗</returns>
         private string CreateSelectSQL()
         {
-            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            // SQL作成
             string strcmd = "SELECT";
             strcmd += " ConstructionCode";
             strcmd += ",ApprovalCode";
+            strcmd += ",OrderNo";
             strcmd += ",SeqNo";
             strcmd += ",PersonCode";
-            strcmd += ",DATE_FORMAT(PetitionApprovalDate, '%Y/%m/%d')";
-            strcmd += ",DATE_FORMAT(ApprovalLimitDates, '%Y/%m/%d')";
+            strcmd += ",DATE_FORMAT(PetitionApprovalDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += ",DATE_FORMAT(ApprovalLimitDates, '%Y/%m/%d %H:%i:%s')";
             strcmd += ",ApprovalStatus";
             strcmd += ",InputComment";
             strcmd += ",DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
@@ -95,7 +97,7 @@
         /// <returns></returns>
         public bool SelectAction(string AddSQLString, ref List<ProcessApproval> data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -119,7 +121,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -136,7 +138,7 @@
         /// <returns></returns>
         public bool SelectAction(string AddSQLString, ref ProcessApproval data, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
 
@@ -157,7 +159,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -183,7 +185,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -203,21 +205,33 @@
             {
 
                     strcmd = "INSERT INTO ProcessApproval";
+                    strcmd += " (ConstructionCode";
+                    strcmd += ",ApprovalCode";
+                    strcmd += ",OrderNo";
+                    strcmd += ",SeqNo";
+                    strcmd += ",PersonCode";
+                    strcmd += ",PetitionApprovalDate";
+                    strcmd += ",ApprovalLimitDates";
+                    strcmd += ",ApprovalStatus";
+                    strcmd += ",InputComment";
+                    strcmd += ",EntryDate";
+                    strcmd += ",UpdateDate)";
 
                     strcmd += " VALUES (";
 
                     strcmd += string.Format("  {0}", data.ConstructionCode.ToString());
                     strcmd += string.Format(", {0}", data.ApprovalCode.ToString());
+                    strcmd += string.Format(", {0}", data.OrderNo.ToString());
                     strcmd += string.Format(", {0}", data.SeqNo.ToString());
                     strcmd += string.Format(", {0}", data.PersonCode.ToString());
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.PetitionApprovalDate.ToString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.PetitionApprovalDate.ToString());
 
-                    strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.ApprovalLimitDates.ToString());
+                    strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.ApprovalLimitDates.ToString());
                     strcmd += string.Format(", {0}", data.ApprovalStatus.ToString());
                     strcmd += string.Format(",'{0}'", data.InputComment.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -226,7 +240,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -251,14 +265,15 @@
 
                 strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode.ToString());
                 strcmd += string.Format(",ApprovalCode = {0}", data.ApprovalCode.ToString());
+                strcmd += string.Format(",OrderNo = {0}", data.OrderNo.ToString());
                 strcmd += string.Format(",SeqNo = {0}", data.SeqNo.ToString());
                 strcmd += string.Format(",PersonCode = {0}", data.PersonCode.ToString());
-                strcmd += string.Format(",PetitionApprovalDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.PetitionApprovalDate.ToString());
-                strcmd += string.Format(",ApprovalLimitDates = DATE_FORMAT('{0}','%Y/%m/%d')", data.ApprovalLimitDates.ToString());
+                strcmd += string.Format(",PetitionApprovalDate = STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.PetitionApprovalDate.ToString());
+                strcmd += string.Format(",ApprovalLimitDates = STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", data.ApprovalLimitDates.ToString());
                 strcmd += string.Format(",ApprovalStatus = {0}", data.ApprovalStatus.ToString());
                 strcmd += string.Format(",InputComment = '{0}'", data.InputComment);
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -267,7 +282,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -282,7 +297,7 @@
         /// <returns>true：成功 false：失敗</returns>
         public bool DeleteAction(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             try
             {
@@ -294,17 +309,75 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
         #endregion
 
-        #region OracleDataReaderより構造体へセットする
+        #region 1項目更新処理
         /// <summary>
-        /// OracleDataReaderより構造体へセットする
+        /// 1項目の更新を行う
         /// </summary>
-        /// <param name="reader">OracleDataReader</param>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true, int ApprovalCode = 0, int OrderNo = 0, int SeqNo = 0)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ProcessApproval";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)ColumnName.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.ApprovalCode:
+                        strcmd += string.Format(" ApprovalCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.OrderNo:
+                        strcmd += string.Format(" OrderNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.SeqNo:
+                        strcmd += string.Format(" SeqNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.PersonCode:
+                        strcmd += string.Format(" PersonCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.PetitionApprovalDate:
+                        strcmd += string.Format(" PetitionApprovalDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)ColumnName.ApprovalLimitDates:
+                        strcmd += string.Format(" ApprovalLimitDates = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)ColumnName.ApprovalStatus:
+                        strcmd += string.Format(" ApprovalStatus = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.InputComment:
+                        strcmd += string.Format(" InputComment = '{0}'", value.ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode, ApprovalCode, OrderNo, SeqNo);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 構造体へセットする
+        /// <summary>
+        /// 構造体へセットする
+        /// </summary>
         /// <param name="wrk">構造体</param>
         public void Reader2Struct(object[] objwrk, ref ProcessApproval wrk)
         {
@@ -313,6 +386,7 @@
                 // データ取得
                 wrk.ConstructionCode = int.Parse(objwrk[(int)ColumnName.ConstructionCode].ToString());
                 wrk.ApprovalCode = int.Parse(objwrk[(int)ColumnName.ApprovalCode].ToString());
+                wrk.OrderNo = int.Parse(objwrk[(int)ColumnName.OrderNo].ToString());
                 wrk.SeqNo = int.Parse(objwrk[(int)ColumnName.SeqNo].ToString());
                 wrk.PersonCode = int.Parse(objwrk[(int)ColumnName.PersonCode].ToString());
                 wrk.PetitionApprovalDate = DateTime.Parse(objwrk[(int)ColumnName.PetitionApprovalDate].ToString());
@@ -325,11 +399,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -340,16 +414,18 @@
         /// </summary>
         /// <param name="BusinessTypeCode"></param>
         /// <returns>Where文字列</returns>
-        public string CreatePrimarykeyString(int ConstructionCode, int ApprovalCode = 0, int SeqNo = 0)
+        public string CreatePrimarykeyString(int ConstructionCode, int ApprovalCode = 0, int OrderNo = 0, int SeqNo = 0, string APara = "")
         {
             string strWork = string.Empty;
             try
             {
-                strWork = string.Format(" Where ConstructionCode = {0}", ConstructionCode.ToString());
+                strWork = string.Format(" Where {0}ConstructionCode = {1}", APara, ConstructionCode.ToString());
                 if (ApprovalCode != 0)
-                    strWork += string.Format(" And ApprovalCode = {0}", ApprovalCode.ToString());
+                    strWork += string.Format(" And {0}ApprovalCode = {1}", APara, ApprovalCode.ToString());
+                if (OrderNo != 0)
+                    strWork += string.Format(" And {0}OrderNo = {1}", APara, OrderNo.ToString());
                 if (SeqNo != 0)
-                    strWork += string.Format(" And SeqNo = {0}", SeqNo.ToString());
+                    strWork += string.Format(" And {0}SeqNo = {1}", APara, SeqNo.ToString());
             }
             catch (Exception ex)
             {
@@ -360,6 +436,45 @@
         }
         #endregion
 
+        #region 受付番号の最大値を取得する
+        /// <summary>
+        /// 受付番号の最大値を取得する
+        /// </summary>
+        /// <param name="AddSQLString"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public int SelectMaxOrderNoCount(string AddSQLString, bool bConnect = true)
+        {
+            // インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(OrderNo), 0) FROM ProcessApproval" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals("null"))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+            return iRet;
+        }
+        #endregion
+
         #region 枝番の最大値を取得する
         /// <summary>
         /// 枝番の最大値を取得する
@@ -369,7 +484,7 @@
         /// <returns></returns>
         public int SelectMaxSeqNoCount(string AddSQLString, bool bConnect = true)
         {
-            //Oracle インターフェース
+            // インターフェース
             string strcmd = "";
             ArrayList arData = new ArrayList();
             int iRet = 0;
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProcessApprovalDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProcessApprovalDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOProcessApprovalDetail.cs	(revision 51)
@@ -0,0 +1,439 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Collections;
+
+using log4net;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
+
+using ProcessManagement.DB.MySql;
+using ProcessManagement.DB.Core;
+using ProcessManagement.DataModel;
+
+using ProcessManagement.Common;
+
+namespace ProcessManagement.DB.IOAccess
+{
+    /// <summary>
+    /// 承認データアクセスクラス
+    /// </summary>
+    public class IOProcessApprovalDetail : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 承認データフィールド並び
+        /// </summary>
+        public enum ColumnName
+        {
+            ConstructionCode,
+            ApprovalCode,
+            OrderNo,
+            SerialNo,
+            LinkCode,
+            ENTRY_DATE,
+            UPDATE_DATE
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="ConnectionString"></param>
+        public IOProcessApprovalDetail()
+            : 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作成
+            string strcmd = "SELECT";
+            strcmd += " ConstructionCode";
+            strcmd += ",ApprovalCode";
+            strcmd += ",OrderNo";
+            strcmd += ",SerialNo";
+            strcmd += ",LinkCode";
+            strcmd += ",DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += ",DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM ProcessApprovalDetail";
+
+            return strcmd;
+        }
+        #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<ProcessApprovalDetail> data, bool bConnect = true)
+        {
+            // インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    ProcessApprovalDetail work = new ProcessApprovalDetail();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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 ProcessApprovalDetail data, bool bConnect = true)
+        {
+            // インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+                if (arData.Count == 0) return false;
+
+                // データセット
+                object[] objwrk = (object[])arData[0];
+                Reader2Struct(objwrk, ref data);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+
+        }
+        #endregion
+
+        #region 承認データ追加（複数）
+        /// <summary>
+        /// 承認データ追加（複数）
+        /// </summary>
+        /// <param name="data">承認データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<ProcessApprovalDetail> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                foreach (ProcessApprovalDetail work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 承認データ追加（1件）
+        /// <summary>
+        /// 承認データ追加（1件）
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(ProcessApprovalDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                    strcmd = "INSERT INTO ProcessApprovalDetail";
+                    strcmd += " (ConstructionCode";
+                    strcmd += ",ApprovalCode";
+                    strcmd += ",OrderNo";
+                    strcmd += ",SerialNo";
+                    strcmd += ",LinkCode";
+                    strcmd += ",EntryDate";
+                    strcmd += ",UpdateDate)";
+
+                    strcmd += " VALUES (";
+
+                    strcmd += string.Format("  {0}", data.ConstructionCode.ToString());
+                    strcmd += string.Format(", {0}", data.ApprovalCode.ToString());
+                    strcmd += string.Format(", {0}", data.OrderNo.ToString());
+                    strcmd += string.Format(", {0}", data.SerialNo.ToString());
+                    strcmd += string.Format(", {0}", data.LinkCode.ToString());
+
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd = strcmd + ")";
+
+                    if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 承認データ更新
+        /// <summary>
+        /// 承認データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">承認データデータ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, ProcessApprovalDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE ProcessApprovalDetail";
+
+                strcmd += " SET";
+
+                strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode.ToString());
+                strcmd += string.Format(",ApprovalCode = {0}", data.ApprovalCode.ToString());
+                strcmd += string.Format(",OrderNo = {0}", data.OrderNo.ToString());
+                strcmd += string.Format(",SerialNo = {0}", data.SerialNo.ToString());
+                strcmd += string.Format(",LinkCode = {0}", data.LinkCode.ToString());
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                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)
+        {
+            // インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM ProcessApprovalDetail", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true, int ApprovalCode = 0, int OrderNo = 0, int SeqNo = 0)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE ProcessApprovalDetail";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)ColumnName.ConstructionCode:
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.ApprovalCode:
+                        strcmd += string.Format(" ApprovalCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.OrderNo:
+                        strcmd += string.Format(" OrderNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.SerialNo:
+                        strcmd += string.Format(" SerialNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)ColumnName.LinkCode:
+                        strcmd += string.Format(" PersonCode = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode, ApprovalCode, OrderNo, SeqNo);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 構造体へセットする
+        /// <summary>
+        /// 構造体へセットする
+        /// </summary>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref ProcessApprovalDetail wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.ConstructionCode = int.Parse(objwrk[(int)ColumnName.ConstructionCode].ToString());
+                wrk.ApprovalCode = int.Parse(objwrk[(int)ColumnName.ApprovalCode].ToString());
+                wrk.OrderNo = int.Parse(objwrk[(int)ColumnName.OrderNo].ToString());
+                wrk.SerialNo = int.Parse(objwrk[(int)ColumnName.SerialNo].ToString());
+                wrk.LinkCode = int.Parse(objwrk[(int)ColumnName.LinkCode].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)ColumnName.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)ColumnName.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int ConstructionCode, int ApprovalCode = 0, int OrderNo = 0, int SerialNo = 0, string APara = "")
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where {0}ConstructionCode = {1}", APara, ConstructionCode.ToString());
+                if (ApprovalCode != 0)
+                    strWork += string.Format(" And {0}ApprovalCode = {1}", APara, ApprovalCode.ToString());
+                if (OrderNo != 0)
+                    strWork += string.Format(" And {0}OrderNo = {1}", APara, OrderNo.ToString());
+                if (SerialNo != 0)
+                    strWork += string.Format(" And {0}SerialNo = {1}", APara, SerialNo.ToString());
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+
+        #region 枝番の最大値を取得する
+        /// <summary>
+        /// 枝番の最大値を取得する
+        /// </summary>
+        /// <returns></returns>
+        public int MaxSerialNoCount(string AddSQLString, bool bConnect = true)
+        {
+            // インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+            int iRet = 0;
+            try
+            {
+                // SQL作成
+                strcmd = "SELECT IFNULL(MAX(SerialNo), 0) FROM ProcessApprovalDetail" + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return iRet;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    if (objwrk[0].ToString().Equals("null"))
+                        iRet = 0;
+                    else
+                        iRet = int.Parse(objwrk[0].ToString());
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+            }
+            return iRet;
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPurchaseOrder.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPurchaseOrder.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPurchaseOrder.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -31,7 +31,7 @@
         /// <summary>
         /// 注文書データフィールド並び
         /// </summary>
-        public enum PurchaseOrderColumn
+        public enum TableColumn
         {
             ConstructionCode = 0,	    // 工事番号
             SeqNo,                      // 注文書枝番
@@ -90,9 +90,9 @@
             strcmd += " ConstructionCode";                                  // 工事番号
             strcmd += ",SeqNo";                                             // 注文書枝番
             strcmd += ",CompanyCode";                                       // 協力会社コード
-            strcmd += ",DATE_FORMAT(CreateDate, '%Y/%m/%d')";                   // 作成日付
+            strcmd += ",DATE_FORMAT(CreateDate, '%Y/%m/%d')";                 // 作成日付
             strcmd += ",OrderPrice";                                        // 発注金額
-            strcmd += ",DATE_FORMAT(LastRowStringDate, '%Y/%m/%d')";            // 最終行表示文字
+            strcmd += ",DATE_FORMAT(LastRowStringDate, '%Y/%m/%d')";          // 最終行表示文字
 
             strcmd += ",OrderSheetType";                                    // 簡易・本式フラグ
             strcmd += ",PaymentTerms";                                      // 支払い条件
@@ -115,7 +115,7 @@
             strcmd += ",SafetyOfficerCode";                                 // 安全管理者コード
             strcmd += ",SafetyOfficerName";                                 // 安全管理者名
             strcmd += ",WorkersCount";                                      // 作業員数
-            strcmd += ",DATE_FORMAT(PrintoutDate, '%Y/%m/%d')";                 // 印刷年月日
+            strcmd += ",DATE_FORMAT(PrintoutDate, '%Y/%m/%d')";               // 印刷年月日
 
             strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
@@ -218,7 +218,41 @@
             {
 
                 strcmd = "INSERT INTO PurchaseOrder";
+                strcmd += " (";
+                strcmd += " ConstructionCode";                                  // 工事番号
+                strcmd += ",SeqNo";                                             // 注文書枝番
+                strcmd += ",CompanyCode";                                       // 協力会社コード
+                strcmd += ",CreateDate";                                        // 作成日付
+                strcmd += ",OrderPrice";                                        // 発注金額
+                strcmd += ",LastRowStringDate";                                 // 最終行表示文字
 
+                strcmd += ",OrderSheetType";                                    // 簡易・本式フラグ
+                strcmd += ",PaymentTerms";                                      // 支払い条件
+                strcmd += ",CashRatio";                                         // 現金割合（％）
+                strcmd += ",BillPeriod";                                        // 手形期間
+
+                strcmd += ",PrePayments";                                       // 前金払
+                strcmd += ",PrePaymentsDays";                                   // 前金払日数
+                strcmd += ",PrePaymentsPrice";                                  // 前金払金額
+                strcmd += ",PartialPayment";                                    // 部分払
+                strcmd += ",PartialPaymentMounth";                              // 部分払締切月
+                strcmd += ",PartialPaymentDay1";                                // 部分払締切日
+                strcmd += ",PartialPaymentDay2";                                // 部分払支払日
+                strcmd += ",PartialPaymentPrice";                               // 部分払金額
+                strcmd += ",CompletionPayment";                                 // 引渡し時の支払
+                strcmd += ",CompletionPaymentDays";                             // 引渡し時の支払日数
+                strcmd += ",CompletionPaymentPrice";                            // 引渡し時の支払金額
+                strcmd += ",LeadEngineerCode";                                  // 主任技術者コード
+                strcmd += ",LeadEngineerName";                                  // 主任技術者名
+                strcmd += ",SafetyOfficerCode";                                 // 安全管理者コード
+                strcmd += ",SafetyOfficerName";                                 // 安全管理者名
+                strcmd += ",WorkersCount";                                      // 作業員数
+                strcmd += ",PrintoutDate";                                      // 印刷年月日
+
+                strcmd += ",EntryDate";
+                strcmd += ",UpdateDate";
+                strcmd += ")";
+
                 strcmd += " VALUES (";
 
                 strcmd += string.Format(" {0}", work.ConstructionCode);                     // 工事番号
@@ -225,10 +259,10 @@
                 strcmd += string.Format(",{0}", work.SeqNo);                                // 注文書枝番
 
                 strcmd += string.Format(",{0}", work.CompanyCode);                          // 協力会社コード
-                strcmd += string.Format(",DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(",STR_TO_DATE('{0}','%Y/%m/%d')",
                                                 work.CreateDate.ToShortDateString());       // 作成日付
                 strcmd += string.Format(",{0}", work.OrderPrice);                           // 発注金額
-                strcmd += string.Format(",DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(",STR_TO_DATE('{0}','%Y/%m/%d')",
                                                 work.LastRowStringDate.ToShortDateString());// 最終行表示日付
 
                 strcmd += string.Format(",{0}", work.OrderSheetType);                       // 簡易・本式フラグ
@@ -252,12 +286,12 @@
                 strcmd += string.Format(",{0}", work.SafetyOfficerCode);                    // 安全管理者コード
                 strcmd += string.Format(",'{0}'", work.SafetyOfficerName);                  // 安全管理者名
                 strcmd += string.Format(",{0}", work.WorkersCount);                         // 作業員数
-                strcmd += string.Format(",DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(",STR_TO_DATE('{0}','%Y/%m/%d')",
                                                 work.PrintoutDate.ToShortDateString());     // 印刷年月日
 
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATEE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -318,10 +352,10 @@
                 strcmd += string.Format(",SeqNo = {0}", data.SeqNo);                                            // 注文書枝番
                 strcmd += string.Format(",CompanyCode = {0}", data.CompanyCode);                                // 協力会社コード
 
-                strcmd += string.Format(",CreateDate = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(",CreateDate = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                                     data.CreateDate.ToShortDateString());       // 作成日付
                 strcmd += string.Format(",OrderPrice = {0}", data.OrderPrice);                                  // 発注金額
-                strcmd += string.Format(",LastRowStringDate = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(",LastRowStringDate = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                                     data.LastRowStringDate.ToShortDateString());// 最終行表示日付
 
 
@@ -348,10 +382,10 @@
                 strcmd += string.Format(",SafetyOfficerCode = {0}", data.SafetyOfficerCode);                    // 安全管理者コード
                 strcmd += string.Format(",SafetyOfficerName = '{0}'", data.SafetyOfficerName);                  // 安全管理者名
                 strcmd += string.Format(",WorkersCount = {0}", data.WorkersCount);                              // 作業員数
-                strcmd += string.Format(",PrintoutDate = DATE_FORMAT('{0}','%Y/%m/%d')",
+                strcmd += string.Format(",PrintoutDate = STR_TO_DATE('{0}','%Y/%m/%d')",
                                                                     data.PrintoutDate.ToShortDateString());     // 印刷年月日
-
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -393,6 +427,119 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true, int SeqNo = 0)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE PurchaseOrder";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode:	        // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.SeqNo:                    // 注文書枝番
+                        strcmd += string.Format(" SeqNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CompanyCode:              // 協力会社コード
+                        strcmd += string.Format(" CompanyCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CreateDate:               // 作成日付
+                        strcmd += string.Format(" CreateDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.OrderPrice:               // 発注金額
+                        strcmd += string.Format(" OrderPrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.LastRowStringDate:        // 最終行表示日付
+                        strcmd += string.Format(" LastRowStringDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                    case (int)TableColumn.OrderSheetType:           // 簡易・本式フラグ
+                        strcmd += string.Format(" OrderSheetType = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PaymentTerms:             // 支払い条件
+                        strcmd += string.Format(" PaymentTerms = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CashRatio:                // 現金割合（％）
+                        strcmd += string.Format(" CashRatio = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.BillPeriod:               // 手形期間
+                        strcmd += string.Format(" BillPeriod = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PrePayments:              // 前金払
+                        strcmd += string.Format(" PrePayments = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PrePaymentsDays:          // 前金払日数
+                        strcmd += string.Format(" PrePaymentsDays = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PrePaymentsPrice:         // 前金払金額
+                        strcmd += string.Format(" PrePaymentsPrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.PartialPayment:           // 部分払
+                        strcmd += string.Format(" PartialPayment = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PartialPaymentMounth:     // 部分払締切月
+                        strcmd += string.Format(" PartialPaymentMounth = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PartialPaymentDay1:       // 部分払締切日
+                        strcmd += string.Format(" PartialPaymentDay1 = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PartialPaymentDay2:       // 部分払支払日
+                        strcmd += string.Format(" PartialPaymentDay2 = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PartialPaymentPrice:      // 部分払金額
+                        strcmd += string.Format(" PartialPaymentPrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.CompletionPayment:        // 引渡し時の支払
+                        strcmd += string.Format(" CompletionPayment = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CompletionPaymentDays:    // 引渡し時の支払日数
+                        strcmd += string.Format(" CompletionPaymentDays = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.CompletionPaymentPrice:   // 引渡し時の支払金額
+                        strcmd += string.Format(" CompletionPaymentPrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.LeadEngineerCode:         // 主任技術者コード
+                        strcmd += string.Format(" LeadEngineerCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.LeadEngineerName:         // 主任技術者名
+                        strcmd += string.Format(" LeadEngineerName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.SafetyOfficerCode:        // 安全管理者コード
+                        strcmd += string.Format(" SafetyOfficerCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.SafetyOfficerName:        // 安全管理者名
+                        strcmd += string.Format(" SafetyOfficerName = '{0}'", value.ToString());
+                        break;
+                    case (int)TableColumn.WorkersCount:             // 作業員数
+                        strcmd += string.Format(" WorkersCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.PrintoutDate:             // 印刷年月日
+                        strcmd += string.Format(" PrintoutDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode, SeqNo);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region OracleDataReaderより構造体へセットする
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -404,42 +551,39 @@
             try
             {
                 // データ取得
-                wrk.ConstructionCode = int.Parse(objwrk[(int)PurchaseOrderColumn.ConstructionCode].ToString());	            // 工事番号
-                wrk.SeqNo = int.Parse(objwrk[(int)PurchaseOrderColumn.SeqNo].ToString());	                                // 注文書枝番
-                wrk.CompanyCode = int.Parse(objwrk[(int)PurchaseOrderColumn.CompanyCode].ToString());                       // 協力会社コード
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());	            // 工事番号
+                wrk.SeqNo = int.Parse(objwrk[(int)TableColumn.SeqNo].ToString());	                                // 注文書枝番
+                wrk.CompanyCode = int.Parse(objwrk[(int)TableColumn.CompanyCode].ToString());                       // 協力会社コード
 
-                wrk.CreateDate = DateTime.Parse(objwrk[(int)PurchaseOrderColumn.CreateDate].ToString());	                // 作成日付
-                wrk.OrderPrice = double.Parse(objwrk[(int)PurchaseOrderColumn.OrderPrice].ToString());	                    // 発注金額
-                wrk.LastRowStringDate = DateTime.Parse(objwrk[(int)PurchaseOrderColumn.LastRowStringDate].ToString());      // 最終行表示文字
-                wrk.OrderSheetType = int.Parse(objwrk[(int)PurchaseOrderColumn.OrderSheetType].ToString());	                // 簡易・本式フラグ
-                wrk.PaymentTerms = int.Parse(objwrk[(int)PurchaseOrderColumn.PaymentTerms].ToString());	                    // 支払い条件
-                wrk.CashRatio = double.Parse(objwrk[(int)PurchaseOrderColumn.CashRatio].ToString());	                    // 現金割合（％）
-                wrk.BillPeriod = int.Parse(objwrk[(int)PurchaseOrderColumn.BillPeriod].ToString());	                        // 手形期間
+                wrk.CreateDate = DateTime.Parse(objwrk[(int)TableColumn.CreateDate].ToString());	                // 作成日付
+                wrk.OrderPrice = double.Parse(objwrk[(int)TableColumn.OrderPrice].ToString());	                    // 発注金額
+                wrk.LastRowStringDate = DateTime.Parse(objwrk[(int)TableColumn.LastRowStringDate].ToString());      // 最終行表示文字
+                wrk.OrderSheetType = int.Parse(objwrk[(int)TableColumn.OrderSheetType].ToString());	                // 簡易・本式フラグ
+                wrk.PaymentTerms = int.Parse(objwrk[(int)TableColumn.PaymentTerms].ToString());	                    // 支払い条件
+                wrk.CashRatio = double.Parse(objwrk[(int)TableColumn.CashRatio].ToString());	                    // 現金割合（％）
+                wrk.BillPeriod = int.Parse(objwrk[(int)TableColumn.BillPeriod].ToString());	                        // 手形期間
 
-                wrk.PrePayments = int.Parse(objwrk[(int)PurchaseOrderColumn.PrePayments].ToString());                       // 前金払
-                wrk.PrePaymentsDays = int.Parse(objwrk[(int)PurchaseOrderColumn.PrePaymentsDays].ToString());               // 前金払日数
-                //wrk.PrePaymentsPrice = int.Parse(objwrk[(int)PurchaseOrderColumn.PrePaymentsPrice].ToString());             // 前金払金額
-                wrk.PrePaymentsPrice = double.Parse(objwrk[(int)PurchaseOrderColumn.PrePaymentsPrice].ToString());             // 前金払金額
-                wrk.PartialPayment = int.Parse(objwrk[(int)PurchaseOrderColumn.PartialPayment].ToString());                 // 部分払
-                wrk.PartialPaymentMounth = int.Parse(objwrk[(int)PurchaseOrderColumn.PartialPaymentMounth].ToString());     // 部分払締切月
-                wrk.PartialPaymentDay1 = int.Parse(objwrk[(int)PurchaseOrderColumn.PartialPaymentDay1].ToString());         // 部分払締切日
-                wrk.PartialPaymentDay2 = int.Parse(objwrk[(int)PurchaseOrderColumn.PartialPaymentDay2].ToString());         // 部分払支払日
-                //wrk.PartialPaymentPrice = int.Parse(objwrk[(int)PurchaseOrderColumn.PartialPaymentPrice].ToString());       // 部分払金額
-                wrk.PartialPaymentPrice = double.Parse(objwrk[(int)PurchaseOrderColumn.PartialPaymentPrice].ToString());       // 部分払金額
-                wrk.CompletionPayment = int.Parse(objwrk[(int)PurchaseOrderColumn.CompletionPayment].ToString());           // 引渡し時の支払
-                wrk.CompletionPaymentDays = int.Parse(objwrk[(int)PurchaseOrderColumn.CompletionPaymentDays].ToString());   // 引渡し時の支払日数
-                //wrk.CompletionPaymentPrice = int.Parse(objwrk[(int)PurchaseOrderColumn.CompletionPaymentPrice].ToString()); // 引渡し時の支払金額
-                wrk.CompletionPaymentPrice = double.Parse(objwrk[(int)PurchaseOrderColumn.CompletionPaymentPrice].ToString()); // 引渡し時の支払金額
+                wrk.PrePayments = int.Parse(objwrk[(int)TableColumn.PrePayments].ToString());                       // 前金払
+                wrk.PrePaymentsDays = int.Parse(objwrk[(int)TableColumn.PrePaymentsDays].ToString());               // 前金払日数
+                wrk.PrePaymentsPrice = int.Parse(objwrk[(int)TableColumn.PrePaymentsPrice].ToString());             // 前金払金額
+                wrk.PartialPayment = int.Parse(objwrk[(int)TableColumn.PartialPayment].ToString());                 // 部分払
+                wrk.PartialPaymentMounth = int.Parse(objwrk[(int)TableColumn.PartialPaymentMounth].ToString());     // 部分払締切月
+                wrk.PartialPaymentDay1 = int.Parse(objwrk[(int)TableColumn.PartialPaymentDay1].ToString());         // 部分払締切日
+                wrk.PartialPaymentDay2 = int.Parse(objwrk[(int)TableColumn.PartialPaymentDay2].ToString());         // 部分払支払日
+                wrk.PartialPaymentPrice = int.Parse(objwrk[(int)TableColumn.PartialPaymentPrice].ToString());       // 部分払金額
+                wrk.CompletionPayment = int.Parse(objwrk[(int)TableColumn.CompletionPayment].ToString());           // 引渡し時の支払
+                wrk.CompletionPaymentDays = int.Parse(objwrk[(int)TableColumn.CompletionPaymentDays].ToString());   // 引渡し時の支払日数
+                wrk.CompletionPaymentPrice = int.Parse(objwrk[(int)TableColumn.CompletionPaymentPrice].ToString()); // 引渡し時の支払金額
 
-                wrk.LeadEngineerCode = int.Parse(objwrk[(int)PurchaseOrderColumn.LeadEngineerCode].ToString());             // 主任技術者コード
-                wrk.LeadEngineerName = objwrk[(int)PurchaseOrderColumn.LeadEngineerName].ToString();                        // 主任技術者名
-                wrk.SafetyOfficerCode = int.Parse(objwrk[(int)PurchaseOrderColumn.SafetyOfficerCode].ToString());           // 安全管理者コード
-                wrk.SafetyOfficerName = objwrk[(int)PurchaseOrderColumn.SafetyOfficerName].ToString();                      // 安全管理者名
-                wrk.WorkersCount = int.Parse(objwrk[(int)PurchaseOrderColumn.WorkersCount].ToString());                     // 作業員数
-                wrk.PrintoutDate = DateTime.Parse(objwrk[(int)PurchaseOrderColumn.PrintoutDate].ToString());                // 印刷年月日
+                wrk.LeadEngineerCode = int.Parse(objwrk[(int)TableColumn.LeadEngineerCode].ToString());             // 主任技術者コード
+                wrk.LeadEngineerName = objwrk[(int)TableColumn.LeadEngineerName].ToString();                        // 主任技術者名
+                wrk.SafetyOfficerCode = int.Parse(objwrk[(int)TableColumn.SafetyOfficerCode].ToString());           // 安全管理者コード
+                wrk.SafetyOfficerName = objwrk[(int)TableColumn.SafetyOfficerName].ToString();                      // 安全管理者名
+                wrk.WorkersCount = int.Parse(objwrk[(int)TableColumn.WorkersCount].ToString());                     // 作業員数
+                wrk.PrintoutDate = DateTime.Parse(objwrk[(int)TableColumn.PrintoutDate].ToString());                // 印刷年月日
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)PurchaseOrderColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)PurchaseOrderColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
@@ -456,10 +600,6 @@
         /// <summary>
         /// 主キー検索の文字列を返す
         /// </summary>
-        /// <param name="ComponentCode"></param>
-        /// <param name="PageCount"></param>
-        /// <param name="LineCount"></param>
-        /// <returns></returns>
         public string CreatePrimarykeyString(int ConstructionCode, int SeqNo = 0)
         {
             string strWork = "";
@@ -485,7 +625,7 @@
         /// <param name="AddSQLString"></param>
         /// <param name="bConnect"></param>
         /// <returns></returns>
-        public int SelectMaxConstructionCodeCount(string AddSQLString, bool bConnect = true)
+        public int SelectMaxSeqNoCount(string AddSQLString, bool bConnect = true)
         {
             //Oracle インターフェース
             string strcmd = "";
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPurchaseOrderDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPurchaseOrderDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPurchaseOrderDetail.cs	(revision 51)
@@ -6,7 +6,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient; 
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -31,7 +31,7 @@
         /// <summary>
         /// 注文書明細データ明細フィールド並び
         /// </summary>
-        public enum PurchaseOrderDetailColumn
+        public enum TableColumn
         {
             ConstructionCode = 0,	// 工事番号
 
@@ -46,7 +46,8 @@
             UnitName,		        // 単位
             UnitPrice,		        // 単価
             OrdersLinePrice,		// 金額
-            
+            SourceCode,             // 予算作成時工事番号
+
             EntryDate,
             UpdateDate,
         }
@@ -64,13 +65,81 @@
 
         #endregion
 
-        #region 注文書明細データ検索
+        #region SELECT　SQL作成
         /// <summary>
-        /// 注文書明細データ検索
+        /// SQL作成
         /// </summary>
+        private string CreateSelectSQL()
+        {
+            // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+            string strcmd = "SELECT";
+
+            strcmd += "  ConstructionCode";	        // 工事コード
+            strcmd += ", SeqNo";                    // 注文書枝番
+            strcmd += ", GroupCount";               // グループ番号
+            strcmd += ", LineCount";                // 行番号
+            strcmd += ", ComponentCode";            // 構成キー
+            strcmd += ", ItemCode";		            // 工種キー
+            strcmd += ", FirstString";              // 工種品名
+            strcmd += ", SecondString";             // 内容内訳
+            strcmd += ", UnitCount";		        // 数量
+            strcmd += ", UnitName";		            // 単位
+            strcmd += ", UnitPrice";		        // 単価
+            strcmd += ", OrdersLinePrice";		    // 金額
+            strcmd += ", SourceCode";               // 予算作成時工事番号
+
+            strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+            strcmd += " FROM PurchaseOrderDetail";
+
+            return strcmd;
+        }
+        #endregion
+
+        #region 注文書明細データ検索（１件）
+        /// <summary>
+        /// 注文書明細データ検索（１件）
+        /// </summary>
         /// <param name="AddSQLString">検索条件SQL文字列</param>
         /// <param name="data">注文書明細データ明細データ</param>
         /// <returns>true：成功 false：失敗</returns>
+        public bool SelectAction(string AddSQLString, ref PurchaseOrderDetail data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                strcmd = CreateSelectSQL() + AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, 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);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 注文書明細データ検索（複数件）
+        /// <summary>
+        /// 注文書明細データ検索（複数件）
+        /// </summary>
+        /// <param name="AddSQLString">検索条件SQL文字列</param>
+        /// <param name="data">注文書明細データ明細データ</param>
+        /// <returns>true：成功 false：失敗</returns>
         public bool SelectAction(string AddSQLString, ref List<PurchaseOrderDetail> data, bool bConnect = true)
         {
             //Oracle インターフェース
@@ -79,27 +148,9 @@
 
             try
             {
-                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
-                strcmd = "SELECT";
-                
-                strcmd += "  ConstructionCode";	        // 工事コード
-                strcmd += ", SeqNo";                    // 注文書枝番
-                strcmd += ", GroupCount";               // グループ番号
-                strcmd += ", LineCount";                // 行番号
-                strcmd += ", ComponentCode";            // 構成キー
-                strcmd += ", ItemCode";		            // 工種キー
-                strcmd += ", FirstString";              // 工種品名
-                strcmd += ", SecondString";             // 内容内訳
-                strcmd += ", UnitCount";		        // 数量
-                strcmd += ", UnitName";		            // 単位
-                strcmd += ", UnitPrice";		        // 単価
-                strcmd += ", OrdersLinePrice";		    // 金額
+                // SQL作成
+                strcmd = CreateSelectSQL() + AddSQLString;
 
-                strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
-                strcmd += " FROM PurchaseOrderDetail";
-                strcmd += AddSQLString;
-
                 // SQL実行
                 if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
 
@@ -134,6 +185,23 @@
             {
 
                 strcmd = "INSERT INTO PurchaseOrderDetail";
+                strcmd += " (";
+                strcmd += "  ConstructionCode";	        // 工事コード
+                strcmd += ", SeqNo";                    // 注文書枝番
+                strcmd += ", GroupCount";               // グループ番号
+                strcmd += ", LineCount";                // 行番号
+                strcmd += ", ComponentCode";            // 構成キー
+                strcmd += ", ItemCode";		            // 工種キー
+                strcmd += ", FirstString";              // 工種品名
+                strcmd += ", SecondString";             // 内容内訳
+                strcmd += ", UnitCount";		        // 数量
+                strcmd += ", UnitName";		            // 単位
+                strcmd += ", UnitPrice";		        // 単価
+                strcmd += ", OrdersLinePrice";		    // 金額
+                strcmd += ", SourceCode";               // 予算作成時工事番号
+                strcmd += ", EntryDate";
+                strcmd += ", UpdateDate";
+                strcmd += ")";
 
                 strcmd += " VALUES (";
 
@@ -150,9 +218,10 @@
                 strcmd += string.Format(",'{0}'", work.UnitName);		        // 単位
                 strcmd += string.Format(", {0}", work.UnitPrice);		        // 単価
                 strcmd += string.Format(", {0}", work.OrdersLinePrice);         // 金額
+                strcmd += string.Format(", {0}", work.SourceCode);              // 予算作成時工事番号
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(TO_CHAR(sysdate,'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(TO_CHAR(sysdate,'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -222,8 +291,9 @@
                 strcmd += string.Format(", UnitName = '{0}'", data.UnitName);		                // 単位
                 strcmd += string.Format(", UnitPrice = {0}", data.UnitPrice);		                // 単価
                 strcmd += string.Format(", OrdersLinePrice = {0}", data.OrdersLinePrice);		    // 金額
+                strcmd += string.Format(", SourceCode = {0}", data.SourceCode);                     // 予算作成時工事番号
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -265,6 +335,77 @@
         }
         #endregion
 
+        #region 1項目更新処理
+        /// <summary>
+        /// 1項目の更新を行う
+        /// </summary>
+        /// <returns></returns>
+        public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+                strcmd = "UPDATE PurchaseOrderDetail";
+
+                strcmd += " SET";
+                switch (FeildNo)
+                {
+                    case (int)TableColumn.ConstructionCode: // 工事番号
+                        strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.SeqNo:            // 注文書枝番
+                        strcmd += string.Format(" SeqNo = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.GroupCount:       // グループ番号
+                        strcmd += string.Format(" GroupCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.LineCount:        // 行番号
+                        strcmd += string.Format(" LineCount = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ComponentCode:    // 構成キー
+                        strcmd += string.Format(" ComponentCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.ItemCode:		    // 工種キー
+                        strcmd += string.Format(" ItemCode = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.FirstString:      // 工種・品名
+                        strcmd += string.Format(" FirstString = '{0}'", value);
+                        break;
+                    case (int)TableColumn.SecondString:     // 内容内訳
+                        strcmd += string.Format(" SecondString = '{0}'", value);
+                        break;
+                    case (int)TableColumn.UnitCount:		// 数量
+                        strcmd += string.Format(" UnitCount = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.UnitName:		    // 単位
+                        strcmd += string.Format(" UnitName = '{0}'", value);
+                        break;
+                    case (int)TableColumn.UnitPrice:		// 単価
+                        strcmd += string.Format(" UnitPrice = {0}", ((int)value).ToString());
+                        break;
+                    case (int)TableColumn.OrdersLinePrice:	// 金額
+                        strcmd += string.Format(" OrdersLinePrice = {0}", ((double)value).ToString());
+                        break;
+                    case (int)TableColumn.SourceCode:       // 予算作成時工事番号
+                        strcmd += string.Format(" SourceCode = {0}", ((int)value).ToString());
+                        break;
+                }
+
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += CreatePrimarykeyString(ConstructionCode);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
         #region 構造体へセット
         /// <summary>
         /// OracleDataReaderより構造体へセットする
@@ -276,23 +417,24 @@
             try
             {
                 // データ取得
-                wrk.ConstructionCode = int.Parse(objwrk[(int)PurchaseOrderDetailColumn.ConstructionCode].ToString());           // 工事番号
-                wrk.SeqNo = int.Parse(objwrk[(int)PurchaseOrderDetailColumn.SeqNo].ToString());                                 // 注文書枝番
+                wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString());         // 工事番号
+                wrk.SeqNo = int.Parse(objwrk[(int)TableColumn.SeqNo].ToString());                               // 注文書枝番
 
-                wrk.GroupCount = int.Parse(objwrk[(int)PurchaseOrderDetailColumn.GroupCount].ToString());	                    // グループ番号
-                wrk.LineCount = int.Parse(objwrk[(int)PurchaseOrderDetailColumn.LineCount].ToString());	                        // 行番号
+                wrk.GroupCount = int.Parse(objwrk[(int)TableColumn.GroupCount].ToString());	                    // グループ番号
+                wrk.LineCount = int.Parse(objwrk[(int)TableColumn.LineCount].ToString());	                    // 行番号
 
-                wrk.ComponentCode = int.Parse(objwrk[(int)PurchaseOrderDetailColumn.ComponentCode].ToString());	                // 構成キー
-                wrk.ItemCode = int.Parse(objwrk[(int)PurchaseOrderDetailColumn.ItemCode].ToString());		                    // 工種キー
-                wrk.FirstString = objwrk[(int)PurchaseOrderDetailColumn.FirstString].ToString();	                            // 工種・品名
-                wrk.SecondString = objwrk[(int)PurchaseOrderDetailColumn.SecondString].ToString();	                            // 内容内訳
-                wrk.UnitCount = double.Parse(objwrk[(int)PurchaseOrderDetailColumn.UnitCount].ToString());		                // 数量
-                wrk.UnitName = objwrk[(int)PurchaseOrderDetailColumn.UnitName].ToString();		                                // 単位
-                wrk.UnitPrice = double.Parse(objwrk[(int)PurchaseOrderDetailColumn.UnitPrice].ToString());		                // 単価
-                wrk.OrdersLinePrice = double.Parse(objwrk[(int)PurchaseOrderDetailColumn.OrdersLinePrice].ToString());		    // 金額
+                wrk.ComponentCode = int.Parse(objwrk[(int)TableColumn.ComponentCode].ToString());	            // 構成キー
+                wrk.ItemCode = int.Parse(objwrk[(int)TableColumn.ItemCode].ToString());		                    // 工種キー
+                wrk.FirstString = objwrk[(int)TableColumn.FirstString].ToString();	                            // 工種・品名
+                wrk.SecondString = objwrk[(int)TableColumn.SecondString].ToString();	                        // 内容内訳
+                wrk.UnitCount = double.Parse(objwrk[(int)TableColumn.UnitCount].ToString());		            // 数量
+                wrk.UnitName = objwrk[(int)TableColumn.UnitName].ToString();		                            // 単位
+                wrk.UnitPrice = double.Parse(objwrk[(int)TableColumn.UnitPrice].ToString());		            // 単価
+                wrk.OrdersLinePrice = double.Parse(objwrk[(int)TableColumn.OrdersLinePrice].ToString());		// 金額
+                wrk.SourceCode = int.Parse(objwrk[(int)TableColumn.SourceCode].ToString());                     // 予算作成時工事番号
 
-                wrk.EntryDate = DateTime.Parse(objwrk[(int)PurchaseOrderDetailColumn.EntryDate].ToString());
-                wrk.UpdateDate = DateTime.Parse(objwrk[(int)PurchaseOrderDetailColumn.UpdateDate].ToString());
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString());
             }
             catch (MySqlException myex)
             {
@@ -315,7 +457,7 @@
         /// <param name="OutsourcingFlg"></param>
         /// <param name="LineCount"></param>
         /// <returns></returns>
-        public string CreatePrimarykeyString(int ConstructionCode, int SeqNo = 0, int PageCount = 0, int LineCount = 0)
+        public string CreatePrimarykeyString(int ConstructionCode, int SeqNo = 0, int GroupCount = 0, int LineCount = 0)
         {
             string strWork = "";
             try
@@ -323,8 +465,8 @@
                 strWork = string.Format(" Where ConstructionCode = {0}", ConstructionCode);
                 if (SeqNo != 0)
                     strWork += string.Format(" And SEQNO = {0}", SeqNo);
-                if (PageCount != 0)
-                    strWork += string.Format(" And GROUPCOUNT = {0}", PageCount);
+                if (GroupCount != 0)
+                    strWork += string.Format(" And GROUPCOUNT = {0}", GroupCount);
                 if (LineCount != 0)
                     strWork += string.Format(" And LineCount = {0}", LineCount);
             }
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestData.cs	(revision 51)
@@ -0,0 +1,378 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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 IORequestData : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 請求データフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            RequestNo = 0,
+            ConstructionCode,
+            OrderersDivision,
+            OrderersCode,
+            AmountPaid,
+            PricePaid,
+            TaxPricePaid,
+            PriceBalance,
+            TaxBalance,
+            AmountBlance,
+            ENTRY_DATE,
+            UPDATE_DATE,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="connectionString"></param>
+        public IORequestData()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<RequestData> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " RequestNo";
+                strcmd += " ,ConstructionCode";
+                strcmd += " ,OrderersDivision";
+                strcmd += " ,OrderersCode";
+                strcmd += " ,AmountPaid";
+                strcmd += " ,PricePaid";
+                strcmd += " ,TaxPricePaid";
+                strcmd += " ,PriceBalance";
+                strcmd += " ,TaxBalance";
+                strcmd += " ,AmountBlance";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM RequestData";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    RequestData work = new RequestData();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求データ複数追加
+        /// <summary>
+        /// 請求データ複数追加
+        /// </summary>
+        /// <param name="data">請求データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<RequestData> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (RequestData work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求データ１件追加
+        /// <summary>
+        /// 請求データ１件追加
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(RequestData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO RequestData";
+
+                strcmd += " VALUES (";
+
+                strcmd += string.Format(" {0}", data.RequestNo.ToString());
+                strcmd += string.Format(", {0}", data.ConstructionCode.ToString());
+                strcmd += string.Format(", {0}", data.OrderersDivision.ToString());
+                strcmd += string.Format(", {0}", data.OrderersCode.ToString());
+                strcmd += string.Format(", {0}", data.AmountPaid.ToString());
+                strcmd += string.Format(", {0}", data.PricePaid.ToString());
+                strcmd += string.Format(", {0}", data.TaxPricePaid.ToString());
+                strcmd += string.Format(", {0}", data.PriceBalance.ToString());
+                strcmd += string.Format(", {0}", data.TaxBalance.ToString());
+                strcmd += string.Format(", {0}", data.AmountBlance.ToString());
+
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求データ更新
+        /// <summary>
+        /// 請求データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">請求データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, RequestData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE RequestData";
+
+                strcmd += " SET";
+
+                // strcmd += string.Format(" RequestNo = {0}", data.RequestNo.ToString());
+                strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode.ToString());
+                strcmd += string.Format(",OrderersDivision = {0}", data.OrderersDivision.ToString());
+                strcmd += string.Format(",OrderersCode = {0}", data.OrderersCode.ToString());
+                strcmd += string.Format(",AmountPaid = {0}", data.AmountPaid.ToString());
+                strcmd += string.Format(",PricePaid = {0}", data.PricePaid.ToString());
+                strcmd += string.Format(",TaxPricePaid = {0}", data.TaxPricePaid.ToString());
+                strcmd += string.Format(",PriceBalance = {0}", data.PriceBalance.ToString());
+                strcmd += string.Format(",TaxBalance = {0}", data.TaxBalance.ToString());
+                strcmd += string.Format(",AmountBlance = {0}", data.AmountBlance.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+
+                strcmd += string.Format(" Where RequestNo = {0}", data.RequestNo.ToString());
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求データ削除
+        /// <summary>
+        /// 請求データ削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM RequestData", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref RequestData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.RequestNo = int.Parse(objwrk[(int)NameColumn.RequestNo].ToString());
+                wrk.ConstructionCode = int.Parse(objwrk[(int)NameColumn.ConstructionCode].ToString());
+                wrk.OrderersDivision = int.Parse(objwrk[(int)NameColumn.OrderersDivision].ToString());
+                wrk.OrderersCode = int.Parse(objwrk[(int)NameColumn.OrderersCode].ToString());
+                wrk.AmountPaid = int.Parse(objwrk[(int)NameColumn.AmountPaid].ToString());
+                wrk.PricePaid = int.Parse(objwrk[(int)NameColumn.PricePaid].ToString());
+                wrk.TaxPricePaid = int.Parse(objwrk[(int)NameColumn.TaxPricePaid].ToString());
+                wrk.PriceBalance = int.Parse(objwrk[(int)NameColumn.PriceBalance].ToString());
+                wrk.TaxBalance = int.Parse(objwrk[(int)NameColumn.TaxBalance].ToString());
+                wrk.AmountBlance = int.Parse(objwrk[(int)NameColumn.AmountBlance].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 構造体クリア
+        /// <summary>
+        /// 構造体クリア
+        /// </summary>
+        /// <param name="wrk"></param>
+        public void ClearStruct(ref RequestData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.RequestNo = 0;
+                wrk.ConstructionCode = 0;
+                wrk.OrderersDivision = 0;
+                wrk.OrderersCode = 0;
+                wrk.AmountPaid = 0;
+                wrk.PricePaid = 0;
+                wrk.TaxPricePaid = 0;
+                wrk.PriceBalance = 0;
+                wrk.TaxBalance = 0;
+                wrk.AmountBlance = 0;
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int RequestNo)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where RequestNo = {0}", RequestNo.ToString());
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+
+        #region サブキー検索の文字列を返す
+        /// <summary>
+        /// サブキー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreateSubkeyString(int ConstructionCode)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where ConstructionCode = {0}", ConstructionCode.ToString());
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+    }
+
+}
+
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestDataDetail.cs	(revision 51)
@@ -0,0 +1,341 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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 IORequestDataDetail : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 請求データフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            RequestNo = 0,
+            OrderNo,
+            ConstructionCode,
+            ConstructionKind,
+            BillPrice,
+            TaxPrice,
+            AmountBlance,
+            ENTRY_DATE,
+            UPDATE_DATE,
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        /// <param name="connectionString"></param>
+        public IORequestDataDetail()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+
+        #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<RequestDataDetail> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " RequestNo";
+                strcmd += " ,OrderNo";
+                strcmd += " ,ConstructionCode";
+                strcmd += " ,ConstructionKind";
+                strcmd += " ,BillPrice";
+                strcmd += " ,TaxPrice";
+                strcmd += " ,AmountBlance";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM RequestDataDetail";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    RequestDataDetail work = new RequestDataDetail();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求明細データ複数追加
+        /// <summary>
+        /// 請求明細データ複数追加
+        /// </summary>
+        /// <param name="data">請求明細データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<RequestDataDetail> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (RequestDataDetail work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求明細データ１件追加
+        /// <summary>
+        /// 請求明細データ１件追加
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(RequestDataDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO RequestDataDetail";
+
+                strcmd += " VALUES (";
+
+                strcmd += string.Format(" {0}", data.RequestNo.ToString());
+                strcmd += string.Format(", {0}", data.OrderNo.ToString());
+                strcmd += string.Format(", {0}", data.ConstructionCode.ToString());
+                strcmd += string.Format(", {0}", data.ConstructionKind.ToString());
+                strcmd += string.Format(", {0}", data.BillPrice.ToString());
+                strcmd += string.Format(", {0}", data.TaxPrice.ToString());
+                strcmd += string.Format(", {0}", data.AmountBlance.ToString());
+
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求明細データ更新
+        /// <summary>
+        /// 請求明細データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">請求明細データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, RequestDataDetail data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE RequestDataDetail";
+
+                strcmd += " SET";
+
+                // strcmd += string.Format(" RequestNo = {0}", data.RequestNo.ToString());
+                // strcmd += string.Format(",OrderNo = {0}", data.OrderNo.ToString());
+                // strcmd += string.Format(",ConstructionCode = {0}", data.ConstructionCode.ToString());
+                strcmd += string.Format(" ConstructionKind = {0}", data.ConstructionKind.ToString());
+                strcmd += string.Format(",BillPrice = {0}", data.BillPrice.ToString());
+                strcmd += string.Format(",TaxPrice = {0}", data.TaxPrice.ToString());
+                strcmd += string.Format(",AmountBlance = {0}", data.AmountBlance.ToString());
+
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += string.Format(" Where RequestNo = {0}", data.RequestNo.ToString());
+                strcmd += string.Format(" And OrderNo = {0}", data.OrderNo.ToString());
+                strcmd += string.Format(" And ConstructionCode = {0}", data.ConstructionCode.ToString());
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求明細データ削除
+        /// <summary>
+        /// 請求明細データ削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM RequestDataDetail", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref RequestDataDetail wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.RequestNo = int.Parse(objwrk[(int)NameColumn.RequestNo].ToString());
+                wrk.OrderNo = int.Parse(objwrk[(int)NameColumn.OrderNo].ToString());
+                wrk.ConstructionCode = int.Parse(objwrk[(int)NameColumn.ConstructionCode].ToString());
+                wrk.ConstructionKind = int.Parse(objwrk[(int)NameColumn.ConstructionKind].ToString());
+                wrk.BillPrice = int.Parse(objwrk[(int)NameColumn.BillPrice].ToString());
+                wrk.TaxPrice = int.Parse(objwrk[(int)NameColumn.TaxPrice].ToString());
+                wrk.AmountBlance = int.Parse(objwrk[(int)NameColumn.AmountBlance].ToString());
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 構造体クリア
+        /// <summary>
+        /// 構造体クリア
+        /// </summary>
+        /// <param name="wrk"></param>
+        public void ClearStruct(ref RequestDataDetail wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.RequestNo = 0;
+                wrk.OrderNo = 0;
+                wrk.ConstructionCode = 0;
+                wrk.ConstructionKind = 0;
+                wrk.BillPrice = 0;
+                wrk.TaxPrice = 0;
+                wrk.AmountBlance = 0;
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int RequestNo, int OrderNo = 0, int ConstructionCode = 0)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where RequestNo = {0}", RequestNo.ToString());
+                if (OrderNo != 0)
+                    strWork += string.Format(" And OrderNo = {0}", OrderNo.ToString());
+                if (ConstructionCode != 0)
+                    strWork += string.Format(" And ConstructionCode = {0}", ConstructionCode.ToString());
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestTotalData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestTotalData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestTotalData.cs	(revision 51)
@@ -0,0 +1,373 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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 IORequestTotalData : MySqlProcess
+    {
+        #region 定義部
+        /// <summary>
+        /// log4netログを使用する
+        /// </summary>
+        private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 請求データフィールド並び
+        /// </summary>
+        public enum NameColumn
+        {
+            RequestNo = 0,
+            OrderNo,
+            OrderersDivision,
+            OrderersCode,
+            BillCreationDate,
+            BillTotalPrice,
+            BillPrice,
+            TaxPrice,
+            AmountBlance,
+            AmountPaid,
+            PricePaid,
+            TaxPricePaid,
+            PriceBalance,
+            TaxBalance,
+            AssignedFlg,
+            ENTRY_DATE,
+            UPDATE_DATE,
+        }
+        #endregion
+
+        #region コンストラクタ
+        public IORequestTotalData()
+            : base(DBCommon.Instance.DBConnectString)
+        {
+        }
+        #endregion
+
+        #region 請求合計データ検索
+        public bool SelectAction(string AddSQLString, ref List<RequestTotalData> data, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
+                strcmd = "SELECT";
+                strcmd += " RequestNo";
+                strcmd += " ,OrderNo";
+                strcmd += " ,OrderersDivision";
+                strcmd += " ,OrderersCode";
+                strcmd += " ,DATE_FORMAT(BillCreationDate, '%Y/%m/%d')";
+                strcmd += " ,BillTotalPrice";
+                strcmd += " ,BillPrice";
+                strcmd += " ,TaxPrice";
+                strcmd += " ,AmountBlance";
+                strcmd += " ,AmountPaid";
+                strcmd += " ,PricePaid";
+                strcmd += " ,TaxPricePaid";
+                strcmd += " ,PriceBalance";
+                strcmd += " ,TaxBalance";
+                strcmd += " ,AssignedFlg";
+                strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " FROM RequestTotalData";
+                strcmd += AddSQLString;
+
+                // SQL実行
+                if (!ExecuteReader(strcmd, ref arData, bConnect)) return false;
+
+                // データセット
+                foreach (object[] objwrk in arData)
+                {
+                    RequestTotalData work = new RequestTotalData();
+                    Reader2Struct(objwrk, ref work);
+                    data.Add(work);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求合計データ複数追加
+        /// <summary>
+        /// 請求合計データ複数追加
+        /// </summary>
+        /// <param name="data">請求合計データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool InsertAction(List<RequestTotalData> data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                foreach (RequestTotalData work in data)
+                {
+                    if (!InsertAction(work, bConnect)) return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求合計データ１件追加
+        /// <summary>
+        /// 請求合計データ１件追加
+        /// </summary>
+        /// <param name="data"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool InsertAction(RequestTotalData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "INSERT INTO RequestTotalData";
+
+                strcmd += " VALUES (";
+
+                strcmd += string.Format(" {0}", data.RequestNo.ToString());
+                strcmd += string.Format(", {0}", data.OrderNo.ToString());
+                strcmd += string.Format(", {0}", data.OrderersDivision.ToString());
+                strcmd += string.Format(", {0}", data.OrderersCode.ToString());
+                strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", data.BillCreationDate.ToShortDateString());
+                strcmd += string.Format(", {0}", data.BillTotalPrice.ToString());
+                strcmd += string.Format(", {0}", data.BillPrice.ToString());
+                strcmd += string.Format(", {0}", data.TaxPrice.ToString());
+                strcmd += string.Format(", {0}", data.AmountBlance.ToString());
+                strcmd += string.Format(", {0}", data.AmountPaid.ToString());
+                strcmd += string.Format(", {0}", data.PricePaid.ToString());
+                strcmd += string.Format(", {0}", data.TaxPricePaid.ToString());
+                strcmd += string.Format(", {0}", data.PriceBalance.ToString());
+                strcmd += string.Format(", {0}", data.TaxBalance.ToString());
+                strcmd += string.Format(", {0}", (data.AssignedFlg ? 1 : 0).ToString());
+
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd = strcmd + ")";
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求合計データ更新
+        /// <summary>
+        /// 請求合計データ更新
+        /// </summary>
+        /// <param name="AddSQLString">更新条件SQL文字列</param>
+        /// <param name="data">請求合計データ</param>
+        /// <returns>true：成功 false：失敗</returns>
+        public bool UpdateAction(string AddSQLString, RequestTotalData data, bool bConnect = true)
+        {
+            string strcmd = "";
+            try
+            {
+
+                strcmd = "UPDATE RequestTotalData";
+
+                strcmd += " SET";
+
+                // strcmd += string.Format(" RequestNo = {0}", data.RequestNo.ToString());
+                // strcmd += string.Format(",OrderNo = {0}", data.OrderNo.ToString());
+                strcmd += string.Format(" OrderersDivision = {0}", data.OrderersDivision.ToString());
+                strcmd += string.Format(",OrderersCode = {0}", data.OrderersCode.ToString());
+                strcmd += string.Format(",BillCreationDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.BillCreationDate.ToShortDateString());
+                strcmd += string.Format(",BillTotalPrice = {0}", data.BillTotalPrice.ToString());
+                strcmd += string.Format(",BillPrice = {0}", data.BillPrice.ToString());
+                strcmd += string.Format(",TaxPrice = {0}", data.TaxPrice.ToString());
+                strcmd += string.Format(",AmountBlance = {0}", data.AmountBlance.ToString());
+                strcmd += string.Format(",AmountPaid = {0}", data.AmountPaid.ToString());
+                strcmd += string.Format(",PricePaid = {0}", data.PricePaid.ToString());
+                strcmd += string.Format(",TaxPricePaid = {0}", data.TaxPricePaid.ToString());
+                strcmd += string.Format(",PriceBalance = {0}", data.PriceBalance.ToString());
+                strcmd += string.Format(",TaxBalance = {0}", data.TaxBalance.ToString());
+                strcmd += string.Format(",AssignedFlg = {0}", (data.AssignedFlg ? 1 : 0).ToString());
+                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += string.Format(" Where RequestNo = {0}", data.RequestNo.ToString());
+                strcmd += string.Format(" And OrderNo = {0}", data.OrderNo.ToString());
+                strcmd += AddSQLString;
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 請求合計データ削除
+        /// <summary>
+        /// 請求合計データ削除
+        /// </summary>
+        /// <param name="AddSQLString">削除条件SQL文字列</param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool DeleteAction(string AddSQLString, bool bConnect = true)
+        {
+            //Oracle インターフェース
+            string strcmd = "";
+            try
+            {
+                strcmd = string.Format("{0}{1}", "DELETE FROM RequestTotalData", AddSQLString);
+
+                if (!ExecuteNonQuery(strcmd, bConnect)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                return false;
+            }
+        }
+        #endregion
+
+        #region OracleDataReaderより構造体へセットする
+        /// <summary>
+        /// OracleDataReaderより構造体へセットする
+        /// </summary>
+        /// <param name="reader">OracleDataReader</param>
+        /// <param name="wrk">構造体</param>
+        public void Reader2Struct(object[] objwrk, ref RequestTotalData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.RequestNo = int.Parse(objwrk[(int)NameColumn.RequestNo].ToString());
+                wrk.OrderNo = int.Parse(objwrk[(int)NameColumn.OrderNo].ToString());
+                wrk.OrderersDivision = int.Parse(objwrk[(int)NameColumn.OrderersDivision].ToString());
+                wrk.OrderersCode = int.Parse(objwrk[(int)NameColumn.OrderersCode].ToString());
+                wrk.BillCreationDate = DateTime.Parse(objwrk[(int)NameColumn.BillCreationDate].ToString());
+                wrk.BillTotalPrice = int.Parse(objwrk[(int)NameColumn.BillTotalPrice].ToString());
+                wrk.BillPrice = int.Parse(objwrk[(int)NameColumn.BillPrice].ToString());
+                wrk.TaxPrice = int.Parse(objwrk[(int)NameColumn.TaxPrice].ToString());
+                wrk.AmountBlance = int.Parse(objwrk[(int)NameColumn.AmountBlance].ToString());
+                wrk.AmountPaid = int.Parse(objwrk[(int)NameColumn.AmountPaid].ToString());
+                wrk.PricePaid = int.Parse(objwrk[(int)NameColumn.PricePaid].ToString());
+                wrk.TaxPricePaid = int.Parse(objwrk[(int)NameColumn.TaxPricePaid].ToString());
+                wrk.PriceBalance = int.Parse(objwrk[(int)NameColumn.PriceBalance].ToString());
+                wrk.TaxBalance = int.Parse(objwrk[(int)NameColumn.TaxBalance].ToString());
+                wrk.AssignedFlg = int.Parse(objwrk[(int)NameColumn.TaxBalance].ToString()) == 1 ? true : false;
+
+                wrk.EntryDate = DateTime.Parse(objwrk[(int)NameColumn.ENTRY_DATE].ToString());
+                wrk.UpdateDate = DateTime.Parse(objwrk[(int)NameColumn.UPDATE_DATE].ToString());
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 構造体クリア
+        /// <summary>
+        /// 構造体クリア
+        /// </summary>
+        /// <param name="wrk"></param>
+        public void ClearStruct(ref RequestTotalData wrk)
+        {
+            try
+            {
+                // データ取得
+                wrk.RequestNo = 0;
+                wrk.OrderNo = 0;
+                wrk.OrderersDivision = 0;
+                wrk.OrderersCode = 0;
+                wrk.BillCreationDate = DateTime.MinValue;
+                wrk.BillTotalPrice = 0;
+                wrk.BillPrice = 0;
+                wrk.TaxPrice = 0;
+                wrk.AmountBlance = 0;
+                wrk.AmountPaid = 0;
+                wrk.PricePaid = 0;
+                wrk.TaxPricePaid = 0;
+                wrk.PriceBalance = 0;
+                wrk.TaxBalance = 0;
+                wrk.AssignedFlg = false;
+
+                wrk.EntryDate = DateTime.Now;
+                wrk.UpdateDate = DateTime.Now;
+            }
+            catch (MySqlException myex)
+            {
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 主キー検索の文字列を返す
+        /// <summary>
+        /// 主キー検索の文字列を返す
+        /// </summary>
+        /// <param name="BusinessTypeCode"></param>
+        /// <returns>Where文字列</returns>
+        public string CreatePrimarykeyString(int RequestNo, int OrderNo = 0)
+        {
+            string strWork = string.Empty;
+            try
+            {
+                strWork = string.Format(" Where RequestNo = {0}", RequestNo.ToString());
+                if (OrderNo != 0)
+                    strWork += string.Format(" And OrderNo = {0}", OrderNo.ToString());
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strWork);
+            }
+
+            return strWork;
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSalesGraphData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSalesGraphData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSalesGraphData.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -105,7 +105,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -136,8 +136,8 @@
                 strcmd += string.Format(",{0}", data.GrossProfit.ToString());
                 strcmd += string.Format(",{0}", data.NetIncome.ToString());
 
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd = strcmd + ")";
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -146,7 +146,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -163,7 +163,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -186,7 +186,7 @@
 
                 strcmd += string.Format(" GraphDataCode = {0}", data.GraphDataCode.ToString());
                 strcmd += string.Format(",ConstructionPeriod = {0}", data.ConstructionPeriod.ToString());
-                strcmd += string.Format(",SalesDataDays = DATE_FORMAT('{0}','%Y/%m/%d')", data.SalesDataDays.ToShortDateString());
+                strcmd += string.Format(",SalesDataDays = STR_TO_DATE('{0}','%Y/%m/%d')", data.SalesDataDays.ToShortDateString());
                 strcmd += string.Format(",DisplayOrder = {0}", data.DisplayOrder.ToString());
                 strcmd += string.Format(",DataName = '{0}'", data.DataName);
                 strcmd += string.Format(",SalesAmount = {0}", data.SalesAmount.ToString());
@@ -194,7 +194,7 @@
                 strcmd += string.Format(",GrossProfit = {0}", data.GrossProfit.ToString());
                 strcmd += string.Format(",NetIncome = {0}", data.NetIncome.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -203,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -229,7 +229,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -259,11 +259,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
@@ -285,7 +285,7 @@
                 if (ConstructionPeriod != 0)
                     strWork += string.Format(" And ConstructionPeriod = {0}", ConstructionPeriod);
                 if (SalesDataDays != DateTime.MinValue)
-                    strWork += string.Format(" And SalesDataDays = DATE_FORMAT(SalesDataDays, '%Y/%m/%d')", SalesDataDays.ToShortDateString());
+                    strWork += string.Format(" And SalesDataDays = STR_TO_Date(SalesDataDays, '%Y/%m/%d')", SalesDataDays.ToShortDateString());
 
             }
             catch (Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSystemExecute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSystemExecute.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOSystemExecute.cs	(revision 51)
@@ -5,9 +5,10 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
+
 using ProcessManagement.DB.Core;
 using ProcessManagement.DataModel;
 
@@ -64,7 +65,7 @@
             // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
             string strcmd = "SELECT";
             strcmd += "  PrimaryCode";
-            strcmd += " ,DATE_FORMAT(TargetDate, '%Y/%m/%d')";
+            strcmd += " ,DATE_FORMAT(TargetDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += " ,DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += " ,DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')";
             strcmd += " FROM SystemExecute";
@@ -108,7 +109,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -150,7 +151,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -173,10 +174,10 @@
 
             strcmd += " VALUES (";
             strcmd += string.Format("{0}", work.PrimaryCode);
-            strcmd += string.Format(", DATE_FORMAT('{0}','%Y/%m/%d')", work.TargetDate.ToShortDateString());
+            strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", work.TargetDate.ToShortDateString());
 
-            strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-            strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+            strcmd += ", STR_TO_DATE(DATE_FORMAT(sysdate,'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
+            strcmd += ", STR_TO_DATE(DATE_FORMAT(sysdate,'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
             strcmd = strcmd + ")";
 
             return strcmd;
@@ -205,7 +206,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -230,7 +231,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -254,9 +255,9 @@
                 strcmd += " SET";
 
                 strcmd += string.Format(" PrimaryCode = {0}", data.PrimaryCode);
-                strcmd += string.Format(", TargetDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
+                strcmd += string.Format(", TargetDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(sysdate,'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -265,7 +266,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -292,7 +293,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -321,11 +322,11 @@
                         strcmd += string.Format(" PrimaryCode = {0}", ((int)value).ToString());
                         break;
                     case (int)TableColumn.TargetDate:
-                        strcmd += string.Format(" TargetDate = DATE_FORMAT('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
+                        strcmd += string.Format(" TargetDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString());
                         break;
                 }
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += CreatePrimarykeyString(PrimaryCode);
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -359,11 +360,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("オラクルエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
 
Index: branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOVehicleScheduleData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOVehicleScheduleData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOVehicleScheduleData.cs	(revision 51)
@@ -5,7 +5,7 @@
 using System.Collections;
 
 using log4net;
-using MySql.Data.MySqlClient;
+using MySql.Data.MySqlClient;           // Data Provider for MySql
 
 using ProcessManagement.DB.MySql;
 using ProcessManagement.DB.Core;
@@ -74,7 +74,7 @@
             {
                 // SQL作成（oracleのDateTime型が変換できないのでCharに変換しておく）
                 strcmd = "SELECT";
-                strcmd += " DATE_FORMAT(TargetDate, '%Y/%m/%d %H:%i:%s')";
+                strcmd += " DATE_FORMAT(TargetDate, '%Y/%m/%d')";
                 strcmd += " ,VehicleCode";
                 strcmd += " ,MorningAfternoon";
                 strcmd += " ,PersonCode";
@@ -101,7 +101,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
 
@@ -128,7 +128,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -151,7 +151,7 @@
 
                     strcmd += " VALUES (";
 
-                    strcmd += string.Format(" DATE_FORMAT('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
+                    strcmd += string.Format(" STR_TO_DATE('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
                     strcmd += string.Format(", {0}", data.VehicleCode.ToString());
                     strcmd += string.Format(", {0}", data.MorningAfternoon.ToString());
                     strcmd += string.Format(", {0}", data.PersonCode.ToString());
@@ -159,8 +159,8 @@
                     strcmd += string.Format(", {0}", data.TargetMonth.ToString());
                     strcmd += string.Format(", {0}", data.TargetDay.ToString());
 
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
-                    strcmd += ", DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
+                    strcmd += ", STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                     strcmd = strcmd + ")";
 
                     if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -169,7 +169,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -192,7 +192,7 @@
 
                 strcmd += " SET";
 
-                strcmd += string.Format(" TargetDate = DATE_FORMAT('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
+                strcmd += string.Format(" TargetDate = STR_TO_DATE('{0}','%Y/%m/%d')", data.TargetDate.ToShortDateString());
                 strcmd += string.Format(",VehicleCode = {0}", data.VehicleCode.ToString());
                 strcmd += string.Format(",MorningAfternoon = {0}", data.MorningAfternoon.ToString());
                 strcmd += string.Format(",PersonCode = {0}", data.PersonCode.ToString());
@@ -200,7 +200,7 @@
                 strcmd += string.Format(",TargetMonth = {0}", data.TargetMonth.ToString());
                 strcmd += string.Format(",TargetDay = {0}", data.TargetDay.ToString());
 
-                strcmd += ", UpdateDate = DATE_FORMAT(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'%Y/%m/%d %H:%i:%s')";
+                strcmd += ", UpdateDate = STR_TO_DATE(DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%'),'%Y/%m/%d %H:%i:%s')";
                 strcmd += AddSQLString;
 
                 if (!ExecuteNonQuery(strcmd, bConnect)) return false;
@@ -209,7 +209,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -236,7 +236,7 @@
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
+                logger.ErrorFormat("システムエラー：{0}：{1}：{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd);
                 return false;
             }
         }
@@ -266,11 +266,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -298,11 +298,11 @@
             }
             catch (MySqlException myex)
             {
-                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(2), myex.Message);
+                logger.ErrorFormat("ＭｙＳＱＬエラー：{0}：{1}", CommonMotions.GetMethodName(), myex.Message);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("システムエラー：：{0}：{1}：{2}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
         #endregion
@@ -318,7 +318,7 @@
             string strWork = string.Empty;
             try
             {
-                strWork = string.Format(" Where TargetDate = DATE_FORMAT('{0}','%Y/%m/%d')", TargetDate.ToShortDateString());
+                strWork = string.Format(" Where TargetDate = STR_TO_DATE('{0}','%Y/%m/%d')", TargetDate.ToShortDateString());
                 if (VehicleCode != 0)
                     strWork += string.Format(" And VehicleCode = {0}", VehicleCode.ToString());
                 if (MorningAfternoon != 0)
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/AttendanceData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/AttendanceData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/AttendanceData.cs	(revision 51)
@@ -0,0 +1,115 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 出勤日報データ定義クラス
+    /// </summary>
+    public class AttendanceData
+    {
+        #region メンバ変数
+        /// <summary>
+        /// 作成者コード
+        /// </summary>
+        private int         m_PersonCode = 0;
+        /// <summary>
+        /// 日報作成日
+        /// </summary>
+        private DateTime    m_AttendanceDate = DateTime.Now;
+        /// <summary>
+        /// 明細行番号
+        /// </summary>
+        private int         m_SeqNo = 0;
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int         m_ConstructionCode = 0;
+        /// <summary>
+        /// 残業時間
+        /// </summary>
+        private double      m_OvertimeHours = 0;
+        /// <summary>
+        /// コメント
+        /// </summary>
+        private string      m_WorkingComment = string.Empty;
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        private DateTime    m_EntryDate = DateTime.Now;
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        private DateTime    m_UpdateDate = DateTime.Now;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 作成者コード
+        /// </summary>
+        public int PersonCode
+        {
+            get { return m_PersonCode; }
+            set { m_PersonCode = value; }
+        }
+        /// <summary>
+        /// 日報作成日
+        /// </summary>
+        public DateTime AttendanceDate
+        {
+            get { return m_AttendanceDate; }
+            set { m_AttendanceDate = value; }
+        }
+        /// <summary>
+        /// 明細行番号
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// 残業時間
+        /// </summary>
+        public double OvertimeHours
+        {
+            get { return m_OvertimeHours; }
+            set { m_OvertimeHours = value; }
+        }
+        /// <summary>
+        /// 作業コメント
+        /// </summary>
+        public string WorkingComment
+        {
+            get { return m_WorkingComment; }
+            set { m_WorkingComment = value; }
+        }
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/BankBusinessDayMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/BankBusinessDayMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/BankBusinessDayMaster.cs	(revision 51)
@@ -0,0 +1,77 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class BankBusinessDayMaster
+    {
+        #region メンバ変数
+        private int m_YearMonth = 0;       // 年月
+        private int m_BankBusinessDay = 0;         // 銀行営業日
+        private string m_Note = "";         // 備考
+        private int m_DeleteFlg = 0;        // 削除フラグ
+        private DateTime m_EntryDate = DateTime.Now;    // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 
+        /// </summary>
+        public int YearMonth
+        {
+            get { return m_YearMonth; }
+            set { m_YearMonth = value; }
+        }
+        /// <summary>
+        /// 
+        /// </summary>
+        public int BankBusinessDay
+        {
+            get { return m_BankBusinessDay; }
+            set { m_BankBusinessDay = value; }
+        }
+        /// <summary>
+        /// 
+        /// </summary>
+        public string Note
+        {
+            get { return m_Note; }
+            set { m_Note = value; }
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public int DeleteFlg
+        {
+            get { return m_DeleteFlg; }
+            set { m_DeleteFlg = 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/BillingData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/BillingData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/BillingData.cs	(revision 51)
@@ -0,0 +1,77 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class BillingData
+    {
+        #region メンバ変数
+        private int m_CompanyCode = 0;                 // 協力会社コード
+        private int m_TargetDate = 0;                   // 対象年月
+        private int m_SeqNo = 0;                        // 連番
+        private long m_BillPrice = 0;                  // 請求金額
+        private DateTime m_EntryDate = DateTime.Now;    // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 協力会社コード
+        /// </summary>
+        public int CompanyCode
+        {
+            get { return m_CompanyCode; }
+            set { m_CompanyCode = value; }
+        }
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public int TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+        /// <summary>
+        /// 請求金額
+        /// </summary>
+        public long BillPrice
+        {
+            get { return m_BillPrice; }
+            set { m_BillPrice = 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/BillingDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/BillingDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/BillingDataDetail.cs	(revision 51)
@@ -0,0 +1,148 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class BillingDataDetail
+    {
+        #region メンバ変数
+        private int m_CompanyCode = 0;                 // 協力会社コード
+        private int m_TargetDate = 0;                   // 対象年月
+        private int m_SeqNo = 0;                        // 連番
+        private int m_LineCount = 0;          // 行番号    
+        private long m_ConstructionCode = 0;   // 工事番号
+        private string m_FieldName = "";          // 現場名
+        private long m_BillPrice = 0;                  // 請求金額
+        private long m_HighwPrice = 0;         // 高速代     
+        private long m_HardwPrice = 0;         // 金物代     
+        private long m_IndsWasteTax = 0;       // 産廃税       
+        private string m_Note = "";             // 備考
+        private DateTime m_EntryDate = DateTime.Now;    // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 協力会社コード
+        /// </summary>
+        public int CompanyCode
+        {
+            get { return m_CompanyCode; }
+            set { m_CompanyCode = value; }
+        }
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public int TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+
+        /// <summary>
+        /// 行番号
+        /// </summary>
+        public int LineCount
+        {
+            get { return m_LineCount; }
+            set { m_LineCount = value; }
+        }
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public long ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// 現場名
+        /// </summary>
+        public string FieldName
+        {
+            get { return m_FieldName; }
+            set { m_FieldName = value; }
+        }
+        
+        /// <summary>
+        /// 請求金額
+        /// </summary>
+        public long BillPrice
+        {
+            get { return m_BillPrice; }
+            set { m_BillPrice = value; }
+        }
+
+        /// <summary>
+        /// 高速代
+        /// </summary>
+        public long HighwPrice
+        {
+            get { return m_HighwPrice; }
+            set { m_HighwPrice = value; }
+        }
+
+        /// <summary>
+        /// 金物代
+        /// </summary>
+        public long HardwPrice
+        {
+            get { return m_HardwPrice; }
+            set { m_HardwPrice = value; }
+        }
+
+        /// <summary>
+        /// 産廃税
+        /// </summary>
+        public long IndsWasteTax
+        {
+            get { return m_IndsWasteTax; }
+            set { m_IndsWasteTax = value; }
+        }
+
+        /// <summary>
+        /// 備考
+        /// </summary>
+        public string Note  
+        {
+            get { return m_Note; }
+            set { m_Note = 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/BillingPaymentSummary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/BillingPaymentSummary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/BillingPaymentSummary.cs	(revision 51)
@@ -0,0 +1,163 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class BillingPaymentSummary
+    {
+        #region メンバ変数
+        private int m_CompanyCode = 0;        // 協力会社コード
+        private int m_TargetDate = 0;         // 対象年月     
+        private int m_ChargePaymentKind = 0;        // 請求支払区分
+        private DateTime m_Payday = DateTime.Now;   // 支払日
+        private long m_BillPriceStotal = 0;      // 請求金額小計
+        private double m_ConsumptionTaxRate = 0;   // 消費税率
+        private long m_ConsumptionTaxPrice = 0;  // 消費税額
+        private long m_HighwPriceStotal = 0;     // 高速代小計
+        private long m_HardwPriceStotal = 0;     // 金物代小計
+        private long m_IndsWasteTaxStotal = 0;   // 産廃税小計
+        private double m_CnstrPriceRate = 0;       // 協力金比率
+        private long m_CnstrPriceStotal = 0;     // 協力金小計
+        private long m_BillingPriceTotal = 0;    // 請求金額合計
+        private DateTime m_EntryDate = DateTime.Now;    // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 協力会社コード
+        /// </summary>
+        public int CompanyCode
+        {
+            get { return m_CompanyCode; }
+            set { m_CompanyCode = value; }
+        }
+
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public int TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 請求支払区分
+        /// </summary>
+        public int ChargePaymentKind
+        {
+            get { return m_ChargePaymentKind; }
+            set { m_ChargePaymentKind = value; }
+        }
+
+        /// <summary>
+        /// 支払日
+        /// </summary>
+        public DateTime Payday
+        {
+            get { return m_Payday; }
+            set { m_Payday = value; }
+        }
+
+
+        /// <summary>
+        /// 請求金額小計
+        /// </summary>
+        public long BillPriceStotal
+        {
+            get { return m_BillPriceStotal; }
+            set { m_BillPriceStotal = value; }
+        }
+        /// <summary>
+        /// 消費税率
+        /// </summary>
+        public double ConsumptionTaxRate
+        {
+            get { return m_ConsumptionTaxRate; }
+            set { m_ConsumptionTaxRate = value; }
+        }
+        /// <summary>
+        /// 消費税額
+        /// </summary>
+        public long ConsumptionTaxPrice
+        {
+            get { return m_ConsumptionTaxPrice; }
+            set { m_ConsumptionTaxPrice = value; }
+        }
+        /// <summary>
+        /// 高速代小計
+        /// </summary>
+        public long HighwPriceStotal
+        {
+            get { return m_HighwPriceStotal; }
+            set { m_HighwPriceStotal = value; }
+        }
+        /// <summary>
+        /// 金物代小計
+        /// </summary>
+        public long HardwPriceStotal
+        {
+            get { return m_HardwPriceStotal; }
+            set { m_HardwPriceStotal = value; }
+        }
+        /// <summary>
+        /// 産廃税小計
+        /// </summary>
+        public long IndsWasteTaxStotal
+        {
+            get { return m_IndsWasteTaxStotal; }
+            set { m_IndsWasteTaxStotal = value; }
+        }
+        /// <summary>
+        /// 協力金比率
+        /// </summary>
+        public double CnstrPriceRate
+        {
+            get { return m_CnstrPriceRate; }
+            set { m_CnstrPriceRate = value; }
+        }
+        /// <summary>
+        /// 協力金小計
+        /// </summary>
+        public long CnstrPriceStotal
+        {
+            get { return m_CnstrPriceStotal; }
+            set { m_CnstrPriceStotal = value; }
+        }
+        /// <summary>
+        /// 請求金額合計
+        /// </summary>
+        public long BillingPriceTotal
+        {
+            get { return m_BillingPriceTotal; }
+            set { m_BillingPriceTotal = 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/ConstructionBaseInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionBaseInfo.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionBaseInfo.cs	(revision 51)
@@ -14,6 +14,7 @@
 
         private int         m_ConstructionCode = 0;	                            // 工事コード
         private int         m_TyingFlg = 0;                                     // 紐付データフラグ
+        private int         m_JoinFlg = 0;                                      // 結合契約工事フラグ
         private int         m_ConstructionYear = 0;	                            // 工事年度
         private int         m_ConstructionPeriod = 0;	                        // 工事期
         private DateTime    m_RequestedDate = DateTime.MinValue;                // 依頼受け日
@@ -85,6 +86,14 @@
             set { m_TyingFlg = value; }
         }
         /// <summary>
+        /// 結合契約工事フラグ
+        /// </summary>
+        public int JoinFlg
+        {
+            get { return m_JoinFlg; }
+            set { m_JoinFlg = value; }
+        }
+        /// <summary>
         /// 工事年度
         /// </summary>
         public int ConstructionYear
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionFieldNameDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionFieldNameDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionFieldNameDetail.cs	(revision 51)
@@ -0,0 +1,108 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 工事現場選択の受け渡し用明細クラス
+    /// </summary>
+    public class ConstructionFieldNameDetail
+    {
+        /// <summary>
+        /// 行番号
+        /// </summary>
+        public int LineCount { get; set; }
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode { get; set; }
+
+        /// <summary>
+        /// 現場名
+        /// </summary>
+        public string FieldName { get; set; }
+
+        /// <summary>
+        /// 請求金額(明細金額)
+        /// </summary>
+        public int BillPrice { get; set; }
+
+        /// <summary>
+        /// 削除フラグ
+        /// </summary>
+        public bool DeleteFlag { get; set; }
+
+        /// <summary>
+        /// 読み取り専用フラグ
+        /// </summary>
+        public bool ReadOnly { get; set; }
+
+
+        /// <summary>
+        /// 新規行フラグ
+        /// </summary>
+        public bool AddNew { get; set; }
+
+        /// <summary>
+        /// デフォルトのコンストラクタ
+        /// </summary>
+        public ConstructionFieldNameDetail()
+        {
+            LineCount = 0;
+            ConstructionCode = -1;
+            FieldName = "";
+            BillPrice = 0;
+            DeleteFlag = false;
+			ReadOnly = false;
+            AddNew = false;
+        }
+
+        public ConstructionFieldNameDetail(int lineCount, int construnctionCode, string fieldName, int billPrice, bool deleteFlag, bool readOnly, bool addNew)
+        {
+            LineCount = lineCount;
+            ConstructionCode = construnctionCode;
+            FieldName = fieldName;
+            BillPrice = billPrice;
+            DeleteFlag = deleteFlag;
+            ReadOnly = readOnly;
+            AddNew = addNew;
+        }
+
+        public ConstructionFieldNameDetail(int lineCount, int construnctionCode, string fieldName, int billPrice, bool deleteFlag, bool readOnly)
+        {
+            LineCount = lineCount;
+            ConstructionCode = construnctionCode;
+            FieldName = fieldName;
+            BillPrice = billPrice;
+            DeleteFlag = deleteFlag;
+			ReadOnly = readOnly;
+            AddNew = false;
+        }
+
+        public ConstructionFieldNameDetail(int lineCount, int construnctionCode, string fieldName, int billPrice, bool deleteFlag)
+        {
+            LineCount = lineCount;
+            ConstructionCode = construnctionCode;
+            FieldName = fieldName;
+            BillPrice = billPrice;
+            DeleteFlag = deleteFlag;
+			ReadOnly = false;
+            AddNew = false;
+        }
+
+        public ConstructionFieldNameDetail(int lineCount, int construnctionCode, string fieldName, int billPrice)
+        {
+            LineCount = lineCount;
+            ConstructionCode = construnctionCode;
+            FieldName = fieldName;
+            BillPrice = billPrice;
+            DeleteFlag = false;
+			ReadOnly = false;
+            AddNew = false;
+        }
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionFieldNameHeader.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionFieldNameHeader.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionFieldNameHeader.cs	(revision 51)
@@ -0,0 +1,62 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 工事現場選択の受け渡し用ヘッダクラス
+    /// </summary>
+    public class ConstructionFieldNameHeader
+    {
+        /// <summary>
+        /// 協力会社コード
+        /// </summary>
+        public int CompanyCode { get; set; }
+
+        /// <summary>
+        /// 協力会社名
+        /// </summary>
+        public string CompanyName { get; set; }
+
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public int TargetDate { get; set; }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo { get; set; }
+
+        /// <summary>
+        /// 請求金額(合計金額)
+        /// </summary>
+        public int BillPrice { get; set; }
+
+        /// <summary>
+        /// 工事金額明細
+        /// </summary>
+        public List<ConstructionFieldNameDetail> ConstructionFieldNameDetails;
+
+        /// <summary>
+        /// 検索先担当位置
+        /// </summary>
+        public int PersonCharge { get; set; } // 0:営業担当　1:工事担当　2:部署　3:全件
+
+        /// <summary>
+        /// デフォルトのコンストラクタ
+        /// </summary>
+        public  ConstructionFieldNameHeader()
+        {
+            CompanyCode = -1;
+            TargetDate = 0;
+            SeqNo = 0;
+            PersonCharge = 0;
+            ConstructionFieldNameDetails = new List<ConstructionFieldNameDetail>();
+        }
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLedger.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLedger.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLedger.cs	(revision 51)
@@ -30,7 +30,7 @@
         private double      m_GrossProfit = 0;                          // 粗利
         private double      m_Allowance = 0;                            // 給与
         private double      m_NetProfit = 0;                            // 純利益
-        private double      m_ComplateFlg = 0;                          // 入力完了フラグ
+        private int         m_ComplateFlg = 0;                          // 入力完了フラグ
         private int         m_IntegrationFlg = 0;                       // 受注金額積算フラグ
 
         private DateTime m_EntryDate = DateTime.Now;                    // 登録日付
@@ -173,7 +173,7 @@
         /// <summary>
         /// 入力完了フラグ
         /// </summary>
-        public double ComplateFlg
+        public int ComplateFlg
         {
             get { return m_ComplateFlg; }
             set { m_ComplateFlg = value; }
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLedgerDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLedgerDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLedgerDetail.cs	(revision 51)
@@ -35,6 +35,10 @@
         private int     m_SalaryFlg	= 0;                    // 給与振分区分
         private int     m_SalaryDays= 0;                    // 給与振分日数
         private int     m_OperatingFlg = 0;                 // 担当中フラグ
+        private int     m_SourceCode = 0;                   // 元工事番号
+        private int     m_JoinTitleFlg = 0;                 // 工事名称タイトル
+        private double  m_SalaryOnRegist = 0;               // 登録時月額給与
+        private int     m_PurchaseOrderFlg = 0;             // 注文書発行フラグ
 
         private DateTime m_EntryDate = DateTime.Now;        // 登録日付
         private DateTime m_UpdateDate = DateTime.Now;       // 更新日付
@@ -205,6 +209,38 @@
             get { return m_OperatingFlg; }
             set { m_OperatingFlg = value; }
         }
+        /// <summary>
+        /// 元工事番号
+        /// </summary>
+        public int SourceCode
+        {
+            get { return m_SourceCode; }
+            set { m_SourceCode = value; }
+        }
+        /// <summary>
+        /// 工事名称タイトル
+        /// </summary>
+        public int JoinTitleFlg
+        {
+            get { return m_JoinTitleFlg; }
+            set { m_JoinTitleFlg = value; }
+        }
+        /// <summary>
+        /// 登録時月額給与
+        /// </summary>
+        public double SalaryOnRegist
+        {
+            get { return m_SalaryOnRegist; }
+            set { m_SalaryOnRegist = value; }
+        }
+        /// <summary>
+        /// 注文書発行フラグ
+        /// </summary>
+        public int PurchaseOrderFlg
+        {
+            get { return m_PurchaseOrderFlg; }
+            set { m_PurchaseOrderFlg = value; }
+        }
 
         /// <summary>
         /// 登録日付
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLink.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLink.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionLink.cs	(revision 51)
@@ -15,10 +15,12 @@
 
         #region メンバ変数
 
-        private int m_ConstructionCode = 0;	                // 親工事コード	
-        private int m_FluctuationCode = 0;	                // 子工事コード	
-        private DateTime m_EntryDate = DateTime.Now;        // 登録日付
-        private DateTime m_UpdateDate = DateTime.Now;       // 更新日付
+        private int         m_ConstructionCode = 0;	                // 親工事コード	
+        private int         m_FluctuationCode = 0;	                // 子工事コード	
+        private int         m_LinkType = 0;	                        // リンク種別
+
+        private DateTime    m_EntryDate = DateTime.Now;             // 登録日付
+        private DateTime    m_UpdateDate = DateTime.Now;            // 更新日付
         #endregion
 
         #region コンストラクタ
@@ -42,6 +44,14 @@
             set { m_FluctuationCode = value; }
         }
         /// <summary>
+        /// リンク種別
+        /// </summary>
+        public int LinkType
+        {
+            get { return m_LinkType; }
+            set { m_LinkType = value; }
+        }
+        /// <summary>
         /// 登録日付
         /// </summary>
         public DateTime EntryDate
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionMaterialInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionMaterialInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ConstructionMaterialInfo.cs	(revision 51)
@@ -0,0 +1,87 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class ConstructionMaterialInfo
+    {
+        #region メンバ変数
+        private int m_ConstructionCode = 0;	            // 工事番号　キー項目
+        private int m_MaterialItemCode = 0;	            // 資材品目　キー項目
+        private int m_RentCount = 0;	                // 貸出数
+        private int m_RepayCount = 0;	                // 返却数
+        private int m_CompleteFlg = 0;	                // 完了フラグ
+        private DateTime m_EntryDate = DateTime.Now;         // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;        // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号　キー項目
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// 資材品目　キー項目
+        /// </summary>
+        public int MaterialItemCode
+        {
+            get { return m_MaterialItemCode; }
+            set { m_MaterialItemCode = value; }
+        }
+        /// <summary>
+        /// 貸出数
+        /// </summary>
+        public int RentCount
+        {
+            get { return m_RentCount; }
+            set { m_RentCount = value; }
+        }
+
+        /// <summary>
+        /// 返却数
+        /// </summary>
+        public int RepayCount
+        {
+            get { return m_RepayCount; }
+            set { m_RepayCount = value; }
+        }
+
+        /// <summary>
+        /// 完了フラグ
+        /// </summary>
+        public int CompleteFlg
+        {
+            get { return m_CompleteFlg; }
+            set { m_CompleteFlg = 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/CostDataOfPerson.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/CostDataOfPerson.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/CostDataOfPerson.cs	(revision 51)
@@ -50,12 +50,20 @@
         /// <summary>
         /// 支払方法フラグ
         /// </summary>
-        private int m_PaymentType = 0;
+        private int         m_PaymentType = 0;
         /// <summary>
-        /// 金額
+        /// 金額（税抜）
         /// </summary>
         private double      m_EntryPrice = 0;
         /// <summary>
+        /// 金額（税込）
+        /// </summary>
+        private double      m_EntryPriceInTax = 0;
+        /// <summary>
+        /// 伝票番号
+        /// </summary>
+        private string      m_SlipNumber = string.Empty;
+        /// <summary>
         /// 引込済みフラグ
         /// </summary>
         private int         m_ComplateFlg = 0;
@@ -159,7 +167,7 @@
             set { m_PaymentType = value; }
         }
         /// <summary>
-        /// 金額
+        /// 金額（税抜）
         /// </summary>
         public double EntryPrice
         {
@@ -166,6 +174,23 @@
             get { return m_EntryPrice; }
             set { m_EntryPrice = value; }
         }
+        /// <summary>
+        /// 金額（税込）
+        /// </summary>
+        public double EntryPriceInTax
+        {
+            get { return m_EntryPriceInTax; }
+            set { m_EntryPriceInTax = value; }
+        }
+        /// <summary>
+        /// 伝票番号
+        /// </summary>
+        public string SlipNumber
+        {
+            get { return m_SlipNumber; }
+            set { m_SlipNumber = value; }
+        }
+        /// <summary>
         /// 引込済みフラグ
         /// </summary>
         public int ComplateFlg
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/DeadLineMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/DeadLineMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/DeadLineMaster.cs	(revision 51)
@@ -0,0 +1,90 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class DeadLineMaster
+    {
+        #region メンバ変数
+        private int m_LabourKind = 0;       // 手間業者区分
+        private int m_DeadLine = 0;         // 締日
+        private int m_PayDay = 0;           // 支払日
+        private string m_Note = "";         // 備考
+        private int m_DeleteFlg = 0;        // 削除フラグ
+        private DateTime m_EntryDate = DateTime.Now;    // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 
+        /// </summary>
+        public int LabourKind
+        {
+            get { return m_LabourKind; }
+            set { m_LabourKind = value; }
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public int DeadLine
+        {
+            get { return m_DeadLine; }
+            set { m_DeadLine = value; }
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public int PayDay
+        {
+            get { return m_PayDay; }
+            set { m_PayDay = value; }
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public string Note
+        {
+            get { return m_Note; }
+            set { m_Note = value; }
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public int DeleteFlg
+        {
+            get { return m_DeleteFlg; }
+            set { m_DeleteFlg = 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/DepositApprovalInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/DepositApprovalInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/DepositApprovalInfo.cs	(revision 51)
@@ -0,0 +1,142 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 入金確認承認データ
+    /// </summary>
+    public class DepositApprovalInfo
+    {
+        #region メンバ変数
+        private int m_OrderersDivision = 0;                     // 発注者区分
+        private int m_OrderersCode = 0;                         // 発注者コード
+        private string m_TargetDate = string.Empty;             // 対象年月
+        private int m_SeqNo = 0;                                // 連番
+        private int m_LineCount = 0;                            // 行番号
+        private int m_ApprovalNo = 0;                           // 承認順序
+        private int m_ApprovalPerson = 0;                       // 承認者コード
+        private string m_ApprovalPersonName = string.Empty;     // 承認者名
+        private int m_ApprovalAuthority = 0;                    // 承認権限区分
+        private DateTime m_ApprovalDate = DateTime.MinValue;    // 承認日付
+        private DateTime m_EntryDate = DateTime.Now;            // 登録年月日
+        private DateTime m_UpdateDate = DateTime.Now;           // 更新年月日
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderersDivision
+        {
+            get { return m_OrderersDivision; }
+            set { m_OrderersDivision = value; }
+        }
+
+        /// <summary>
+        /// 発注者コード
+        /// </summary>
+        public int OrderersCode
+        {
+            get { return m_OrderersCode; }
+            set { m_OrderersCode = value; }
+        }
+
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public string TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+
+        /// <summary>
+        /// 行番号
+        /// </summary>
+        public int LineCount
+        {
+            get { return m_LineCount; }
+            set { m_LineCount = value; }
+        }
+
+        /// <summary>
+        /// 承認順序
+        /// </summary>
+        public int ApprovalNo
+        {
+            get { return m_ApprovalNo; }
+            set { m_ApprovalNo = value; }
+        }
+
+        /// <summary>
+        /// 承認者コード
+        /// </summary>
+        public int ApprovalPerson
+        {
+            get { return m_ApprovalPerson; }
+            set { m_ApprovalPerson = value; }
+        }
+
+        /// <summary>
+        /// 承認者名
+        /// </summary>
+        public string ApprovalPersonName
+        {
+            get { return m_ApprovalPersonName; }
+            set { m_ApprovalPersonName = value; }
+        }
+
+        /// <summary>
+        /// 承認権限区分
+        /// </summary>
+        public int ApprovalAuthority
+        {
+            get { return m_ApprovalAuthority; }
+            set { m_ApprovalAuthority = value; }
+        }
+
+        /// <summary>
+        /// 承認日付
+        /// </summary>
+        public DateTime ApprovalDate
+        {
+            get { return m_ApprovalDate; }
+            set { m_ApprovalDate = value; }
+        }
+
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/DepositData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/DepositData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/DepositData.cs	(revision 51)
@@ -0,0 +1,113 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 入金データ
+    /// </summary>
+    public class DepositData
+    {
+        #region メンバ変数
+        private int m_OrderersDivision = 0;                     // 発注者区分
+        private int m_OrderersCode = 0;                         // 発注者コード
+        private string m_TargetDate = string.Empty;             // 対象年月
+        private int m_SeqNo = 0;                                // 連番
+        private DateTime m_DepositDate = DateTime.MinValue;     // 入金日
+        private int m_DepositAmountCash = 0;                    // 入金金額（現金）
+        private int m_DepositAmountBill = 0;                    // 入金金額（手形）
+        private DateTime m_EntryDate = DateTime.Now;            // 登録年月日
+        private DateTime m_UpdateDate = DateTime.Now;           // 更新年月日
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderersDivision
+        {
+            get { return m_OrderersDivision; }
+            set { m_OrderersDivision = value; }
+        }
+
+        /// <summary>
+        /// 発注者コード
+        /// </summary>
+        public int OrderersCode
+        {
+            get { return m_OrderersCode; }
+            set { m_OrderersCode = value; }
+        }
+
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public string TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+
+        /// <summary>
+        /// 入金日
+        /// </summary>
+        public DateTime DepositDate
+        {
+            get { return m_DepositDate; }
+            set { m_DepositDate = value; }
+        }
+
+        /// <summary>
+        /// 入金金額（現金）
+        /// </summary>
+        public int	DepositAmountCash
+        {
+            get { return m_DepositAmountCash; }
+            set { m_DepositAmountCash = value; }
+        }
+
+        /// <summary>
+        /// 入金金額（手形）
+        /// </summary>
+        public int	DepositAmountBill
+        {
+            get { return m_DepositAmountBill; }
+            set { m_DepositAmountBill = value; }
+        }
+
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/DepositDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/DepositDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/DepositDataDetail.cs	(revision 51)
@@ -0,0 +1,203 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 入金明細データ
+    /// </summary>
+    public class DepositDataDetail
+    {
+        #region メンバ変数
+        private int m_OrderersDivision = 0;                     // 発注者区分
+        private int m_OrderersCode = 0;                         // 発注者コード
+        private string m_TargetDate = string.Empty;             // 対象年月
+        private int m_SeqNo = 0;                                // 連番
+        private int m_LineCount = 0;                            // 行番号
+        private int m_RequestNo = 0;                            // 請求No
+        private int m_OrderNo = 0;                              // 受付番号
+        private int m_DepositAmount = 0;                        // 入金金額
+        private int m_DiscountAmount = 0;                       // 値引き金額
+        private int m_CnstrPrice = 0;                           // 協力金
+        private int m_Fees = 0;                                 // 手数料
+        private int m_OtherAdjustments = 0;                     // その他調整
+        private int m_CarryAmount = 0;                          // 繰越金額
+        private int m_ApprovalPersonCode = 0;                   // 承認担当者コード
+        private DateTime m_ApprovalDate = DateTime.MinValue;    // 担当者承認日付
+        private bool m_ApprovalEndFlg = false;                  // 承認完了フラグ
+        private DateTime m_EntryDate = DateTime.Now;            // 登録年月日
+        private DateTime m_UpdateDate = DateTime.Now;           // 更新年月日
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderersDivision
+        {
+            get { return m_OrderersDivision; }
+            set { m_OrderersDivision = value; }
+        }
+
+        /// <summary>
+        /// 発注者コード
+        /// </summary>
+        public int OrderersCode
+        {
+            get { return m_OrderersCode; }
+            set { m_OrderersCode = value; }
+        }
+
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public string TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+
+        /// <summary>
+        /// 行番号
+        /// </summary>
+        public int LineCount
+        {
+            get { return m_LineCount; }
+            set { m_LineCount = value; }
+        }
+
+        /// <summary>
+        /// 請求No
+        /// </summary>
+        public int RequestNo
+        {
+            get { return m_RequestNo; }
+            set { m_RequestNo = value; }
+        }
+
+        /// <summary>
+        /// 受付番号
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+
+        /// <summary>
+        /// 入金金額
+        /// </summary>
+        public int DepositAmount
+        {
+            get { return m_DepositAmount; }
+            set { m_DepositAmount = value; }
+        }
+
+        /// <summary>
+        /// 値引き金額
+        /// </summary>
+        public int DiscountAmount
+        {
+            get { return m_DiscountAmount; }
+            set { m_DiscountAmount = value; }
+        }
+
+        /// <summary>
+        /// 協力金
+        /// </summary>
+        public int CnstrPrice
+        {
+            get { return m_CnstrPrice; }
+            set { m_CnstrPrice = value; }
+        }
+
+        /// <summary>
+        /// 手数料
+        /// </summary>
+        public int Fees
+        {
+            get { return m_Fees; }
+            set { m_Fees = value; }
+        }
+
+        /// <summary>
+        /// その他調整
+        /// </summary>
+        public int OtherAdjustments
+        {
+            get { return m_OtherAdjustments; }
+            set { m_OtherAdjustments = value; }
+        }
+
+        /// <summary>
+        /// 繰越金額
+        /// </summary>
+        public int CarryAmount
+        {
+            get { return m_CarryAmount; }
+            set { m_CarryAmount = value; }
+        }
+
+        /// <summary>
+        /// 承認担当者コード
+        /// </summary>
+        public int ApprovalPersonCode
+        {
+            get { return m_ApprovalPersonCode; }
+            set { m_ApprovalPersonCode = value; }
+        }
+
+        /// <summary>
+        /// 担当者承認日付
+        /// </summary>
+        public DateTime ApprovalDate
+        {
+            get { return m_ApprovalDate; }
+            set { m_ApprovalDate = value; }
+        }
+
+        /// <summary>
+        /// 承認完了フラグ
+        /// </summary>
+        public bool ApprovalEndFlg
+        {
+            get { return m_ApprovalEndFlg; }
+            set { m_ApprovalEndFlg = value; }
+        }
+
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialInfo.cs	(revision 51)
@@ -0,0 +1,78 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class MaterialInfo
+    {
+        #region メンバ変数
+        private int m_MaterialItemCode = 0;	            // キー項目
+        private int m_MaterialCount = 0;	            // 資材数
+        private int m_RentCount = 0;	                // 貸出可能数
+        private int m_DeleteFlg = 0;                    // 削除フラグ
+        private DateTime m_EntryDate = DateTime.Now;         // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;        // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// キー項目
+        /// </summary>
+        public int MaterialItemCode
+        {
+            get { return m_MaterialItemCode; }
+            set { m_MaterialItemCode = value; }
+        }
+        /// <summary>
+        /// 資材数
+        /// </summary>
+        public int MaterialCount
+        {
+            get { return m_MaterialCount; }
+            set { m_MaterialCount = value; }
+        }
+
+        /// <summary>
+        /// 貸出可能数
+        /// </summary>
+        public int RentCount
+        {
+            get { return m_RentCount; }
+            set { m_RentCount = value; }
+        }
+        /// <summary>
+        /// 削除フラグ
+        /// </summary>
+        public int DeleteFlg
+        {
+            get { return m_DeleteFlg; }
+            set { m_DeleteFlg = 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/MaterialItemMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialItemMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialItemMaster.cs	(revision 51)
@@ -0,0 +1,87 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class MaterialItemMaster
+    {
+        #region メンバ変数
+        private int m_MaterialItemCode = 0;	            // キー項目
+        private int m_MaterialKindCode = 0;	            // 資材種類コード
+        private string m_MaterialItemName = string.Empty;	// 名称
+        private int m_DisplayOrder = 0;	                // 表示順
+        private int m_DeleteFlg = 0;                    // 削除フラグ
+        private DateTime m_EntryDate = DateTime.Now;         // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;        // 更新日付
+        #endregion
+
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// キー項目
+        /// </summary>
+        public int MaterialItemCode
+        {
+            get { return m_MaterialItemCode; }
+            set { m_MaterialItemCode = value; }
+        }
+        /// <summary>
+        /// 資材種類コード
+        /// </summary>
+        public int MaterialKindCode
+        {
+            get { return m_MaterialKindCode; }
+            set { m_MaterialKindCode = value; }
+        }
+        /// <summary>
+        /// 名称
+        /// </summary>
+        public string MaterialItemName
+        {
+            get { return m_MaterialItemName; }
+            set { m_MaterialItemName = value; }
+        }
+
+        /// <summary>
+        /// 表示順
+        /// </summary>
+        public int DisplayOrder
+        {
+            get { return m_DisplayOrder; }
+            set { m_DisplayOrder = value; }
+        }
+        /// <summary>
+        /// 削除フラグ
+        /// </summary>
+        public int DeleteFlg
+        {
+            get { return m_DeleteFlg; }
+            set { m_DeleteFlg = 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/MaterialKindMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialKindMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialKindMaster.cs	(revision 51)
@@ -0,0 +1,77 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    public class MaterialKindMaster
+    {
+        #region メンバ変数
+        private int m_MaterialKindCode = 0;	            // キー項目
+        private string m_MaterialKindName = string.Empty;	// 名称
+        private int m_DisplayOrder = 0;	                // 表示順
+        private int m_DeleteFlg = 0;                    // 削除フラグ
+        private DateTime m_EntryDate = DateTime.Now;         // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;        // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// キー項目
+        /// </summary>
+        public int MaterialKindCode
+        {
+            get { return m_MaterialKindCode; }
+            set { m_MaterialKindCode = value; }
+        }
+        /// <summary>
+        /// 名称
+        /// </summary>
+        public string MaterialKindName
+        {
+            get { return m_MaterialKindName; }
+            set { m_MaterialKindName = value; }
+        }
+
+        /// <summary>
+        /// 表示順
+        /// </summary>
+        public int DisplayOrder
+        {
+            get { return m_DisplayOrder; }
+            set { m_DisplayOrder = value; }
+        }
+        /// <summary>
+        /// 削除フラグ
+        /// </summary>
+        public int DeleteFlg
+        {
+            get { return m_DeleteFlg; }
+            set { m_DeleteFlg = 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/MaterialRecordInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialRecordInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/MaterialRecordInfo.cs	(revision 51)
@@ -0,0 +1,125 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class MaterialRecordInfo
+    {
+        #region メンバ変数
+        private int m_MaterialItemCode = 0;	            // キー項目
+        private DateTime m_ProcessDate = DateTime.Now;  // キー項目２　処理日
+        private int m_SeqNo = 0;	                    // キー項目３　連番
+        private int m_RecKind = 0;	                    // レコード区分
+        private int m_ConstructionCode = 0;             // 工事番号
+        private int m_PersonCode= 0;                    // 担当者コード
+        private int m_MaterialCount = 0;                 // 資材数
+        private DateTime m_RepayPlanDate = DateTime.Now; // 返却予定年月日
+        private string m_CommentText = "";               // 担当者コメント
+        private DateTime m_EntryDate = DateTime.Now;         // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;        // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// キー項目
+        /// </summary>
+        public int MaterialItemCode
+        {
+            get { return m_MaterialItemCode; }
+            set { m_MaterialItemCode = value; }
+        }
+        /// <summary>
+        /// キー項目２　処理日
+        /// </summary>
+        public DateTime ProcessDate
+        {
+            get { return m_ProcessDate; }
+            set { m_ProcessDate = value; }
+        }
+
+        /// <summary>
+        /// キー項目３　連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+        /// <summary>
+        /// レコード区分
+        /// </summary>
+        public int RecKind
+        {
+            get { return m_RecKind; }
+            set { m_RecKind = value; }
+        }
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// 担当者コード
+        /// </summary>
+        public int PersonCode
+        {
+            get { return m_PersonCode; }
+            set { m_PersonCode = value; }
+        }
+        /// <summary>
+        /// 資材数
+        /// </summary>
+        public int MaterialCount
+        {
+            get { return m_MaterialCount; }
+            set { m_MaterialCount = value; }
+        }
+
+        /// <summary>
+        /// 返却予定年月日
+        /// </summary>
+        public DateTime RepayPlanDate
+        {
+            set { m_RepayPlanDate = value; }
+            get { return m_RepayPlanDate; }
+        }
+
+        /// <summary>
+        /// 担当者コメント
+        /// </summary>
+        public string CommentText
+        {
+            get { return m_CommentText; }
+            set { m_CommentText = 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/MessageBoardTerget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/MessageBoardTerget.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/MessageBoardTerget.cs	(revision 51)
@@ -11,8 +11,8 @@
     public class MessageBoardTerget
     {
         #region メンバ変数
-        private int         m_RecordNumber=0;                       // レコード番号
-        private int         m_BranchNumber=0;                       // レコード枝番
+        private int         m_RecordNumber = 0;                     // レコード番号
+        private int         m_BranchNumber = 0;                     // レコード枝番
         private int         m_SeqNum = 0;                           // 順番
         private int         m_ToCode = 0;                           // 対象者コード
         private string      m_ToName = string.Empty;                // 対象者名
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentApprovalInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentApprovalInfo.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentApprovalInfo.cs	(revision 51)
@@ -0,0 +1,131 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class PaymentApprovalInfo
+    {
+        #region メンバ変数
+        private int m_CompanyCode = 0;        // 協力会社コード
+        private int m_TargetDate = 0;         // 対象年月     
+        private int m_SeqNo = 0;                // 連番
+        private int m_LineCount = 0;            // 行番号    
+        private int m_ApprovalNo = 0;               // 承認順序    
+        private int m_ApprovalPersonCode = 0;   // 承認者コード
+        private string m_ApprovalPersonName = "";   // 承認者名
+        private int m_ApprovalAuthority = 0;          // 承認権限区分    
+        private DateTime m_ApprovalDate = DateTime.Now;// 承認日付
+        private DateTime m_EntryDate = DateTime.Now;    // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 協力会社コード
+        /// </summary>
+        public int CompanyCode
+        {
+            get { return m_CompanyCode; }
+            set { m_CompanyCode = value; }
+        }
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public int TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+
+        /// <summary>
+        /// 行番号
+        /// </summary>
+        public int LineCount
+        {
+            get { return m_LineCount; }
+            set { m_LineCount = value; }
+        }
+
+        /// <summary>
+        /// 承認順序
+        /// </summary>
+        public int ApprovalNo
+        {
+            get { return m_ApprovalNo; }
+            set { m_ApprovalNo = value; }
+        }
+
+        /// <summary>
+        /// 承認者コード
+        /// </summary>
+        public int ApprovalPerson
+        {
+            get { return m_ApprovalPersonCode; }
+            set { m_ApprovalPersonCode = value; }
+        }
+
+        /// <summary>
+        /// 承認者名
+        /// </summary>
+        public string ApprovalPersonName
+        {
+            get { return m_ApprovalPersonName; }
+            set { m_ApprovalPersonName = value; }
+        }
+
+        /// <summary>
+        /// 承認権限区分
+        /// </summary>
+        public int ApprovalAuthority
+        {
+            get { return m_ApprovalAuthority; }
+            set { m_ApprovalAuthority = value; }
+        }
+
+
+        /// <summary>
+        /// 承認日付
+        /// </summary>
+        public DateTime ApprovalDate
+        {
+            set { m_ApprovalDate = value; }
+            get { return m_ApprovalDate; }
+        }
+
+
+        /// <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/PaymentDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PaymentDataDetail.cs	(revision 51)
@@ -0,0 +1,201 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    public class PaymentDataDetail
+    {
+        #region メンバ変数
+        private int m_CompanyCode = 0;        // 協力会社コード
+        private int m_TargetDate = 0;         // 対象年月     
+        private int m_SeqNo = 0;                // 連番
+        private int m_LineCount = 0;            // 行番号    
+        private long m_BillPrice = 0;        // 請求金額    
+        private long m_DiscountPrice = 0;       // 値引き金額    
+        private long m_OffsetPrice = 0;         // 相殺金額    
+        private long m_NextCoPrice = 0;        // 次回繰越    
+        private long m_HighwPrice = 0;       // 高速代     
+        private long m_HardwPrice = 0;       // 金物代     
+        private long m_IndsWasteTax = 0;     // 産廃税       
+        private long m_CnstrPrice = 0;         // 協力金
+        private int m_CnstrPriceExist =0;       // 協力金有無
+        private int m_ApprovalPersonCode = 0;// 承認担当者コード
+        private DateTime m_ApprovalDate = DateTime.Now;// 担当者承認日付
+        private int m_ApprovalEndFlg = 0;       // 承認完了フラグ
+        private DateTime m_EntryDate = DateTime.Now;    // 登録日付
+        private DateTime m_UpdateDate = DateTime.Now;   // 更新日付
+
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 協力会社コード
+        /// </summary>
+        public int CompanyCode
+        {
+            get { return m_CompanyCode; }
+            set { m_CompanyCode = value; }
+        }
+        /// <summary>
+        /// 対象年月
+        /// </summary>
+        public int TargetDate
+        {
+            get { return m_TargetDate; }
+            set { m_TargetDate = value; }
+        }
+
+        /// <summary>
+        /// 連番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+
+        /// <summary>
+        /// 行番号
+        /// </summary>
+        public int LineCount
+        {
+            get { return m_LineCount; }
+            set { m_LineCount = value; }
+        }
+
+        /// <summary>
+        /// 請求金額
+        /// </summary>
+        public long BillPrice
+        {
+            get { return m_BillPrice; }
+            set { m_BillPrice = value; }
+        }
+
+        /// <summary>
+        /// 値引き金額
+        /// </summary>
+        public long DiscountPrice
+        {
+            get { return m_DiscountPrice; }
+            set { m_DiscountPrice = value; }
+        }
+
+        /// <summary>
+        /// 相殺金額
+        /// </summary>
+        public long OffsetPrice
+        {
+            get { return m_OffsetPrice; }
+            set { m_OffsetPrice = value; }
+        }
+
+        /// <summary>
+        /// 次回繰越
+        /// </summary>
+        public long NextCoPrice
+        {
+            get { return m_NextCoPrice; }
+            set { m_NextCoPrice = value; }
+        }
+
+        /// <summary>
+        /// 高速代
+        /// </summary>
+        public long HighwPrice
+        {
+            get { return m_HighwPrice; }
+            set { m_HighwPrice = value; }
+        }
+
+        /// <summary>
+        /// 金物代
+        /// </summary>
+        public long HardwPrice
+        {
+            get { return m_HardwPrice; }
+            set { m_HardwPrice = value; }
+        }
+
+        /// <summary>
+        /// 産廃税
+        /// </summary>
+        public long IndsWasteTax
+        {
+            get { return m_IndsWasteTax; }
+            set { m_IndsWasteTax = value; }
+        }
+
+        /// <summary>
+        /// 協力金
+        /// </summary>
+        public long CnstrPrice
+        {
+            get { return m_CnstrPrice; }
+            set { m_CnstrPrice = value; }
+        }
+
+        /// <summary>
+        /// 協力金有無
+        /// </summary>
+        public int CnstrPriceExist
+        {
+            get { return m_CnstrPriceExist; }
+            set { m_CnstrPriceExist = value; }
+        }
+
+        /// <summary>
+        /// 承認担当者コード
+        /// </summary>
+        public int ApprovalPersonCode
+        {
+            get { return m_ApprovalPersonCode; }
+            set { m_ApprovalPersonCode = value; }
+        }
+
+        /// <summary>
+        /// 担当承認日付
+        /// </summary>
+        public DateTime ApprovalDate
+        {
+            set { m_ApprovalDate = value; }
+            get { return m_ApprovalDate; }
+        }
+
+        /// <summary>
+        /// 承認完了フラグ
+        /// </summary>
+        public int ApprovalEndFlg
+        {
+            get { return m_ApprovalEndFlg; }
+            set { m_ApprovalEndFlg = 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/PersonDepartmentMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PersonDepartmentMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PersonDepartmentMaster.cs	(revision 51)
@@ -0,0 +1,70 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 担当者対象部署マスタデータモデル
+    /// </summary>
+    public class PersonDepartmentMaster
+    {
+        #region メンバ変数
+        private int         m_PersonCode = 0;                   // 担当者コード
+        private int         m_DepartmentCode = 0;               // 対象部署コード
+
+        private int         m_AffiliationFlg = 0;               // 所属フラグ
+
+        private DateTime    m_EntryDate = DateTime.MinValue;    // 登録日付
+        private DateTime    m_UpdateDate = DateTime.MinValue;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 担当者コード
+        /// </summary>
+        public int PersonCode
+        {
+            set { m_PersonCode = value; }
+            get { return m_PersonCode; }
+        }
+        /// <summary>
+        /// 部署コード
+        /// </summary>
+        public int DepartmentCode
+        {
+            get { return m_DepartmentCode; }
+            set { m_DepartmentCode = value; }
+        }
+        /// <summary>
+        /// 所属フラグ
+        /// </summary>
+        public int AffiliationFlg
+        {
+            set { m_AffiliationFlg = value; }
+            get { return m_AffiliationFlg; }
+        }
+        /// <summary>
+        /// 登録日付
+        /// </summary>
+        public DateTime EntryDate
+        {
+            set { m_EntryDate = value; }
+            get { return m_EntryDate; }
+        }
+        /// <summary>
+        /// <summary>
+        /// 更新日付
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            set { m_UpdateDate = value; }
+            get { return m_UpdateDate; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/PersonInChargeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PersonInChargeMaster.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PersonInChargeMaster.cs	(revision 51)
@@ -18,6 +18,8 @@
         private DateTime    m_EndDate = DateTime.MinValue;      // マスタ使用開始年月日付
         private string      m_PassWord = string.Empty;	        // パスワード
         private int         m_SecurityManagement = 0;           // 機密区分
+        private int         m_SecCode = 0;                      // 保護区分番号
+
         private string      m_MsgBackColor = string.Empty;	    // メッセージ背景色
 
         private string      m_DisplayString = string.Empty;	    // 表示・印刷名称
@@ -98,6 +100,14 @@
             set { m_SecurityManagement = value; }
         }
         /// <summary>
+        /// 保護区分番号
+        /// </summary>
+        public int SecCode
+        {
+            get { return m_SecCode; }
+            set { m_SecCode = value; }
+        }
+        /// <summary>
         /// メッセージ背景色
         /// </summary>
         public string MsgBackColor
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/PersonSalaryMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PersonSalaryMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PersonSalaryMaster.cs	(revision 51)
@@ -0,0 +1,79 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 担当者給与マスタデータモデル
+    /// </summary>
+    public class PersonSalaryMaster
+    {
+        #region メンバ変数
+        private int         m_PersonCode = 0;                   // 担当者コード
+        private DateTime    m_StartDate = DateTime.MinValue;    // 使用開始年月日付
+
+        private double      m_MonthlySalary = 0;                // 月給金額
+        private double      m_YearSalary = 0;	                // 年棒金額
+
+        private DateTime    m_EntryDate = DateTime.MinValue;    // 登録日付
+        private DateTime    m_UpdateDate = DateTime.MinValue;   // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 担当者コード
+        /// </summary>
+        public int PersonCode
+        {
+            set { m_PersonCode = value; }
+            get { return m_PersonCode; }
+        }
+        /// <summary>
+        /// 使用開始年月
+        /// </summary>
+        public DateTime StartDate
+        {
+            set { m_StartDate = value; }
+            get { return m_StartDate; }
+        }
+        /// <summary>
+        /// 月給金額
+        /// </summary>
+        public double MonthlySalary
+        {
+            get { return m_MonthlySalary; }
+            set { m_MonthlySalary = value; }
+        }
+        /// <summary>
+        /// 年棒金額
+        /// </summary>
+        public double YearSalary
+        {
+            get { return m_YearSalary; }
+            set { m_YearSalary = value; }
+        }
+        /// <summary>
+        /// 登録日付
+        /// </summary>
+        public DateTime EntryDate
+        {
+            set { m_EntryDate = value; }
+            get { return m_EntryDate; }
+        }
+        /// <summary>
+        /// <summary>
+        /// 更新日付
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            set { m_UpdateDate = value; }
+            get { return m_UpdateDate; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessApproval.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessApproval.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessApproval.cs	(revision 51)
@@ -20,6 +20,10 @@
         /// </summary>
         private int         m_ApprovalCode = 0;
         /// <summary>
+        /// 受付番号
+        /// </summary>
+        private int         m_OrderNo = 1;
+        /// <summary>
         /// 枝番
         /// </summary>
         private int         m_SeqNo = 0;
@@ -74,6 +78,14 @@
             set { m_ApprovalCode = value; }
         }
         /// <summary>
+        /// 受付番号
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+        /// <summary>
         /// 枝番
         /// </summary>
         public int SeqNo
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessApprovalDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessApprovalDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessApprovalDetail.cs	(revision 51)
@@ -0,0 +1,106 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 承認明細データ
+    /// </summary>
+    public class ProcessApprovalDetail
+    {
+        #region メンバ変数
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int         m_ConstructionCode = 0;
+        /// <summary>
+        /// 承認機能番号
+        /// </summary>
+        private int         m_ApprovalCode = 0;
+        /// <summary>
+        /// 受付番号
+        /// </summary>
+        private int         m_OrderNo = 1;
+        /// <summary>
+        /// 枝番
+        /// </summary>
+        private int         m_SerialNo = 0;
+        /// <summary>
+        /// リンク情報
+        /// </summary>
+        private int         m_LinkCode = 0;
+        /// <summary>
+        /// 登録日付
+        /// </summary>
+        private DateTime    m_EntryDate = DateTime.Now;
+        /// <summary>
+        /// 更新日付
+        /// </summary>
+        private DateTime    m_UpdateDate = DateTime.Now;
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// 承認機能番号
+        /// </summary>
+        public int ApprovalCode
+        {
+            get { return m_ApprovalCode; }
+            set { m_ApprovalCode = value; }
+        }
+        /// <summary>
+        /// 受付番号
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+        /// <summary>
+        /// 枝番
+        /// </summary>
+        public int SerialNo
+        {
+            get { return m_SerialNo; }
+            set { m_SerialNo = value; }
+        }
+        /// <summary>
+        /// リンク情報
+        /// </summary>
+        public int LinkCode
+        {
+            get { return m_LinkCode; }
+            set { m_LinkCode = 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/ProcessExcuter.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessExcuter.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/ProcessExcuter.cs	(revision 51)
@@ -0,0 +1,82 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 起動対象マスタ
+    /// </summary>
+    public class ProcessExcute
+    {
+        #region メンバ変数
+        /// <summary>
+        /// 保護区分番号
+        /// </summary>
+        private int         m_SecCode = 0;
+        /// <summary>
+        /// 起動処理番号
+        /// </summary>
+        private int         m_ExecCode = 0;
+        /// <summary>
+        /// 編集フラグ
+        /// </summary>
+        private int         m_EditFlg = 0;
+
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        private DateTime    m_EntryDate = DateTime.MinValue;
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        private DateTime    m_UpdateDate = DateTime.MinValue;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 保護区分番号
+        /// </summary>
+        public int SecCode
+        {
+            get { return m_SecCode; }
+            set { m_SecCode = value; }
+        }
+        /// <summary>
+        /// 起動処理番号
+        /// </summary>
+        public int ExecCode
+        {
+            get { return m_ExecCode; }
+            set { m_ExecCode = value; }
+        }
+        /// <summary>
+        /// 編集フラグ
+        /// </summary>
+        public int EditFlg
+        {
+            get { return m_EditFlg; }
+            set { m_EditFlg = value; }
+        }
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/PurchaseOrder.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PurchaseOrder.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PurchaseOrder.cs	(revision 51)
@@ -43,7 +43,7 @@
         private string      m_SafetyOfficerName = string.Empty;         // 安全管理者名
         private int         m_WorkersCount = 0;                         // 作業員数
         private DateTime    m_PrintoutDate = DateTime.MinValue;         // 印刷年月日
-
+        
         private DateTime    m_EntryDate = DateTime.Now;                 // 登録日付
         private DateTime    m_UpdateDate = DateTime.Now;                // 更新日付
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/PurchaseOrderDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/PurchaseOrderDetail.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/PurchaseOrderDetail.cs	(revision 51)
@@ -26,6 +26,7 @@
         private string  m_UnitName = string.Empty;	        // 単位
         private double  m_UnitPrice = 0;	                // 単価
         private double  m_OrdersLinePrice = 0;	            // 金額
+        private double  m_SourceCode = 0;                   // 予算作成時工事番号
 
         private DateTime m_EntryDate = DateTime.Now;        // 登録日付
         private DateTime m_UpdateDate = DateTime.Now;       // 更新日付
@@ -132,6 +133,14 @@
             get { return m_OrdersLinePrice; }
             set { m_OrdersLinePrice = value; }
         }
+        /// <summary>
+        /// 予算作成時工事番号
+        /// </summary>
+        public double SourceCode
+        {
+            get { return m_SourceCode; }
+            set { m_SourceCode = value; }
+        }
 
         /// <summary>
         /// 登録日付
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/RequestData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/RequestData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/RequestData.cs	(revision 51)
@@ -0,0 +1,143 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 請求データ
+    /// </summary>
+    public class RequestData
+    {
+        #region メンバ変数
+        private int         m_RequestNo = 0;                    // 請求No
+        private int         m_ConstructionCode = 0;             // 工事番号
+        private int         m_OrderersDivision = 0;             // 発注者区分
+        private int         m_OrderersCode = 0;                 // 発注者コード
+        private int         m_AmountPaid = 0;                   // 請求済金額
+        private int         m_PricePaid = 0;                    // 請求済工事金額
+        private int         m_TaxPricePaid = 0;                 // 請求済消費税金額
+        private int         m_PriceBalance = 0;                 // 請求残工事金額
+        private int         m_TaxBalance = 0;                   // 請求残消費税金額
+        private int         m_AmountBlance = 0;                 // 未収金額
+        private DateTime    m_EntryDate = DateTime.Now;         // 登録日付
+        private DateTime    m_UpdateDate = DateTime.Now;        // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 請求No
+        /// </summary>
+        public int RequestNo
+        {
+            get { return m_RequestNo; }
+            set { m_RequestNo = value; }
+        }
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderersDivision
+        {
+            get { return m_OrderersDivision; }
+            set { m_OrderersDivision = value; }
+        }
+
+        /// <summary>
+        /// 発注者コード
+        /// </summary>
+        public int OrderersCode
+        {
+            get { return m_OrderersCode; }
+            set { m_OrderersCode = value; }
+        }
+
+        /// <summary>
+        /// 請求済金額
+        /// </summary>
+        public int AmountPaid
+        {
+            get { return m_AmountPaid; }
+            set { m_AmountPaid = value; }
+        }
+
+        /// <summary>
+        /// 請求済工事金額
+        /// </summary>
+        public int PricePaid
+        {
+            get { return m_PricePaid; }
+            set { m_PricePaid = value; }
+        }
+
+        /// <summary>
+        /// 請求済消費税金額
+        /// </summary>
+        public int TaxPricePaid
+        {
+            get { return m_TaxPricePaid; }
+            set { m_TaxPricePaid = value; }
+        }
+
+        /// <summary>
+        /// 請求残工事金額
+        /// </summary>
+        public int PriceBalance
+        {
+            get { return m_PriceBalance; }
+            set { m_PriceBalance = value; }
+        }
+
+        /// <summary>
+        /// 請求残消費税金額
+        /// </summary>
+        public int TaxBalance
+        {
+            get { return m_TaxBalance; }
+            set { m_TaxBalance = value; }
+        }
+
+        /// <summary>
+        /// 未収金額
+        /// </summary>
+        public int AmountBlance
+        {
+            get { return m_AmountBlance; }
+            set { m_AmountBlance = value; }
+        }
+
+        /// <summary>
+        /// 登録日付
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+
+        /// <summary>
+        /// 更新日付
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/RequestDataDetail.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/RequestDataDetail.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/RequestDataDetail.cs	(revision 51)
@@ -0,0 +1,113 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 請求明細データ
+    /// </summary>
+    public class RequestDataDetail
+    {
+        #region メンバ変数
+        private int         m_RequestNo = 0;                // 請求No
+        private int         m_OrderNo = 0;                  // 受付番号
+        private int         m_ConstructionCode = 0;         // 工事番号
+        private int         m_ConstructionKind = 0;         // 工事区分
+        private int         m_BillPrice = 0;                // 請求金額
+        private int         m_TaxPrice = 0;                 // 消費税
+        private int         m_AmountBlance = 0;             // 未入金分
+        private DateTime    m_EntryDate = DateTime.Now;     // 登録年月日
+        private DateTime    m_UpdateDate = DateTime.Now;    // 更新年月日
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 請求No 
+        /// </summary>
+        public int RequestNo
+        {
+            get { return m_RequestNo; }
+            set { m_RequestNo = value; }
+        }
+
+        /// <summary>
+        /// 受付番号
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        /// <summary>
+        /// 工事区分
+        /// </summary>
+        public int ConstructionKind
+        {
+            get { return m_ConstructionKind; }
+            set { m_ConstructionKind = value; }
+        }
+
+        /// <summary>
+        /// 請求金額
+        /// </summary>
+        public int BillPrice
+        {
+            get { return m_BillPrice; }
+            set { m_BillPrice = value; }
+        }
+
+        /// <summary>
+        /// 消費税
+        /// </summary>
+        public int TaxPrice
+        {
+            get { return m_TaxPrice; }
+            set { m_TaxPrice = value; }
+        }
+
+        /// <summary>
+        /// 未入金分
+        /// </summary>
+        public int AmountBlance
+        {
+            get { return m_AmountBlance; }
+            set { m_AmountBlance = value; }
+        }
+
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/RequestGridKeys.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/RequestGridKeys.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/RequestGridKeys.cs	(revision 51)
@@ -0,0 +1,35 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 請求まとめで行を記憶するために、キー値を保持するためのクラス
+    /// </summary>
+    public class RequestGridKeys
+    {
+        public RequestGridKeys()
+        {
+        }
+
+        public RequestGridKeys(int visible, int companyCode, int genbaCode, int rowType, int seqNo, int lineCount)
+        {
+            Visible = visible;
+            CompanyCode = companyCode;
+            GenbaCode = genbaCode;
+            RowType = rowType;
+            SeqNo = seqNo;
+            LineCount = lineCount;
+        }
+
+        public int Visible { get; set; }
+        public int CompanyCode { get; set; }
+        public int GenbaCode { get; set; }
+        public int RowType { get; set; }
+        public int SeqNo { get; set; }
+        public int LineCount { get; set; }
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/RequestTotalData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/RequestTotalData.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/RequestTotalData.cs	(revision 51)
@@ -0,0 +1,192 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 請求合計データ
+    /// </summary>
+    public class RequestTotalData
+    {
+        #region メンバ変数
+        private int         m_RequestNo = 0;                        // 請求No
+        private int         m_OrderNo = 0;                          // 受付番号
+        private int         m_OrderersDivision = 0;                 // 発注者区分
+        private int         m_OrderersCode = 0;                     // 発注者コード
+        private DateTime    m_BillCreationDate = DateTime.MinValue; // 請求書作成日
+        private int         m_BillTotalPrice = 0;                   // 請求書金額合計
+        private int         m_BillPrice = 0;                        // 請求金額
+        private int         m_TaxPrice = 0;                         // 消費税
+        private int         m_AmountBlance = 0;                     // 未入金分
+        private int         m_AmountPaid = 0;                       // 請求済金額
+        private int         m_PricePaid = 0;                        // 請求済工事金額
+        private int         m_TaxPricePaid = 0;                     // 請求済消費税金額
+        private int         m_PriceBalance = 0;                     // 請求残工事金額
+        private int         m_TaxBalance = 0;                       // 請求残消費税金額
+        private bool        m_AssignedFlg = false;                  // 割当済フラグ
+        private DateTime    m_EntryDate = DateTime.Now;             // 登録日付
+        private DateTime    m_UpdateDate = DateTime.Now;            // 更新日付
+        #endregion
+
+        #region コンストラクタ
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 請求No
+        /// </summary>
+        public int RequestNo
+        {
+            get { return m_RequestNo; }
+            set { m_RequestNo = value; }
+        }
+
+        /// <summary>
+        /// 受付番号
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderersDivision
+        {
+            get { return m_OrderersDivision; }
+            set { m_OrderersDivision = value; }
+        }
+
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderersCode
+        {
+            get { return m_OrderersCode; }
+            set { m_OrderersCode = value; }
+        }
+
+        /// <summary>
+        /// 請求書作成日
+        /// </summary>
+        public DateTime BillCreationDate
+        {
+            get { return m_BillCreationDate; }
+            set { m_BillCreationDate = value; }
+        }
+
+        /// <summary>
+        /// 請求書金額合計
+        /// </summary>
+        public int BillTotalPrice
+        {
+            get { return m_BillTotalPrice; }
+            set { m_BillTotalPrice = value; }
+        }
+
+        /// <summary>
+        /// 請求金額
+        /// </summary>
+        public int BillPrice
+        {
+            get { return m_BillPrice; }
+            set { m_BillPrice = value; }
+        }
+
+        /// <summary>
+        /// 消費税
+        /// </summary>
+        public int TaxPrice
+        {
+            get { return m_TaxPrice; }
+            set { m_TaxPrice = value; }
+        }
+
+        /// <summary>
+        /// 未入金分
+        /// </summary>
+        public int AmountBlance
+        {
+            get { return m_AmountBlance; }
+            set { m_AmountBlance = value; }
+        }
+
+        /// <summary>
+        /// 請求済金額
+        /// </summary>
+        public int AmountPaid
+        {
+            get { return m_AmountPaid; }
+            set { m_AmountPaid = value; }
+        }
+
+        /// <summary>
+        /// 請求済工事金額
+        /// </summary>
+        public int PricePaid
+        {
+            get { return m_PricePaid; }
+            set { m_PricePaid = value; }
+        }
+
+        /// <summary>
+        /// 請求済消費税金額
+        /// </summary>
+        public int TaxPricePaid
+        {
+            get { return m_TaxPricePaid; }
+            set { m_TaxPricePaid = value; }
+        }
+
+        /// <summary>
+        /// 請求残工事金額
+        /// </summary>
+        public int PriceBalance
+        {
+            get { return m_PriceBalance; }
+            set { m_PriceBalance = value; }
+        }
+
+        /// <summary>
+        /// 請求残消費税金額
+        /// </summary>
+        public int TaxBalance
+        {
+            get { return m_TaxBalance; }
+            set { m_TaxBalance = value; }
+        }
+
+        /// <summary>
+        /// 割当済フラグ
+        /// </summary>
+        public bool AssignedFlg
+        {
+            get { return m_AssignedFlg; }
+            set { m_AssignedFlg = value; }
+        }
+
+        /// <summary>
+        /// 登録日付
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+
+        /// <summary>
+        /// 更新日付
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/SecurityMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/SecurityMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/SecurityMaster.cs	(revision 51)
@@ -0,0 +1,130 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace ProcessManagement.DataModel
+{
+    /// <summary>
+    /// 保護区分マスタ
+    /// </summary>
+    public class SecurityMaster
+    {
+        #region メンバ変数
+        /// <summary>
+        /// 保護区分番号
+        /// </summary>
+        private int         m_SecCode = 0;
+        /// <summary>
+        /// 表示順
+        /// </summary>
+        private int         m_DisplayOrder = 0;
+        /// <summary>
+        /// 保護区分名称
+        /// </summary>
+        private string      m_SecName = string.Empty;
+        /// <summary>
+        /// 保護区分ランク
+        /// </summary>
+        private int         m_SecRank = 0;
+        /// <summary>
+        /// 保護区分範囲
+        /// </summary>
+        private int         m_SecRange = 0;
+        /// <summary>
+        /// 総務業務フラグ
+        /// </summary>
+        private int         m_GeneralAffairs = 0;
+        /// <summary>
+        /// 選択背景色
+        /// </summary>
+        private string      m_SelectBackColor = string.Empty;
+
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        private DateTime    m_EntryDate = DateTime.MinValue;
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        private DateTime    m_UpdateDate = DateTime.MinValue;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 保護区分番号
+        /// </summary>
+        public int SecCode
+        {
+            get { return m_SecCode; }
+            set { m_SecCode = value; }
+        }
+        /// <summary>
+        /// 表示順
+        /// </summary>
+        public int DisplayOrder
+        {
+            get { return m_DisplayOrder; }
+            set { m_DisplayOrder = value; }
+        }
+        /// <summary>
+        /// 保護区分名称
+        /// </summary>
+        public string SecName 
+        {
+            get { return m_SecName; }
+            set { m_SecName = value; }
+        }
+        /// <summary>
+        /// 保護区分ランク
+        /// </summary>
+        public int SecRank
+        {
+            get { return m_SecRank; }
+            set { m_SecRank = value; }
+        }
+        /// <summary>
+        /// 保護区分範囲
+        /// </summary>
+        public int SecRange
+        {
+            get { return m_SecRange; }
+            set { m_SecRange = value; }
+        }
+        /// <summary>
+        /// 総務業務フラグ
+        /// </summary>
+        public int GeneralAffairs
+        {
+            get { return m_GeneralAffairs; }
+            set { m_GeneralAffairs = value; }
+        }
+        /// <summary>
+        /// 選択背景色
+        /// </summary>
+        public string SelectBackColor
+        {
+            get { return m_SelectBackColor; }
+            set { m_SelectBackColor = value; }
+        }
+        /// <summary>
+        /// 登録年月日
+        /// </summary>
+        public DateTime EntryDate
+        {
+            get { return m_EntryDate; }
+            set { m_EntryDate = value; }
+        }
+        /// <summary>
+        /// 更新年月日
+        /// </summary>
+        public DateTime UpdateDate
+        {
+            get { return m_UpdateDate; }
+            set { m_UpdateDate = value; }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/SystemExecute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/SystemExecute.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/SystemExecute.cs	(revision 51)
@@ -17,11 +17,22 @@
         /// キー項目
         /// </summary>
         private int m_PrimaryCode = 0;
+        
         /// <summary>
         /// 起動日付
         /// </summary>
         private DateTime m_TargetDate = DateTime.MinValue;
+
         /// <summary>
+        /// 本体バージョン
+        /// </summary>
+        private int m_SystemVersion = 0;
+        /// <summary>
+        /// コピー・環境バージョン
+        /// </summary>
+        private int m_UpDateCopyVersion = 0;
+
+        /// <summary>
         /// 登録年月日
         /// </summary>
         private DateTime m_EntryDate = DateTime.MinValue;
@@ -49,6 +60,22 @@
             set { m_TargetDate = value; }
         }
         /// <summary>
+        /// 本体バージョン
+        /// </summary>
+        public int SystemVersion
+        {
+            get { return m_SystemVersion; }
+            set { m_SystemVersion = value; }
+        }
+        /// <summary>
+        /// コピー・環境バージョン
+        /// </summary>
+        public int UpDateCopyVersion
+        {
+            get { return m_UpDateCopyVersion; }
+            set { m_UpDateCopyVersion = value; }
+        }
+        /// <summary>
         /// 登録年月日
         /// </summary>
         public DateTime EntryDate
Index: branches/src/ProcessManagement/ProcessManagement/DataModel/SystemMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/DataModel/SystemMaster.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/DataModel/SystemMaster.cs	(revision 51)
@@ -26,6 +26,7 @@
         private double      m_OfficeExpenses = 0;	            // 事務所経費
         private double      m_OperatingExpenses = 0;	        // 営業経費
         private double      m_ConsumptionTax = 0;	            // 消費税
+
         private string      m_ExcelSavePath = string.Empty;	    // Excel保存パス
 
         private int         m_BusinessPeriod = 0;               // 営業期数
@@ -40,6 +41,9 @@
                 
         private DateTime    m_EntryDate = DateTime.Now;         // 登録日付
         private DateTime    m_UpdateDate = DateTime.Now;        // 更新日付
+
+        private double m_CooperationRate = 0.5;               // 協力金比率
+        
         #endregion
 
         #region コンストラクタ
@@ -255,6 +259,16 @@
             set { m_UpdateDate = value; }
             get { return m_UpdateDate; }
         }
+
+        /// <summary>
+        /// 協力金比率
+        /// </summary>
+        public double CooperationRate
+        {
+            set { m_CooperationRate = value; }
+            get { return m_CooperationRate; }
+        }
+
         #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/CustomControls/BtnTextCustomMessageBox.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/CustomControls/BtnTextCustomMessageBox.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/CustomControls/BtnTextCustomMessageBox.cs	(revision 51)
@@ -12,21 +12,31 @@
     /// </summary>
     public class BtnTextCustomMessageBox
     {
+        #region ポインタ
+        /// <summary>
+        /// ポインタ
+        /// </summary>
         private IntPtr hHook = IntPtr.Zero;
+        #endregion
 
+        #region プロパティ
         /// <summary>
         /// ボタンに表示するテキストを指定します。
         /// </summary>
         public CustomButtonText ButtonText { get; set; }
+        #endregion
 
+        #region コンストラクタ
         /// <summary>
-        /// コンストラクタ。
+        /// コンストラクタ
         /// </summary>
         public BtnTextCustomMessageBox()
         {
             this.ButtonText = new CustomButtonText();
         }
+        #endregion
 
+        #region ダイアログボックスを表示します。
         /// <summary>
         /// ダイアログボックスを表示します。
         /// </summary>
@@ -47,7 +57,9 @@
                 EndHook();
             }
         }
+        #endregion
 
+        #region フックを開始
         /// <summary>
         /// フックを開始
         /// </summary>
@@ -56,7 +68,9 @@
             EndHook();
             this.hHook = SetWindowsHookEx(WH_CBT, new HOOKPROC(this.HookProc), IntPtr.Zero, GetCurrentThreadId());
         }
+        #endregion
 
+        #region フック内容のセット
         /// <summary>
         /// フック内容のセット
         /// </summary>
@@ -82,7 +96,9 @@
 
             return CallNextHookEx(this.hHook, nCode, wParam, lParam);
         }
+        #endregion
 
+        #region フックを終了
         /// <summary>
         /// フックを終了
         /// </summary>
@@ -94,6 +110,7 @@
                 this.hHook = IntPtr.Zero;
             }
         }
+        #endregion
 
         #region メッセージのテキストのクラス定義
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/CustomControls/TabControlEX.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/CustomControls/TabControlEX.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/CustomControls/TabControlEX.cs	(revision 51)
@@ -20,12 +20,32 @@
         #endregion
 
         #region 変数
+        #region タブの閉じるボタンクリックイベントハンドル
         /// <summary>
-        /// タブの閉じるボタンクリックイベント
+        /// タブの閉じるボタンクリックイベントハンドル
         /// </summary>
         public event EventHandler TabCloseButtonClick;
         #endregion
 
+        #region 閉じるボタン描画フラグ
+        /// <summary>
+        /// 閉じるボタン描画フラグ
+        /// </summary>
+        private bool m_DrawButton = true;
+        #endregion
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 閉じるボタン描画フラグ
+        /// </summary>
+        public bool DrawButton
+        {
+            get { return m_DrawButton; }
+            set { m_DrawButton = value; }
+        }
+        #endregion
+
         #region コンストラクタ
         /// <summary>
         /// コンストラクタ
@@ -35,8 +55,7 @@
         //}
         #endregion
 
-        #region イベントメソッド
-
+        #region タブの閉じるボタンクリックイベント
         /// <summary>
         /// タブの閉じるボタンクリックイベント
         /// </summary>
@@ -48,7 +67,9 @@
                 this.TabCloseButtonClick(this, e);
             }
         }
+        #endregion
 
+        #region OnMouseUp
         /// <summary>
         /// OnMouseUp
         /// </summary>
@@ -64,7 +85,9 @@
                 this.Invalidate(rect);
             }
         }
+        #endregion
 
+        #region タブの閉じるボタン場所を取得
         /// <summary>
         /// タブの閉じるボタン場所を取得
         /// </summary>
@@ -83,7 +106,9 @@
             }
             return Rectangle.Empty;
         }
+        #endregion
 
+        #region タブの閉じるボタン場所を取得
         /// <summary>
         /// タブの閉じるボタン場所を取得
         /// </summary>
@@ -99,12 +124,17 @@
 
             return rect;
         }
+        #endregion
 
+        #region タブに閉じるボタンを描画
         /// <summary>
         /// タブに閉じるボタンを描画
         /// </summary>
         private void DrawTabCloseButton()
         {
+            // 描画フラグにより制御
+            if (!DrawButton) return;
+            // 描画
             Graphics g = this.CreateGraphics();
             Rectangle rect = Rectangle.Empty;
             Point pt = this.PointToClient(Cursor.Position);
@@ -118,7 +148,9 @@
             }
             g = null;
         }
+        #endregion
 
+        #region ウィンドウプロック(WndProc)
         /// <summary>
         /// ウィンドウプロック(WndProc)
         /// </summary>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.cs	(revision 51)
@@ -40,6 +40,7 @@
         {
             ConstructionCode = 0,
             ApprovalNo,
+            OrderNo,
             DisplayNo,
             ConstructionName,
             ApprovalStatus,
@@ -193,10 +194,6 @@
         /// <param name="e"></param>
         private void FrmConstructionBaseInfoList_Load(object sender, EventArgs e)
         {
-            // �R���{�{�b�N�X�����\��
-            InitcmbDepartment();
-            InitcmbPersons();
-
             // �R���{�{�b�N�X�Z�b�g
             m_bInitFlg = true;
             SetcmbDepartment();
@@ -203,6 +200,9 @@
             m_bInitFlg = true;
             SetcmbPersons();
 
+            // �R���{�{�b�N�X�����\��
+            InitCombBox();
+
             m_bInitFlg = true;
             // �����\��
             InitDataLoad();
@@ -266,18 +266,18 @@
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�ύX
+        #region �����R���{�{�b�N�X�ύX
         /// <summary>
-        /// �S���ҕύX
+        /// �����R���{�{�b�N�X�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbConstructionPerson_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
         {
             if (m_bInitFlg) return;
 
-            // �S���ґI���������I����ݒ肷��
-            SetPerosonToDepartment();
+            // �S���҃R���{�{�b�N�X�ύX
+            SetcmbPersons();
 
             // �f�[�^�\��
             DataDisplay();
@@ -284,18 +284,18 @@
         }
         #endregion
 
-        #region �����R���{�{�b�N�X�ύX
+        #region �S���҃R���{�{�b�N�X�ύX
         /// <summary>
-        /// �����R���{�{�b�N�X�ύX
+        /// �S���҃R���{�{�b�N�X�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
         {
             if (m_bInitFlg) return;
 
-            // �S���҃R���{�{�b�N�X�ύX
-            SetcmbPersons();
+            // �S���ґI���������I����ݒ肷��
+            SetPerosonToDepartment();
 
             // �f�[�^�\��
             DataDisplay();
@@ -326,6 +326,5 @@
             }
         }
         #endregion
-
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.designer.cs	(revision 51)
@@ -56,6 +56,7 @@
             this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.Column02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column03 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -210,7 +211,7 @@
             this.cmbConstructionPerson.Name = "cmbConstructionPerson";
             this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
             this.cmbConstructionPerson.TabIndex = 3;
-            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbConstructionPerson_SelectedIndexChanged);
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
             // 
             // cmbDepartment
             // 
@@ -222,7 +223,7 @@
             this.cmbDepartment.Name = "cmbDepartment";
             this.cmbDepartment.Size = new System.Drawing.Size(200, 23);
             this.cmbDepartment.TabIndex = 3;
-            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_SelectedIndexChanged);
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
             // 
             // label3
             // 
@@ -271,10 +272,12 @@
             dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
             dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
             this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            this.dgvMaster.ColumnHeadersHeight = 24;
             this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column02,
             this.Column2,
+            this.Column3,
             this.Column01,
             this.Column03,
             this.Column1,
@@ -297,7 +300,7 @@
             this.dgvMaster.RowHeadersVisible = false;
             this.dgvMaster.RowHeadersWidth = 20;
             this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.RowTemplate.Height = 24;
             this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
             this.dgvMaster.Size = new System.Drawing.Size(1260, 508);
             this.dgvMaster.TabIndex = 5;
@@ -329,6 +332,15 @@
             this.Column2.Visible = false;
             this.Column2.Width = 5;
             // 
+            // Column3
+            // 
+            this.Column3.Frozen = true;
+            this.Column3.HeaderText = "受付番号";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.Visible = false;
+            this.Column3.Width = 5;
+            // 
             // Column01
             // 
             dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
@@ -475,6 +487,7 @@
         private System.Windows.Forms.Label label7;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column02;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column01;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column03;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalList.resx	(revision 51)
@@ -123,6 +123,9 @@
   <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="Column01.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/ApprovalList/FrmApprovalListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalList/FrmApprovalListAuxiliary.cs	(revision 51)
@@ -67,6 +67,9 @@
                 // ���F�@�\�ԍ�
                 int iApprovalCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.ApprovalNo].Value);
                 if (iApprovalCode == 0) return;
+                // ��t�ԍ�
+                int iOrderNo = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.OrderNo].Value);
+                if (iOrderNo == 0) return;
 
                 // ���N���v���Z�X�Z�b�g
                 NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.ApprovalScreen);
@@ -76,8 +79,11 @@
                 // ----- �I�����F�@�\�ԍ��Z�b�g
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ----- ��t�ԍ��Z�b�g
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iOrderNo);
+
                 // �H�������擾
-                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(iConstructionCode, iApprovalCode);
+                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(iConstructionCode, iApprovalCode, iOrderNo);
                 // �m�F��ʃt���O
                 bool bPara = true;
                 // ���O�C�����[�U�[���Y�����F�̏��F�҂����`�F�b�N����
@@ -201,41 +207,64 @@
         }
         #endregion
 
-        #region �����R���{�{�b�N�X�����\��
+        #region �R���{�{�b�N�X�����\��
         /// <summary>
-        /// �����R���{�{�b�N�X�����\��
+        /// �R���{�{�b�N�X�����\��
         /// </summary>
-        private void InitcmbDepartment()
+        private void InitCombBox()
         {
             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.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key
+                || CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
                 {
                     // �V�X�e���Ǘ���
                     // �ō��@���Ǘ���
                     // �����@���Ǘ���
-                    // �����}�X�^����������
+                    // �����������҂͑S�Č�����
+
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
                 {
                     // ������
                     // �����R���{��\��
-                    label2.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Location = label2.Location;
-                    cmbConstructionPerson.Location = cmbDepartment.Location;
+                    NonDispDepCombBox();
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
                 {
                     // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
                     // �����E�S���҃R���{��\��
-                    label2.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Visible = false;
-                    cmbConstructionPerson.Visible = false;
+                    DispAllCombBoxControl(false);
                 }
             }
             catch (Exception ex)
@@ -245,6 +274,71 @@
         }
         #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;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // �����R���{��\��
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // �����ݒ�Ώۂ��R���{�{�b�N�X�f�[�^�ɂ���΃Z�b�g����
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region �����R���{�{�b�N�X���Z�b�g����
         /// <summary>
         /// �����R���{�{�b�N�X�֕������Z�b�g����
@@ -252,47 +346,62 @@
         private bool SetcmbDepartment()
         {
             IOMDepartment depDB = new IOMDepartment();
-            List<DepartmentMaster> workList = new List<DepartmentMaster>();
+            bool bSave = m_bInitFlg;
+            m_bInitFlg = true;
             try
             {
-                m_bInitFlg = true;
 
-                cmbConstructionPerson.DataSource = null;
-                cmbConstructionPerson.Items.Clear();
-                cmbConstructionPerson.Text = "";
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
 
                 string strSQL = string.Empty;
-                // �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)
+                // �����}�X�^����������
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // �V�X�e���Ǘ���
-                    // �ō��@���Ǘ���
-                    // �����@���Ǘ���
-                    // �����}�X�^����������
-                    strSQL = " Where DeleteFlg = 0 Order By DisplayOrder ASC";
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // ������
+                        // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                else
                 {
-                    // ������
-                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By DisplayOrder ASC", CommonMotions.LoginUserData.DepartmentCode);
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // �Q�ƕ����}�X�^���擾����
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By DisplayOrder ASC", CommonMotions.LoginUserData.DepartmentCode);
-                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
 
                 // �����}�X�^�Ǎ�
-                if (!depDB.SelectAction(strSQL, ref workList)) return false;
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
 
                 List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
                 ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
 
-                foreach (DepartmentMaster work in workList)
+                foreach (object[] work in arList)
                 {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.DepartmentCode, work.DepartmentString);
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
 
                     ConstructionDataList.Add(keyval);
                 }
@@ -300,12 +409,18 @@
                 // �R���{�{�b�N�X�����\��
                 ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
 
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
-                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
                     // ������
                     // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
+                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // �����������҈ȊO
+                        if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                            cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
                 }
 
                 return true;
@@ -318,46 +433,31 @@
             finally
             {
                 depDB.close(); depDB = null;
-                m_bInitFlg = false;
+                m_bInitFlg = bSave;
             }
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�����\��
+        #region �����R���{�{�b�N�X�̔�\������
         /// <summary>
-        /// �S���҃R���{�{�b�N�X�����\��
+        /// �����R���{�{�b�N�X�̔�\������
         /// </summary>
-        private void InitcmbPersons()
+        private void NonDispDepCombBox()
         {
             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)
-                {
-                    // �V�X�e���Ǘ���
-                    // �ō��@���Ǘ���
-                    // �����@���Ǘ���
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // ������
-                    // �����R���{��\��
-                    label2.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Location = label2.Location;
-                    cmbConstructionPerson.Location = cmbDepartment.Location;
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    // �����E�S���҃R���{��\��
-                    label2.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Visible = false;
-                    cmbConstructionPerson.Visible = false;
-                }
+                // �����R���{��\��
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // �\���ʒu�̃Z�b�g
+                Point loc3 = label3.Location;
+                loc3.X = label2.Location.X + 10;
+                label3.Location = loc3;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
             }
             catch (Exception ex)
             {
@@ -366,6 +466,27 @@
         }
         #endregion
 
+        #region �S�R���{�{�b�N�X�\����ON/OFF����
+        /// <summary>
+        /// �S�R���{�{�b�N�X�\����ON/OFF����
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // �����E�S���҃R���{��\��
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region �S���҃R���{�{�b�N�X���Z�b�g����
         /// <summary>
         /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
@@ -374,9 +495,10 @@
         {
             IOMPersonInCharge picDB = new IOMPersonInCharge();
             List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_bInitFlg;
+            m_bInitFlg = true;
             try
             {
-                m_bInitFlg = true;
                 cmbConstructionPerson.DataSource = null;
                 cmbConstructionPerson.Items.Clear();
                 cmbConstructionPerson.Text = "";
@@ -404,9 +526,15 @@
                 // �R���{�{�b�N�X�����\��
                 ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
 
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
                 }
 
                 return true;
@@ -419,7 +547,7 @@
             finally
             {
                 picDB.close(); picDB = null;
-                m_bInitFlg = false;
+                m_bInitFlg = bSave;
             }
         }
         #endregion
@@ -462,6 +590,7 @@
                     // ���F���
                     int AddRowCnt = dgvMaster.Rows.Add(CommonMotions.cnvInt(objwrk[(int)GetDataColumns.ConstructionCode])
                                                         , CommonMotions.cnvInt(objwrk[(int)GetDataColumns.ApprovalCode])
+                                                        , CommonMotions.cnvInt(objwrk[(int)GetDataColumns.OrderNo])
                                                         , (ino++)
                                                         , CommonMotions.cnvString(objwrk[(int)GetDataColumns.ConstructionName])
                                                         , CommonDefine.ApprovalStatusString[CommonMotions.cnvInt(objwrk[(int)GetDataColumns.ApprovalStatus])]
@@ -494,6 +623,7 @@
                 cbidDB.close(); cbidDB = null;
                 picDB.close(); picDB = null;
                 paDB.close(); paDB = null;
+                if (21 > dgvMaster.RowCount) dgvMaster.RowCount += (21 - dgvMaster.RowCount);
             }
         }
         #endregion
@@ -503,10 +633,106 @@
         /// ����SQL�̃Z�L�����e�B���蕔�����쐬����
         /// </summary>
         /// <param name="strSQL"></param>
-        private void CreateSecuritySQL(ref string strSecurity, bool bSalesFlg = true)
+        private void CreateSecuritySQL(ref string strSQL, bool bSalesFlg = true)
         {
             try
             {
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    CreateOldSecuritySQL(ref strSQL, bSalesFlg);
+                }
+                else
+                {
+                    CreateNewSecuritySQL(ref strSQL);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �L�[�l�擾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                // �f�[�^�A�N�Z�X�Ɍ����ɂ�萧��������
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ���ׂđΏہi����SQL���j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // �ꕔ�����L
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+
+                    strSQL += " And (B.SalesPersonCode IN (Select B1.PersonCode From PersonInChargeMaster B1";
+                    strSQL += string.Format(" Where B1.DepartmentCode IN (SELECT B2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER B2 WHERE B2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (B.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSQL += " And (B.ConstructionPersonCode IN (Select B3.PersonCode From PersonInChargeMaster B3";
+                    strSQL += string.Format(" Where B3.DepartmentCode IN (SELECT B4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER B4 WHERE B4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or B.CONSTRSUBPERSONCODE IN (Select B5.PersonCode From PersonInChargeMaster B5";
+                    strSQL += string.Format(" Where B5.DepartmentCode IN (SELECT B6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER B6 WHERE B6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or B.ConstructionInstructor IN (Select B7.PersonCode From PersonInChargeMaster B7";
+                    strSQL += string.Format(" Where B7.DepartmentCode IN (SELECT B8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER B8 WHERE B8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (B.ConstructionStatusFlg >= {0} And B.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSQL += string.Format(" Or (B.ConstructionStatusFlg = {0}", iStatus2);                                            // �������p���͈��p�����̂��̂͌�����
+                    strSQL += string.Format(" And B.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ��ʎg�p��
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+
+                    strSQL += string.Format(" And (B.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (B.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSQL += string.Format(" And (B.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or B.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or B.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateOldSecuritySQL(ref string strSecurity, bool bSalesFlg = true)
+        {
+            try
+            {
                 strSecurity = string.Empty;
                 // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
                 if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
@@ -524,10 +750,10 @@
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
                 {
                     // �@���Ǘ��ҁi�������̂݁j
-                    strSecurity += string.Format(" And (B.SalesPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSecurity += string.Format(" And (B.CONSTRUCTIONPERSONCODE IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
-                    strSecurity += string.Format(" And (B.CONSTRSUBPERSONCODE IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
-                    strSecurity += string.Format(" And (B.CONSTRUCTIONINSTRUCTOR IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                    strSecurity += string.Format(" And (B.SalesPersonCode IN (Select B1.PersonCode From PersonInChargeMaster B1 Where B1.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSecurity += string.Format(" Or B.CONSTRUCTIONPERSONCODE IN (Select B2.PersonCode From PersonInChargeMaster B2 Where B2.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSecurity += string.Format(" Or B.CONSTRSUBPERSONCODE IN (Select B3.PersonCode From PersonInChargeMaster B3 Where B3.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSecurity += string.Format(" Or B.CONSTRUCTIONINSTRUCTOR IN (Select B4.PersonCode From PersonInChargeMaster B4 Where B4.DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
                 {
@@ -553,6 +779,7 @@
         {
             ConstructionCode,
             ApprovalCode,
+            OrderNo,
             ConstructionName,
             ApprovalStatus,
             PersonName,
@@ -587,6 +814,7 @@
             strSQL = "SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += string.Format(" {0},", m_ApprovalCode);
+            strSQL += string.Format(" {0},", CommonDefine.s_Default_OrderNo);
             strSQL += " C.DetailString,";
             strSQL += string.Format("{0},", (int)CommonDefine.ApprovalStatus.Unclaimed);
             strSQL += " PERSON.PERSONNAME,";
@@ -598,7 +826,7 @@
             strSQL += " PERSON.DISPLAYORDER";
             strSQL += " FROM ESTIMATEDATA A, CONSTRUCTIONBASEINFO B, CONSTRUCTIONBASEINFODETAIL C, DEPARTMENTMASTER DEP, PERSONINCHARGEMASTER PERSON";
             strSQL += " WHERE A.LINECOUNT = 1";
-            strSQL += string.Format(" AND NOT EXISTS(SELECT * FROM PROCESSAPPROVAL WHERE CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND ApprovalCode = {0})", m_ApprovalCode);
+            strSQL += string.Format(" AND NOT EXISTS(SELECT * FROM PROCESSAPPROVAL APP WHERE APP.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND APP.ApprovalCode = {0})", m_ApprovalCode);
             strSQL += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
             strSQL += string.Format(" AND B.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
             strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG <= {0}", ProgressComplete);
@@ -612,9 +840,12 @@
             strSQL += " UNION SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += " A.APPROVALCODE,";
+            strSQL += " A.ORDERNO,";
             strSQL += " C.DETAILSTRING,";
             strSQL += " A.APPROVALSTATUS,";
             strSQL += " PERSON.PERSONNAME,";
+            //strSQL += " TO_CHAR(A.ENTRYDATE,'YYYY/MM/DD'),";
+            //strSQL += " TO_CHAR(A.APPROVALLIMITDATES,'YYYY/MM/DD'),";
             strSQL += " DATE_FORMAT(A.ENTRYDATE,'%Y/%m/%d'),";
             strSQL += " DATE_FORMAT(A.APPROVALLIMITDATES,'%Y/%m/%d'),";
             strSQL += " B.CONSTRUCTIONSTATUSFLG,";
@@ -632,11 +863,12 @@
             if (DepartmentCode != 0) strSQL += string.Format(" AND DEP.DEPARTMENTCODE = {0}", DepartmentCode);
             if (PersonCode != 0) strSQL += string.Format(" AND PERSON.PERSONCODE = {0}", PersonCode);
             strSQL += wrkSec;
-            strSQL += string.Format(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC",
+            strSQL += string.Format(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC",
                                                 ((int)GetDataColumns.ApprovalCode + 1),
                                                 ((int)GetDataColumns.ConstructionStatus + 1),
                                                 ((int)GetDataColumns.DepartmentDispNo + 1),
-                                                ((int)GetDataColumns.PersontDispNo + 1));
+                                                ((int)GetDataColumns.PersontDispNo + 1),
+                                                ((int)GetDataColumns.ConstructionName + 1));
         }
         #endregion
 
@@ -662,6 +894,7 @@
             strSQL = "SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += string.Format(" {0},", m_ApprovalCode);
+            strSQL += string.Format(" {0},", CommonDefine.s_Default_OrderNo);
             strSQL += " C.DetailString,";
             strSQL += string.Format("{0},", (int)CommonDefine.ApprovalStatus.Unclaimed);
             strSQL += " PERSON.PERSONNAME,";
@@ -672,7 +905,7 @@
             strSQL += " DEP.DISPLAYORDER,";
             strSQL += " PERSON.DISPLAYORDER";
             strSQL += " FROM ESTIMATEBUDGET A, CONSTRUCTIONBASEINFO B, CONSTRUCTIONBASEINFODETAIL C, DEPARTMENTMASTER DEP, PERSONINCHARGEMASTER PERSON";
-            strSQL += string.Format(" WHERE NOT EXISTS(SELECT * FROM PROCESSAPPROVAL WHERE CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND ApprovalCode = {0})", m_ApprovalCode);
+            strSQL += string.Format(" WHERE NOT EXISTS(SELECT * FROM PROCESSAPPROVAL APP WHERE APP.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND APP.ApprovalCode = {0})", m_ApprovalCode);
             strSQL += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
             strSQL += string.Format(" AND B.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
             strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG <= {0}", ProgressComplete);
@@ -686,9 +919,12 @@
             strSQL += " UNION SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += " A.APPROVALCODE,";
+            strSQL += " A.ORDERNO,";
             strSQL += " C.DETAILSTRING,";
             strSQL += " A.APPROVALSTATUS,";
             strSQL += " PERSON.PERSONNAME,";
+            //strSQL += " TO_CHAR(A.ENTRYDATE,'YYYY/MM/DD'),";
+            //strSQL += " TO_CHAR(A.APPROVALLIMITDATES,'YYYY/MM/DD'),";
             strSQL += " DATE_FORMAT(A.ENTRYDATE,'%Y/%m/%d'),";
             strSQL += " DATE_FORMAT(A.APPROVALLIMITDATES,'%Y/%m/%d'),";
             strSQL += " B.CONSTRUCTIONSTATUSFLG,";
@@ -706,11 +942,12 @@
             if (DepartmentCode != 0) strSQL += string.Format(" AND DEP.DEPARTMENTCODE = {0}", DepartmentCode);
             if (PersonCode != 0) strSQL += string.Format(" AND PERSON.PERSONCODE = {0}", PersonCode);
             strSQL += wrkSec;
-            strSQL += string.Format(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC",
+            strSQL += string.Format(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC",
                                                 ((int)GetDataColumns.ApprovalCode + 1),
                                                 ((int)GetDataColumns.ConstructionStatus + 1),
                                                 ((int)GetDataColumns.DepartmentDispNo + 1),
-                                                ((int)GetDataColumns.PersontDispNo + 1));
+                                                ((int)GetDataColumns.PersontDispNo + 1),
+                                                ((int)GetDataColumns.ConstructionName + 1));
         }
         #endregion
 
@@ -736,6 +973,7 @@
             strSQL = "SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += string.Format(" {0},", m_ApprovalCode);
+            strSQL += string.Format(" {0},", CommonDefine.s_Default_OrderNo);
             strSQL += " C.DetailString,";
             strSQL += string.Format("{0},", (int)CommonDefine.ApprovalStatus.Unclaimed);
             strSQL += " PERSON.PERSONNAME,";
@@ -746,7 +984,7 @@
             strSQL += " DEP.DISPLAYORDER,";
             strSQL += " PERSON.DISPLAYORDER";
             strSQL += " FROM CONSTRUCTIONBUDGET A, CONSTRUCTIONBASEINFO B, CONSTRUCTIONBASEINFODETAIL C, DEPARTMENTMASTER DEP, PERSONINCHARGEMASTER PERSON";
-            strSQL += string.Format(" WHERE NOT EXISTS(SELECT * FROM PROCESSAPPROVAL WHERE CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND ApprovalCode = {0})", m_ApprovalCode);
+            strSQL += string.Format(" WHERE NOT EXISTS(SELECT * FROM PROCESSAPPROVAL APP WHERE APP.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND APP.ApprovalCode = {0})", m_ApprovalCode);
             strSQL += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
             strSQL += string.Format(" AND B.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
             strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG <= {0}", ProgressComplete);
@@ -760,9 +998,12 @@
             strSQL += " UNION SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += " A.APPROVALCODE,";
+            strSQL += " A.ORDERNO,";
             strSQL += " C.DETAILSTRING,";
             strSQL += " A.APPROVALSTATUS,";
             strSQL += " PERSON.PERSONNAME,";
+            //strSQL += " TO_CHAR(A.ENTRYDATE,'YYYY/MM/DD'),";
+            //strSQL += " TO_CHAR(A.APPROVALLIMITDATES,'YYYY/MM/DD'),";
             strSQL += " DATE_FORMAT(A.ENTRYDATE,'%Y/%m/%d'),";
             strSQL += " DATE_FORMAT(A.APPROVALLIMITDATES,'%Y/%m/%d'),";
             strSQL += " B.CONSTRUCTIONSTATUSFLG,";
@@ -780,11 +1021,12 @@
             if (DepartmentCode != 0) strSQL += string.Format(" AND DEP.DEPARTMENTCODE = {0}", DepartmentCode);
             if (PersonCode != 0) strSQL += string.Format(" AND PERSON.PERSONCODE = {0}", PersonCode);
             strSQL += wrkSec;
-            strSQL += string.Format(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC",
+            strSQL += string.Format(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} ASC, {4} ASC",
                                                 ((int)GetDataColumns.ApprovalCode + 1),
                                                 ((int)GetDataColumns.ConstructionStatus + 1),
                                                 ((int)GetDataColumns.DepartmentDispNo + 1),
-                                                ((int)GetDataColumns.PersontDispNo + 1));
+                                                ((int)GetDataColumns.PersontDispNo + 1),
+                                                ((int)GetDataColumns.ConstructionName + 1));
         }
         #endregion
 
@@ -810,6 +1052,7 @@
             strSQL = "SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += string.Format(" {0},", m_ApprovalCode);
+            strSQL += string.Format(" {0},", CommonDefine.s_Default_OrderNo);
             strSQL += " C.DetailString,";
             strSQL += string.Format("{0},", (int)CommonDefine.ApprovalStatus.Unclaimed);
             strSQL += " PERSON.PERSONNAME,";
@@ -820,7 +1063,7 @@
             strSQL += " DEP.DISPLAYORDER,";
             strSQL += " PERSON.DISPLAYORDER";
             strSQL += " FROM PURCHASEORDER A, CONSTRUCTIONBASEINFO B, CONSTRUCTIONBASEINFODETAIL C, DEPARTMENTMASTER DEP, PERSONINCHARGEMASTER PERSON";
-            strSQL += string.Format(" WHERE NOT EXISTS(SELECT * FROM PROCESSAPPROVAL WHERE CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND ApprovalCode = {0})", m_ApprovalCode);
+            strSQL += string.Format(" WHERE NOT EXISTS(SELECT * FROM PROCESSAPPROVAL APP WHERE APP.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND APP.ApprovalCode = {0})", m_ApprovalCode);
             strSQL += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
             strSQL += string.Format(" AND B.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
             strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG <= {0}", ProgressComplete);
@@ -834,10 +1077,13 @@
             strSQL += " UNION SELECT";
             strSQL += " A.CONSTRUCTIONCODE,";
             strSQL += " A.APPROVALCODE,";
+            strSQL += " A.ORDERNO,";
             strSQL += " C.DETAILSTRING,";
             strSQL += " A.APPROVALSTATUS,";
             strSQL += " PERSON.PERSONNAME,";
-            strSQL += " DATE_FORMAT(A.ENTRYDATE,'%Y/%m/%d'),";
+            //strSQL += " TO_CHAR(A.ENTRYDATE,'YYYY/MM/DD'),";
+            //strSQL += " TO_CHAR(A.APPROVALLIMITDATES,'YYYY/MM/DD'),";
+            strSQL += " DATE_FORMATDATE_FORMAT(A.ENTRYDATE,'%Y/%m/%d'),";
             strSQL += " DATE_FORMAT(A.APPROVALLIMITDATES,'%Y/%m/%d'),";
             strSQL += " B.CONSTRUCTIONSTATUSFLG,";
             strSQL += " DEP.DEPARTMENTCODE,";
@@ -858,7 +1104,8 @@
                                                 ((int)GetDataColumns.ApprovalCode + 1),
                                                 ((int)GetDataColumns.ConstructionStatus + 1),
                                                 ((int)GetDataColumns.DepartmentDispNo + 1),
-                                                ((int)GetDataColumns.PersontDispNo + 1));
+                                                ((int)GetDataColumns.PersontDispNo + 1),
+                                                ((int)GetDataColumns.ConstructionName + 1));
         }
         #endregion
 
@@ -995,9 +1242,12 @@
                 // �����R���{�{�b�N�X�֕����R�[�h�Z�b�g
                 if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
                 {
+                    bool bSave = m_bInitFlg;
                     m_bInitFlg = true;
                     cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
-                    m_bInitFlg = false;
+                    SetcmbPersons();    // �S���҃R���{�{�b�N�X�ύX
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_bInitFlg = bSave;
                 }
 
                 return true;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreen.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreen.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreen.cs	(revision 51)
@@ -108,6 +108,14 @@
         /// </summary>
         private int m_ApprovalCode = 0;
         /// <summary>
+        /// ��t�ԍ�
+        /// </summary>
+        private int m_OrderNo = 1;
+        /// <summary>
+        /// �������}��
+        /// </summary>
+        private List<int> m_PurchaseOrderSeqNo = new List<int>();
+        /// <summary>
         /// �Y���H����{���
         /// </summary>
         private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
@@ -134,6 +142,23 @@
             get { return m_ApprovalCode; }
             set { m_ApprovalCode = value; }
         }
+        /// <summary>
+        /// ��t�ԍ�
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+        /// <summary>
+        /// �������}��
+        /// </summary>
+        public List<int> PurchaseOrderSeqNo
+        {
+            get { return m_PurchaseOrderSeqNo; }
+            set { m_PurchaseOrderSeqNo = value; }
+        }
+
         #endregion
 
         #region �R���X�g���N�^
@@ -164,6 +189,15 @@
         /// <param name="e"></param>
         private void FrmApprovalScreen_Load(object sender, EventArgs e)
         {
+            // ���F�o�H���ݒ肳��Ă��Ȃ��ꍇ�͋N�����Ȃ�
+            int CurrentDepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
+            if (ClsApprovalPermission.GetApprovalMasterCount(m_ApprovalCode, CurrentDepartmentCode) == 0)
+            {
+                m_bEndFlg = true;
+                this.Close();
+                return;
+            }
+
             //�R���g���[���I�u�W�F�N�g�擾
             SetDisplayObject();
 
@@ -380,6 +414,9 @@
                     return;
                 }
 
+                // �������b�Z�[�W
+                CommonMotions.EntryEndMessage("�\���f�[�^���F", "���F");
+
                 this.Close();
             }
             catch (Exception ex)
@@ -410,6 +447,9 @@
                     return;
                 }
 
+                // �������b�Z�[�W
+                CommonMotions.EntryEndMessage("�\���f�[�^�s���F", "�s���F");
+
                 this.Close();
             }
             catch (Exception ex)
@@ -440,6 +480,9 @@
                     return;
                 }
 
+                // �������b�Z�[�W
+                CommonMotions.EntryEndMessage("�\���f�[�^�ۗ�", "�ۗ�");
+
                 this.Close();
             }
             catch (Exception ex)
@@ -459,6 +502,13 @@
         {
             try
             {
+                // �����H���̍H���\�Z���\�����ɖ{�̂����邩���`�F�b�N����
+                if (!CheckLedgerApproval())
+                {
+                    MessageBox.Show("�{�̂̍H���ڍב䒠���쐬����Ă��܂���B", "�\���G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
                 if (!DispFeildCheck()) return;
                 if (MessageBox.Show("�Č��̏��F��\�����܂��A��낵���ł����H�B", "���F�\���m�F"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) return;
@@ -474,6 +524,15 @@
                 // ----- �ώZ���ρE�ώZ�\�Z�͓����ɐ\�����s��
                 SimultaneousRequestEstimatePetition(ref Rec);
                 
+                // ----- �������\���͖��׃f�[�^���쐬����
+                if (m_ApprovalCode == (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval)
+                {
+                    CreatePurchaseOrderLink();
+                }
+
+                // �������b�Z�[�W
+                CommonMotions.EntryEndMessage("�\���f�[�^", "�\��");
+
                 this.Close();
             }
             catch (Exception ex)
@@ -483,9 +542,9 @@
         }
         #endregion
 
-        #region ���F�������{�^������
+        #region �\���������{�^������
         /// <summary>
-        /// ���F�������{�^������
+        /// �\���������{�^������
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
@@ -494,27 +553,44 @@
             IOProcessApproval pAppDB = new IOProcessApproval();
             try
             {
-                if (MessageBox.Show("�H���Č��̏��F��������܂��A��낵���ł����H�B", "���F����m�F"
+                if (MessageBox.Show("�H���Č��̐\����������܂��A��낵���ł����H�B", "�\������m�F"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) return;
 
                 // �\���E���F�f�[�^����C�ɍ폜����
-                string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode);
+                string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
                 if (!pAppDB.DeleteAction(strSQL))
                 {
-                    MessageBox.Show("���F�\��������Ɏ��s���܂����B", "������G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    MessageBox.Show("�\��������Ɏ��s���܂����B", "������G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return;
                 }
 
-                //// �\���҂ƍŏ��̏��F�҂������ꍇ�͐\�����ɏ��F����
-                //if (m_dispLabelControl[(int)DispHeader.PetitionName].Text.Equals(m_dispLabelControl[(int)DispHeader.ApprovalName].Text))
-                //{
-                //    // �\���E���F���R�[�h�X�V
-                //    if (!ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval))
-                //    {
-                //        MessageBox.Show("���F�Ɏ��s���܂����B", "���F�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                //        return;
-                //    }
-                //}
+                // �֘A�f�[�^���폜����
+                switch (m_ApprovalCode)
+                {
+                    // 1:�ώZ���Ϗ����F
+                    case (int)ClsExcute.ApprovalListNo.EstimateApproval:
+                    // 2:�ώZ�\�Z�����F
+                    case (int)ClsExcute.ApprovalListNo.EstimateBudgetApproval:
+                    // 3:�H���\�Z�����F
+                    case (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval:
+                        break;
+
+                    // 4:���������F
+                    case (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval:
+                        RemoveApprovalLinkDetail();
+                        break;
+                    
+                    // 5:���������F
+                    case (int)ClsExcute.ApprovalListNo.OrderBillingApproval:
+                    // 6:�H�����񏳔F
+                    case (int)ClsExcute.ApprovalListNo.DRConstructionApproval:
+                    default:
+                        break;
+                }
+
+                // �������b�Z�[�W
+                CommonMotions.EntryEndMessage("�\���f�[�^", "�\�����");
+
                 this.Close();
             }
             catch (Exception ex)
@@ -559,7 +635,23 @@
             int NowPoint = ClsExcute.NextProcess(iNextProcessNo);
             // ----- �H���ԍ��Z�b�g
             ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_ConstructionCode);
+            // ���F�@�\�ԍ�
+            ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_ApprovalCode);
+            // ��t�ԍ�
+            ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_OrderNo);
 
+            // ----- �������Z�b�g
+            switch (m_ApprovalCode)
+            {
+                case (int)ClsExcute.ApprovalListNo.EstimateApproval:                        // 1:�ώZ���Ϗ����F
+                case (int)ClsExcute.ApprovalListNo.EstimateBudgetApproval:                  // 2:�ώZ�\�Z�����F
+                case (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval:              // 3:�H���\�Z�����F
+                    break;
+                case (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval:              // 4:���������F
+                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);        // ----- ���ڕ\���t���O
+                    break;
+            }
+
             m_bTargetFlg = true;
             m_bEndFlg = true;
             this.Close();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreen.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreen.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreen.designer.cs	(revision 51)
@@ -56,15 +56,6 @@
             this.label17 = new System.Windows.Forms.Label();
             this.lblLabel15 = new System.Windows.Forms.Label();
             this.panel2 = new System.Windows.Forms.Panel();
-            this.dgvEntryData = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.Column01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column03 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column06 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column07 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.panel1 = new System.Windows.Forms.Panel();
             this.panel3 = new System.Windows.Forms.Panel();
             this.lblLabel05 = new System.Windows.Forms.Label();
@@ -75,7 +66,6 @@
             this.label9 = new System.Windows.Forms.Label();
             this.label8 = new System.Windows.Forms.Label();
             this.label7 = new System.Windows.Forms.Label();
-            this.txtApprovalComment = new ProcessManagement.Forms.CustomControls.TextBoxEX();
             this.label15 = new System.Windows.Forms.Label();
             this.btnApproval = new System.Windows.Forms.Button();
             this.btnNotApproval = new System.Windows.Forms.Button();
@@ -82,7 +72,6 @@
             this.btnOnHold = new System.Windows.Forms.Button();
             this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
             this.panel4 = new System.Windows.Forms.Panel();
-            this.txtPetitionComment = new ProcessManagement.Forms.CustomControls.TextBoxEX();
             this.lblLabel09 = new System.Windows.Forms.Label();
             this.label4 = new System.Windows.Forms.Label();
             this.label16 = new System.Windows.Forms.Label();
@@ -96,12 +85,23 @@
             this.label14 = new System.Windows.Forms.Label();
             this.btnNotPetition = new System.Windows.Forms.Button();
             this.btnPetition = new System.Windows.Forms.Button();
+            this.txtPetitionComment = new ProcessManagement.Forms.CustomControls.TextBoxEX();
+            this.txtApprovalComment = new ProcessManagement.Forms.CustomControls.TextBoxEX();
+            this.dgvEntryData = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column03 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column06 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column07 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.tableLayoutPanel1.SuspendLayout();
             this.panel2.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).BeginInit();
             this.panel1.SuspendLayout();
             this.panel3.SuspendLayout();
             this.panel4.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).BeginInit();
             this.SuspendLayout();
             // 
             // label1
@@ -335,133 +335,6 @@
             this.panel2.Size = new System.Drawing.Size(840, 160);
             this.panel2.TabIndex = 15;
             // 
-            // dgvEntryData
-            // 
-            this.dgvEntryData.AllowUserToAddRows = false;
-            this.dgvEntryData.AllowUserToDeleteRows = false;
-            this.dgvEntryData.AllowUserToResizeColumns = false;
-            this.dgvEntryData.AllowUserToResizeRows = false;
-            this.dgvEntryData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.dgvEntryData.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle1.BackColor = System.Drawing.Color.Black;
-            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
-            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvEntryData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
-            this.dgvEntryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvEntryData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.Column01,
-            this.Column02,
-            this.Column03,
-            this.Column06,
-            this.Column07,
-            this.Column04,
-            this.Column05,
-            this.Column1});
-            this.dgvEntryData.EnableHeadersVisualStyles = false;
-            this.dgvEntryData.Location = new System.Drawing.Point(13, 5);
-            this.dgvEntryData.Name = "dgvEntryData";
-            this.dgvEntryData.RowHeadersVisible = false;
-            this.dgvEntryData.RowHeadersWidth = 20;
-            this.dgvEntryData.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvEntryData.RowTemplate.Height = 21;
-            this.dgvEntryData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvEntryData.Size = new System.Drawing.Size(800, 148);
-            this.dgvEntryData.TabIndex = 8;
-            // 
-            // Column01
-            // 
-            this.Column01.Frozen = true;
-            this.Column01.HeaderText = "承認者コード";
-            this.Column01.Name = "Column01";
-            this.Column01.ReadOnly = true;
-            this.Column01.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column01.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column01.Visible = false;
-            // 
-            // Column02
-            // 
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column02.DefaultCellStyle = dataGridViewCellStyle2;
-            this.Column02.Frozen = true;
-            this.Column02.HeaderText = "№";
-            this.Column02.Name = "Column02";
-            this.Column02.ReadOnly = true;
-            this.Column02.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column02.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column02.Width = 30;
-            // 
-            // Column03
-            // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column03.DefaultCellStyle = dataGridViewCellStyle3;
-            this.Column03.Frozen = true;
-            this.Column03.HeaderText = "承認者名";
-            this.Column03.Name = "Column03";
-            this.Column03.ReadOnly = true;
-            this.Column03.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column03.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column03.Width = 120;
-            // 
-            // Column06
-            // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column06.DefaultCellStyle = dataGridViewCellStyle4;
-            this.Column06.Frozen = true;
-            this.Column06.HeaderText = "承認状態";
-            this.Column06.Name = "Column06";
-            this.Column06.ReadOnly = true;
-            this.Column06.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column06.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column07
-            // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column07.DefaultCellStyle = dataGridViewCellStyle5;
-            this.Column07.Frozen = true;
-            this.Column07.HeaderText = "処理日付";
-            this.Column07.Name = "Column07";
-            this.Column07.ReadOnly = true;
-            this.Column07.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column07.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column07.Width = 120;
-            // 
-            // Column04
-            // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column04.DefaultCellStyle = dataGridViewCellStyle6;
-            this.Column04.HeaderText = "所　属";
-            this.Column04.Name = "Column04";
-            this.Column04.ReadOnly = true;
-            this.Column04.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column04.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column04.Width = 120;
-            // 
-            // Column05
-            // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column05.DefaultCellStyle = dataGridViewCellStyle7;
-            this.Column05.HeaderText = "役　職";
-            this.Column05.Name = "Column05";
-            this.Column05.ReadOnly = true;
-            this.Column05.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column05.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column05.Width = 120;
-            // 
-            // Column1
-            // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle8;
-            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 = 300;
-            // 
             // panel1
             // 
             this.panel1.BackColor = System.Drawing.Color.Gold;
@@ -582,18 +455,6 @@
             this.label7.Text = "所　　属";
             this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // txtApprovalComment
-            // 
-            this.txtApprovalComment.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtApprovalComment.Location = new System.Drawing.Point(46, 103);
-            this.txtApprovalComment.MaxLength = 300;
-            this.txtApprovalComment.Name = "txtApprovalComment";
-            this.txtApprovalComment.Size = new System.Drawing.Size(744, 23);
-            this.txtApprovalComment.TabIndex = 2;
-            this.toolTip1.SetToolTip(this.txtApprovalComment, "承認時に入力して下さい");
-            this.txtApprovalComment.TextChanged += new System.EventHandler(this.valueChange);
-            this.txtApprovalComment.Validated += new System.EventHandler(this.txtPetitionComment_Validated);
-            // 
             // label15
             // 
             this.label15.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
@@ -664,16 +525,6 @@
             this.panel4.Size = new System.Drawing.Size(840, 120);
             this.panel4.TabIndex = 18;
             // 
-            // txtPetitionComment
-            // 
-            this.txtPetitionComment.Location = new System.Drawing.Point(46, 88);
-            this.txtPetitionComment.Name = "txtPetitionComment";
-            this.txtPetitionComment.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
-            this.txtPetitionComment.Size = new System.Drawing.Size(744, 23);
-            this.txtPetitionComment.TabIndex = 1;
-            this.txtPetitionComment.TextChanged += new System.EventHandler(this.valueChange);
-            this.txtPetitionComment.Validated += new System.EventHandler(this.txtPetitionComment_Validated);
-            // 
             // lblLabel09
             // 
             this.lblLabel09.BackColor = System.Drawing.Color.White;
@@ -733,6 +584,7 @@
             // 
             this.lblLabel14.BackColor = System.Drawing.Color.White;
             this.lblLabel14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel14.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.lblLabel14.ForeColor = System.Drawing.Color.Black;
             this.lblLabel14.Location = new System.Drawing.Point(496, 32);
             this.lblLabel14.Name = "lblLabel14";
@@ -776,12 +628,12 @@
             // txtHoppesDate
             // 
             this.txtHoppesDate.Enabled = false;
-            this.txtHoppesDate.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.txtHoppesDate.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.txtHoppesDate.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtHoppesDate.Location = new System.Drawing.Point(646, 32);
+            this.txtHoppesDate.Location = new System.Drawing.Point(646, 31);
             this.txtHoppesDate.MaxLength = 300;
             this.txtHoppesDate.Name = "txtHoppesDate";
-            this.txtHoppesDate.Size = new System.Drawing.Size(144, 26);
+            this.txtHoppesDate.Size = new System.Drawing.Size(144, 27);
             this.txtHoppesDate.TabIndex = 0;
             this.txtHoppesDate.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
             this.txtHoppesDate.TextChanged += new System.EventHandler(this.valueChange);
@@ -822,6 +674,157 @@
             this.btnPetition.Visible = false;
             this.btnPetition.Click += new System.EventHandler(this.btnPetition_Click);
             // 
+            // txtPetitionComment
+            // 
+            this.txtPetitionComment.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtPetitionComment.Location = new System.Drawing.Point(46, 88);
+            this.txtPetitionComment.Name = "txtPetitionComment";
+            this.txtPetitionComment.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
+            this.txtPetitionComment.Size = new System.Drawing.Size(744, 23);
+            this.txtPetitionComment.TabIndex = 1;
+            this.txtPetitionComment.TextChanged += new System.EventHandler(this.valueChange);
+            this.txtPetitionComment.Validated += new System.EventHandler(this.txtPetitionComment_Validated);
+            // 
+            // txtApprovalComment
+            // 
+            this.txtApprovalComment.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtApprovalComment.Location = new System.Drawing.Point(46, 103);
+            this.txtApprovalComment.MaxLength = 300;
+            this.txtApprovalComment.Name = "txtApprovalComment";
+            this.txtApprovalComment.Size = new System.Drawing.Size(744, 23);
+            this.txtApprovalComment.TabIndex = 2;
+            this.toolTip1.SetToolTip(this.txtApprovalComment, "承認時に入力して下さい");
+            this.txtApprovalComment.TextChanged += new System.EventHandler(this.valueChange);
+            this.txtApprovalComment.Validated += new System.EventHandler(this.txtPetitionComment_Validated);
+            // 
+            // dgvEntryData
+            // 
+            this.dgvEntryData.AllowUserToAddRows = false;
+            this.dgvEntryData.AllowUserToDeleteRows = false;
+            this.dgvEntryData.AllowUserToResizeColumns = false;
+            this.dgvEntryData.AllowUserToResizeRows = false;
+            this.dgvEntryData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvEntryData.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.Black;
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
+            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvEntryData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvEntryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvEntryData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column01,
+            this.Column02,
+            this.Column03,
+            this.Column06,
+            this.Column07,
+            this.Column04,
+            this.Column05,
+            this.Column1});
+            this.dgvEntryData.EnableHeadersVisualStyles = false;
+            this.dgvEntryData.Location = new System.Drawing.Point(13, 5);
+            this.dgvEntryData.Name = "dgvEntryData";
+            this.dgvEntryData.RowHeadersVisible = false;
+            this.dgvEntryData.RowHeadersWidth = 20;
+            this.dgvEntryData.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvEntryData.RowTemplate.Height = 21;
+            this.dgvEntryData.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvEntryData.Size = new System.Drawing.Size(800, 148);
+            this.dgvEntryData.TabIndex = 8;
+            // 
+            // Column01
+            // 
+            this.Column01.Frozen = true;
+            this.Column01.HeaderText = "承認者コード";
+            this.Column01.Name = "Column01";
+            this.Column01.ReadOnly = true;
+            this.Column01.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column01.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column01.Visible = false;
+            // 
+            // Column02
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column02.DefaultCellStyle = dataGridViewCellStyle2;
+            this.Column02.Frozen = true;
+            this.Column02.HeaderText = "№";
+            this.Column02.Name = "Column02";
+            this.Column02.ReadOnly = true;
+            this.Column02.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column02.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column02.Width = 30;
+            // 
+            // Column03
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column03.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column03.Frozen = true;
+            this.Column03.HeaderText = "承認者名";
+            this.Column03.Name = "Column03";
+            this.Column03.ReadOnly = true;
+            this.Column03.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column03.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column03.Width = 120;
+            // 
+            // Column06
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column06.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column06.Frozen = true;
+            this.Column06.HeaderText = "承認状態";
+            this.Column06.Name = "Column06";
+            this.Column06.ReadOnly = true;
+            this.Column06.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column06.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column07
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column07.DefaultCellStyle = dataGridViewCellStyle5;
+            this.Column07.Frozen = true;
+            this.Column07.HeaderText = "処理日付";
+            this.Column07.Name = "Column07";
+            this.Column07.ReadOnly = true;
+            this.Column07.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column07.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column07.Width = 120;
+            // 
+            // Column04
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column04.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column04.HeaderText = "所　属";
+            this.Column04.Name = "Column04";
+            this.Column04.ReadOnly = true;
+            this.Column04.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column04.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column04.Width = 120;
+            // 
+            // Column05
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column05.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column05.HeaderText = "役　職";
+            this.Column05.Name = "Column05";
+            this.Column05.ReadOnly = true;
+            this.Column05.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column05.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column05.Width = 120;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle8;
+            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 = 300;
+            // 
             // FrmApprovalScreen
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -847,12 +850,12 @@
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmApprovalScreen_KeyDown);
             this.tableLayoutPanel1.ResumeLayout(false);
             this.panel2.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).EndInit();
             this.panel1.ResumeLayout(false);
             this.panel3.ResumeLayout(false);
             this.panel3.PerformLayout();
             this.panel4.ResumeLayout(false);
             this.panel4.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvEntryData)).EndInit();
             this.ResumeLayout(false);
 
         }
@@ -905,6 +908,9 @@
         private System.Windows.Forms.Button btnNotApproval;
         private System.Windows.Forms.Button btnOnHold;
         private TextBoxEX txtPetitionComment;
+        private System.Windows.Forms.Button btnNotPetition;
+        private System.Windows.Forms.Label label17;
+        private System.Windows.Forms.Label lblLabel15;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column01;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column02;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column03;
@@ -913,8 +919,5 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column04;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column05;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
-        private System.Windows.Forms.Button btnNotPetition;
-        private System.Windows.Forms.Label label17;
-        private System.Windows.Forms.Label lblLabel15;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreenAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreenAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmApprovalScreenAuxiliary.cs	(revision 51)
@@ -56,6 +56,18 @@
                 case (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval:
                     if (RecPara.ProcNo == (int)ClsExcute.ProcessExecuteNo.ConstructionBudget) bAns = true;
                     break;
+                // 4:注文書承認
+                case (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval:
+                    if (RecPara.ProcNo == (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry) bAns = true;
+                    break;
+                // 5:請求書承認
+                case (int)ClsExcute.ApprovalListNo.OrderBillingApproval:
+                    //if (RecPara.ProcNo == (int)ClsExcute.ProcessExecuteNo.ConstructionBudget) bAns = true;
+                    break;
+                // 6:工事日報承認
+                case (int)ClsExcute.ApprovalListNo.DRConstructionApproval:
+                    if (RecPara.ProcNo == (int)ClsExcute.ProcessExecuteNo.DRConstruction) bAns = true;
+                    break;
             }
 
             return bAns;
@@ -134,6 +146,47 @@
         }
         #endregion
 
+        #region 増減工事の工事予算書申請時に本体があるかをチェックする
+        /// <summary>
+        /// 増減工事の工事予算書申請時に本体があるかをチェックする
+        /// </summary>
+        /// <param name="Rec"></param>
+        /// <returns></returns>
+        private bool CheckLedgerApproval()
+        {
+            IOConstructionLink LinkDB = new IOConstructionLink();
+            try
+            {
+                // 工事予算申請時だけのチェック
+                int iCode = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
+                if (m_ApprovalCode != iCode) return true;
+
+                // 増減なしの工事・本体工事はチェック無
+                if (m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Standard
+                    || m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Parent) return true;
+
+                // 増減工事の子データのみ表示
+                string strSQL = " SELECT * FROM CONSTRUCTIONLINK A, CONSTRUCTIONLEDGER B";
+                strSQL += string.Format(" WHERE A.FLUCTUATIONCODE = {0}", m_ConstructionCode);
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                ArrayList arList = new ArrayList();
+                if (!LinkDB.ExecuteReader(strSQL, ref arList)) return false;
+                if (arList.Count == 0) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                LinkDB.close(); LinkDB = null;
+            }
+        }
+        #endregion
+
         #region 承認時データ更新処理
         /// <summary>
         /// 承認時にデータを更新する
@@ -208,10 +261,10 @@
                     case (int)CommonDefine.ApprovalStatus.Approval:
                         // ----- 承認
                         // 案件に対して最終承認がされているかを確認する
-                        if (ClsApprovalPermission.CheckApprovalData(m_ConstructionCode, m_ApprovalCode))
+                        if (ClsApprovalPermission.CheckApprovalData(m_ConstructionCode, m_ApprovalCode, m_OrderNo))
                         {
                             // 最終承認がされていれば申請レコードを承認へ変更する
-                            ClsApprovalPermission.SetPrimaryRecStatus(m_ConstructionCode, m_ApprovalCode, (int)CommonDefine.ApprovalStatus.Approval);
+                            ClsApprovalPermission.SetPrimaryRecStatus(m_ConstructionCode, m_ApprovalCode, m_OrderNo, (int)CommonDefine.ApprovalStatus.Approval);
                             
                             // 工事詳細台帳データを作成するデータがある
                             CaretaLedgerData();
@@ -219,7 +272,7 @@
                         break;
                     case (int)CommonDefine.ApprovalStatus.NotApproval:
                         // ----- 非承認
-                        ClsApprovalPermission.SetPrimaryRecStatus(m_ConstructionCode, m_ApprovalCode, (int)CommonDefine.ApprovalStatus.NotApproval);
+                        ClsApprovalPermission.SetPrimaryRecStatus(m_ConstructionCode, m_ApprovalCode, m_OrderNo, (int)CommonDefine.ApprovalStatus.NotApproval);
                         break;
                 }
                 return true;
@@ -244,7 +297,7 @@
             try
             {
                 // 申請レコード以外で自分の承認レコードがあるかをチェックする
-                string strSQL = ApprDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode);
+                string strSQL = ApprDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
                 strSQL += " And SeqNo != 1";
                 strSQL += string.Format(" AND PersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
                 if (!ApprDB.SelectAction(strSQL, ref Rec))
@@ -251,10 +304,11 @@
                 {
                     Rec.ConstructionCode = m_ConstructionCode;                      // 工事番号
                     Rec.ApprovalCode = m_ApprovalCode;	                            // 承認機能番号
+                    Rec.OrderNo = m_OrderNo;	                                    // 受付番号
                     Rec.PersonCode = CommonMotions.LoginUserData.PersonCode;        // 申請・承認者コード
                     Rec.PetitionApprovalDate = DateTime.Now;	                    // 承認日付
 
-                    strSQL = ApprDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode);
+                    strSQL = ApprDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
                     Rec.SeqNo = ApprDB.SelectMaxSeqNoCount(strSQL) + 1;             // 枝番
                 }
                 // 承認状態をセットする
@@ -282,6 +336,38 @@
         }
         #endregion
 
+        #region 承認明細レコードデータ作成
+        /// <summary>
+        /// 承認明細レコードデータ作成
+        /// </summary>
+        private bool CreateApprovalDetailData(IOProcessApprovalDetail AppDetailDB, int LinkCode)
+        {
+            try
+            {
+                bool bRet = true;
+
+                string strSQL= AppDetailDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
+                int SerialNo = AppDetailDB.MaxSerialNoCount(strSQL, false);
+
+                ProcessApprovalDetail NewRec = new ProcessApprovalDetail();
+                NewRec.ConstructionCode = m_ConstructionCode;       // 工事番号
+                NewRec.ApprovalCode = m_ApprovalCode;	            // 承認機能番号
+                NewRec.OrderNo = m_OrderNo;	                        // 受付番号
+                NewRec.SerialNo = SerialNo + 1;                     // 連番
+                NewRec.LinkCode = LinkCode;                         // リンク情報
+
+                if (!AppDetailDB.InsertAction(NewRec, false)) bRet = false;
+                
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region 表示オブジェクトの取得
         /// <summary>
         /// 表示オブジェクトの取得
@@ -339,8 +425,7 @@
             try
             {
                 // 申請データ取得
-                string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, 1);
-                strSQL += " And SeqNo = 1";
+                string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo, 1);
                 ProcessApproval pRec = new ProcessApproval();
                 int CurrentPerson = 0;
                 if (pAppDB.SelectAction(strSQL, ref pRec))
@@ -354,20 +439,40 @@
                     CurrentPerson = CommonMotions.LoginUserData.PersonCode;
                 }
 
-                // システム権限によってデータアクセスに制限がある
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // システム管理者（すべて対象）
+                    // システム権限によってデータアクセスに制限がある
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                    {
+                        // システム管理者（すべて対象）
+                    }
+                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                    {
+                        // 最高機密管理者（すべて対象）
+                    }
+                    else
+                    {
+                        // ログイン者が申請者か承認時の管理担当者以外は取消しできない
+                        if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode && CurrentPerson != CommonMotions.LoginUserData.PersonCode) return;
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                {
-                    // 最高機密管理者（すべて対象）
-                }
                 else
                 {
-                    // ログイン者が申請者か承認時の管理担当者以外は取消しできない
-                    if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode &&
-                        CurrentPerson != CommonMotions.LoginUserData.PersonCode) return;
+                    // システム権限によってデータアクセスに制限がある
+                    if(CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+                        // システム管理者（すべて対象）
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
+                    {
+                        // 経営者アクセス
+                    }
+                    else
+                    {
+                        // ログイン者が申請者以外は取消しできない
+                        if (pRec.PersonCode != CommonMotions.LoginUserData.PersonCode) return;
+                    }
                 }
 
                 // 申請・承認以外は申請ボタンを表示する
@@ -403,7 +508,7 @@
         private void SetConfirmationForm()
         {
             // 管理担当部署取得
-            int DepCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionCode, m_ApprovalCode);
+            int DepCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
             // ログイン者が承認者かどうか確認する
             if (ClsApprovalPermission.CheckUserForApprover(m_ApprovalCode, DepCode)) return;
 
@@ -460,7 +565,6 @@
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             IOMApproval mAppDB = new IOMApproval();
-            IOProcessApproval ApprovalDB = new IOProcessApproval();
             try
             {
                 // 工事基本情報取得
@@ -468,21 +572,7 @@
                 if (!cbiDB.SelectAction(strSQL, ref m_ConstructionBaseInfo)) return false;
 
                 // 担当部署取得
-                string strDep = "SELECT B.DEPARTMENTCODE FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B";
-                strDep += string.Format(" WHERE A.CONSTRUCTIONCODE = {0} AND A.APPROVALCODE = {1} AND A.SEQNO = 1", m_ConstructionCode, m_ApprovalCode);
-                strDep += " AND B.PERSONCODE = A.PERSONCODE";
-                ArrayList DepList = new ArrayList();
-                if (!ApprovalDB.ExecuteReader(strDep, ref DepList)) return false;
-                int CurrentDepartmentCode = 0;
-                if (DepList.Count != 0)
-                {
-                    object[] DepCnt = (object[])DepList[0];
-                    CurrentDepartmentCode = CommonMotions.cnvInt(DepCnt[0]);
-                }
-                else
-                {
-                    CurrentDepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionCode, m_ApprovalCode);
-                }
+                int CurrentDepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
 
                 // 承認経路マスタ取得
                 strSQL = mAppDB.CreatePrimarykeyString(m_ApprovalCode, CurrentDepartmentCode);
@@ -500,7 +590,6 @@
             {
                 cbiDB.close(); cbiDB = null;
                 mAppDB.close(); mAppDB = null;
-                ApprovalDB.close(); ApprovalDB = null;
             }
         }
         #endregion
@@ -514,36 +603,32 @@
         {
 
             IOConstructionBaseInfoDetail cbidDB = new IOConstructionBaseInfoDetail();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
             try
             {
                 // 工事基本情報明細取得
-                string strSQL = string.Format(" Where ConstructionCode = {0}", m_ConstructionCode);
-                strSQL += string.Format(" And DetailNo = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-                List<ConstructionBaseInfoDetail> workdlist = new List<ConstructionBaseInfoDetail>();
-                if (!cbidDB.SelectAction(strSQL, ref workdlist)) return false;
+                string strSQL = "SELECT B.DETAILSTRING, C.PERSONNAME, D.PERSONNAME FROM CONSTRUCTIONBASEINFO A";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.SALESPERSONCODE";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER D ON D.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += ", CONSTRUCTIONBASEINFODETAIL B";
+                strSQL += string.Format(" Where A.ConstructionCode = {0}", m_ConstructionCode);
+                strSQL += string.Format(" AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND B.DETAILNO = {0}",(int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                
+                ArrayList workdlist = new ArrayList();
+                if (!cbidDB.ExecuteReader(strSQL, ref workdlist)) return false;
                 if (workdlist.Count == 0) return false;
-
+                
+                object[] objRec = (object[])workdlist[0];
                 // データ表示
                 m_dispLabelControl[(int)DispHeader.ConstructionCode].Text = m_ConstructionCode.ToString();                  // 工事コード
-                m_dispLabelControl[(int)DispHeader.ConstructionName].Text = workdlist[0].DetailString;                      // 工事名称
+                m_dispLabelControl[(int)DispHeader.ConstructionName].Text = CommonMotions.cnvString(objRec[0]);             // 工事名称
                 //ツールチップを表示するコントロールと、表示するメッセージ
-                toolTip1.SetToolTip(m_dispLabelControl[(int)DispHeader.ConstructionName], workdlist[0].DetailString);
+                toolTip1.SetToolTip(m_dispLabelControl[(int)DispHeader.ConstructionName], CommonMotions.cnvString(objRec[0]));
 
                 // 営業担当者取得
-                PersonInChargeMaster sPersonRec = new PersonInChargeMaster();
-                strSQL = picDB.CreatePrimarykeyString(m_ConstructionBaseInfo.SalesPersonCode);
-                if (picDB.SelectAction(strSQL, ref sPersonRec))
-                {
-                    m_dispLabelControl[(int)DispHeader.SalesName].Text = sPersonRec.PersonName;                             // 営業担当名
-                }
+                m_dispLabelControl[(int)DispHeader.SalesName].Text = CommonMotions.cnvString(objRec[1]);                    // 営業担当名
+                
                 // 工事担当者取得
-                PersonInChargeMaster cPersonRec = new PersonInChargeMaster();
-                strSQL = picDB.CreatePrimarykeyString(m_ConstructionBaseInfo.ConstructionPersonCode);
-                if (picDB.SelectAction(strSQL, ref cPersonRec))
-                {
-                    m_dispLabelControl[(int)DispHeader.ConstractorName].Text = cPersonRec.PersonName;                       // 工事担当名
-                }
+                m_dispLabelControl[(int)DispHeader.ConstractorName].Text = CommonMotions.cnvString(objRec[2]);              // 工事担当名
 
                 // 承認機能
                 m_dispLabelControl[(int)DispHeader.ApprovalProcess].Text = ClsExcute.AppovalList[m_ApprovalCode];
@@ -555,10 +640,10 @@
                     case (int)CommonDefine.BaseInfoEstimateType.Normal:         // 通常見積
                         SetString = "通常見積";
                         break;
-                    case (int)CommonDefine.BaseInfoEstimateType.Didding:      // 入札案件
+                    case (int)CommonDefine.BaseInfoEstimateType.Didding:        // 入札案件
                         SetString = "入札物件";
                         break;
-                    case (int)CommonDefine.BaseInfoEstimateType.GetBudget:    // 予算取り見積
+                    case (int)CommonDefine.BaseInfoEstimateType.GetBudget:      // 予算取り見積
                         SetString = "予算取り見積";
                         break;
                 }
@@ -574,7 +659,6 @@
             finally
             {
                 cbidDB.close(); cbidDB = null;
-                picDB.close(); picDB = null;
             }
         }
         #endregion
@@ -586,63 +670,76 @@
         private void SetPetitionData()
         {
             IOProcessApproval pAppDB = new IOProcessApproval();
-            IOMDepartment dpDB = new IOMDepartment();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
             try
             {
-
-                // 工事コード・承認機能番号取得
-                int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
-                int iApprovalCode = m_ApprovalCode;
-
+                string strDate = string.Empty;
+                string strComment = string.Empty;
+                int ApprovalStatus = (int)CommonDefine.ApprovalStatus.Undecided;
+                string strPersonName = string.Empty;
+                string strPersonPosion = string.Empty;
+                string strDepartment = string.Empty;
+                string EntryDate = DateTime.Now.ToShortDateString();
                 // 申請データ取得
-                string strSQL = pAppDB.CreatePrimarykeyString(iConstructionCode, iApprovalCode, 1);
-                strSQL += " And SeqNo = 1";
+                string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo, 1);
                 ProcessApproval pRec = new ProcessApproval();
                 if (!pAppDB.SelectAction(strSQL, ref pRec))
                 {
                     // データ無は申請無
                     // ----- データセット
-                    pRec.SeqNo = 1;                                                                                             // 枝番
                     pRec.PersonCode = CommonMotions.LoginUserData.PersonCode;                                                   // 申請者コード
-                    //pRec.PetitionApprovalDate = DateTime.Now;                                                                   // 申請・承認日付
                     pRec.ApprovalStatus = (int)CommonDefine.ApprovalStatus.Undecided;                                           // 承認状態
                 }
 
                 // 申請者名取得
-                string strPerson = picDB.CreatePrimarykeyString(pRec.PersonCode);
-                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                picDB.SelectAction(strPerson, ref PersonRec);
+                //strSQL = "SELECT IFNULL(C.APPROVALSTATUS, -1),";
+                //strSQL += " TO_CHAR(C.APPROVALLIMITDATES,'YYYY/MM/DD'),";
+                strSQL = "SELECT IFNULL(C.APPROVALSTATUS, -1),";
+                strSQL += " DATE_FORMAT(C.APPROVALLIMITDATES,'%Y/%m/%d'),";
+                strSQL += " C.INPUTCOMMENT,";
+                strSQL += " A.PersonName,";
+                strSQL += " A.DisplayString,";
+                strSQL += " B.DepartmentString,";
+                //strSQL += " TO_CHAR(C.ENTRYDATE,'YYYY/MM/DD')";
+                strSQL += " DATE_FORMAT(C.ENTRYDATE,'%Y/%m/%d')";
+                strSQL += " FROM PERSONINCHARGEMASTER A";
+                strSQL += " LEFT JOIN DEPARTMENTMASTER B ON B.DEPARTMENTCODE = A.DEPARTMENTCODE";
+                strSQL += " LEFT JOIN PROCESSAPPROVAL C ON C.PERSONCODE = A.PERSONCODE";
+                strSQL += pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo, 1, "C.").Replace("Where", "AND");
+                strSQL += string.Format(" WHERE A.PersonCode = {0}", pRec.PersonCode);
 
-                // 部署名取得
-                DepartmentMaster DepartmentRec = new DepartmentMaster();
-                string strDepartment = dpDB.CreatePrimarykeyString(PersonRec.DepartmentCode);
-                dpDB.SelectAction(strDepartment, ref DepartmentRec);
+                ArrayList pAppRec = new ArrayList();
+                if (!pAppDB.ExecuteReader(strSQL, ref pAppRec)) return;
 
-                // 状態が未定時は未申請
-                if (pRec.ApprovalStatus == (int)CommonDefine.ApprovalStatus.Undecided)
-                    m_dispLabelControl[(int)DispHeader.PetitionStatus].Text = CommonDefine.PetitionButtonString[0];                     // 申請状態
-                else
-                    m_dispLabelControl[(int)DispHeader.PetitionStatus].Text = CommonDefine.ApprovalStatusString[pRec.ApprovalStatus];
+                object[] objrec = (object[])pAppRec[0];
+                strPersonName = CommonMotions.cnvString(objrec[3]);
+                strPersonPosion = CommonMotions.cnvString(objrec[4]);
+                strDepartment = CommonMotions.cnvString(objrec[5]);
+                if (CommonMotions.cnvInt(objrec[0]) >= 0)
+                {
+                    ApprovalStatus = CommonMotions.cnvInt(objrec[0]);
+                    strDate = CommonMotions.cnvString(objrec[1]);
+                    strComment = CommonMotions.cnvString(objrec[2]);
+                    EntryDate = CommonMotions.cnvString(objrec[6]);
+                }
 
-                m_dispLabelControl[(int)DispHeader.PetitionName].Text = PersonRec.PersonName;                                           // 申請者名
+                m_dispLabelControl[(int)DispHeader.PetitionStatus].Text = CommonDefine.ApprovalStatusString[ApprovalStatus];            // 申請状態
+
+                m_dispLabelControl[(int)DispHeader.PetitionName].Text = strPersonName;                                                  // 申請者名
                 
-                if (pRec.ApprovalLimitDates != DateTime.MinValue)
-                    m_dispLabelControl[(int)DispHeader.PetitionHopeDates].Text = pRec.ApprovalLimitDates.ToShortDateString();           // 承認希望日
-                
-                m_dispLabelControl[(int)DispHeader.PetitionDepartmentName].Text = DepartmentRec.DepartmentString;                       // 部署名
+                m_dispLabelControl[(int)DispHeader.PetitionHopeDates].Text = strDate;                                                   // 承認希望日
 
-                m_dispLabelControl[(int)DispHeader.PetitionComment].Text = pRec.InputComment;                                           // 申請コメント
+                m_dispLabelControl[(int)DispHeader.PetitionDepartmentName].Text = strDepartment;                                        // 部署名
 
-                //m_dispLabelControl[(int)DispHeader.ApprovalDate].Text = pRec.PetitionApprovalDate.ToShortDateString();                  // 申請日
-                m_dispLabelControl[(int)DispHeader.ApprovalDate].Text = pRec.EntryDate.ToShortDateString();                             // 登録年月日
+                m_dispLabelControl[(int)DispHeader.PetitionComment].Text = strComment;                                                  // 申請コメント
 
+                m_dispLabelControl[(int)DispHeader.ApprovalDate].Text = EntryDate;                                                      // 登録年月日
 
+
                 // 申請取消ボタン表示(申請時以外は押下可能)
-                DispNotPetitionButton(pRec.ApprovalStatus);
+                DispNotPetitionButton(ApprovalStatus);
 
                 // 申請・承認以外は申請ボタンを表示する
-                SetDisplayTitleAndButton(pRec.ApprovalStatus);
+                SetDisplayTitleAndButton(ApprovalStatus);
 
             }
             catch (Exception ex)
@@ -651,9 +748,7 @@
             }
             finally
             {
-                dpDB.close(); dpDB = null;
                 pAppDB.close(); pAppDB = null;
-                picDB.close(); picDB = null;
             }
         }
         #endregion
@@ -677,54 +772,55 @@
                     // 状態の取得
                     string strDate = "未処理";
                     string strComment = string.Empty;
+                    int ApprovalStatus = (int)CommonDefine.ApprovalStatus.Undecided;
+                    string strPersonName = string.Empty;
+                    string strPersonPosion = string.Empty;
+                    string strDepartment = string.Empty;
 
                     // 承認データを取得する
-                    string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode);
-                    strSQL += string.Format(" And SeqNo != 1 And PersonCode = {0}", rec.ApprovalPerson);
-                    ProcessApproval pAppRec = new ProcessApproval();
-                    if (pAppDB.SelectAction(strSQL, ref pAppRec))
-                    {
-                        strDate = pAppRec.PetitionApprovalDate.ToShortDateString();
-                        strComment = pAppRec.InputComment;
-                    }
-                    else
-                    {
-                        pAppRec.ApprovalStatus = (int)CommonDefine.ApprovalStatus.Undecided;
-                    }
+                    string strSQL = "SELECT IFNULL(C.APPROVALSTATUS, -1),";
+                    //strSQL += " TO_CHAR(C.PETITIONAPPROVALDATE,'YYYY/MM/DD'),";
+                    strSQL += " DATE_FORMAT(C.PETITIONAPPROVALDATE,'%Y/%m/%d'),";
+                    strSQL += " C.INPUTCOMMENT,";
+                    strSQL += " A.PersonName,";
+                    strSQL += " A.DisplayString,";
+                    strSQL += " B.DepartmentString";
+                    strSQL += " FROM PERSONINCHARGEMASTER A";
+                    strSQL += " LEFT JOIN DEPARTMENTMASTER B ON B.DEPARTMENTCODE = A.DEPARTMENTCODE";
+                    strSQL += " LEFT JOIN PROCESSAPPROVAL C ON C.PERSONCODE = A.PERSONCODE";
+                    strSQL += string.Format(" AND C.CONSTRUCTIONCODE = {0}",m_ConstructionCode);
+                    strSQL += string.Format(" And C.APPROVALCODE = {0}",m_ApprovalCode);
+                    strSQL += string.Format(" And C.ORDERNO = {0}", m_OrderNo);
+                    strSQL += " And C.SEQNO != 1";
+                    strSQL += string.Format(" WHERE A.PersonCode = {0}", rec.ApprovalPerson);
 
-                    // 担当者マスタを取得する
-                    strSQL = picDB.CreatePrimarykeyString(rec.ApprovalPerson);
-                    PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                    string strPersonName = string.Empty;
-                    string strPersonPosion = string.Empty;
-                    if (picDB.SelectAction(strSQL, ref PersonRec))
+                    ArrayList pAppRec = new ArrayList();
+                    if (!pAppDB.ExecuteReader(strSQL, ref pAppRec)) return false;
+                    
+                    object[] objrec = (object[])pAppRec[0];
+                    strPersonName = CommonMotions.cnvString(objrec[3]);
+                    strPersonPosion = CommonMotions.cnvString(objrec[4]);
+                    strDepartment = CommonMotions.cnvString(objrec[5]);
+                    if (CommonMotions.cnvInt(objrec[0]) >= 0)
                     {
-                        strPersonName = PersonRec.PersonName;
-                        strPersonPosion = PersonRec.DisplayString;
+                        ApprovalStatus = CommonMotions.cnvInt(objrec[0]);
+                        strDate = CommonMotions.cnvString(objrec[1]);
+                        strComment = CommonMotions.cnvString(objrec[2]);
                     }
 
-                    // 部署名を取得する
-                    strSQL = dpDB.CreatePrimarykeyString(PersonRec.DepartmentCode);
-                    DepartmentMaster DepRec = new DepartmentMaster();
-                    string strDepartment = string.Empty;
-                    if (dpDB.SelectAction(strSQL, ref DepRec)) strDepartment = DepRec.DepartmentString;
-
                     // データ表示
                     int AddRowCnt = dgvEntryData.Rows.Add(rec.ApprovalPerson,
                                                             rec.DisplayOrder,
                                                             strPersonName,
-                                                            CommonDefine.ApprovalStatusString[pAppRec.ApprovalStatus],
+                                                            CommonDefine.ApprovalStatusString[ApprovalStatus],
                                                             strDate,
                                                             strDepartment,
                                                             strPersonPosion,
                                                             strComment
                                                             );
-                    dgvEntryData.Rows[AddRowCnt].Cells[(int)DispGridColumn.ApprovalStatus].Style.BackColor = CommonDefine.ApprovalBackColorStatusColor[pAppRec.ApprovalStatus];
-                    dgvEntryData.Rows[AddRowCnt].Cells[(int)DispGridColumn.ApprovalStatus].Style.ForeColor = CommonDefine.ApprovalForeColorStatusColor[pAppRec.ApprovalStatus];
+                    dgvEntryData.Rows[AddRowCnt].Cells[(int)DispGridColumn.ApprovalStatus].Style.BackColor = CommonDefine.ApprovalBackColorStatusColor[ApprovalStatus];
+                    dgvEntryData.Rows[AddRowCnt].Cells[(int)DispGridColumn.ApprovalStatus].Style.ForeColor = CommonDefine.ApprovalForeColorStatusColor[ApprovalStatus];
                 }
-                // 5行表示なので足りない場合は空行で埋める
-                int iNokori = 5 - dgvEntryData.RowCount;
-                if (iNokori > 0) dgvEntryData.Rows.Add(iNokori);
 
                 return true;
             }
@@ -738,6 +834,9 @@
                 pAppDB.close(); pAppDB = null;
                 picDB.close(); picDB = null;
                 dpDB.close(); dpDB = null;
+
+                // 5行表示なので足りない場合は空行で埋める
+                if ((5 - dgvEntryData.RowCount) > 0) dgvEntryData.Rows.Add((5 - dgvEntryData.RowCount));
             }
         }
         #endregion
@@ -780,7 +879,7 @@
                 string strStatus = "未　定";
                 string strComment = string.Empty;
 
-                string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode);
+                string strSQL = pAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
                 strSQL += string.Format(" And SeqNo != 1 And PersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
                 ProcessApproval pAppRec = new ProcessApproval();
                 if (pAppDB.SelectAction(strSQL, ref pAppRec))
@@ -909,14 +1008,22 @@
                 // 工事予算書承認以外は処理しない
                 if (m_ApprovalCode != Code1) return true;
 
-                // 紐付きデータかどうかのチェック
-                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Tying)
-                {   // 紐付きデータではない場合はデータ作成
-                    if (!MakingLedgerData()) return false;
+                // ------ 台帳結合処理のチェック
+                if (m_ConstructionBaseInfo.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {   // ------ 結合されていないデータ
+                    // 紐付きデータかどうかのチェック
+                    if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                    {   // 紐付きデータではない場合はデータ作成
+                        if (!MakingLedgerData()) return false;
+                    }
+                    else
+                    {   // 紐付きのデータはデータ（行）を追加する
+                        if (!AddingLedgerData()) return false;
+                    }
                 }
                 else
-                {   // 紐付きのデータはデータ（行）を追加する
-                    if (!AddingLedgerData()) return false;
+                {   // ----- 結合されているデータ（結合の親は承認対象のデータは作成されない）
+                    if (!JoinDataCreate()) return false;
                 }
 
                 return true;
@@ -943,7 +1050,7 @@
                     MessageBox.Show("工事詳細台帳作成に失敗しました。", "台帳作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return false;
                 }
-                return false;
+                return true;
             }
             catch (Exception ex)
             {
@@ -977,5 +1084,137 @@
             }
         }
         #endregion
+
+        #region 工事台帳追加
+        /// <summary>
+        /// 工事台帳追加
+        /// </summary>
+        /// <returns></returns>
+        private bool JoinDataCreate()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            IOConstructionLink LinkDB = new IOConstructionLink();
+            IOConstructionLedger LedgerDB = new IOConstructionLedger();
+            try
+            {
+                BaseDB.connect(); BaseDB.beginTran();
+                LinkDB.connect(); LinkDB.beginTran();
+                LedgerDB.connect(); LedgerDB.beginTran();
+
+                // 結合親データコードを取得する
+                string strGetPCode = string.Format(" WHERE FLUCTUATIONCODE = {0}", m_ConstructionCode);
+                strGetPCode += string.Format(" AND LINKTYPE = {0}", (int)CommonDefine.LinkDataType.JoinType);
+                ConstructionLink LinkRec = new ConstructionLink();
+                if (!LinkDB.SelectAction(strGetPCode, ref LinkRec, false)) return false;
+
+                // 工事詳細台帳より工期を取得する
+                string strLedger = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
+                ConstructionLedger LedgerRec = new ConstructionLedger();
+                if (!LedgerDB.SelectAction(strLedger, ref LedgerRec, false)) return false;
+
+                // 契約工期開始
+                if (LedgerRec.ConstructionStart > m_ConstructionBaseInfo.ConstructionPeriodStart)
+                {
+                    if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodStart
+                                            , m_ConstructionBaseInfo.ConstructionPeriodStart, false)) return false;
+                }
+                // 契約工期完了
+                if (LedgerRec.ConstructionEnd < m_ConstructionBaseInfo.ConstructionPeriodEnd)
+                {
+                    if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodEnd
+                                            , m_ConstructionBaseInfo.ConstructionPeriodEnd, false)) return false;
+                }
+
+                List<int> DateCodeList = new List<int>();
+                DateCodeList.Add(m_ConstructionCode);
+
+                // 工事詳細台帳データ追加
+                if (!ClsChangeLedgerData.MakeJoinForBudgetData(LinkRec.ConstructionCode, DateCodeList))
+                {
+                    BaseDB.rollback();
+                    LinkDB.rollback();
+                    LedgerDB.rollback();
+                    MessageBox.Show("結合工事詳細台帳追加に失敗しました。", "台帳作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                BaseDB.commit();
+                LinkDB.commit();
+                LedgerDB.commit();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+                LinkDB.close(); LinkDB = null;
+                LedgerDB.close(); LedgerDB = null;
+            }
+        }
+        #endregion
+
+        #region 承認データと注文書データのリンク情報を作成する
+        /// <summary>
+        /// 承認データと注文書データのリンク情報を作成する
+        /// </summary>
+        private void CreatePurchaseOrderLink()
+        {
+            IOProcessApprovalDetail DetailDB = new IOProcessApprovalDetail();
+            try
+            {
+                DetailDB.connect(); DetailDB.beginTran();
+                for (int i = 0; i < m_PurchaseOrderSeqNo.Count; i++)
+                {
+                    // 承認明細レコードデータ作成
+                    if (!CreateApprovalDetailData(DetailDB, m_PurchaseOrderSeqNo[i]))
+                    {
+                        DetailDB.rollback();
+                        break;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                DetailDB.commit();
+                DetailDB.close(); DetailDB = null;
+            }
+        }
+        #endregion
+
+        #region 承認データと注文書データのリンク情報を削除する
+        /// <summary>
+        /// 承認データと注文書データのリンク情報を削除する
+        /// </summary>
+        private void RemoveApprovalLinkDetail()
+        {
+            IOProcessApprovalDetail DetailDB = new IOProcessApprovalDetail();
+            try
+            {
+                DetailDB.connect(); DetailDB.beginTran();
+
+                string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
+                DetailDB.DeleteAction(strSQL, false);
+
+                DetailDB.commit();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                DetailDB.close(); DetailDB = null;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.cs	(revision 51)
@@ -48,15 +48,12 @@
             PrintOutFlg,
             ConstructionPeriod,
             ConstructionCode,
+            OrderNo,
         }
 
         #endregion
 
         #region �ϐ�
-        /// <summary>
-        /// �t�B�[���h�l�ω��t���O
-        /// </summary>
-        //private bool m_bChengeAns = false;
 
         /// <summary>
         /// �������t���O
@@ -64,11 +61,6 @@
         private bool m_initDataLoad = true;
 
         /// <summary>
-        /// �����Ǎ����f�[�^�J�E���g
-        /// </summary>
-        private int m_initDataCount = 0;
-
-        /// <summary>
         /// �N���t���O
         /// </summary>
         private int m_ExecuteFlg = 0;
@@ -225,14 +217,13 @@
         /// <param name="e"></param>
         private void FrmConstructionBaseInfoList_Load(object sender, EventArgs e)
         {
-            // �R���{�{�b�N�X�����\��
-            InitCombBox();
-            //InitcmbPersons();
-
             // �R���{�{�b�N�X�Z�b�g
             SetcmbDepartment();
             SetcmbPersons();
 
+            // �R���{�{�b�N�X�����\��
+            InitCombBox();
+
             // �\���X�^�C���̕ύX
             InitDisplayStyle();
 
@@ -257,7 +248,9 @@
             if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)DispColumn.ConstructionName].Value)) return;
 
             // �e�����N��
-            SubProcessExecute(CommonMotions.cnvIntFromStringCode(dgvMaster.CurrentRow.Cells[(int)DispColumn.ConstructionCode].Value.ToString(), "-"));
+            int ConstrCode = CommonMotions.cnvIntFromStringCode(dgvMaster.CurrentRow.Cells[(int)DispColumn.ConstructionCode].Value.ToString(), "-");
+            int OrderNo = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.OrderNo].Value);
+            SubProcessExecute(ConstrCode, OrderNo);
         }
         #endregion
 
@@ -318,18 +311,18 @@
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�ύX
+        #region �����R���{�{�b�N�X�ύX
         /// <summary>
-        /// �S���ҕύX
+        /// �����R���{�{�b�N�X�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbConstructionPerson_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
 
-            // �S���ґI���������I����ݒ肷��
-            SetPerosonToDepartment();
+            // �S���҃R���{�{�b�N�X�ύX
+            SetcmbPersons();
 
             // �f�[�^�\��
             DataDisplay();
@@ -336,18 +329,18 @@
         }
         #endregion
 
-        #region �����R���{�{�b�N�X�ύX
+        #region �S���҃R���{�{�b�N�X�ύX
         /// <summary>
-        /// �����R���{�{�b�N�X�ύX
+        /// �S���ҕύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
 
-            // �S���҃R���{�{�b�N�X�ύX
-            SetcmbPersons();
+            // �S���ґI���������I����ݒ肷��
+            SetPerosonToDepartment();
 
             // �f�[�^�\��
             DataDisplay();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.designer.cs	(revision 51)
@@ -28,25 +28,26 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle();
-            this.btnDataSelect = new System.Windows.Forms.Button();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.groupBox1 = new System.Windows.Forms.GroupBox();
             this.label3 = new System.Windows.Forms.Label();
+            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.radioButton1 = new System.Windows.Forms.RadioButton();
             this.label4 = new System.Windows.Forms.Label();
             this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
             this.label5 = new System.Windows.Forms.Label();
@@ -68,27 +69,12 @@
             this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.radioButton1 = new System.Windows.Forms.RadioButton();
-            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.groupBox1.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
             this.SuspendLayout();
             // 
-            // btnDataSelect
-            // 
-            this.btnDataSelect.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.btnDataSelect.BackColor = System.Drawing.Color.Green;
-            this.btnDataSelect.ForeColor = System.Drawing.Color.White;
-            this.btnDataSelect.Location = new System.Drawing.Point(10, 619);
-            this.btnDataSelect.Name = "btnDataSelect";
-            this.btnDataSelect.Size = new System.Drawing.Size(120, 30);
-            this.btnDataSelect.TabIndex = 6;
-            this.btnDataSelect.Text = "工事を選択";
-            this.btnDataSelect.UseVisualStyleBackColor = false;
-            this.btnDataSelect.Visible = false;
-            this.btnDataSelect.Click += new System.EventHandler(this.btnDataSelect_Click);
-            // 
             // btnDataEntry
             // 
             this.btnDataEntry.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
@@ -163,6 +149,38 @@
             this.label3.Text = "担　当　者";
             this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // radioButton2
+            // 
+            this.radioButton2.AutoSize = true;
+            this.radioButton2.BackColor = System.Drawing.Color.Transparent;
+            this.radioButton2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton2.ForeColor = System.Drawing.Color.Black;
+            this.radioButton2.Location = new System.Drawing.Point(662, 32);
+            this.radioButton2.Name = "radioButton2";
+            this.radioButton2.Size = new System.Drawing.Size(77, 20);
+            this.radioButton2.TabIndex = 44;
+            this.radioButton2.Text = "工　事";
+            this.radioButton2.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
+            this.radioButton2.UseVisualStyleBackColor = false;
+            this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
+            // 
+            // radioButton1
+            // 
+            this.radioButton1.AutoSize = true;
+            this.radioButton1.BackColor = System.Drawing.Color.Transparent;
+            this.radioButton1.Checked = true;
+            this.radioButton1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton1.ForeColor = System.Drawing.Color.Black;
+            this.radioButton1.Location = new System.Drawing.Point(662, 12);
+            this.radioButton1.Name = "radioButton1";
+            this.radioButton1.Size = new System.Drawing.Size(77, 20);
+            this.radioButton1.TabIndex = 43;
+            this.radioButton1.TabStop = true;
+            this.radioButton1.Text = "営　業";
+            this.radioButton1.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+            this.radioButton1.UseVisualStyleBackColor = false;
+            this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
+            // 
             // label4
             // 
             this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
@@ -221,7 +239,7 @@
             this.cmbConstructionPerson.Name = "cmbConstructionPerson";
             this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
             this.cmbConstructionPerson.TabIndex = 2;
-            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbConstructionPerson_SelectedIndexChanged);
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
             // 
             // cmbDepartment
             // 
@@ -233,7 +251,7 @@
             this.cmbDepartment.Name = "cmbDepartment";
             this.cmbDepartment.Size = new System.Drawing.Size(200, 23);
             this.cmbDepartment.TabIndex = 1;
-            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_SelectedIndexChanged);
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
             // 
             // label2
             // 
@@ -292,21 +310,22 @@
             this.dgvMaster.AllowUserToDeleteRows = false;
             this.dgvMaster.AllowUserToResizeColumns = false;
             this.dgvMaster.AllowUserToResizeRows = false;
-            dataGridViewCellStyle14.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle14;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
             this.dgvMaster.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle15.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle15;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            this.dgvMaster.ColumnHeadersHeight = 24;
             this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column1,
@@ -318,15 +337,16 @@
             this.Column7,
             this.Column8,
             this.Column3,
-            this.Column2});
-            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle26.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle26.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle26.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle26.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
-            dataGridViewCellStyle26.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle26.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle26;
+            this.Column2,
+            this.Column11});
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle13.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle13.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle13;
             this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
             this.dgvMaster.Location = new System.Drawing.Point(10, 103);
             this.dgvMaster.MultiSelect = false;
@@ -334,7 +354,7 @@
             this.dgvMaster.RowHeadersVisible = false;
             this.dgvMaster.RowHeadersWidth = 20;
             this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.RowTemplate.Height = 24;
             this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
             this.dgvMaster.Size = new System.Drawing.Size(1260, 508);
             this.dgvMaster.TabIndex = 5;
@@ -342,8 +362,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle16;
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle3;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "№";
             this.Column1.Name = "Column1";
@@ -354,8 +374,8 @@
             // 
             // Column9
             // 
-            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column9.DefaultCellStyle = dataGridViewCellStyle17;
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle4;
             this.Column9.Frozen = true;
             this.Column9.HeaderText = "営業部署";
             this.Column9.Name = "Column9";
@@ -364,8 +384,8 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle18;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle5;
             this.Column5.Frozen = true;
             this.Column5.HeaderText = "営業担当者";
             this.Column5.Name = "Column5";
@@ -376,8 +396,8 @@
             // 
             // Column10
             // 
-            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column10.DefaultCellStyle = dataGridViewCellStyle19;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column10.DefaultCellStyle = dataGridViewCellStyle6;
             this.Column10.Frozen = true;
             this.Column10.HeaderText = "工事部署";
             this.Column10.Name = "Column10";
@@ -386,8 +406,8 @@
             // 
             // Column6
             // 
-            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle20;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle7;
             this.Column6.Frozen = true;
             this.Column6.HeaderText = "工事担当者";
             this.Column6.Name = "Column6";
@@ -398,8 +418,8 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle21;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle8;
             this.Column4.Frozen = true;
             this.Column4.HeaderText = "工　事　名　称";
             this.Column4.Name = "Column4";
@@ -410,8 +430,8 @@
             // 
             // Column7
             // 
-            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle22;
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle9;
             this.Column7.Frozen = true;
             this.Column7.HeaderText = "施工状態";
             this.Column7.Name = "Column7";
@@ -422,8 +442,8 @@
             // 
             // Column8
             // 
-            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle23;
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle10;
             this.Column8.Frozen = true;
             this.Column8.HeaderText = "印刷";
             this.Column8.Name = "Column8";
@@ -433,8 +453,8 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle24;
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle11;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "営業期";
             this.Column3.Name = "Column3";
@@ -446,8 +466,8 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle25;
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle12;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "工事コード";
             this.Column2.Name = "Column2";
@@ -457,38 +477,17 @@
             this.Column2.Visible = false;
             this.Column2.Width = 5;
             // 
-            // radioButton1
+            // Column11
             // 
-            this.radioButton1.AutoSize = true;
-            this.radioButton1.BackColor = System.Drawing.Color.Transparent;
-            this.radioButton1.Checked = true;
-            this.radioButton1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.radioButton1.ForeColor = System.Drawing.Color.Black;
-            this.radioButton1.Location = new System.Drawing.Point(662, 12);
-            this.radioButton1.Name = "radioButton1";
-            this.radioButton1.Size = new System.Drawing.Size(77, 20);
-            this.radioButton1.TabIndex = 43;
-            this.radioButton1.TabStop = true;
-            this.radioButton1.Text = "営　業";
-            this.radioButton1.TextAlign = System.Drawing.ContentAlignment.TopCenter;
-            this.radioButton1.UseVisualStyleBackColor = false;
-            this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
+            this.Column11.Frozen = true;
+            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;
             // 
-            // radioButton2
-            // 
-            this.radioButton2.AutoSize = true;
-            this.radioButton2.BackColor = System.Drawing.Color.Transparent;
-            this.radioButton2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.radioButton2.ForeColor = System.Drawing.Color.Black;
-            this.radioButton2.Location = new System.Drawing.Point(662, 32);
-            this.radioButton2.Name = "radioButton2";
-            this.radioButton2.Size = new System.Drawing.Size(77, 20);
-            this.radioButton2.TabIndex = 44;
-            this.radioButton2.Text = "工　事";
-            this.radioButton2.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
-            this.radioButton2.UseVisualStyleBackColor = false;
-            this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
-            // 
             // FrmConstructionList
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -500,7 +499,6 @@
             this.Controls.Add(this.lblProcessTitil);
             this.Controls.Add(this.groupBox1);
             this.Controls.Add(this.label1);
-            this.Controls.Add(this.btnDataSelect);
             this.Controls.Add(this.btnDataUpDate);
             this.Controls.Add(this.btnDataEntry);
             this.Controls.Add(this.btnEnd);
@@ -526,7 +524,6 @@
 
         #endregion
 
-        private System.Windows.Forms.Button btnDataSelect;
         private System.Windows.Forms.Button btnDataEntry;
         private System.Windows.Forms.Button btnEnd;
         private System.Windows.Forms.Label label1;
@@ -543,6 +540,8 @@
         private System.Windows.Forms.NumericUpDown numUDConstPro;
         private System.Windows.Forms.Label label5;
         private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.RadioButton radioButton2;
+        private System.Windows.Forms.RadioButton radioButton1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
@@ -553,7 +552,6 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
-        private System.Windows.Forms.RadioButton radioButton2;
-        private System.Windows.Forms.RadioButton radioButton1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionList.resx	(revision 51)
@@ -147,4 +147,7 @@
   <metadata name="Column2.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>
 </root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstractionList/FrmConstructionListAuxiliary.cs	(revision 51)
@@ -62,7 +62,7 @@
                                                             " AND B.DETAILNO = {1}" };
 
         private static string[] s_SQLPart4Tying = new string[] { " WHERE A.CONSTRUCTIONPERIOD = {0}",
-                                                            string.Format(" AND A.TyingFlg != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying),
+                                                            string.Format(" AND A.TYINGFLG != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying),
                                                             " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE",
                                                             " AND B.DETAILNO = {1}" };
 
@@ -93,6 +93,7 @@
             CONSTMANDISPORDER,
             CONSTDEPDISPORDER,
             PRINTOUTDATE,
+            ORDERNO,
         }
         #endregion
 
@@ -109,7 +110,7 @@
         /// �H���ꗗ���N������v���Z�X�I������
         /// </summary>
         /// <param name="para_ConstructionCode"></param>
-        private void SubProcessExecute(int para_ConstructionCode = 0)
+        private void SubProcessExecute(int para_ConstructionCode = 0, int para_OrderNo = 0)
         {
             IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             try
@@ -146,6 +147,11 @@
                 NowPoint = ClsExcute.NextProcess(m_ExecuteFlg);
                 // �I���H���ԍ��Z�b�g
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(para_ConstructionCode);
+                // ����������͎�t�ԍ����Z�b�g����
+                if (m_ExecuteFlg == (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint)
+                {
+                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(para_OrderNo);
+                }
             }
             catch (Exception ex)
             {
@@ -171,6 +177,102 @@
         {
             try
             {
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    CreateOldSecuritySQL(ref strSQL);
+                }
+                else
+                {
+                    CreateNewSecuritySQL(ref strSQL);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �L�[�l�擾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                // �f�[�^�A�N�Z�X�Ɍ����ɂ�萧��������
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ���ׂđΏہi����SQL���j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // �ꕔ�����L
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+
+                    strSQL += " And (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1";
+                    strSQL += string.Format(" Where A1.DepartmentCode IN (SELECT A2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A2 WHERE A2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSQL += " And (A.ConstructionPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3";
+                    strSQL += string.Format(" Where A3.DepartmentCode IN (SELECT A4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A4 WHERE A4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.CONSTRSUBPERSONCODE IN (Select A5.PersonCode From PersonInChargeMaster A5";
+                    strSQL += string.Format(" Where A5.DepartmentCode IN (SELECT A6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A6 WHERE A6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.ConstructionInstructor IN (Select A7.PersonCode From PersonInChargeMaster A7";
+                    strSQL += string.Format(" Where A7.DepartmentCode IN (SELECT A8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A8 WHERE A8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And A.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg = {0}", iStatus2);                                            // �������p���͈��p�����̂��̂͌�����
+                    strSQL += string.Format(" And A.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ��ʎg�p��
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+
+                    strSQL += string.Format(" And (A.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSQL += string.Format(" And (A.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateOldSecuritySQL(ref string strSQL)
+        {
+            try
+            {
                 // �����������҂̓f�[�^�Q�Əo���鏈��������
                 if (ClsSecurityPermission.PermitGeneralAffairsDevision(m_ExecuteFlg)) return;
 
@@ -192,10 +294,10 @@
                     // �@���Ǘ��ҁi�������̂݁j
                     int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
                     int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
-                    strSQL += string.Format(" And (A.SalesPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And (A.ConstructionPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {1})",
+                    strSQL += string.Format(" And (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1 Where A1.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And (A.ConstructionPersonCode IN (Select A2.PersonCode From PersonInChargeMaster A2 Where A2.DepartmentCode = {1})",
                                                                                 iStatus, CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" Or A.ConstructionInstructor IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})))", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" Or A.ConstructionInstructor IN (Select A3.PersonCode From PersonInChargeMaster A3 Where A3.DepartmentCode = {0})))", CommonMotions.LoginUserData.DepartmentCode);
                     strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And A.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
                     strSQL += string.Format(" Or (A.ConstructionStatusFlg = {0} And A.TransferConstruction = {1}))",
                                                                                 iStatus2, CommonMotions.LoginUserData.DepartmentCode); // �������p
@@ -556,11 +658,14 @@
             strSQL += string.Format(" And ({0} <= A.ConstructionStatusFlg", ProgressStart);
             strSQL += string.Format(" And A.ConstructionStatusFlg <= {0})", ProgressComplete);
             strSQL += " AND A.ConstructionPersonCode != 0";
-            strSQL += " AND A.ConstructionCode IN (SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONBUDGETDETAIL WHERE (COMPANYCODE != 0 AND COMPANYCODE != -1)";
-            strSQL += " GROUP BY CONSTRUCTIONCODE, COMPANYCODE HAVING SUM(ExecutionAmount) >= 300000)";
-            strSQL += " AND A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE";
+            strSQL += " AND ((A.ConstructionCode IN ";
+            strSQL += " (SELECT AA1.CONSTRUCTIONCODE FROM CONSTRUCTIONBUDGETDETAIL AA1 WHERE (AA1.COMPANYCODE != 0 AND AA1.COMPANYCODE != -1)";
+            strSQL += " GROUP BY AA1.CONSTRUCTIONCODE, AA1.COMPANYCODE";
+            strSQL += string.Format(" HAVING SUM(AA1.EXECUTIONAMOUNT) >= {0}))", CommonDefine.s_PrintOutPrice);
+            strSQL += " AND (A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
             strSQL += string.Format(" AND A1.APPROVALCODE = {0} AND A1.SEQNO = 1", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
-            strSQL += string.Format(" AND A1.APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+            strSQL += string.Format(" AND A1.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+            strSQL += " OR A.JOINFLG = 1)";
 
             // �������I������Ă���ꍇ
             strSQL += GetDepartmentString();
@@ -583,8 +688,8 @@
             strSQL += " UNION ";
             strSQL += string.Format(wrkFormat, numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
             strSQL += " AND EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
-            strSQL += " AND A.ConstructionPersonCode != 0";
-            strSQL += " AND (A.CONSTRUCTIONCODE = A1.CONSTRUCTIONCODE AND A1.SEQNO = 1)";
+            strSQL += " AND A.CONSTRUCTIONPERSONCODE != 0";
+            strSQL += " AND (A1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND A1.SEQNO = 1)";
 
             // �������I������Ă���ꍇ
             strSQL += GetDepartmentString();
@@ -622,7 +727,8 @@
 
             string wrkFormat = string.Empty;
             for (int i = 0; i < (s_SQLPart1.Length - 1); i++) wrkFormat += s_SQLPart1[i];
-            wrkFormat += ", DATE_FORMAT(A2.PRINTOUTDATE, '%Y/%m/%d')";
+            //wrkFormat += ", TO_CHAR(A2.PRINTOUTDATE, 'YYYY/MM/DD')";
+            wrkFormat += ", DATE_FORMAT(A2.PRINTOUTDATE, '%Y/%m/%d'), A1.ORDERNO";
             for (int i = (s_SQLPart1.Length - 1); i < s_SQLPart1.Length; i++) wrkFormat += s_SQLPart1[i];
             for (int i = 0; i < s_SQLPart2.Length; i++) wrkFormat += s_SQLPart2[i];
             for (int i = 0; i < s_SQLPart3.Length; i++) wrkFormat += s_SQLPart3[i];
@@ -630,7 +736,7 @@
             for (int i = 0; i < s_SQLPart4.Length; i++) wrkFormat += s_SQLPart4[i];
 
             strSQL = string.Format(wrkFormat, numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-            strSQL += " AND EXISTS (SELECT * FROM ESTIMATEDATA B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+            strSQL += " AND EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
             strSQL += string.Format(" And (A.ConstructionCode = A1.ConstructionCode And A1.ApprovalCode = {0} And A1.SeqNo = 1 And A1.APPROVALSTATUS = {1})",
                                                                                             ApprovalCode, (int)CommonDefine.ApprovalStatus.Approval);
             strSQL += " AND (A.CONSTRUCTIONCODE = A2.CONSTRUCTIONCODE AND A2.SEQNO = 1)";
@@ -711,6 +817,53 @@
         }
         #endregion
 
+        #region ������������擾
+        /// <summary>
+        /// ������������擾
+        /// </summary>
+        /// <param name="AllCount"></param>
+        /// <param name="PrintCount"></param>
+        private void GetPrintCount(IOPurchaseOrder OrderDB, int ParentCode, int SourceCode, ref int AllCount, ref int PrintCount)
+        {
+            try
+            {
+                string strSQL = "SELECT * FROM";
+                strSQL += " (SELECT COUNT(*) FROM CONSTRUCTIONLEDGERDETAIL A1";
+                strSQL += string.Format(" WHERE A1.CONSTRUCTIONCODE = {0}", ParentCode);
+                strSQL += string.Format(" AND A1.SOURCECODE = {0}", SourceCode);
+                strSQL += string.Format(" AND A1.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                strSQL += string.Format(" AND A1.PURCHASEORDERFLG <> {0} AND A1.COMPANYCODE > 0", (int)CommonDefine.PurchaseOrderFlg.NotMakingData);
+
+                strSQL += " GROUP BY A1.COMPANYCODE";
+                strSQL += string.Format(" HAVING SUM(A1.EXECUTIONAMOUNT) >= {0}) A,", CommonDefine.s_PrintOutPrice);
+
+                strSQL += " (SELECT COUNT(*) FROM PURCHASEORDER B1";
+                if (ParentCode == SourceCode)
+                {
+                    strSQL += string.Format(" WHERE B1.CONSTRUCTIONCODE = {0}", ParentCode);
+                }
+                else
+                {
+                    strSQL += string.Format(" WHERE B1.CONSTRUCTIONCODE = {0}", SourceCode);
+                }
+                strSQL += string.Format(" AND B1.PRINTOUTDATE != TO_DATE('{0}')) B", DateTime.MinValue.ToShortDateString());
+
+                ArrayList arList = new ArrayList();
+                if (!OrderDB.ExecuteReader(strSQL, ref arList)) return;
+
+                //if (SourceCode == 2016027801) Debug.WriteLine("");
+
+                object[] objRec = (object[])arList[0];
+                AllCount = arList.Count;
+                PrintCount = CommonMotions.cnvInt(objRec[1]);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region �O���b�h�փf�[�^���Z�b�g����
         /// <summary>
         /// �O���b�h�փf�[�^���Z�b�g����
@@ -718,6 +871,7 @@
         /// <param name="arData"></param>
         private void SetToGridData(ArrayList arData)
         {
+            IOPurchaseOrder OrderDB = new IOPurchaseOrder();
             try
             {
                 DataGridView dgv = dgvMaster;
@@ -732,23 +886,36 @@
                 string[] strConstDepName = new string[2];
                 string[] strConstName = new string[2];
                 string strStatus = string.Empty;
+                string strConstrName = string.Empty;
+                int ConstrCode = 0;
+                int ParentCode = 0;
+                int OrderNo = 0;
                 foreach (object[] objwrk in arData)
                 {
                     FlgString = string.Empty;
+                    ConstrCode = CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONCODE]);
+                    strConstrName = CommonMotions.cnvString(objwrk[(int)GetData.CONSTRUCTIONNAME]);
                     // �N���������̓���
+                    if (m_ExecuteFlg == (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint)
+                    {
+                        OrderNo = CommonMotions.cnvInt(objwrk[(int)GetData.ORDERNO]);
+                        strConstrName += string.Format(" �\��{0}���", OrderNo);
+                    }
                     switch (m_ExecuteFlg)
                     {
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:
                             // ���������́E����������̓t���O���g��
-                            DateTime wrkDate = CommonMotions.cnvDate(objwrk[(int)GetData.PRINTOUTDATE]);
-                            if (wrkDate != DateTime.MinValue) FlgString = "��";
+                            ParentCode = ClsProcessExist.GetParentConstrCode(ConstrCode);
+                            int AllCount = 0;
+                            int PrintCount = 0;
+                            GetPrintCount(OrderDB, ParentCode, ConstrCode, ref AllCount, ref PrintCount);
+                            if (AllCount != 0 && AllCount == PrintCount) FlgString = "��";
                             break;
                         default:
                             break;
                     }
 
-                    //strStatus = string.Empty;
                     // �X�e�[�^�X�t���O���Ⴆ��1�s�J����
                     if (StatusFlg != CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONSTATUSFLG]))
                     {
@@ -757,10 +924,6 @@
                         if (!initFlg) dgv.Rows.Add(1);
                         initFlg = false;
                     }
-                    //strSalesDepName[1] = string.Empty;
-                    //strSalesName[1] = string.Empty;
-                    //strConstDepName[1] = string.Empty;
-                    //strConstName[1] = string.Empty;
 
                     if (!CommonMotions.cnvString(objwrk[(int)GetData.SALESDEPNAME]).Equals(strSalesDepName[0]))
                     {
@@ -788,11 +951,12 @@
                                         , strSalesName[1]
                                         , strConstDepName[1]
                                         , strConstName[1]
-                                        , CommonMotions.cnvString(objwrk[(int)GetData.CONSTRUCTIONNAME])
+                                        , strConstrName
                                         , strStatus
                                         , FlgString
                                         , CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONPERIOD])
-                                        , CommonMotions.cnvStringCodeFromInt(CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONCODE]), "-", 8)
+                                        , CommonMotions.cnvStringCodeFromInt(ConstrCode, "-", 8)
+                                        , OrderNo
                                         );
 
                 }
@@ -801,6 +965,10 @@
             {
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                OrderDB.close(); OrderDB = null;
+            }
         }
         #endregion
 
@@ -837,9 +1005,6 @@
                     // �b��Ń\�[�g������
                     foreach (DataGridViewColumn wrkCol in dgvMaster.Columns)
                         wrkCol.SortMode = DataGridViewColumnSortMode.Automatic;
-                    // �Ǎ����f�[�^�J�E���g�擾
-                    m_initDataCount = arData.Count;
-                    dgvMaster.RowCount += (CommonDefine.s_MaxInitLineCount - m_initDataCount);
                 }
             }
             catch (Exception ex)
@@ -849,6 +1014,7 @@
             finally
             {
                 cbiDB.close(); cbiDB = null;
+                if (21 > dgvMaster.RowCount) dgvMaster.RowCount += (21 - dgvMaster.RowCount);
             }
         }
         #endregion
@@ -948,7 +1114,6 @@
             // �f�[�^�ǉ����̓{�^����\��
             if (!m_DataAddtionButton)
             {
-                btnDataSelect.Left = btnDataEntry.Left;
                 btnDataEntry.Visible = false;
             }
 
@@ -1085,6 +1250,31 @@
         {
             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
@@ -1095,36 +1285,21 @@
                     // �ō��@���Ǘ���
                     // �����@���Ǘ���
                     // �����������҂͑S�Č�����
+
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
                 {
                     // ������
                     // �����R���{��\��
-                    label2.Visible = false;
-                    cmbDepartment.Visible = false;
-                    Point loc1 = radioButton1.Location;
-                    Point loc2 = radioButton2.Location;
-                    loc1.X = label2.Location.X;
-                    loc2.X = label2.Location.X;
-                    radioButton1.Location = loc1;
-                    radioButton2.Location = loc2;
-                    Point loc3 = label3.Location;
-                    loc3.X = loc1.X + radioButton1.Width + 10;
-                    label3.Location = loc3;
-                    Point loc4 = cmbConstructionPerson.Location;
-                    loc4.X = label3.Location.X + label3.Width + 10;
-                    cmbConstructionPerson.Location = loc4;
+                    NonDispDepCombBox();
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
                 {
                     // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
                     // �����E�S���҃R���{��\��
-                    radioButton1.Visible = false;
-                    radioButton2.Visible = false;
-                    label2.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Visible = false;
-                    cmbConstructionPerson.Visible = false;
+                    DispAllCombBoxControl(false);
                 }
             }
             catch (Exception ex)
@@ -1134,11 +1309,136 @@
         }
         #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;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // �����R���{��\��
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // �����E�S���҃R���{�\����
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // �����Ɩ��g�p�҂����O�C�����Ă���ꍇ�̓R���{���󔒂ɂ���
+                if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)CommonDefine.GeneralAffairs.GeneralDep) return;
+
+                // �����ݒ�Ώۂ��R���{�{�b�N�X�f�[�^�ɂ���΃Z�b�g����
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X�̔�\������
+        /// <summary>
+        /// �����R���{�{�b�N�X�̔�\������
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // �����R���{��\��
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // �\���ʒu�̃Z�b�g
+                Point loc1 = radioButton1.Location;
+                Point loc2 = radioButton2.Location;
+                loc1.X = label2.Location.X;
+                loc2.X = label2.Location.X;
+                radioButton1.Location = loc1;
+                radioButton2.Location = loc2;
+                
+                Point loc3 = label3.Location;
+                loc3.X = loc1.X + radioButton1.Width + 10;
+                label3.Location = loc3;
+                
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �S�R���{�{�b�N�X�\����ON/OFF����
+        /// <summary>
+        /// �S�R���{�{�b�N�X�\����ON/OFF����
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // �����E�S���҃R���{��\��
+                radioButton1.Visible = bDsp;
+                radioButton2.Visible = bDsp;
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region �����R���{�{�b�N�X���Z�b�g����
         /// <summary>
         /// �����R���{�{�b�N�X�֕������Z�b�g����
         /// </summary>
-        private bool SetcmbDepartment()
+        private void SetcmbDepartment()
         {
             IOMDepartment depDB = new IOMDepartment();
             bool bSave = m_initDataLoad;
@@ -1156,14 +1456,31 @@
                 strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
                 strSQL += " WHERE A.DELETEFLG = 0";
 
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
-                    || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // ������
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // ������
+                        // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
                 }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // �Q�ƕ����}�X�^���擾����
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
                 strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
                 strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
                 strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
@@ -1171,9 +1488,8 @@
 
                 // �����}�X�^�Ǎ�
                 ArrayList arList = new ArrayList();
-                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return;
 
-
                 List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
                 ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
 
@@ -1188,10 +1504,8 @@
                 // �R���{�{�b�N�X�����\��
                 ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
 
-                    // ������
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
-                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
                     // �����������҈ȊO
                     if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
@@ -1198,12 +1512,11 @@
                         cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
                 }
 
-                return true;
+                return;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
             }
             finally
             {
@@ -1217,7 +1530,7 @@
         /// <summary>
         /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
         /// </summary>
-        private bool SetcmbPersons()
+        private void SetcmbPersons()
         {
             IOMPersonInCharge picDB = new IOMPersonInCharge();
             List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
@@ -1237,7 +1550,7 @@
                     strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC", DepartmentCode);
 
                 // �S���҃}�X�^�Ǎ�
-                if (!picDB.SelectAction(strSQL, ref workList)) return false;
+                if (!picDB.SelectAction(strSQL, ref workList)) return;
 
                 List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
                 ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
@@ -1252,19 +1565,21 @@
                 // �R���{�{�b�N�X�����\��
                 ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
 
-                // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
-                    CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
                 }
 
-                return true;
+                return;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
             }
             finally
             {
@@ -1300,6 +1615,8 @@
                     bool bSave = m_initDataLoad;
                     m_initDataLoad = true;
                     cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // �S���҃R���{�{�b�N�X�ύX
+                    cmbConstructionPerson.SelectedValue = PersonCode;
                     m_initDataLoad = bSave;
                 }
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/DataChange.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/DataChange.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/DataChange.cs	(revision 51)
@@ -46,9 +46,9 @@
                 int iCode1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
 
                 string strSQL = "SELECT SUM(ORDERSDECISIONPRICE) FROM CONSTRUCTIONBASEINFO";
-                strSQL += string.Format(" WHERE (TRUNCATE(CONSTRUCTIONCODE / 100, 1) = {0})", (int)(m_ConstructionCode / 100));
+                strSQL += string.Format(" WHERE (TRUNCATE(CONSTRUCTIONCODE / 100) = {0})", (int)(m_ConstructionCode / 100));
                 strSQL += string.Format(" AND CONSTRUCTIONSTATUSFLG != {0}", iCode1);
-                strSQL += " GROUP BY TRUNCATE(CONSTRUCTIONCODE / 100, 1)";
+                strSQL += " GROUP BY TRUNCATE(CONSTRUCTIONCODE / 100)";
 
                 ArrayList Arlist = new ArrayList();
                 if (!cbiDB.ExecuteReader(strSQL, ref Arlist, false)) return 0;
@@ -66,42 +66,6 @@
         }
         #endregion
 
-        #region ���^���z�v�Z����
-        /// <summary>
-        /// ���^���z�v�Z����
-        /// </summary>
-        /// <param name="MonthryCost"></param>
-        /// <param name="OrdersDecisionPrice"></param>
-        /// <param name="ConstructionStart"></param>
-        /// <param name="ConstructionEnd"></param>
-        /// <param name="ExecutionAmount"></param>
-        /// <param name="AmountConfigRate"></param>
-        private void CalcPayValueData(double MonthryCost, double OrdersDecisionPrice, DateTime ConstructionStart, DateTime ConstructionEnd,
-                                        ref double ExecutionAmount, ref double AmountConfigRate)
-        {
-            try
-            {
-                if (OrdersDecisionPrice == 0) return;
-
-                // �����v�Z
-                double DairySalary = (MonthryCost * CommonDefine.s_SalaryCorrection) / CommonDefine.s_ManHourUnitMonth;
-                // �ғ����v�Z
-                int workingCount = ClsCalendar.CalcPassedDaysCount(ConstructionStart, ConstructionEnd);
-
-                int iInput = CommonMotions.cnvRound(DairySalary * workingCount);                        // ���^�x�����z
-
-                ExecutionAmount = iInput;                                                     // ���s���z
-
-                AmountConfigRate = (iInput / OrdersDecisionPrice) * 100.0;          // ���z�\����
-                if (AmountConfigRate < -999.00 || 999.00 < AmountConfigRate) AmountConfigRate = 0;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         // ---------- �����H������
         #region �H���䒠�f�[�^�쐬
         /// <summary>
@@ -200,8 +164,9 @@
 
                 // �H�������f�[�^�쐬
                 ConstructionLink LinkRec = new ConstructionLink();
-                LinkRec.ConstructionCode = m_ConstructionCode;  // �H���R�[�h	
-                LinkRec.FluctuationCode = NewCode;              // �q�H���R�[�h	
+                LinkRec.ConstructionCode = m_ConstructionCode;                      // �H���R�[�h	
+                LinkRec.FluctuationCode = NewCode;                                  // �q�H���R�[�h	
+                LinkRec.LinkType = (int)CommonDefine.LinkDataType.FluctuationType;  // �����H��
                 if (!LinkDB.InsertAction(LinkRec, false))
                 {
                     MessageBox.Show("�H�������f�[�^���쐬�ł��܂���B", "�f�[�^�쐬�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
@@ -293,8 +258,8 @@
                 // ���f�[�^�ɕR�t���e�t���O�𗧂Ă�
                 strSQL = DB1.CreatePrimarykeyString(OrgCode);
                 if (!DB1.UpdateFeild(OrgCode,
-                                (int)IOConstructionBaseInfo.TableColumn.TYINGFLG,
-                                (int)CommonDefine.BaseInfoTyingFlg.Pearent, false)) return false;
+                                (int)IOConstructionBaseInfo.TableColumn.TyingFlg,
+                                (int)CommonDefine.BaseInfoTyingFlg.Parent, false)) return false;
 
                 // �쐬�f�[�^�������ݒ肷��
                 if (!InitSetBaseInfo(ToCode, DB1)) return false;
@@ -375,93 +340,6 @@
         }
         #endregion
 
-        #region ���z�����f�[�^�I������
-        /// <summary>
-        /// ���z�����f�[�^�I������
-        /// </summary>
-        private void LinkDataExecute()
-        {
-            try
-            {
-                DataGridView dgv = dgvLink;
-                DataGridViewRow CurRow = dgv.CurrentRow;
-
-                int NewCode = CommonMotions.cnvInt(CurRow.Cells[(int)LinkGridColumn.ConstrCode].Value);
-                if (NewCode == 0) return;
-
-                // ���N���v���Z�X�Z�b�g
-                int NowPoint = ClsExcute.GetNowProcessPoint();
-                // �I���H���ԍ��Z�b�g
-                ClsExcute.ProcControlPara[NowPoint].IntExecParameter[0] = NewCode;
-
-                // �N���[�Y������OFF�ɂ���B
-                m_CloseingProcessOn = false;
-                // ��ʃN���[�Y
-                this.Close();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region �����H�����֏���
-        /// <summary>
-        /// �����H�����֏���
-        /// </summary>
-        private void ReleaseFluctuation()
-        {
-            IOConstructionLink LinkDB = new IOConstructionLink();
-            try
-            {
-                if (bInitFlg) return;
-
-                // �����H����
-                if (rdbNotFluctuation.Checked)
-                {
-                    // �����H���f�[�^������Α����H�����ɂł��Ȃ�
-                    string strSQL = LinkDB.CreatePrimarykeyString(m_ConstructionCode);
-                    List<ConstructionLink> LinkList = new List<ConstructionLink>();
-                    if (LinkDB.SelectAction(strSQL, ref LinkList))
-                    {
-                        if (LinkList.Count != 0)
-                        {
-                            MessageBox.Show("�����H�������݂��܂��A���ɂ͂ł��܂���B", "�����H�����G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-
-                            bInitFlg = true;
-                            rdbExistsFluctuation.Checked = true;
-                            bInitFlg = false;
-                            return;
-                        }
-                    }
-
-                    if (!btnFluctuation.Enabled) return;
-
-                    // �����H���{�^�����b�N
-                    btnFluctuation.Enabled = false;
-                }
-                else
-                {
-                    if (btnFluctuation.Enabled) return;
-
-                    // �����H���{�^������
-                    btnFluctuation.Enabled = true;
-                }
-                // �f�[�^�ύX�t���O
-                m_bChengeAns = true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                LinkDB.close(); LinkDB = null;
-            }
-        }
-        #endregion
-
         #region �e�f�[�^�擾��
         /// <summary>
         /// �e�f�[�^�擾��
@@ -489,6 +367,7 @@
             ExpensesName3,
             ExpensesRatio3,
             ExpensesCode3,
+            ConstructionPeriod,
         }
         #endregion
         #region ��r�p�ɐe�f�[�^���擾����SQL���쐬����
@@ -503,14 +382,17 @@
                 int ConstrPeriod = CommonMotions.cnvInt(m_DspCtrl[(int)DspCnt.ConstructionPeriod].Text);
 
                 strSQL = "SELECT A.CONSTRUCTIONCODE,";
-                strSQL += " CASE A.ConstructionPeriodStart2 WHEN DATE_FORMAT('0001/01/01') THEN A.ConstructionPeriodStart ELSE A.ConstructionPeriodStart2 END StDate,";
-                strSQL += " CASE A.ConstructionPeriodEnd2 WHEN DATE_FORMAT('0001/01/01') THEN A.ConstructionPeriodEnd ELSE A.ConstructionPeriodEnd2 END EdDate,";
-                strSQL += " B.PERSONCODE B1, B.PERSONNAME B2, B.MONTHLYSALARY B3,";
-                strSQL += " C.PERSONCODE C1, C.PERSONNAME C2, C.MONTHLYSALARY C3,";
-                strSQL += " D.PERSONCODE D1, D.PERSONNAME D2, D.MONTHLYSALARY D3,";
+                //strSQL += " CASE A.ConstructionPeriodStart2 WHEN TO_DATE('0001/01/01') THEN A.ConstructionPeriodStart ELSE A.ConstructionPeriodStart2 END StDate,";
+                strSQL += " CASE A.ConstructionPeriodStart2 WHEN STR_TO_DATE('0001/01/01','%Y/%m/%d') THEN A.ConstructionPeriodStart ELSE A.ConstructionPeriodStart2 END StDate,";
+                //strSQL += " CASE A.ConstructionPeriodEnd2 WHEN TO_DATE('0001/01/01') THEN A.ConstructionPeriodEnd ELSE A.ConstructionPeriodEnd2 END EdDate,";
+                strSQL += " CASE A.ConstructionPeriodEnd2 WHEN STR_TO_DATE('0001/01/01','%Y/%m/%d') THEN A.ConstructionPeriodEnd ELSE A.ConstructionPeriodEnd2 END EdDate,";
+                strSQL += " B.PERSONCODE B1, B.SEALPRINTNAME B2, B.MONTHLYSALARY B3,";
+                strSQL += " C.PERSONCODE C1, C.SEALPRINTNAME C2, C.MONTHLYSALARY C3,";
+                strSQL += " D.PERSONCODE D1, D.SEALPRINTNAME D2, D.MONTHLYSALARY D3,";
                 strSQL += " E1.NAMESTRING E1, E.EXPENSESRATIO E2, E.NAMECODE E3,";
                 strSQL += " F1.NAMESTRING F1, F.EXPENSESRATIO F2, F.NAMECODE F3,";
-                strSQL += " G1.NAMESTRING G1, G.EXPENSESRATIO G2, G.NAMECODE G3";
+                strSQL += " G1.NAMESTRING G1, G.EXPENSESRATIO G2, G.NAMECODE G3,";
+                strSQL += " A.CONSTRUCTIONPERIOD";
                 strSQL += " FROM CONSTRUCTIONBASEINFO A";
                 strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.CONSTRSUBPERSONCODE";
                 strSQL += " LEFT JOIN PERSONINCHARGEMASTER D ON D.PERSONCODE = A.CONSTRUCTIONINSTRUCTOR";
@@ -517,9 +399,9 @@
                 strSQL += " , PERSONINCHARGEMASTER B";
                 strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER E ON E.DEPARTMENTCODE = B.DEPARTMENTCODE AND E.EXPENSESPERIOD = {0} AND E.NAMECODE = 3", ConstrPeriod);
                 strSQL += string.Format(" LEFT JOIN DIVISIONMASTER E1 ON E1.DIVISIONCODE = {0} AND E1.NAMECODE = E.NAMECODE", (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
-                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER F ON F.DEPARTMENTCODE = B.DEPARTMENTCODE AND F.EXPENSESPERIOD = {0} AND F.NAMECODE = 2", ConstrPeriod);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER F ON F.DEPARTMENTCODE = B.DEPARTMENTCODE AND F.EXPENSESPERIOD = {0} AND F.NAMECODE = 1", ConstrPeriod);
                 strSQL += string.Format(" LEFT JOIN DIVISIONMASTER F1 ON F1.DIVISIONCODE = {0} AND F1.NAMECODE = F.NAMECODE", (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
-                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER G ON G.DEPARTMENTCODE = B.DEPARTMENTCODE AND G.EXPENSESPERIOD = {0} AND G.NAMECODE = 1", ConstrPeriod);
+                strSQL += string.Format(" LEFT JOIN DEPARTMENTEXPENSESMASTER G ON G.DEPARTMENTCODE = B.DEPARTMENTCODE AND G.EXPENSESPERIOD = {0} AND G.NAMECODE = 2", ConstrPeriod);
                 strSQL += string.Format(" LEFT JOIN DIVISIONMASTER G1 ON G1.DIVISIONCODE = {0} AND G1.NAMECODE = G.NAMECODE", (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
                 strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", ConstrCode);
                 strSQL += " AND B.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
@@ -543,26 +425,27 @@
             {
                 // ----- �H���ڍב䒠�f�[�^�擾
                 if (TyingDataFlag)
-                {
+                {   // �R�t���f�[�^�i�����H���f�[�^�j
                     string strLink = cbLinkDB.CreatePrimarykeyString(m_ConstructionCode);
                     ConstructionLink LinkRec = new ConstructionLink();
                     if (cbLinkDB.SelectAction(strLink, ref LinkRec, false))
-                    {
+                    {   // ���̍H���ԍ��Ń����N�f�[�^����ꂽ�ꍇ�͐e�f�[�^
                         ProcConstrCode = m_ConstructionCode;
                     }
                     else
-                    {
+                    {   // ���̍H���ԍ��Ń����N�f�[�^�����Ȃ������ꍇ�͎q�H���f�[�^�Ƃ��ă����N����ǂݍ���
                         strLink = string.Format(" WHERE FLUCTUATIONCODE = {0}", m_ConstructionCode);
                         if (!cbLinkDB.SelectAction(strLink, ref LinkRec, false)) return false;
+                        // �擾�o������e�̍H���ԍ����擾����
                         ProcConstrCode = LinkRec.ConstructionCode;
                     }
                 }
                 else
-                {
+                {   // �P�ƃf�[�^
                     ProcConstrCode = m_ConstructionCode;
                 }
 
-                // �e�ƂȂ�f�[�^�擾
+                // �e�ƂȂ�f�[�^�擾�̕K�v�ȃf�[�^���擾����
                 string strParentSQL = string.Empty;
                 CreateParentSQL(ProcConstrCode, ref strParentSQL);
                 if (!cbiDB.ExecuteReader(strParentSQL, ref ParentData, false)) return false;
@@ -587,15 +470,18 @@
                                         IOConstructionBudget BudgetDB,
                                         IOConstructionBudgetDetail BudgetDDB,
                                         IOMPersonInCharge PersonDB,
-                                        int TotalOrdersPrice,
                                         ArrayList ParentData,
-                                        int ProcConstrCode)
+                                        int ProcConstrCode,
+                                        bool TyingDataFlag)
         {
             FrmConstructionBudget frm = new FrmConstructionBudget();
             try
             {
                 // ���F�f�[�^�擾
-                string strSQL = ApprovalDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval, 1);
+                string strSQL = ApprovalDB.CreatePrimarykeyString(m_ConstructionCode,
+                                                                (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval,
+                                                                CommonDefine.s_Default_OrderNo,
+                                                                1);
                 ProcessApproval ProRec = new ProcessApproval();
                 if (ApprovalDB.SelectAction(strSQL, ref ProRec, false))
                 {
@@ -609,24 +495,73 @@
                 // �f�[�^�������ꍇ�͏������Ȃ�
                 if (!BudgetDB.SelectAction(strBudget, ref BudgetRec, false)) return true;
 
-                /// �f�[�^�Z�b�g�E�ύX����
+                // �ҏW�f�[�^�擾
+                int TargetParson1 = CommonMotions.cnvInt(((ComboBox)m_DspCtrl[(int)DspCnt.ConstructionPersonCode]).SelectedValue);
+                int TargetParson2 = CommonMotions.cnvInt(((ComboBox)m_DspCtrl[(int)DspCnt.ConstrSubPersonCode]).SelectedValue);
+                int TargetParson3 = CommonMotions.cnvInt(((ComboBox)m_DspCtrl[(int)DspCnt.ConstructionInstructor]).SelectedValue);
+                DateTime StartDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodStart2].Text);
+                if(StartDate==DateTime.MinValue)
+                    StartDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodStart].Text);
+                DateTime EndDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodEnd2].Text);
+                if (EndDate == DateTime.MinValue)
+                    EndDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodEnd].Text);
+
+                /// �f�[�^�Z�b�g�E�ύX����i�e�f�[�^��1���̂ݑ��݂���j
                 object[] objRec = (object[])ParentData[0];
 
+                int TotalOrdersPrice = (int)CommonMotions.cnvUndecidedStringToDouble(m_DspCtrl[(int)DspCnt.OrdersDecisionPrice].Text);
                 // ----- �H���\�Z�����׃f�[�^����
                 // �H���S����
-                if (!BudgetDetailDataSet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
-                                                    , (int)FrmConstructionBudget.DataGroup.PayrollExpenses, objRec)) return false;
+                bool bChgParson1 = false;
+                if (TargetParson1 == BudgetRec.CreatorCode && StartDate.Date == BudgetRec.ConstructionStart.Date && EndDate.Date == BudgetRec.ConstructionEnd.Date)
+                {
+                }
+                else
+                {
+                    if (!BudgetDetailDataSet(frm, BudgetDDB, TotalOrdersPrice,
+                                                        (int)FrmConstructionBudget.DataGroup.PayrollExpenses,
+                                                        objRec, BudgetRec,
+                                                        TargetParson1, StartDate, EndDate,
+                                                        TyingDataFlag)) return false;
+                    bChgParson1 = true;
+                }
 
                 // �H�����S����
-                if (!BudgetDetailDataSet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
-                                                    , (int)FrmConstructionBudget.DataGroup.AssistantCosts, objRec)) return false;
+                bool bChgParson2 = false;
+                if (TargetParson2 == BudgetRec.AssistantCode && StartDate.Date == BudgetRec.ConstructionStart.Date && EndDate.Date == BudgetRec.ConstructionEnd.Date)
+                {
+                }
+                else
+                {
+                    if (!BudgetDetailDataSet(frm, BudgetDDB, TotalOrdersPrice,
+                                                        (int)FrmConstructionBudget.DataGroup.AssistantCosts,
+                                                        objRec, BudgetRec,
+                                                        TargetParson2, StartDate, EndDate,
+                                                        TyingDataFlag)) return false;
+                    bChgParson2 = true;
+                }
 
                 // �H���w����
-                if (!BudgetDetailDataSet(frm, BudgetDDB, BudgetRec, TotalOrdersPrice
-                                                    , (int)FrmConstructionBudget.DataGroup.InstructorCosts, objRec)) return false;
-
+                bool bChgParson3 = false;
+                if (TargetParson3 == BudgetRec.InstructorCode && StartDate.Date == BudgetRec.ConstructionStart.Date && EndDate.Date == BudgetRec.ConstructionEnd.Date)
+                {
+                }
+                else
+                {
+                    if (!BudgetDetailDataSet(frm, BudgetDDB, TotalOrdersPrice,
+                                                        (int)FrmConstructionBudget.DataGroup.InstructorCosts,
+                                                        objRec, BudgetRec,
+                                                        TargetParson3, StartDate, EndDate,
+                                                        TyingDataFlag)) return false;
+                    bChgParson3 = true;
+                }
+                // �ύX�Ȃ��͏����I��
+                if (!bChgParson1 && !bChgParson2 && !bChgParson3) return true;
+                
                 // ----- �H���\�Z���f�[�^����
-                if (!BudgetDataSet(BudgetDB, BudgetRec, objRec, TotalOrdersPrice)) return false;
+                if (!BudgetDataSet(BudgetDB, BudgetRec, objRec, TotalOrdersPrice, TyingDataFlag,
+                                    bChgParson1, bChgParson2, bChgParson3,
+                                    StartDate, EndDate)) return false;
 
                 return true;
             }
@@ -703,11 +638,11 @@
         /// �H���\�Z���F�f�[�^�ύX
         /// </summary>
         /// <returns></returns>
-        private bool BudgetDataSet(IOConstructionBudget BudgetDB, ConstructionBudget BudgetRec, object[] objRec, int TotalOrdersPrice)
+        private bool BudgetDataSet(IOConstructionBudget BudgetDB, ConstructionBudget BudgetRec, object[] objRec, int TotalOrdersPrice, bool TyingDataFlag,
+                                    bool bChgParson1, bool bChgParson2, bool bChgParson3, DateTime StartDT, DateTime CompDT)
         {
             try
             {
-                bool UpDateFlg = false;
 
                 // �H���S����
                 int ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ConstrPersonCode]);
@@ -724,39 +659,19 @@
                 double I_MonthryCost = CommonDefine.InstructorMonthryCost;
                 string I_ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.InstrPersonName]);
 
-                // ���ݍH���擾
-                DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
-                DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
-
-                // �H������
-                if (StartDT == BudgetRec.ConstructionStart && CompDT == BudgetRec.ConstructionEnd)
-                {
-                }
-                else
-                {
-                    BudgetRec.ConstructionStart = StartDT;
-                    BudgetRec.ConstructionEnd = CompDT;
-                    UpDateFlg = true;
-                }
-
                 // ���^���z�擾
                 double ExecutionAmount = 0;
                 double AmountConfigRate = 0;
 
                 // ----- �S���ҏ���
-                if (BudgetRec.CreatorCode != ConstructorCode)
+                if (bChgParson1)
                 {
-                    if (ConstructorCode == 0)
+                    if (ConstructorCode != 0)
                     {
-                        BudgetRec.CreatorCode = 0;
-                        BudgetRec.CreatorName = string.Empty;
-                        BudgetRec.CreatorCosts = 0;
-                        BudgetRec.SalaryFlg = 0;
-                        BudgetRec.SalaryDays = 0;
-                    }
-                    else
-                    {
-                        CalcPayValueData(C_MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                        // �ғ������擾
+                        int workingCount = ClsCalendar.CalcPassedDaysCount(StartDT, CompDT);
+                        // ���^�v�Z
+                        CommonMotions.CalcPayValueData(C_MonthryCost, TotalOrdersPrice, workingCount, ref ExecutionAmount, ref AmountConfigRate);
                         // �S���ҋ��^
                         BudgetRec.CreatorCosts = ExecutionAmount;
                         // �S���ҋ��^�U���敪
@@ -768,26 +683,27 @@
                         // �S���Җ�
                         BudgetRec.CreatorName = C_ConstructorName;
                     }
-                    UpDateFlg = true;
+                    else
+                    {   // �����͂��蓾�Ȃ�
+                        BudgetRec.CreatorCode = 0;
+                        BudgetRec.CreatorName = string.Empty;
+                        BudgetRec.CreatorCosts = 0;
+                        BudgetRec.SalaryFlg = 0;
+                        BudgetRec.SalaryDays = 0;
+                    }
                 }
 
                 // ���S���ҏ���
-                if (BudgetRec.AssistantCode != AssistantCode)
+                if (bChgParson2)
                 {
-
-                    if (AssistantCode == 0)
+                    if (AssistantCode != 0)
                     {
-                        BudgetRec.AssistantCode = 0;
-                        BudgetRec.AssistantName = string.Empty;
-                        BudgetRec.AssistantCosts = 0;
-                        BudgetRec.A_SalaryFlg = 0;
-                        BudgetRec.A_SalaryDays = 0;
-                    }
-                    else
-                    {
                         ExecutionAmount = 0;
                         AmountConfigRate = 0;
-                        CalcPayValueData(A_MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                        // �ғ������擾
+                        int workingCount = ClsCalendar.CalcPassedDaysCount(StartDT, CompDT);
+                        // �x�������^�v�Z
+                        CommonMotions.CalcPayValueData(A_MonthryCost, TotalOrdersPrice, workingCount, ref ExecutionAmount, ref AmountConfigRate, false);
                         // ���S���ҋ��^
                         BudgetRec.AssistantCosts = ExecutionAmount;
                         // ���S���ҋ��^�U���敪
@@ -800,26 +716,27 @@
                         // ���S���Җ�
                         BudgetRec.AssistantName = A_ConstructorName;
                     }
-                    UpDateFlg = true;
+                    else
+                    {
+                        BudgetRec.AssistantCode = 0;
+                        BudgetRec.AssistantName = string.Empty;
+                        BudgetRec.AssistantCosts = 0;
+                        BudgetRec.A_SalaryFlg = 0;
+                        BudgetRec.A_SalaryDays = 0;
+                    }
                 }
 
                 // �w��������
-                if (BudgetRec.InstructorCode != InstructorCode)
+                if (bChgParson3)
                 {
-
-                    if (InstructorCode == 0)
+                    if (InstructorCode != 0)
                     {
-                        BudgetRec.InstructorCode = 0;
-                        BudgetRec.InstructorName = string.Empty;
-                        BudgetRec.InstructorCosts = 0;
-                        BudgetRec.I_SalaryFlg = 0;
-                        BudgetRec.I_SalaryDays = 0;
-                    }
-                    else
-                    {
                         ExecutionAmount = 0;
                         AmountConfigRate = 0;
-                        CalcPayValueData(I_MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                        // �ғ������擾
+                        int workingCount = ClsCalendar.CalcPassedDaysCount(StartDT, CompDT);
+                        // �x�������^�v�Z
+                        CommonMotions.CalcPayValueData(I_MonthryCost, TotalOrdersPrice, workingCount, ref ExecutionAmount, ref AmountConfigRate, false);
                         // �w�����ҋ��^
                         BudgetRec.InstructorCosts = ExecutionAmount;
                         // �w�����ҋ��^�U���敪
@@ -832,14 +749,20 @@
                         // �w�����Җ�
                         BudgetRec.InstructorName = I_ConstructorName;
                     }
-                    UpDateFlg = true;
+                    else
+                    {
+                        BudgetRec.InstructorCode = 0;
+                        BudgetRec.InstructorName = string.Empty;
+                        BudgetRec.InstructorCosts = 0;
+                        BudgetRec.I_SalaryFlg = 0;
+                        BudgetRec.I_SalaryDays = 0;
+                    }
                 }
-                if (UpDateFlg)
-                {
-                    string strSQL = BudgetDB.CreatePrimarykeyString(BudgetRec.ConstructionCode);
-                    if (!BudgetDB.UpdateAction(strSQL, BudgetRec, false)) return false;
 
-                }
+                string strSQL = BudgetDB.CreatePrimarykeyString(BudgetRec.ConstructionCode);
+                if (!BudgetDB.UpdateAction(strSQL, BudgetRec, false)) return false;
+
+
                 return true;
             }
             catch (Exception ex)
@@ -897,7 +820,7 @@
                     // �O���[�v�ԍ�
                     work.GroupCount = (int)FrmConstructionBudget.DataGroup.Expenses;
                     // �s�ԍ�
-                    work.LineCount = icnt++;
+                    work.LineCount = ++icnt;
                     // �o��̃R�[�h
                     work.ComponentCode = CommonMotions.cnvInt(wrkExpense[(int)ExpensesArray.NameCode]);
                     // ���ږ���
@@ -929,8 +852,10 @@
         /// �H���\�Z���F�S���ҁE���S���ҁE�w�����Z�b�g
         /// </summary>
         /// <returns></returns>
-        private bool BudgetDetailDataSet(FrmConstructionBudget frm, IOConstructionBudgetDetail BudgetDDB, ConstructionBudget BudgetRec,
-                                    int TotalOrdersPrice, int GroupCode, object[] objRec)
+        private bool BudgetDetailDataSet(FrmConstructionBudget frm, IOConstructionBudgetDetail BudgetDDB, int TotalOrdersPrice,
+                                    int GroupCode, object[] objRec, ConstructionBudget BudgetRec,
+                                    int TargetParson, DateTime StartDT, DateTime CompDT,
+                                    bool TyingDataFlag)
         {
             try
             {
@@ -939,66 +864,78 @@
                 // �H���\�Z�����׃f�[�^�������ꍇ�͍쐬��O��ɏ������s
                 bool ExistsFlg = BudgetDDB.SelectAction(strSQL, ref DetailRec, false);
 
+                // �^�C�g�������擾����
+                frm.GetTitileParametar = GroupCode;
+                string orgFirstString = frm.GetTitleString;
+                if (TargetParson == 0)
+                {
+                    if (ExistsFlg)
+                    {   // �f�[�^���ݎ��ɒS���Ґݒ薳�̓f�[�^�N���A
+                        DetailRec.FirstString = orgFirstString;
+                        DetailRec.SecondString = string.Empty;
+                        DetailRec.EstimatePrice = 0;
+                        DetailRec.NegotiationPrice = 0;
+                        DetailRec.OrderDesiredAmount = 0;
+                        DetailRec.ExecutionAmount = 0;
+                        DetailRec.AmountConfigRate = 0;
+                        if (!BudgetDDB.UpdateAction(strSQL, DetailRec, false)) return false;
+                    }
+                    return true;
+                }
+
                 int ConstructorCode = 0;
                 double MonthryCost = 0;
                 string ConstructorName = string.Empty;
-                int TargetParson = 0;
+                bool bSalaryCorrection = true;
                 switch (GroupCode)
                 {
                     // �H���S����
                     case (int)FrmConstructionBudget.DataGroup.PayrollExpenses:
-                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ConstrPersonCode]);
+                        ConstructorCode = BudgetRec.CreatorCode;
                         MonthryCost = CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ConstrPersonSalary]);
                         ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.ConstrPersonName]);
-                        TargetParson = BudgetRec.CreatorCode;
                         break;
 
                     // �H�����S����
                     case (int)FrmConstructionBudget.DataGroup.AssistantCosts:
-                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.AssistPersonCode]);
+                        ConstructorCode = BudgetRec.AssistantCode;
                         MonthryCost = CommonDefine.AssistantMonthryCost;
                         ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.AssistPersonName]);
-                        TargetParson = BudgetRec.AssistantCode;
+                        bSalaryCorrection = false;
                         break;
 
                     // �H���w����
                     case (int)FrmConstructionBudget.DataGroup.InstructorCosts:
-                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.InstrPersonCode]);
+                        ConstructorCode = BudgetRec.InstructorCode;
                         MonthryCost = CommonDefine.InstructorMonthryCost;
                         ConstructorName = CommonMotions.cnvString(objRec[(int)ReadParentOrder.InstrPersonName]);
-                        TargetParson = BudgetRec.InstructorCode;
+                        bSalaryCorrection = false;
                         break;
                 }
 
-                // ���ݍH���擾
-                DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
-                DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
-
-                // �S���ҁE�H���������Ȃ�Ώ������Ȃ�
-                if (TargetParson == ConstructorCode && StartDT == BudgetRec.ConstructionStart && CompDT == BudgetRec.ConstructionEnd) return true;
-
                 // ���^���z�擾
                 double ExecutionAmount = 0;
                 double AmountConfigRate = 0;
-                CalcPayValueData(MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                // �ғ������擾
+                int workingCount = 0;
 
-                
-                if (ConstructorCode == 0)
-                {   // �����̓f�[�^�폜
-                    if (ExistsFlg) if (!BudgetDDB.DeleteAction(strSQL, false)) return false;
-                    return true;
-                }
-                else
-                {
-                    DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;
-                    DetailRec.OrderDesiredAmount = ExecutionAmount;
-                    DetailRec.ExecutionAmount = ExecutionAmount;
-                    DetailRec.AmountConfigRate = AmountConfigRate;
-                }
+                // �ύX���͕K���S������n�߂�
+                workingCount = ClsCalendar.CalcPassedDaysCount(StartDT, CompDT);
+                // �x�������^�v�Z
+                CommonMotions.CalcPayValueData(MonthryCost, TotalOrdersPrice, workingCount, ref ExecutionAmount, ref AmountConfigRate, bSalaryCorrection);
+
+                DetailRec.CompanyType = (int)CommonDefine.CodeDataType.Person;
+                DetailRec.OrderDesiredAmount = ExecutionAmount;
+                DetailRec.ExecutionAmount = ExecutionAmount;
+                DetailRec.AmountConfigRate = AmountConfigRate;
+
                 DetailRec.CompanyCode = ConstructorCode;
-                DetailRec.CompanyName = ConstructorName;
 
                 // ----- �H���\�Z�����׃f�[�^�X�V
+                DetailRec.FirstString = string.Format("{0}�y{1}���z", orgFirstString, ConstructorName);
+                DetailRec.SecondString = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                        ClsCalendar.cnvMonthFromDays(workingCount).ToString("0.00"),
+                                                        MonthryCost.ToString("#,0"));
                 if (ExistsFlg)
                 {
                     if (!BudgetDDB.UpdateAction(strSQL, DetailRec, false)) return false;
@@ -1008,10 +945,8 @@
                     // �L�[���Z�b�g
                     DetailRec.ConstructionCode = m_ConstructionCode;
                     DetailRec.GroupCount = GroupCode;
-                    DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;
+                    DetailRec.CompanyType = (int)CommonDefine.CodeDataType.Person;
 
-                    frm.GetTitileParametar = GroupCode;
-                    DetailRec.FirstString = frm.GetTitleString;
                     if (!BudgetDDB.InsertAction(DetailRec, false)) return false;
                 }
 
@@ -1048,18 +983,13 @@
         /// �H���ڍב䒠�f�[�^�ύX
         /// </summary>
         /// <returns></returns>
-        private bool LedgerDataChange(IOConstructionBaseInfo cbiDB,
-                                        IOConstructionLedger LedgerDB,
+        private bool LedgerDataChange(IOConstructionLedger LedgerDB,
                                         IOConstructionLedgerDetail LedgerDDB,
-                                        IOConstructionLedgerExcute LedgerEDB,
-                                        IOMPersonInCharge PersonDB,
-                                        IOConstructionLink cbLinkDB,
                                         int TotalOrdersPrice,
                                         bool TyingDataFlag,
-                                        FrmConstructionLedger frm,
                                         ArrayList ParentData,
                                         int ProcConstrCode,
-                                        ref bool LedgerReCalc,
+                                        FrmConstructionLedger frm,
                                         ref int ConstrCode)
         {
             try
@@ -1073,26 +1003,39 @@
                 // �ڍב䒠���͊����ς݂Ȃ�Ώ������Ȃ�
                 if (LedgerRec.ComplateFlg == (int)CommonDefine.ComplateTitleNo.Complated) return true;
 
-                /// �f�[�^�Z�b�g�E�ύX����
-                bool bChangeCode = false;
+                /// �f�[�^�Z�b�g
                 object[] objRec = (object[])ParentData[0];
+                
                 // ----- �H���ڍב䒠���׃f�[�^����
                 // �H���S����
-                if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice, (int)FrmConstructionLedger.DataGroup.Payroll,
-                                                    objRec, LedgerRec, ref bChangeCode)) return false;
+                bool bChgParson1 = false;
+                if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice,
+                                                    (int)FrmConstructionLedger.DataGroup.Payroll,
+                                                    objRec, LedgerRec, ref bChgParson1)) return false;
 
                 // �H�����S����
-                if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice, (int)FrmConstructionLedger.DataGroup.Assistant,
-                                                    objRec, LedgerRec, ref bChangeCode)) return false;
+                bool bChgParson2 = false;
+                if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice,
+                                                    (int)FrmConstructionLedger.DataGroup.Assistant,
+                                                    objRec, LedgerRec, ref bChgParson2)) return false;
 
                 // �H���w����
-                if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice, (int)FrmConstructionLedger.DataGroup.Instructor,
-                                                    objRec, LedgerRec, ref bChangeCode)) return false;
+                bool bChgParson3 = false;
+                if (!LedgerDetailDataSalarySet(LedgerDDB, ProcConstrCode, frm, TotalOrdersPrice,
+                                                    (int)FrmConstructionLedger.DataGroup.Instructor,
+                                                    objRec, LedgerRec, ref bChgParson3)) return false;
 
-                // �Ⴂ������Ώ�������
-                if (bChangeCode) LedgerReCalc = true;
+                // ----- �H���ڍב䒠�f�[�^����
+                // �{�H��
+                int ConstrPeriod = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ConstructionPeriod]);
+                if (LedgerRec.ConstructionPeriod != ConstrPeriod)
+                {
+                    if (!LedgerDB.UpdateFeild(LedgerRec.ConstructionCode,
+                                            (int)IOConstructionLedger.DataColumn.ConstructionPeriod,
+                                            ConstrPeriod,
+                                            false)) return false;
+                }
 
-                // ----- �H���ڍב䒠�f�[�^����
                 // �_��H���J�n�E�_��H������
                 DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
                 DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
@@ -1102,7 +1045,6 @@
                                             (int)IOConstructionLedger.DataColumn.ConstructionStart,
                                             StartDT,
                                             false)) return false;
-                    LedgerReCalc = true;
                 }
                 if (LedgerRec.ConstructionEnd != CompDT)
                 {
@@ -1110,7 +1052,6 @@
                                             (int)IOConstructionLedger.DataColumn.ConstructionEnd,
                                             CompDT,
                                             false)) return false;
-                    LedgerReCalc = true;
                 }
 
                 return true;
@@ -1158,6 +1099,18 @@
         {
             try
             {
+                // �ҏW�f�[�^�擾
+                int TargetParson1 = CommonMotions.cnvInt(((ComboBox)m_DspCtrl[(int)DspCnt.ConstructionPersonCode]).SelectedValue);
+                int TargetParson2 = CommonMotions.cnvInt(((ComboBox)m_DspCtrl[(int)DspCnt.ConstrSubPersonCode]).SelectedValue);
+                int TargetParson3 = CommonMotions.cnvInt(((ComboBox)m_DspCtrl[(int)DspCnt.ConstructionInstructor]).SelectedValue);
+                DateTime StartDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodStart2].Text);
+                if (StartDate == DateTime.MinValue)
+                    StartDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodStart].Text);
+                DateTime EndDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodEnd2].Text);
+                if (EndDate == DateTime.MinValue)
+                    EndDate = CommonMotions.cnvUndecidedStringToDate(m_DspCtrl[(int)DspCnt.ConstructionPeriodEnd].Text);
+
+                // �H���ڍב䒠���׃f�[�^�擾
                 string strSQL = LedgerDDB.CreatePrimarykeyString(ProcConstrCode, GroupCode);
                 strSQL += string.Format(" AND OperatingFlg = {0}", (int)CommonDefine.SalaryOperateKind.Oparateing);
                 ConstructionLedgerDetail DetailRec = new ConstructionLedgerDetail();
@@ -1164,30 +1117,36 @@
                 // �H���ڍב䒠���׃f�[�^�������ꍇ�͍쐬��O��ɏ������s
                 bool bExists = LedgerDDB.SelectAction(strSQL, ref DetailRec, false);
 
-                bool CurDataChange = false;
-
                 int ConstructorCode = 0;
                 double MonthryCost = 0;
+                bool bSalaryCorrection = true;
                 switch (GroupCode)
                 {
                     // �H���S����
                     case (int)FrmConstructionLedger.DataGroup.Payroll:
-                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ConstrPersonCode]);
+                        ConstructorCode = TargetParson1;
                         MonthryCost = CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ConstrPersonSalary]);
                         break;
                     // �H�����S����
                     case (int)FrmConstructionLedger.DataGroup.Assistant:
-                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.AssistPersonCode]);
+                        ConstructorCode = TargetParson2;
                         MonthryCost = CommonDefine.AssistantMonthryCost;
+                        bSalaryCorrection = false;
                         break;
 
                     // �H���w����
                     case (int)FrmConstructionLedger.DataGroup.Instructor:
-                        ConstructorCode = CommonMotions.cnvInt(objRec[(int)ReadParentOrder.InstrPersonCode]);
+                        ConstructorCode = TargetParson3;
                         MonthryCost = CommonDefine.InstructorMonthryCost;
+                        bSalaryCorrection = false;
                         break;
                 }
+                // �f�[�^�����݂��Ȃ��AAnd�@�S���҂̐ݒ肪�����ꍇ�͏������Ȃ�
+                if (!bExists && ConstructorCode == 0) return true;
 
+                // �S���҂������ꍇ�͏������Ȃ�
+                if (bExists && DetailRec.CompanyCode == ConstructorCode) return true;
+
                 // �f�[�^�����݂��A�S���҂��Ⴄ�ꍇ�͌��S���҂͎g�p�I��
                 if (bExists && DetailRec.CompanyCode != ConstructorCode)
                 {
@@ -1197,75 +1156,51 @@
                                             DetailRec.GroupCount,
                                             DetailRec.LineCount,
                                             false)) return false;
-                    // �f�[�^�ύX�L
-                    CurDataChange = true;
                 }
 
-                // ���ݍH���擾
-                DateTime StartDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.StartDate]);
-                DateTime CompDT = CommonMotions.cnvDate(objRec[(int)ReadParentOrder.CompDate]);
-
-                // �V�K�f�[�^�����͓o�^���Ȃ�
+                // �V�S���Җ����͓o�^���Ȃ�
                 if (ConstructorCode == 0) return true;
 
                 // �S���������Ŋ��Ԃ������ꍇ�͏������Ȃ�
-                if (bExists && DetailRec.CompanyCode == ConstructorCode
-                    && LedgerRec.ConstructionStart == StartDT && LedgerRec.ConstructionEnd == CompDT) return true;
+                if (bExists
+                    && DetailRec.CompanyCode == ConstructorCode
+                    && LedgerRec.ConstructionStart == StartDate
+                    && LedgerRec.ConstructionEnd == EndDate) return true;
 
-                // ���^���z�Z�b�g
+                // �J�n�����������O�̏ꍇ�͍������Z�b�g����
+                if (StartDate < DateTime.Today) StartDate = DateTime.Today;
+                // ���^���z�擾
                 double ExecutionAmount = 0;
                 double AmountConfigRate = 0;
-                CalcPayValueData(MonthryCost, TotalOrdersPrice, StartDT, CompDT, ref ExecutionAmount, ref AmountConfigRate);
+                // �ғ������擾
+                int workingCount = ClsCalendar.CalcPassedDaysCount(StartDate, EndDate);
+                // �x�������^�v�Z
+                CommonMotions.CalcPayValueData(MonthryCost, TotalOrdersPrice, workingCount, ref ExecutionAmount, ref AmountConfigRate, bSalaryCorrection);
 
                 // ----- �V�S���҂̍H���\�Z�����׃f�[�^�쐬
-                ClearConstructionLedgerDetailRec(ref DetailRec);
+                //ClearConstructionLedgerDetailRec(ref DetailRec);
+                DetailRec.ConstructionCode = ProcConstrCode;                                // �H���ԍ�
+                DetailRec.GroupCount = GroupCode;                                           // �O���[�v�ԍ�
+                DetailRec.LineCount = 0;                                                    // �s�ԍ�
+                
                 frm.GetTitileParametar = GroupCode;
                 DetailRec.FirstString = frm.GetTitleString;                                 // ���ږ���
+
                 DetailRec.SecondString = string.Empty;                                      // �H�����e
-                DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;         // ���͉�ЃR�[�h�^�C�v
+                DetailRec.CompanyType = (int)CommonDefine.CodeDataType.Person;         // ���͉�ЃR�[�h�^�C�v
                 DetailRec.CompanyCode = ConstructorCode;                                    // ���͉�ЃR�[�h
                 DetailRec.ExecutionAmount = ExecutionAmount;                                // ���s���z
                 DetailRec.AmountConfigRate = AmountConfigRate;                              // ���z�\����
 
                 DetailRec.SalaryFlg = (int)CommonDefine.SalaryDevision.All;                 // ���^�U���敪
-                DetailRec.SalaryDays = 0;                                                   // ���^�U������
+                DetailRec.SalaryDays = workingCount;                                        // ���^�U������
                 DetailRec.OperatingFlg = (int)CommonDefine.SalaryOperateKind.Oparateing;    // �S�����t���O
 
-                if (bExists && !CurDataChange)
-                {
-                    // �f�[�^�ǉ�
-                    if (!LedgerDDB.UpdateAction(strSQL, DetailRec, false)) return false;
-                }
-                else
-                {
-                    DetailRec.ConstructionCode = ProcConstrCode;                                // �H���ԍ�
-                    DetailRec.GroupCount = GroupCode;                                           // �O���[�v�ԍ�
-                    DetailRec.LineCount++;                                                      // �s�ԍ�
-                    // �f�[�^�ǉ�
-                    if (!LedgerDDB.InsertAction(DetailRec, false)) return false;
-                }
+                // �f�[�^�ǉ�
+                if (!LedgerDDB.InsertAction(DetailRec, false)) return false;
 
-                CurDataChange = true;
-
-                // �S���҂̏ꍇ�̂�
-                if (GroupCode == (int)FrmConstructionLedger.DataGroup.Payroll)
-                {
-                    ArrayList ExpensesList = new ArrayList();
-                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName1]),
-                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio1]),
-                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode1]) });
-                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName2]),
-                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio2]),
-                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode2]) });
-                    ExpensesList.Add(new object[] { CommonMotions.cnvString(objRec[(int)ReadParentOrder.ExpensesName3]),
-                                                    CommonMotions.cnvDouble(objRec[(int)ReadParentOrder.ExpensesRatio3]),
-                                                    CommonMotions.cnvInt(objRec[(int)ReadParentOrder.ExpensesCode3]) });
-                    // �o��f�[�^�X�V�i�S���҂��ς�����ꍇ�͕����ς���Ă��Ȃ��Ă��v�Z�j
-                    if (!LedgerSetExpenses(LedgerDDB, ProcConstrCode, TotalOrdersPrice, ExpensesList)) return false;
-                }
-
                 // �f�[�^�ύX�L
-                if (CurDataChange) bChangeCode = true;
+                bChangeCode = true;
                 
                 return true;
             }
@@ -1276,60 +1211,5 @@
             }
         }
         #endregion
-
-        #region �H���ڍב䒠���ׁF�o��̃Z�b�g
-        /// <summary>
-        /// �H���ڍב䒠���ׁF�o��̃Z�b�g
-        /// </summary>
-        /// <param name="LedgerDDB"></param>
-        /// <param name="OrdersPrice"></param>
-        /// <param name="ExpensesList"></param>
-        /// <returns></returns>
-        private bool LedgerSetExpenses(IOConstructionLedgerDetail LedgerDDB, int ProcConstrCode, double OrdersPrice, ArrayList ExpensesList)
-        {
-            try
-            {
-                // �܂��폜
-                string strDelete = LedgerDDB.CreatePrimarykeyString(ProcConstrCode, (int)FrmConstructionLedger.DataGroup.Expenses);
-                LedgerDDB.DeleteAction(strDelete, false);
-
-                int icnt = 1;
-                foreach (object[] wrkExpense in ExpensesList)
-                {
-                    // �o��擾
-                    double dExpenses = CommonMotions.cnvDouble(wrkExpense[(int)ExpensesArray.ExpensesRate]);
-
-                    ConstructionLedgerDetail work = new ConstructionLedgerDetail();
-                    // �H���ԍ�
-                    work.ConstructionCode = ProcConstrCode;
-                    // �O���[�v�ԍ�
-                    work.GroupCount = (int)FrmConstructionBudget.DataGroup.Expenses;
-                    // �s�ԍ�
-                    work.LineCount = icnt++;
-                    // �o��̃R�[�h
-                    work.ComponentCode = CommonMotions.cnvInt(wrkExpense[(int)ExpensesArray.NameCode]);
-                    // ���ږ���
-                    string strVallue = CommonMotions.cnvString(wrkExpense[(int)ExpensesArray.ExpensesName]);
-                    work.FirstString = string.Format("{0}({1}%)", strVallue, dExpenses.ToString("0.00"));
-                    // �\�Z���z
-                    work.EstimatePrice = (int)(OrdersPrice * (dExpenses / 100.0));
-                    // ���s���z                    
-                    work.ExecutionAmount = work.EstimatePrice;
-                    // ���z�\����
-                    work.AmountConfigRate = dExpenses;
-
-                    // �f�[�^�o�^
-                    if (!LedgerDDB.InsertAction(work, false)) return false;
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.cs	(revision 51)
@@ -847,7 +847,7 @@
         /// </summary>
         private FrmApprovalStatusList m_frmAppList = null;
         /// <summary>
-        /// �A�N�Z�X�����t���O
+        /// �Q�ƃt���O
         /// </summary>
         private bool m_EditLock = false;
 
@@ -885,7 +885,7 @@
             set { m_ConstructionCopy = value; }
         }
         /// <summary>
-        /// �A�N�Z�X�����t���O
+        /// �Q�ƃt���O
         /// </summary>
         public bool EditLock
         {
@@ -980,6 +980,7 @@
                 // �f�[�^�o�^����
                 if (!DataEntryProcess(true)) return;
 
+                CommonMotions.EntryEndMessage("�H�����f�[�^");
                 // �I��
                 this.Close();
             }
@@ -1008,6 +1009,7 @@
                 else
                     m_CloseingProcessOn = false;
 
+                CommonMotions.RemoveEndMessage("�H�����f�[�^");
                 // �I��
                 this.Close();
 
@@ -1181,7 +1183,7 @@
                 TerminatingProcess();
 
                 // ���F�󋵈ꗗ���\������Ă���΃N���[�Y����
-                if (m_frmAppList != null) m_frmAppList.Close();
+                if (m_frmAppList != null) m_frmAppList.Dispose();
 
                 // �I���{�^����ON�Ȃ�ΑO�v���Z�X�ɖ߂�
                 if (m_CloseingProcessOn) ClsExcute.BackProcess();
@@ -1279,68 +1281,80 @@
         /// <param name="e"></param>
         private void FrmConstructionBaseInfo_Load(object sender, EventArgs e)
         {
-            // �Ǘ��}�X�^�擾
-            CommonMotions.SetSystemMaster();
+            try
+            {
+                // �Ǘ��}�X�^�擾
+                CommonMotions.SetSystemMaster();
 
-            // �H����ԃt���O�i�e�L�X�g�\���j
-            SetStatusText();
+                // �H����ԃt���O�i�e�L�X�g�\���j
+                SetStatusText();
 
-            //�R���g���[���I�u�W�F�N�g�擾
-            SetDisplayObject();
+                //�R���g���[���I�u�W�F�N�g�擾
+                SetDisplayObject();
 
-            // �R���{�{�b�N�X�Z�b�g
-            SetDepartmentCombbox();                     // ����
-            SetInitcmbPersonInCharge();                 // �S����
-            SetConstructionPersonCombbox();             // �H���S���ҁi���p������Ώۂɂ���j
-            SetcmbConstructionYear();                   // �H���N�x
-            SetcmbConstructionPeriod();                 // �c�Ɗ�
-            SetcmbDivisionCombBox();                    // �����ҋ敪
-            SetcmbConstructionTypeCombBox();            // �H�����
-            SetcmbTransferConstructionCombBox();        // �H�����p
+                // �R���{�{�b�N�X�Z�b�g
+                SetDepartmentCombbox();                     // ����
+                SetInitcmbPersonInCharge();                 // �S����
+                SetConstructionPersonCombbox();             // �H���S���ҁi���p������Ώۂɂ���j
+                SetcmbConstructionYear();                   // �H���N�x
+                SetcmbConstructionPeriod();                 // �c�Ɗ�
+                SetcmbDivisionCombBox();                    // �����ҋ敪
+                SetcmbConstructionTypeCombBox();            // �H�����
+                SetcmbTransferConstructionCombBox();        // �H�����p
 
-            // �e�L�X�g�{�b�N�X����Z�b�g
-            SetTextBoxBackString();
+                // �e�L�X�g�{�b�N�X����Z�b�g
+                SetTextBoxBackString();
 
-            // �����\��
-            InitDataLoad();
+                // �����\��
+                InitDataLoad();
 
-            // ���b�N����
-            LockTheFieldOnTheRadioButton();
+                // ���b�N����
+                LockTheFieldOnTheRadioButton();
 
-            // �����������҂��f�[�^�ɃA�N�Z�X����ꍇ�͏�ɎQ�ƃ��[�h
-            //if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
-            //{
-            //    m_EditLock = true;
-            //}
+                // �Q�ƃ��[�h
+                if (m_EditLock)
+                {
+                    // �S�ẴR���g���[�����b�N
+                    SeeModeLock();
+                }
 
-            // �Q�ƃ��[�h
-            if (m_EditLock)
-            {
-                // �S�ẴR���g���[�����b�N
-                SeeModeLock();
-            }
-            else
-            {
-                // �ō��Ǘ��҈ȊO�͐��������ɂł��Ȃ�
-                if ((CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key) ||
-                    (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement))
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    rdbStatus10.Enabled = true;
+                    // �ō��Ǘ��҈ȊO�͐��������ɂł��Ȃ�
+                    if ((CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key) ||
+                        (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement))
+                    {
+                        rdbStatus10.Enabled = true;
+                    }
                 }
-            }
+                else
+                {
+                    // �ō��Ǘ��҈ȊO�͐��������ɂł��Ȃ�
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                        || (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key))
+                    {
+                        rdbStatus10.Enabled = true;
+                    }
+                }
 
-            // *-----* �����ړ��{�^���ݒ� *-----*
-            CreateProcessContextMenu(m_SubForm);
-            // *-----* �����ړ��{�^���ݒ� *-----*
+                // *-----* �����ړ��{�^���ݒ� *-----*
+                CreateProcessContextMenu(m_SubForm);
+                // *-----* �����ړ��{�^���ݒ� *-----*
 
-            // �����t�H�[�J�X
-            this.ActiveControl = m_DspCtrl[(int)DspCnt.ConstructionPeriod];
+                // �����t�H�[�J�X
+                this.ActiveControl = m_DspCtrl[(int)DspCnt.ConstructionPeriod];
 
-            // �������t���O
-            bInitFlg = false;
-            m_bChengeAns = false;
-            m_TransferMesageFlg = false;
-            m_Transfer2MesageFlg = false;
+                // �������t���O
+                bInitFlg = false;
+                m_bChengeAns = false;
+                m_TransferMesageFlg = false;
+                m_Transfer2MesageFlg = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+            }
         }
         #endregion
 
@@ -1796,7 +1810,7 @@
 
                 // �H���̏�Ԃɂ��e���ڂ̓��͉ۂ𐧌䂷��
                 LockTheFieldOnTheRadioButton();
-                
+
                 // �ύX�t���OON
                 valueChange(sender, e);
             }
@@ -1822,9 +1836,6 @@
                 // ���F��ʋN���t���O�擾
                 bool bApprovalExecute = m_frmAppList.ExecApprovalScreen;
 
-                // �n���h���N���A
-                m_frmAppList.Dispose(); m_frmAppList = null;
-
                 // ���F��ʋN���������ꍇ
                 if (!bApprovalExecute) return;
 
@@ -1843,6 +1854,11 @@
             {
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                // �n���h���N���A
+                m_frmAppList.Dispose(); m_frmAppList = null;
+            }
         }
         #endregion
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.designer.cs	(revision 51)
@@ -182,6 +182,7 @@
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.label85 = new System.Windows.Forms.Label();
             this.label84 = new System.Windows.Forms.Label();
             this.label83 = new System.Windows.Forms.Label();
@@ -245,8 +246,8 @@
             this.lblLastUpdate = new System.Windows.Forms.Label();
             this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
             this.btnApprovalList = new System.Windows.Forms.Button();
-            this.btnDataSelect = new System.Windows.Forms.Button();
             this.btnOtherProc = new System.Windows.Forms.Button();
+            this.lblJointLabel = new System.Windows.Forms.Label();
             this.comboBoxEX1 = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
             this.cmbDisplayPerson = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
             this.cmbConstructionType = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
@@ -664,6 +665,7 @@
             // 
             // btnSerchZip
             // 
+            this.btnSerchZip.BackColor = System.Drawing.Color.Gray;
             this.btnSerchZip.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnSerchZip.Location = new System.Drawing.Point(255, 31);
             this.btnSerchZip.Name = "btnSerchZip";
@@ -671,7 +673,7 @@
             this.btnSerchZip.TabIndex = 155;
             this.btnSerchZip.TabStop = false;
             this.btnSerchZip.Text = "住所検索";
-            this.btnSerchZip.UseVisualStyleBackColor = true;
+            this.btnSerchZip.UseVisualStyleBackColor = false;
             this.btnSerchZip.Click += new System.EventHandler(this.btnSerchZip_Click);
             // 
             // label20
@@ -1040,6 +1042,7 @@
             // 
             // btnOrderer
             // 
+            this.btnOrderer.BackColor = System.Drawing.Color.Gray;
             this.btnOrderer.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnOrderer.Location = new System.Drawing.Point(507, 182);
             this.btnOrderer.Name = "btnOrderer";
@@ -1047,7 +1050,7 @@
             this.btnOrderer.TabIndex = 143;
             this.btnOrderer.TabStop = false;
             this.btnOrderer.Text = "発注者登録";
-            this.btnOrderer.UseVisualStyleBackColor = true;
+            this.btnOrderer.UseVisualStyleBackColor = false;
             this.btnOrderer.Visible = false;
             this.btnOrderer.Click += new System.EventHandler(this.btnOrderer_Click);
             // 
@@ -2103,7 +2106,7 @@
             // 
             this.label118.BackColor = System.Drawing.Color.White;
             this.label118.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label118.Location = new System.Drawing.Point(128, 457);
+            this.label118.Location = new System.Drawing.Point(128, 475);
             this.label118.Name = "label118";
             this.label118.Size = new System.Drawing.Size(120, 26);
             this.label118.TabIndex = 192;
@@ -2114,7 +2117,7 @@
             this.label117.BackColor = System.Drawing.Color.PaleGreen;
             this.label117.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label117.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label117.Location = new System.Drawing.Point(1, 455);
+            this.label117.Location = new System.Drawing.Point(1, 473);
             this.label117.Name = "label117";
             this.label117.Size = new System.Drawing.Size(120, 30);
             this.label117.TabIndex = 191;
@@ -2123,12 +2126,11 @@
             // 
             // lblLinkTotal4
             // 
-            this.lblLinkTotal4.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.lblLinkTotal4.BackColor = System.Drawing.Color.White;
             this.lblLinkTotal4.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
-            this.lblLinkTotal4.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblLinkTotal4.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.lblLinkTotal4.ForeColor = System.Drawing.Color.Black;
-            this.lblLinkTotal4.Location = new System.Drawing.Point(501, 403);
+            this.lblLinkTotal4.Location = new System.Drawing.Point(503, 421);
             this.lblLinkTotal4.Name = "lblLinkTotal4";
             this.lblLinkTotal4.Size = new System.Drawing.Size(120, 22);
             this.lblLinkTotal4.TabIndex = 189;
@@ -2136,12 +2138,11 @@
             // 
             // lblLinkTotal3
             // 
-            this.lblLinkTotal3.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.lblLinkTotal3.BackColor = System.Drawing.Color.White;
             this.lblLinkTotal3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
-            this.lblLinkTotal3.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblLinkTotal3.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.lblLinkTotal3.ForeColor = System.Drawing.Color.Black;
-            this.lblLinkTotal3.Location = new System.Drawing.Point(381, 403);
+            this.lblLinkTotal3.Location = new System.Drawing.Point(383, 421);
             this.lblLinkTotal3.Name = "lblLinkTotal3";
             this.lblLinkTotal3.Size = new System.Drawing.Size(120, 22);
             this.lblLinkTotal3.TabIndex = 188;
@@ -2149,12 +2150,11 @@
             // 
             // lblLinkTotal2
             // 
-            this.lblLinkTotal2.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.lblLinkTotal2.BackColor = System.Drawing.Color.White;
             this.lblLinkTotal2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
-            this.lblLinkTotal2.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblLinkTotal2.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.lblLinkTotal2.ForeColor = System.Drawing.Color.Black;
-            this.lblLinkTotal2.Location = new System.Drawing.Point(261, 403);
+            this.lblLinkTotal2.Location = new System.Drawing.Point(263, 421);
             this.lblLinkTotal2.Name = "lblLinkTotal2";
             this.lblLinkTotal2.Size = new System.Drawing.Size(120, 22);
             this.lblLinkTotal2.TabIndex = 187;
@@ -2162,12 +2162,11 @@
             // 
             // lblLinkTotal1
             // 
-            this.lblLinkTotal1.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.lblLinkTotal1.BackColor = System.Drawing.Color.White;
             this.lblLinkTotal1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
-            this.lblLinkTotal1.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblLinkTotal1.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.lblLinkTotal1.ForeColor = System.Drawing.Color.Black;
-            this.lblLinkTotal1.Location = new System.Drawing.Point(141, 403);
+            this.lblLinkTotal1.Location = new System.Drawing.Point(143, 421);
             this.lblLinkTotal1.Name = "lblLinkTotal1";
             this.lblLinkTotal1.Size = new System.Drawing.Size(120, 22);
             this.lblLinkTotal1.TabIndex = 186;
@@ -2175,12 +2174,11 @@
             // 
             // label116
             // 
-            this.label116.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.label116.BackColor = System.Drawing.Color.White;
             this.label116.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
             this.label116.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label116.ForeColor = System.Drawing.Color.Black;
-            this.label116.Location = new System.Drawing.Point(1, 403);
+            this.label116.Location = new System.Drawing.Point(3, 421);
             this.label116.Name = "label116";
             this.label116.Size = new System.Drawing.Size(140, 22);
             this.label116.TabIndex = 185;
@@ -2189,15 +2187,16 @@
             // 
             // btnLink
             // 
-            this.btnLink.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.btnLink.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnLink.BackColor = System.Drawing.Color.Tan;
             this.btnLink.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnLink.Location = new System.Drawing.Point(520, 425);
+            this.btnLink.Location = new System.Drawing.Point(521, 443);
             this.btnLink.Name = "btnLink";
             this.btnLink.Size = new System.Drawing.Size(120, 30);
             this.btnLink.TabIndex = 168;
             this.btnLink.TabStop = false;
             this.btnLink.Text = "増減選択";
-            this.btnLink.UseVisualStyleBackColor = true;
+            this.btnLink.UseVisualStyleBackColor = false;
             this.btnLink.Click += new System.EventHandler(this.btnLink_Click);
             // 
             // label74
@@ -2217,7 +2216,8 @@
             this.dgvLink.AllowUserToDeleteRows = false;
             this.dgvLink.AllowUserToResizeColumns = false;
             this.dgvLink.AllowUserToResizeRows = false;
-            this.dgvLink.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.dgvLink.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvLink.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
@@ -2235,7 +2235,8 @@
             this.Column5,
             this.Column3,
             this.Column2,
-            this.Column4});
+            this.Column4,
+            this.Column6});
             this.dgvLink.Location = new System.Drawing.Point(1, 257);
             this.dgvLink.Name = "dgvLink";
             this.dgvLink.RowHeadersVisible = false;
@@ -2243,13 +2244,12 @@
             this.dgvLink.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvLink.RowTemplate.Height = 24;
             this.dgvLink.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
-            this.dgvLink.Size = new System.Drawing.Size(640, 146);
+            this.dgvLink.Size = new System.Drawing.Size(660, 164);
             this.dgvLink.TabIndex = 166;
             this.dgvLink.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvLink_CellDoubleClick);
             // 
             // Column0
             // 
-            this.Column0.Frozen = true;
             this.Column0.HeaderText = "工事番号";
             this.Column0.Name = "Column0";
             this.Column0.ReadOnly = true;
@@ -2259,9 +2259,8 @@
             // Column1
             // 
             dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("Century", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
-            this.Column1.Frozen = true;
             this.Column1.HeaderText = "工事増減日";
             this.Column1.Name = "Column1";
             this.Column1.ReadOnly = true;
@@ -2272,9 +2271,8 @@
             // Column5
             // 
             dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.Column5.DefaultCellStyle = dataGridViewCellStyle3;
-            this.Column5.Frozen = true;
             this.Column5.HeaderText = "見積金額";
             this.Column5.Name = "Column5";
             this.Column5.ReadOnly = true;
@@ -2285,9 +2283,8 @@
             // Column3
             // 
             dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
-            this.Column3.Frozen = true;
             this.Column3.HeaderText = "見積税込金額";
             this.Column3.Name = "Column3";
             this.Column3.ReadOnly = true;
@@ -2298,9 +2295,8 @@
             // Column2
             // 
             dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle5.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.Column2.DefaultCellStyle = dataGridViewCellStyle5;
-            this.Column2.Frozen = true;
             this.Column2.HeaderText = "受注金額";
             this.Column2.Name = "Column2";
             this.Column2.ReadOnly = true;
@@ -2311,9 +2307,8 @@
             // Column4
             // 
             dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.Column4.DefaultCellStyle = dataGridViewCellStyle6;
-            this.Column4.Frozen = true;
             this.Column4.HeaderText = "受注税込金額";
             this.Column4.Name = "Column4";
             this.Column4.ReadOnly = true;
@@ -2321,6 +2316,14 @@
             this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column4.Width = 120;
             // 
+            // Column6
+            // 
+            this.Column6.HeaderText = "工事名称";
+            this.Column6.Name = "Column6";
+            this.Column6.ReadOnly = true;
+            this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column6.Width = 300;
+            // 
             // label85
             // 
             this.label85.BackColor = System.Drawing.Color.PaleGreen;
@@ -2748,9 +2751,9 @@
             this.rdbStatusHikitugiFlg.ForeColor = System.Drawing.Color.White;
             this.rdbStatusHikitugiFlg.Location = new System.Drawing.Point(1024, 94);
             this.rdbStatusHikitugiFlg.Name = "rdbStatusHikitugiFlg";
-            this.rdbStatusHikitugiFlg.Size = new System.Drawing.Size(144, 19);
+            this.rdbStatusHikitugiFlg.Size = new System.Drawing.Size(212, 19);
             this.rdbStatusHikitugiFlg.TabIndex = 86;
-            this.rdbStatusHikitugiFlg.Text = "部署引継フラグ";
+            this.rdbStatusHikitugiFlg.Text = "見えない部署引継フラグ";
             this.rdbStatusHikitugiFlg.UseVisualStyleBackColor = false;
             this.rdbStatusHikitugiFlg.Visible = false;
             this.rdbStatusHikitugiFlg.CheckedChanged += new System.EventHandler(this.valueChange);
@@ -3185,27 +3188,13 @@
             this.btnApprovalList.UseVisualStyleBackColor = false;
             this.btnApprovalList.Click += new System.EventHandler(this.btnApprovalList_Click);
             // 
-            // btnDataSelect
-            // 
-            this.btnDataSelect.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataSelect.BackColor = System.Drawing.Color.Green;
-            this.btnDataSelect.ForeColor = System.Drawing.Color.White;
-            this.btnDataSelect.Location = new System.Drawing.Point(561, 656);
-            this.btnDataSelect.Name = "btnDataSelect";
-            this.btnDataSelect.Size = new System.Drawing.Size(180, 30);
-            this.btnDataSelect.TabIndex = 93;
-            this.btnDataSelect.Text = "工事をコピーする";
-            this.btnDataSelect.UseVisualStyleBackColor = false;
-            this.btnDataSelect.Visible = false;
-            this.btnDataSelect.Click += new System.EventHandler(this.btnDataSelect_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(15, 657);
+            this.btnOtherProc.Location = new System.Drawing.Point(1, 657);
             this.btnOtherProc.Name = "btnOtherProc";
-            this.btnOtherProc.Size = new System.Drawing.Size(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 94;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
@@ -3212,6 +3201,20 @@
             this.btnOtherProc.UseVisualStyleBackColor = false;
             this.btnOtherProc.Click += new System.EventHandler(this.btnOtherProc_Click);
             // 
+            // lblJointLabel
+            // 
+            this.lblJointLabel.BackColor = System.Drawing.Color.Yellow;
+            this.lblJointLabel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblJointLabel.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblJointLabel.ForeColor = System.Drawing.Color.Black;
+            this.lblJointLabel.Location = new System.Drawing.Point(24, 8);
+            this.lblJointLabel.Name = "lblJointLabel";
+            this.lblJointLabel.Size = new System.Drawing.Size(238, 25);
+            this.lblJointLabel.TabIndex = 97;
+            this.lblJointLabel.Text = "結合契約工事";
+            this.lblJointLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblJointLabel.Visible = false;
+            // 
             // comboBoxEX1
             // 
             this.comboBoxEX1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
@@ -3711,8 +3714,8 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1344, 692);
+            this.Controls.Add(this.lblJointLabel);
             this.Controls.Add(this.btnOtherProc);
-            this.Controls.Add(this.btnDataSelect);
             this.Controls.Add(this.lblLastUpdate);
             this.Controls.Add(this.label29);
             this.Controls.Add(this.BasePanel);
@@ -3810,7 +3813,6 @@
         private System.Windows.Forms.RadioButton rdbStatus13;
         private System.Windows.Forms.RadioButton rdbStatus12;
         private System.Windows.Forms.Button btnApprovalList;
-        private System.Windows.Forms.Button btnDataSelect;
         private System.Windows.Forms.Button btnOtherProc;
         private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
         private System.Windows.Forms.Label label63;
@@ -4014,6 +4016,11 @@
         private System.Windows.Forms.Label lblLinkTotal2;
         private System.Windows.Forms.Label lblLinkTotal1;
         private System.Windows.Forms.Label label116;
+        private System.Windows.Forms.RadioButton rdbStatus16;
+        private System.Windows.Forms.Button btnChangePrice;
+        private System.Windows.Forms.Label label118;
+        private System.Windows.Forms.Label label117;
+        private System.Windows.Forms.Label lblJointLabel;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column0;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
@@ -4020,9 +4027,6 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
-        private System.Windows.Forms.RadioButton rdbStatus16;
-        private System.Windows.Forms.Button btnChangePrice;
-        private System.Windows.Forms.Label label118;
-        private System.Windows.Forms.Label label117;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfo.resx	(revision 51)
@@ -135,6 +135,9 @@
   <metadata name="Column4.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="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>17, 9</value>
   </metadata>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs	(revision 51)
@@ -51,11 +51,11 @@
                 {
                     case 0:
                         // �ώZ���σf�[�^�F�Œ荀�ڃL�[��'C'�ɐŔ����z�������Ă���
-                        strSQL += " And FixedItemCode = 'C'";
+                        strSQL += string.Format(" And FixedItemCode = '{0}'", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal3));
                         break;
                     case 1:
                         // �ώZ���σf�[�^�F�Œ荀�ڃL�[��'E'�ɐō����z�������Ă���
-                        strSQL += " And FixedItemCode = 'E'";
+                        strSQL += string.Format(" And FixedItemCode = '{0}'", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal5));
                         break;
                 }
                 EstimateData data = new EstimateData();
@@ -672,7 +672,7 @@
             {
                 // �ώZ���Ϗ��F
                 ProcessApproval AppRec = new ProcessApproval();
-                string strSQL = ApproDB.CreatePrimarykeyString(m_ConstructionCode, ApprovalCode, 1);
+                string strSQL = ApproDB.CreatePrimarykeyString(m_ConstructionCode, ApprovalCode, CommonDefine.s_Default_OrderNo, 1);
                 bool bApproExist = ApproDB.SelectAction(strSQL, ref AppRec);
 
                 string strDspData1 = CommonDefine.s_UndecidedString;
@@ -911,7 +911,7 @@
 
                 m_DspCtrl[(int)DspCnt.PurchaseOrderReturnCheckDate].Text = CommonMotions.cnvDateToUndecidedString(worklist[0].PurchaseOrderReturnCheckDate);    // �������ԑ��m�F��
 
-                if (worklist[0].TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Pearent)
+                if (worklist[0].TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Parent)
                 {   // �����e�H��
                     rdbExistsFluctuation.Checked = true;                                // �����H�����W�I�{�^��
                     btnFluctuation.Enabled = true;                                      // �����H���{�^��
@@ -1055,6 +1055,10 @@
                 // �H�����z�����{�^���\������
                 DispLinkButton(worklist[0]);
 
+                // �����H���X�e�[�^�X
+                lblJointLabel.Visible = false;
+                if (worklist[0].JoinFlg != 0) lblJointLabel.Visible = true;
+
                 m_bChengeAns = false;
 
                 return true;
@@ -1082,8 +1086,10 @@
             try
             {
                 bool bDispFlg = true;
-                
-                // �q�f�[�^�̓{�^����\�����Ȃ�
+
+                // �����H���e�f�[�^�̓{�^����\�����Ȃ�
+                if (BaseRec.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinParent) bDispFlg = false;
+                // �����H���q�f�[�^�̓{�^����\�����Ȃ�
                 if (BaseRec.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying) bDispFlg = false;
 
                 // ���Ϗ��f�[�^�������ꍇ�͕\�����Ȃ�
@@ -1116,16 +1122,218 @@
         }
         #endregion
 
+        #region �H�������E�������z�O���b�h�\��
+        /// <summary>
+        /// �H�������E�������z�O���b�h�\��
+        /// </summary>
+        private void DispLinkDataGrid()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                string strSQL = BaseDB.CreatePrimarykeyString(m_ConstructionCode);
+                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
+                if (!BaseDB.SelectAction(strSQL, ref BaseRec)) return;
+
+                // ���������ꍇ�͂��̂܂ܑ����H���\��
+                if (BaseRec.JoinFlg == 0)
+                {
+                    DispLinkTyingDataGrid();
+                }
+                else
+                {
+                    DispLinkJoiningDataGrid(BaseRec.JoinFlg);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region �����H���擾
+        /// <summary>
+        /// �����H���擾
+        /// </summary>
+        private bool GetLinkData(int SearchCode, ref ArrayList ArList, bool bJoin)
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
+                // �����H���\��
+                string strSQL = "SELECT A.FLUCTUATIONCODE, B.REQUESTEDDATE, D.PRICEVALUE, E.PRICEVALUE, B.ORDERSDECISIONPRICE, B.ORDERSDECISIONPRICEINTAX, F.DETAILSTRING";
+                strSQL += " FROM CONSTRUCTIONLINK A";
+                
+                strSQL += " LEFT OUTER JOIN ESTIMATEDATA D ON (D.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += string.Format(" AND D.FIXEDITEMCODE = '{0}')", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal3));
+                
+                strSQL += " LEFT OUTER JOIN ESTIMATEDATA E ON (E.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += string.Format(" AND E.FIXEDITEMCODE = '{0}')", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal5));
+
+                strSQL += " LEFT OUTER JOIN CONSTRUCTIONBASEINFODETAIL F ON (F.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += string.Format(" AND F.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL += " , CONSTRUCTIONBASEINFO B";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", SearchCode);
+
+                if (bJoin)
+                    strSQL += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.JoinType);
+                else
+                    strSQL += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.FluctuationType);
+
+                strSQL += " AND B.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG != {0}", iStatus);
+                strSQL += " ORDER BY A.FLUCTUATIONCODE ASC";
+
+                if (!BaseDB.ExecuteReader(strSQL, ref ArList)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region �H���������z�O���b�h�\��
+        /// <summary>
+        /// �H���������z�O���b�h�\��
+        /// </summary>
+        private void DispLinkJoiningDataGrid(int JoinFlg)
+        {
+            DataGridView dgv = dgvLink;
+            try
+            {
+                int[] iTotalArray = new int[4];
+
+                label74.Text = "�����H��";
+                dgv.Columns[1].HeaderText = "�����H���쐬��";
+                btnLink.Text = "�����H���I��";
+
+                dgv.Rows.Clear();
+                lblLinkTotal1.Text = string.Empty;
+                lblLinkTotal2.Text = string.Empty;
+                lblLinkTotal3.Text = string.Empty;
+                lblLinkTotal4.Text = string.Empty;
+                Array.Clear(iTotalArray, 0, iTotalArray.Length);
+
+                int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
+
+                // �����H���\��
+                int ParentCode = 0;
+                ArrayList ParList = new ArrayList();
+                if (JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinParent)
+                {
+                    ParentCode = m_ConstructionCode;
+                }
+                else
+                {
+                    int FuncCnt = 0;
+                    ClsChangeBaseInfoData.GetParentData(m_ConstructionCode, ref ParList, ref FuncCnt);
+                    // �f�[�^���̓G���[
+                    if (ParList.Count == 0) return;
+
+                    object[] objRec = (object[])ParList[0];
+                    ParentCode = CommonMotions.cnvInt(objRec[0]);
+                }
+                dgv.Rows.Add(ParentCode, "�����H��", "", "", "", "", "");
+
+                // �����H�����ו\��
+                ArrayList ArList = new ArrayList();
+                if (!GetLinkData(ParentCode, ref ArList, true)) return;
+
+                foreach (object[] OneRec in ArList)
+                {
+                    int ConstrCode = CommonMotions.cnvInt(OneRec[0]);
+                    dgv.Rows.Add(ConstrCode,
+                                    CommonMotions.cnvDate(OneRec[1]).ToShortDateString(),
+                                    CommonMotions.cnvInt(OneRec[2]).ToString("#,0"),
+                                    CommonMotions.cnvInt(OneRec[3]).ToString("#,0"),
+                                    CommonMotions.cnvInt(OneRec[4]).ToString("#,0"),
+                                    CommonMotions.cnvInt(OneRec[5]).ToString("#,0"),
+                                    CommonMotions.cnvString(OneRec[6])
+                                    );
+
+                    for (int i = 0; i < iTotalArray.Length; i++)
+                    {
+                        iTotalArray[i] += CommonMotions.cnvInt(OneRec[i + 2]);
+                    }
+                    int iRowcnt = dgv.RowCount - 1;
+                    for (int i = 0; i < dgv.ColumnCount; i++)
+                    {
+                        dgv.Rows[iRowcnt].Cells[i].Style.ForeColor = Color.Black;
+                        dgv.Rows[iRowcnt].Cells[i].Style.BackColor = Color.LightYellow;
+                    }
+
+                    // �����H���̕\��
+                    ArrayList flList = new ArrayList();
+                    if (!GetLinkData(ConstrCode, ref flList, false)) continue;
+                    if (flList.Count == 0) continue;
+                    foreach (object[] flRec in flList)
+                    {
+                        dgv.Rows.Add(ConstrCode,
+                                        CommonMotions.cnvDate(flRec[1]).ToShortDateString(),
+                                        CommonMotions.cnvInt(flRec[2]).ToString("#,0"),
+                                        CommonMotions.cnvInt(flRec[3]).ToString("#,0"),
+                                        CommonMotions.cnvInt(flRec[4]).ToString("#,0"),
+                                        CommonMotions.cnvInt(flRec[5]).ToString("#,0"),
+                                        CommonMotions.cnvString(flRec[6])
+                                        );
+
+                        for (int i = 0; i < iTotalArray.Length; i++)
+                        {
+                            iTotalArray[i] += CommonMotions.cnvInt(flRec[i + 2]);
+                        }
+                    }
+                    iRowcnt = dgv.RowCount - 1;
+                    for (int i = 0; i < dgv.ColumnCount; i++)
+                    {
+                        dgv.Rows[iRowcnt].Cells[i].Style.ForeColor = Color.Black;
+                        dgv.Rows[iRowcnt].Cells[i].Style.BackColor = Color.Gainsboro;
+                    }
+                }
+
+                lblLinkTotal1.Text = iTotalArray[0].ToString("#,0");
+                lblLinkTotal2.Text = iTotalArray[1].ToString("#,0");
+                lblLinkTotal3.Text = iTotalArray[2].ToString("#,0");
+                lblLinkTotal4.Text = iTotalArray[3].ToString("#,0");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                if (dgv.RowCount < 5) dgv.Rows.Add(5 - dgv.RowCount);
+            }
+        }
+        #endregion
+
         #region �H���������z�O���b�h�\��
         /// <summary>
         /// �H���������z�O���b�h�\��
         /// </summary>
-        private void DispLinkDataGrid()
+        private void DispLinkTyingDataGrid()
         {
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             DataGridView dgv = dgvLink;
             try
             {
+                label74.Text = "�����H��";
+                dgv.Columns[1].HeaderText = "�����H���쐬��";
+                btnLink.Text = "�����H���I��";
+
                 int iCode = m_ConstructionCode / 100;
                 int[] iTotalArray = new int[4];
 
@@ -1136,13 +1344,20 @@
                 lblLinkTotal4.Text = string.Empty;
                 Array.Clear(iTotalArray, 0, iTotalArray.Length);
 
-                string strSQL = "SELECT DISTINCT(A.CONSTRUCTIONCODE), A.REQUESTEDDATE, C.PRICEVALUE, D.PRICEVALUE, A.ORDERSDECISIONPRICE, A.ORDERSDECISIONPRICEINTAX";
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, A.REQUESTEDDATE, C.PRICEVALUE, D.PRICEVALUE, A.ORDERSDECISIONPRICE, A.ORDERSDECISIONPRICEINTAX, E.DETAILSTRING";
                 strSQL += " FROM CONSTRUCTIONBASEINFO A";
-                strSQL += " LEFT OUTER JOIN ESTIMATEDATA C ON (A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE AND C.FIXEDITEMCODE = 'C')";
-                strSQL += " LEFT OUTER JOIN ESTIMATEDATA D ON (A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE AND D.FIXEDITEMCODE = 'E')";
+                
+                strSQL += " LEFT OUTER JOIN ESTIMATEDATA C ON (A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND C.FIXEDITEMCODE = '{0}')", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal3));
+                
+                strSQL += " LEFT OUTER JOIN ESTIMATEDATA D ON (A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND D.FIXEDITEMCODE = '{0}')", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal5));
+
+                strSQL += " LEFT OUTER JOIN CONSTRUCTIONBASEINFODETAIL E ON (E.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND E.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
                 strSQL += " WHERE A.TYINGFLG <> 0";
                 strSQL += string.Format(" AND A.CONSTRUCTIONSTATUSFLG != {0}", CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key);
-                strSQL += string.Format(" AND TRUNCATE(A.CONSTRUCTIONCODE / 100, 0) = {0}", iCode);
+                strSQL += string.Format(" AND TRUNCATE(A.CONSTRUCTIONCODE / 100,0) = {0}", iCode);
                 strSQL += " ORDER BY A.CONSTRUCTIONCODE";
 
                 ArrayList ArList = new ArrayList();
@@ -1165,12 +1380,23 @@
                                     CommonMotions.cnvInt(OneRec[2]).ToString("#,0"),
                                     CommonMotions.cnvInt(OneRec[3]).ToString("#,0"),
                                     CommonMotions.cnvInt(OneRec[4]).ToString("#,0"),
-                                    CommonMotions.cnvInt(OneRec[5]).ToString("#,0"));
+                                    CommonMotions.cnvInt(OneRec[5]).ToString("#,0"),
+                                    CommonMotions.cnvString(OneRec[6]));
 
                     for (int i = 0; i < iTotalArray.Length; i++)
                     {
                         iTotalArray[i] += CommonMotions.cnvInt(OneRec[i + 2]);
                     }
+                    
+                    Color ColorBack = Color.White;
+                    if (!strDate.Equals("���̍H��")) ColorBack = Color.Gainsboro;
+                    
+                    int iRowcnt = dgv.RowCount - 1;
+                    for (int i = 0; i < dgv.ColumnCount; i++)
+                    {
+                        dgv.Rows[iRowcnt].Cells[i].Style.ForeColor = Color.Black;
+                        dgv.Rows[iRowcnt].Cells[i].Style.BackColor = ColorBack;
+                    }
                 }
                 // ���v�\��
                 lblLinkTotal1.Text = iTotalArray[0].ToString("#,0");
@@ -1820,164 +2046,6 @@
         }
         #endregion
 
-        #region �폜����
-        /// <summary>
-        /// �H����{���폜
-        /// </summary>
-        /// <returns></returns>
-        private bool ConstructionBaseInoDataDelete(IOConstructionBaseInfo cbiDB)
-        {
-            try
-            {
-                List<ConstructionBaseInfo> workList = new List<ConstructionBaseInfo>();
-                string strWhere = cbiDB.CreatePrimarykeyString(CommonMotions.cnvIntFromStringCode(m_DspCtrl[(int)DspCnt.ConstructionCode].Text, "-"));
-
-                if (!cbiDB.SelectAction(strWhere, ref workList, false))
-                {
-                    MessageBox.Show("�H����{���F�폜�m�F�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                if (workList.Count == 0)
-                {
-                    MessageBox.Show("�H����{���F�폜�Ώۊm�F�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-                else
-                {
-                    // �f�[�^������ꍇ
-                    // �f�[�^�X�V
-                    if (!cbiDB.DeleteAction(strWhere, false))
-                    {
-                        MessageBox.Show("�H����{���F�폜�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        /// <summary>
-        /// �Č��i�����t�f�[�^�폜
-        /// </summary>
-        /// <param name="cpdDB"></param>
-        /// <returns></returns>
-        private bool ConstructionProgressDateDelete(IOConstructionProgressDate cpdDB)
-        {
-            try
-            {
-                List<ConstructionProgressDate> workList = new List<ConstructionProgressDate>();
-                string strWhere = cpdDB.CreatePrimarykeyString(CommonMotions.cnvIntFromStringCode(m_DspCtrl[(int)DspCnt.ConstructionCode].Text, "-"));
-
-                // �f�[�^������ꍇ
-                // �f�[�^�X�V
-                if (!cpdDB.DeleteAction(strWhere, false))
-                {
-                    MessageBox.Show("�Č��i�����t�f�[�^�F�폜�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        /// <summary>
-        /// �H����{��񖾍׍폜
-        /// </summary>
-        private bool ConstructionBaseInfoDetailDataDelete(IOConstructionBaseInfoDetail cbidDB)
-        {
-            try
-            {
-                List<ConstructionBaseInfoDetail> workList = new List<ConstructionBaseInfoDetail>();
-
-
-                string strWhere = cbidDB.CreatePrimarykeyString(CommonMotions.cnvIntFromStringCode(m_DspCtrl[(int)DspCnt.ConstructionCode].Text, "-"));
-                if (!cbidDB.SelectAction(strWhere, ref workList, false))
-                {
-                    MessageBox.Show("�H����{��񖾍ׁF�폜�m�F�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-                // �f�[�^���͏������Ȃ�
-                if (workList.Count == 0) return true;
-
-                // �f�[�^������ꍇ
-                if (!cbidDB.DeleteAction(strWhere, false))
-                {
-                    MessageBox.Show("�H����{��񖾍ׁF�폜�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        /// <summary>
-        /// �H�����������N�f�[�^�폜
-        /// </summary>
-        /// <param name="LinkDB"></param>
-        /// <returns></returns>
-        private bool ConstructionLinkDelete(IOConstructionBaseInfo BaseDB, IOConstructionLink LinkDB)
-        {
-            try
-            {
-                int ConstrCode = CommonMotions.cnvIntFromStringCode(m_DspCtrl[(int)DspCnt.ConstructionCode].Text, "-");
-
-                // �H����{����ǂ�
-                string strWhere = BaseDB.CreatePrimarykeyString(ConstrCode);
-                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
-                if (!BaseDB.SelectAction(strWhere, ref BaseRec, false))
-                {
-                    MessageBox.Show("�H�����������N�f�[�^�F�H�����m�F�Ɏ��s���܂����B", "�m�F�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                switch (BaseRec.TyingFlg)
-                {
-                    case (int)CommonDefine.BaseInfoTyingFlg.Pearent:
-                        // �R�Â��e���R�[�h
-                        strWhere = string.Format(" Where ConstructionCode = {0}", ConstrCode);
-                        break;
-                    case (int)CommonDefine.BaseInfoTyingFlg.Tying:
-                        // �R�Â��q���R�[�h
-                        strWhere = string.Format(" Where FluctuationCode = {0}", ConstrCode);
-                        break;
-                    case (int)CommonDefine.BaseInfoTyingFlg.Standard:
-                        // ���ʂ̃��R�[�h
-                        return true;
-                    default:
-                        break;
-                }
-                // �f�[�^������ꍇ
-                // �f�[�^�X�V
-                if (!LinkDB.DeleteAction(strWhere, false))
-                {
-                    MessageBox.Show("�H�����������N�f�[�^�F�폜�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
         #region �H����{���o�^
         /// <summary>
         /// �H����{���o�^
@@ -2015,7 +2083,7 @@
                 {
                     if (rdbExistsFluctuation.Checked)
                     {
-                        work.TyingFlg = (int)CommonDefine.BaseInfoTyingFlg.Pearent;
+                        work.TyingFlg = (int)CommonDefine.BaseInfoTyingFlg.Parent;
                     }
                     else
                     {
@@ -2023,6 +2091,9 @@
                     }
                 }
 
+                // �����H���t���O
+                if (workList.Count != 0) work.JoinFlg = workList[0].JoinFlg;
+
                 // �H���N�x
                 if (m_DspCtrl[(int)DspCnt.ConstructionYear].Text.Length != 0)
                     work.ConstructionYear = CommonMotions.cnvInt(m_DspCtrl[(int)DspCnt.ConstructionYear].Text);
@@ -2229,9 +2300,8 @@
         /// </summary>
         /// <param name="cbiDB"></param>
         /// <param name="work"></param>
-        private void FluctuationDataPeriodEnd(ref DateTime StartDate, ref DateTime LastDate)
+        private void FluctuationDataPeriodEnd(IOConstructionBaseInfo BaseDB, ref DateTime StartDate, ref DateTime LastDate)
         {
-            IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
             try
             {
                 StartDate = DateTime.Now;
@@ -2238,12 +2308,13 @@
                 LastDate = DateTime.Now;
 
                 string strSQL = "SELECT MIN(CONSTRUCTIONPERIODSTART), MAX(CONSTRUCTIONPERIODEND) FROM CONSTRUCTIONBASEINFO";
-                strSQL += string.Format(" WHERE (TRUNCATE(CONSTRUCTIONCODE / 100, 0) = {0})", CommonMotions.cnvTruncate(m_ConstructionCode / 100));
+                strSQL += string.Format(" WHERE (TRUNCATE(CONSTRUCTIONCODE / 100,0) = {0})", CommonMotions.cnvTruncate(m_ConstructionCode / 100));
                 strSQL += string.Format(" AND (TYINGFLG = {0} OR TYINGFLG = {1})"
-                                        , (int)CommonDefine.BaseInfoTyingFlg.Pearent, (int)CommonDefine.BaseInfoTyingFlg.Tying);
-                strSQL += string.Format(" AND CONSTRUCTIONPERIODSTART != DATE_FORMAT('{0}')", DateTime.MinValue.ToShortDateString());
+                                        , (int)CommonDefine.BaseInfoTyingFlg.Parent, (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                //strSQL += string.Format(" AND CONSTRUCTIONPERIODSTART != TO_DATE('{0}')", DateTime.MinValue.ToShortDateString());
+                strSQL += string.Format(" AND CONSTRUCTIONPERIODSTART != STR_TO_DATE('{0}')", DateTime.MinValue.ToShortDateString());
                 ArrayList Arlist = new ArrayList();
-                if (!cbiDB.ExecuteReader(strSQL, ref Arlist)) return;
+                if (!BaseDB.ExecuteReader(strSQL, ref Arlist, false)) return;
                 if (Arlist.Count == 0) return;
                 object[] objRec = (object[])Arlist[0];
                 StartDate = CommonMotions.cnvDate(objRec[0]);
@@ -2254,10 +2325,6 @@
             {
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                cbiDB.close(); cbiDB = null;
-            }
         }
         #endregion
 
@@ -2268,29 +2335,34 @@
         /// <param name="BaseDB"></param>
         /// <param name="LastDate"></param>
         /// <returns></returns>
-        private bool UpdateConstrEndDate(IOConstructionBaseInfo BaseDB, DateTime StartDate, DateTime LastDate)
+        private bool UpdateConstrEndDate(IOConstructionBaseInfo BaseDB)
         {
             try
             {
-                string strSQL = string.Format(" WHERE (TRUNCATE(CONSTRUCTIONCODE / 100, 0) = {0}) AND TYINGFLG = 1", (int)(m_ConstructionCode / 100));
-                List<ConstructionBaseInfo> BaseList = new List<ConstructionBaseInfo>();
-                if (!BaseDB.SelectAction(strSQL, ref BaseList, false)) return false;
-                if (BaseList.Count == 0) return false;
+                DateTime StartDate = new DateTime();
+                DateTime LastDate = new DateTime();
+                
+                // �����H���̐e�������͎q�̏ꍇ�͈�ԍŌ�̍H���I�����擾����
+                FluctuationDataPeriodEnd(BaseDB,ref StartDate, ref LastDate);
+                
+                string strSQL = string.Format(" WHERE (TRUNCATE(CONSTRUCTIONCODE / 100,0) = {0}) AND TYINGFLG = 1", (int)(m_ConstructionCode / 100));
+                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
+                if (!BaseDB.SelectAction(strSQL, ref BaseRec, false)) return false;
 
                 // �H���I���E�H���I���i�����j�����ɍŏI���ōX�V����Ă���Ώ������Ȃ�
-                if (BaseList[0].ConstructionPeriodStart2 != StartDate)
+                if (BaseRec.ConstructionPeriodStart2 != StartDate)
                 {
                     // �����H���̐e���R�[�h�̌_��H���J�n�i�����j���X�V����
-                    if (!BaseDB.UpdateFeild(BaseList[0].ConstructionCode,
-                                            (int)IOConstructionBaseInfo.TableColumn.CONSTRUCTIONPERIODSTART2,
+                    if (!BaseDB.UpdateFeild(BaseRec.ConstructionCode,
+                                            (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodStart2,
                                             StartDate,
                                             false)) return false;
                 }
-                if (BaseList[0].ConstructionPeriodEnd2 != LastDate)
+                if (BaseRec.ConstructionPeriodEnd2 != LastDate)
                 {
                     // �����H���̐e���R�[�h�̌_��H���I���i�����j���X�V����
-                    if (!BaseDB.UpdateFeild(BaseList[0].ConstructionCode,
-                                            (int)IOConstructionBaseInfo.TableColumn.CONSTRUCTIONPERIODEND2,
+                    if (!BaseDB.UpdateFeild(BaseRec.ConstructionCode,
+                                            (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodEnd2,
                                             LastDate,
                                             false)) return false;
                 }
@@ -2363,6 +2435,43 @@
         }
         #endregion
 
+        #region �H����{��񖾍׍폜
+        /// <summary>
+        /// �H����{��񖾍׍폜
+        /// </summary>
+        private bool ConstructionBaseInfoDetailDataDelete(IOConstructionBaseInfoDetail cbidDB)
+        {
+            try
+            {
+                List<ConstructionBaseInfoDetail> workList = new List<ConstructionBaseInfoDetail>();
+
+
+                string strWhere = cbidDB.CreatePrimarykeyString(CommonMotions.cnvIntFromStringCode(m_DspCtrl[(int)DspCnt.ConstructionCode].Text, "-"));
+                if (!cbidDB.SelectAction(strWhere, ref workList, false))
+                {
+                    MessageBox.Show("�H����{��񖾍ׁF�폜�m�F�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                // �f�[�^���͏������Ȃ�
+                if (workList.Count == 0) return true;
+
+                // �f�[�^������ꍇ
+                if (!cbidDB.DeleteAction(strWhere, false))
+                {
+                    MessageBox.Show("�H����{��񖾍ׁF�폜�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region �H����{��񖾍דo�^
         /// <summary>
         /// �H����{��񖾍דo�^
@@ -2513,22 +2622,14 @@
                     m_DspCtrl[(int)DspCnt.ConstructionCode].Text = cbiDB.CreateNewCounstructionCode(PeriodValue).ToString();
                 }
 
+                // �����H���̐e�������͎q�̔���
                 bool TyingDataFlag = false;
-                DateTime StConstrDate = DateTime.MinValue;
-                DateTime LastConstrDate = DateTime.MinValue;
+                // ��ʏ�̑����H���t���O���擾����
+                if (rdbNotFluctuation.Checked)
+                    TyingDataFlag = false;
+                else
+                    TyingDataFlag = true;
 
-                // �����H���̐e�������͎q�̔���
-                int ConstructionCode = CommonMotions.cnvIntFromStringCode(m_DspCtrl[(int)DspCnt.ConstructionCode].Text, "-");       // �H���R�[�h
-                string strTyCheck = cbiDB.CreatePrimarykeyString(ConstructionCode);
-                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
-                cbiDB.SelectAction(strTyCheck, ref BaseRec);
-                if (BaseRec.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard) TyingDataFlag = true;
-                if (rdbNotFluctuation.Checked) TyingDataFlag = false;
-                //if ((pnlFluctuation.Visible == true && rdbExistsFluctuation.Checked == true) || (pnlFluctuation.Visible == false)) LastDateUpDate = true;
-
-                // �����H���̐e�������͎q�̏ꍇ�͈�ԍŌ�̍H���I�����擾����
-                if (TyingDataFlag) FluctuationDataPeriodEnd(ref StConstrDate, ref LastConstrDate);
-
                 // �ꊇ�����Ȃ̂Őڑ����s��
                 cbiDB.connect(); cbiDB.beginTran();
                 cbidDB.connect(); cbidDB.beginTran();
@@ -2562,30 +2663,12 @@
                     return false;
                 }
 
-                int TotalOrdersPrice = 0;
-                // �����H���̐e�������͎q�̏ꍇ�͌_��H���I���i�����j���X�V����
-                if (TyingDataFlag)
-                {
-                    if (!UpdateConstrEndDate(cbiDB, StConstrDate, LastConstrDate))
-                    {
-                        MessageBox.Show("�H�����̉����H���o�^�G���[�ł��B", "�o�^�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        cbiDB.rollback();
-                        cbidDB.rollback();
-                        cpdDB.rollback();
-                        cbLinkDB.rollback();
-                        return false;
-                    }
-                }
-
-                // ����H�����̎󒍋��z���W�v����
-                TotalOrdersPrice = FluctuationDataOrdersPrice(cbiDB);
-
                 // �e�f�[�^���r�̂��߂Ɏ擾����
                 ArrayList ParentData = new ArrayList();
                 int ProcConstrCode = 0;
                 if (!GetFluctuationParent(cbiDB, cbLinkDB, TyingDataFlag, ref ParentData, ref ProcConstrCode))
                 {
-                    MessageBox.Show("�H�����擾�G���[�ł��B", "�擾�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    MessageBox.Show("�\�Z���E�䒠�ύX�p�f�[�^�擾�G���[�ł��B", "�擾�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     cbiDB.rollback();
                     cbidDB.rollback();
                     cpdDB.rollback();
@@ -2593,8 +2676,12 @@
                     return false;
                 }
 
+                // ����H�����̎󒍋��z���W�v����
+                int TotalOrdersPrice = 0;
+                TotalOrdersPrice = FluctuationDataOrdersPrice(cbiDB);
+
                 // �H���\�Z���f�[�^�X�V
-                if (!BudgetDataChange(ApprovalDB, BudgetDB, BudgetDDB, PersonDB, TotalOrdersPrice, ParentData, ProcConstrCode))
+                if (!BudgetDataChange(ApprovalDB, BudgetDB, BudgetDDB, PersonDB, ParentData, ProcConstrCode, TyingDataFlag))
                 {
                     MessageBox.Show("�H���\�Z���f�[�^�X�V�G���[�ł��B", "�X�V�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     cbiDB.rollback();
@@ -2609,11 +2696,23 @@
                     return false;
                 }
 
-                bool bLedgerReCalc = false;
+                // �����H���̐e�������͎q�̏ꍇ�͌_��H���I���i�����E�Z�k�j���X�V����
+                if (TyingDataFlag)
+                {
+                    if (!UpdateConstrEndDate(cbiDB))
+                    {
+                        MessageBox.Show("�H�����̉����H���o�^�G���[�ł��B", "�o�^�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        cbiDB.rollback();
+                        cbidDB.rollback();
+                        cpdDB.rollback();
+                        cbLinkDB.rollback();
+                        return false;
+                    }
+                }
+
                 // �H���ڍב䒠�f�[�^�X�V
-                if (!LedgerDataChange(cbiDB, LedgerDB, LedgerDDB, LedgerEDB, PersonDB, cbLinkDB,
-                                        TotalOrdersPrice, TyingDataFlag, frm, ParentData, ProcConstrCode,
-                                        ref bLedgerReCalc, ref ProcConstrCode))
+                if (!LedgerDataChange(LedgerDB, LedgerDDB,
+                                        TotalOrdersPrice, TyingDataFlag, ParentData, ProcConstrCode, frm, ref ProcConstrCode))
                 {
                     MessageBox.Show("�H���ڍב䒠�f�[�^�X�V�G���[�ł��B", "�X�V�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     cbiDB.rollback();
@@ -2634,6 +2733,26 @@
                     return false;
                 }
 
+                // �����H���i���X�V
+                if (!ClsChangeBaseInfoData.SetParentConstrStatus(cbiDB, m_ConstructionCode))
+                {
+                    MessageBox.Show("�����H���i���X�V�G���[�ł��B", "�X�V�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    cbiDB.rollback();
+                    cbidDB.rollback();
+                    cpdDB.rollback();
+                    cbLinkDB.rollback();
+
+                    ApprovalDB.rollback();
+                    PersonDB.rollback();
+
+                    BudgetDB.rollback();
+                    BudgetDDB.rollback();
+
+                    LedgerDB.rollback();
+                    LedgerDDB.rollback();
+                    LedgerEDB.rollback();
+                }
+
                 // DB�o�^
                 cbiDB.commit();
                 cbidDB.commit();
@@ -2650,21 +2769,18 @@
                 LedgerDDB.commit();
                 LedgerEDB.commit();
 
-                if (bLedgerReCalc)
-                {
-                    // �H���R�[�h�̃Z�b�g
-                    frm.ConstructionCode = ProcConstrCode;
+                // �H���R�[�h�̃Z�b�g
+                frm.ConstructionCode = ProcConstrCode;
 
-                    // �����Ȃ���ʂ��o��
-                    frm.Hide();
+                // �����Ȃ���ʂ��o��
+                frm.Hide();
 
-                    // �Čv�Z����
-                    bool bret = frm.RecalculateLedger;
+                // �Čv�Z����
+                bool bret = frm.RecalculateLedger;
 
-                    // ��ʂ����
-                    frm.Close();
-                }
-                
+                // ��ʂ����
+                frm.Close();
+
                 // �o�^�����͕ω��t���O�N���A
                 m_bChengeAns = false;
 
@@ -2691,6 +2807,8 @@
                 LedgerDB.close(); LedgerDB = null;
                 LedgerDDB.close(); LedgerDDB = null;
                 LedgerEDB.close(); LedgerEDB = null;
+
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
@@ -2702,83 +2820,71 @@
         /// <returns></returns>
         private bool DataRemoveProcess()
         {
-            IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
-            IOConstructionBaseInfoDetail cbidDB = new IOConstructionBaseInfoDetail();
-            IOConstructionProgressDate cpdDB = new IOConstructionProgressDate();
-            IOConstructionLink LinkDB = new IOConstructionLink();
             try
             {
                 if (MessageBox.Show("�\�����̃f�[�^���폜���܂��B", "�폜�m�F"
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return false;
 
-                if (MessageBox.Show("�u�͂�(Y)�v��I������ƕ\�����̍H�����͍폜����܂��I�I\n�{���ɂ�낵���ł����H", "�폜�m�F"
+                string strMessage = "�u�͂�(Y)�v��I������ƕ\�����̍H�����E�֘A�f�[�^�͑S�č폜����܂��I�I\n";
+                strMessage += "�����H���E�����H���͑䒠���A�֘A�f�[�^�S�đΏۂƂȂ�܂�\n";
+                strMessage += "�{���Ɏ��s���Ă��A��낵���ł����H";
+                if (MessageBox.Show(strMessage, "�폜�m�F"
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return false;
 
                 bool MacthFlg = false;
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
-                    MacthFlg = true;
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                    {
+                        // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                        MacthFlg = true;
+                    }
+                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                    {
+                        // �ō��@���Ǘ��ҁi���ׂđΏہj
+                        MacthFlg = true;
+                    }
+                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
+                    {
+                        // �����@���Ǘ��ҁi�@�\�����j
+                        MacthFlg = true;
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                else
                 {
-                    // �ō��@���Ǘ��ҁi���ׂđΏہj
-                    MacthFlg = true;
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+                        // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                        MacthFlg = true;
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
+                    {
+                        // �o�c�҃A�N�Z�X
+                        MacthFlg = true;
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.FreeAuthority].Key)
+                    {
+                        // �����ӔC�ҁi�@�\�����j
+                        MacthFlg = true;
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                {
-                    // �����@���Ǘ��ҁi�@�\�����j
-                    MacthFlg = true;
-                }
+                
                 if (!MacthFlg)
                 {
                     MessageBox.Show("�c�O�ł����I�I\n��A�������͎В����������܂��� �΁`�� (^.^)V", "�폜�m�F", MessageBoxButtons.OK, MessageBoxIcon.Hand);
                     return MacthFlg;
                 }
-
-                //// �ꊇ�����Ȃ̂Őڑ����s��
-                cbiDB.connect(); cbiDB.beginTran();
-                cbidDB.connect(); cbidDB.beginTran();
-                cpdDB.connect(); cpdDB.beginTran();
-                LinkDB.connect(); LinkDB.beginTran();
-
-                // �f�[�^�폜
-                if (!ConstructionLinkDelete(cbiDB, LinkDB))
+                // �폜����
+                if (!ClsChangeBaseInfoData.RemoveAllelationData(m_ConstructionCode))
                 {
-                    LinkDB.rollback();
+                    MessageBox.Show("�H�����폜�Ɏ��s���܂����B", "�폜�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return false;
                 }
 
-                if (!ConstructionBaseInoDataDelete(cbiDB))
-                {
-                    LinkDB.rollback();
-                    cbiDB.rollback();
-                    return false;
-                }
-                if (!ConstructionBaseInfoDetailDataDelete(cbidDB))
-                {
-                    LinkDB.rollback();
-                    cbiDB.rollback();
-                    cbidDB.rollback();
-                    return false;
-                }
-                if (!ConstructionProgressDateDelete(cpdDB))
-                {
-                    LinkDB.rollback();
-                    cbiDB.rollback();
-                    cbidDB.rollback();
-                    cpdDB.rollback();
-                    return false;
-                }
-
-                // DB�o�^
-                cbiDB.commit();
-                cbidDB.commit();
-                cpdDB.commit();
-                LinkDB.commit();
-
-
                 m_bChengeAns = false;
 
                 return true;
@@ -2788,13 +2894,6 @@
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-            finally
-            {
-                cbiDB.close(); cbiDB = null;
-                cbidDB.close(); cbidDB = null;
-                cpdDB.close(); cpdDB = null;
-                LinkDB.close(); LinkDB = null;
-            }
         }
         #endregion
 
@@ -2954,19 +3053,9 @@
                 {
                     InstractorName = "\r\n" + wkInst.Value + titleofhonor + "���H���w������";
                 }
-                // �H���S���ҏ������擾
-                string strLeader = PersonDB.CreatePrimarykeyString(wkselect.Key);
-                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                PersonDB.SelectAction(strLeader, ref PersonRec);
-                List<PersonInChargeMaster> LeaderList = new List<PersonInChargeMaster>();
-                strLeader = string.Format(" WHERE DEPARTMENTCODE = {0}", PersonRec.DepartmentCode);
-                strLeader += string.Format(" AND SECURITYMANAGEMENT < {0}", CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key);
-                strLeader += " ORDER BY SECURITYMANAGEMENT DESC";
-                PersonDB.SelectAction(strLeader, ref LeaderList);
-
                 // ���M�҃Z�b�g
-                data.FromCode = LeaderList[0].PersonCode;
-                data.FromName = LeaderList[0].PersonName;
+                data.FromCode = CommonMotions.LoginUserData.PersonCode;
+                data.FromName = CommonMotions.LoginUserData.PersonName;
 
                 data.MessageTitle = string.Format("{0}�̍H���S���҂ɂ���", m_DspCtrl[(int)DspCnt.ConstructionName].Text);
                 data.MessageContent = string.Format("�H���ԍ��F{0}\r\n", m_DspCtrl[(int)DspCnt.ConstructionCode].Text);
@@ -3655,13 +3744,21 @@
         {
             // ���F�󋵈ꗗ�\��
             m_frmAppList = new FrmApprovalStatusList();
-            m_frmAppList.ConstructionCode = m_ConstructionCode;
-            m_frmAppList.LocationPoint = new Point(this.Right, this.Top);
-            //m_frmAppList.ShowInTaskbar = false;
-            // �N���[�X�h�n���h����������Œ�`����
-            m_frmAppList.FormClosed += new FormClosedEventHandler(FrmAppList_FormClosed);
-            m_frmAppList.Show();
-
+            try
+            {
+                m_frmAppList.ConstructionCode = m_ConstructionCode;
+                m_frmAppList.OrderNo = CommonDefine.s_Default_OrderNo;
+                m_frmAppList.EditLock = m_EditLock;
+                m_frmAppList.LocationPoint = new Point(this.Right, this.Top);
+                //m_frmAppList.ShowInTaskbar = false;
+                // �N���[�X�h�n���h����������Œ�`����
+                m_frmAppList.FormClosed += new FormClosedEventHandler(FrmAppList_FormClosed);
+                m_frmAppList.Show();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -3831,14 +3928,19 @@
                 {
                     pnlCtl.Enabled = false;
                 }
+                // �����H��
+                foreach (Control pnlCtl in pnlFluctuation.Controls)
+                {
+                    pnlCtl.Enabled = false;
+                }
 
                 // �Ō�Ƀ{�^���̏������s��
-                btnApprovalList.Visible = false;
+                //btnApprovalList.Visible = false;
                 btnOrderer.Visible = false;
                 btnSerchZip.Visible = false;
                 btnDataEntry.Visible = false;
                 btnDataDelete.Visible = false;
-                btnDataSelect.Visible = false;
+                btnLink.Visible = false;
 
             }
             catch (Exception ex)
@@ -3847,5 +3949,98 @@
             }
         }
         #endregion
+
+        #region ���z�����f�[�^�I������
+        /// <summary>
+        /// ���z�����f�[�^�I������
+        /// </summary>
+        private void LinkDataExecute()
+        {
+            try
+            {
+                // �T�u�t�H�[���N�����͏������Ȃ�
+                if (m_SubForm) return;
+
+                // �Q�Ǝ��͏������Ȃ�
+                if (m_EditLock) return;
+
+                DataGridView dgv = dgvLink;
+                DataGridViewRow CurRow = dgv.CurrentRow;
+
+                int NewCode = CommonMotions.cnvInt(CurRow.Cells[(int)LinkGridColumn.ConstrCode].Value);
+                if (NewCode == 0) return;
+
+                // ���N���v���Z�X�Z�b�g
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // �I���H���ԍ��Z�b�g
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter[0] = NewCode;
+
+                // �N���[�Y������OFF�ɂ���B
+                m_CloseingProcessOn = false;
+                // ��ʃN���[�Y
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����H�����֏���
+        /// <summary>
+        /// �����H�����֏���
+        /// </summary>
+        private void ReleaseFluctuation()
+        {
+            IOConstructionLink LinkDB = new IOConstructionLink();
+            try
+            {
+                if (bInitFlg) return;
+
+                // �����H����
+                if (rdbNotFluctuation.Checked)
+                {
+                    // �����H���f�[�^������Α����H�����ɂł��Ȃ�
+                    string strSQL = LinkDB.CreatePrimarykeyString(m_ConstructionCode);
+                    List<ConstructionLink> LinkList = new List<ConstructionLink>();
+                    if (LinkDB.SelectAction(strSQL, ref LinkList))
+                    {
+                        if (LinkList.Count != 0)
+                        {
+                            MessageBox.Show("�����H�������݂��܂��A���ɂ͂ł��܂���B", "�����H�����G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                            bInitFlg = true;
+                            rdbExistsFluctuation.Checked = true;
+                            bInitFlg = false;
+                            return;
+                        }
+                    }
+
+                    if (!btnFluctuation.Enabled) return;
+
+                    // �����H���{�^�����b�N
+                    btnFluctuation.Enabled = false;
+                }
+                else
+                {
+                    if (btnFluctuation.Enabled) return;
+
+                    // �����H���{�^������
+                    btnFluctuation.Enabled = true;
+                }
+                // �f�[�^�ύX�t���O
+                m_bChengeAns = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                LinkDB.close(); LinkDB = null;
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmConstructionBaseInfo
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+        #endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] ClsExcute.SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -121,6 +116,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -209,6 +205,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -242,7 +239,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -286,6 +283,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -303,11 +301,24 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -319,6 +330,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -330,6 +345,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 // コピー等で処理が起動した場合は登録処理を起動する(工事情報入力)
@@ -350,11 +366,23 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -366,6 +394,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -377,6 +409,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -394,11 +427,23 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -410,6 +455,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -421,6 +470,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -438,11 +488,23 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -454,6 +516,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -465,6 +531,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -482,11 +549,23 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -498,6 +577,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -509,6 +592,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -526,11 +610,22 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -541,6 +636,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -552,6 +651,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -569,11 +669,24 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -585,6 +698,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -596,6 +713,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -613,11 +731,24 @@
                     if (!DataEntryProcess(false)) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (rdbExistsFluctuation.Checked || lblJointLabel.Visible)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -629,6 +760,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -662,6 +797,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -706,6 +842,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -722,7 +860,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -963,11 +1101,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1136,6 +1275,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.cs	(revision 51)
@@ -324,13 +324,6 @@
         }
         #endregion
 
-        #region �H���\�Z���F�H���S���ҋ��^���\���t�H�[�}�b�g�i�H�����e�j
-        /// <summary>
-        /// �H���S���ҋ��^���\���t�H�[�}�b�g�i�H�����e�j
-        /// </summary>
-        public static string s_InstructorMonthlyFormat = "{0}�����~��{1}�~";
-        #endregion
-
         #region �s�I��F
         /// <summary>
         /// �s�I��F
@@ -349,13 +342,13 @@
             /// </summary>
             Blank = 0,
             /// <summary>
-            /// ������
+            /// ���ς�
             /// </summary>
-            NegotiateNot,
+            Negotiated,
             /// <summary>
-            /// ���ς�
+            /// ����
             /// </summary>
-            Negotiated,
+            NegotiateNot,
         }
         #endregion
 
@@ -363,7 +356,7 @@
         /// <summary>
         /// ��������`
         /// </summary>
-        private string[] s_NegoStr = new string[] { "", "��", "��" };
+        private string[] s_NegoStr = new string[] { "", "��", "��" };
         #endregion
 
         #endregion
@@ -416,6 +409,11 @@
         private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
 
         /// <summary>
+        /// �Y���H����{���i�����H���j
+        /// </summary>
+        private ConstructionBaseInfo m_FluctuationBaseInfo = new ConstructionBaseInfo();
+
+        /// <summary>
         /// ���F�҃��X�g�n���h��
         /// </summary>
         private FrmApprovalAuthorizerList m_frmAuthorizerList = null;
@@ -431,6 +429,11 @@
         private Control[] m_DspLabelCtrl = null;
 
         /// <summary>
+        /// ���x���R���g���[�����f�[�^�ێ��̈�
+        /// </summary>
+        private string[] m_DspLabelLocalData = null;
+
+        /// <summary>
         /// ��`�s�J�E���g�z��
         /// </summary>
         private int[] m_CostsRowCount = null;
@@ -725,7 +728,6 @@
                 // �\���E���F�\������
                 InitApprovalDisplay();
 
-
                 // *-----* �����ړ��{�^���ݒ� *-----*
                 CreateProcessContextMenu(m_SubForm);
                 // *-----* �����ړ��{�^���ݒ� *-----*
@@ -739,7 +741,7 @@
                     // ���F�ΏۃR�[�h���擾����
                     int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
                     // �Č��ɑ΂��Đ\��������Ă��邩���m�F����
-                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode);
+                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode, CommonDefine.s_Default_OrderNo);
                     // ���O�C���҂����F�҂����m�F����
                     bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
                     // �\�����Ń��O�C���҂����F�҂̏ꍇ�͏��F�{�^����\������
@@ -753,12 +755,6 @@
                 dgvAllDisplay.Columns[(int)GridColumn.Negotiation].HeaderCell.Style.Font =
                     new Font("�l�r ����", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
 
-                //EstimatePrice,          // �ώZ�����ϋ��z
-                //NegotiationPrice,       // �ώZ�������z
-                //HopePrice,              // ������]���z
-                //Negotiation,            // ���t���O
-                //ExecPrice,              // ���s���z
-                //Percent,                // �\���䗦
                 // �w�b�_�[�t�H���g��ς���
                 for (int i = (int)GridColumn.EstimatePrice; i <= (int)GridColumn.Percent; i++)
                 {
@@ -1196,6 +1192,8 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.EntryEndMessage("�H���\�Z���f�[�^");
+            
             // �I��
             this.Close();
         }
@@ -1218,6 +1216,8 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.RemoveEndMessage("�H���\�Z���f�[�^");
+
             // �I��
             this.Close();
         }
@@ -1255,6 +1255,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1300,6 +1303,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1315,6 +1321,21 @@
         }
         #endregion
 
+        #region �o��ύX�{�^��
+        /// <summary>
+        /// �o��ύX�{�^��
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnChangeExpenses_Click(object sender, EventArgs e)
+        {
+
+            // �o��ύX����
+            DspChangeExpens();
+
+        }
+        #endregion
+
         #region ���F�p�l���ipnlApproval�j���F�{�^��
         /// <summary>
         /// ���F�p�l���ipnlApproval�j���F�{�^��
@@ -1333,6 +1354,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval, false))
@@ -1380,6 +1403,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Pending, false))
@@ -1427,6 +1452,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.NotApproval, false))
@@ -1464,29 +1491,58 @@
         /// <param name="e"></param>
         private void Grp1radioButton_CheckedChanged(object sender, EventArgs e)
         {
-            textBox1.Enabled = false;
-            textBox1.Text = "";
+            try
+            {
+                textBox1.Enabled = false;
+                textBox1.Text = "";
 
-            // �����w��̎��̂ݓ������͗L
-            // �S�����Čv�Z
-            if (radioButton1.Checked)
-            {
-                // ���^�o��Čv�Z
-                if (!m_bInitFlg) CreatePayrollCosts(false);
+                // �������͏������Ȃ�
+                if (m_bInitFlg)
+                {
+                    if (radioButton3.Checked)
+                    {
+                        textBox1.Enabled = true;
+                        textBox1.Focus();
+                    }
+                    return;
+                }
+
+                // �����w��̎��̂ݓ������͗L
+                // �S�����Čv�Z
+                if (radioButton1.Checked)
+                {
+                    // ���^�o��Čv�Z
+                    CreatePayrollCosts(false);
+
+                }
+                else if (radioButton2.Checked)
+                {
+                    // ���^�o��N���A
+                    ClearDetailLine((int)CostsRowLine.ConstructorRowLine);
+                }
+                else if (radioButton3.Checked)
+                {
+                    textBox1.Enabled = true;
+                    textBox1.Focus();
+                    return;
+                }
+
+                // �e���v�s�v�Z
+                CreateGrossProfit(false);
+
+                // �����v�v�Z
+                CreateNetIncome(false);
+
+                // ���v���z
+                CreateAllTotal(false);
+
+                // �ύX�t���OON
+                m_bChengeAns = true;
             }
-            else if (radioButton2.Checked)
+            catch (Exception ex)
             {
-                // ���^�o��N���A
-                if (!m_bInitFlg) ClearDetailLine((int)CostsRowLine.ConstructorRowLine);
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            else if (radioButton3.Checked)
-            {
-                textBox1.Enabled = true;
-                textBox1.Focus();
-            }
-
-            // �ύX�t���OON
-            m_bChengeAns = true;
         }
         #endregion
 
@@ -1502,6 +1558,15 @@
             {
                 // �S���ҋ��^�v�Z
                 CreatePayrollCosts(false);
+
+                // �e���v�s�v�Z
+                CreateGrossProfit(false);
+
+                // �����v�v�Z
+                CreateNetIncome(false);
+
+                // ���v���z
+                CreateAllTotal(false);
             }
             catch (Exception ex)
             {
@@ -1521,24 +1586,45 @@
             textBox2.Enabled = false;
             textBox2.Text = "";
 
+            // �������͏������Ȃ�
+            if (m_bInitFlg)
+            {
+                if (radioButton6.Checked)
+                {
+                    textBox2.Enabled = true;
+                    textBox2.Focus();
+                }
+                return;
+            }
+
             // �����w��̎��̂ݓ������͗L
             // �U�蕪���Čv�Z
             if (radioButton4.Checked)
             {
                 // ���S���ҋ��^�o��Čv�Z
-                if (!m_bInitFlg) CreateAssistantCosts(false);
+                CreateAssistantCosts(false);
             }
             else if (radioButton5.Checked)
             {
                 // ���S���ҋ��^�o��N���A
-                if (!m_bInitFlg) ClearDetailLine((int)CostsRowLine.AssistantRowLine);
+                ClearDetailLine((int)CostsRowLine.AssistantRowLine);
             }
             else if (radioButton6.Checked)
             {
                 textBox2.Enabled = true;
                 textBox2.Focus();
+                return;
             }
 
+            // �e���v�s�v�Z
+            CreateGrossProfit(false);
+
+            // �����v�v�Z
+            CreateNetIncome(false);
+
+            // ���v���z
+            CreateAllTotal(false);
+
             // �ύX�t���OON
             m_bChengeAns = true;
         }
@@ -1556,6 +1642,15 @@
             {
                 // ���S���ҋ��^�v�Z
                 CreateAssistantCosts(false);
+
+                // �e���v�s�v�Z
+                CreateGrossProfit(false);
+
+                // �����v�v�Z
+                CreateNetIncome(false);
+
+                // ���v���z
+                CreateAllTotal(false);
             }
             catch (Exception ex)
             {
@@ -1576,6 +1671,15 @@
             {
                 // �w�������^�v�Z
                 CreateInstructorCosts(false);
+
+                // �e���v�s�v�Z
+                CreateGrossProfit(false);
+
+                // �����v�v�Z
+                CreateNetIncome(false);
+
+                // ���v�v�Z
+                CreateAllTotal(false);
             }
             catch (Exception ex)
             {
@@ -1587,12 +1691,12 @@
         #region �f�o�b�N�R���o�[�g����
         private void button1_Click(object sender, EventArgs e)
         {
-            CalcPayroll();
+            //CalcPayroll();
         }
 
         private void button2_Click(object sender, EventArgs e)
         {
-            CalcExpenese();
+            //CalcExpenese();
         }
 
         private void button3_Click(object sender, EventArgs e)
@@ -1599,8 +1703,11 @@
         {
             CreateOhtherData();
         }
+
+        private void button4_Click(object sender, EventArgs e)
+        {
+            RecalculateLedgerData();
+        }
         #endregion
-
-
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudget.designer.cs	(revision 51)
@@ -121,6 +121,8 @@
             this.button1 = new System.Windows.Forms.Button();
             this.button2 = new System.Windows.Forms.Button();
             this.button3 = new System.Windows.Forms.Button();
+            this.btnChangeExpenses = new System.Windows.Forms.Button();
+            this.button4 = new System.Windows.Forms.Button();
             this.panel1.SuspendLayout();
             this.pnlGroup2.SuspendLayout();
             this.pnlGroup1.SuspendLayout();
@@ -1123,7 +1125,7 @@
             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(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 95;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
@@ -1133,7 +1135,7 @@
             // 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, 531);
+            this.button1.Location = new System.Drawing.Point(1300, 506);
             this.button1.Name = "button1";
             this.button1.Size = new System.Drawing.Size(37, 35);
             this.button1.TabIndex = 101;
@@ -1145,7 +1147,7 @@
             // 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, 566);
+            this.button2.Location = new System.Drawing.Point(1300, 541);
             this.button2.Name = "button2";
             this.button2.Size = new System.Drawing.Size(37, 35);
             this.button2.TabIndex = 101;
@@ -1157,7 +1159,7 @@
             // button3
             // 
             this.button3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.button3.Location = new System.Drawing.Point(1300, 601);
+            this.button3.Location = new System.Drawing.Point(1300, 576);
             this.button3.Name = "button3";
             this.button3.Size = new System.Drawing.Size(37, 35);
             this.button3.TabIndex = 102;
@@ -1166,6 +1168,32 @@
             this.button3.Visible = false;
             this.button3.Click += new System.EventHandler(this.button3_Click);
             // 
+            // btnChangeExpenses
+            // 
+            this.btnChangeExpenses.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnChangeExpenses.BackColor = System.Drawing.Color.Gold;
+            this.btnChangeExpenses.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
+            this.btnChangeExpenses.Location = new System.Drawing.Point(223, 656);
+            this.btnChangeExpenses.Name = "btnChangeExpenses";
+            this.btnChangeExpenses.Size = new System.Drawing.Size(130, 30);
+            this.btnChangeExpenses.TabIndex = 103;
+            this.btnChangeExpenses.Text = "経費変更";
+            this.btnChangeExpenses.UseVisualStyleBackColor = false;
+            this.btnChangeExpenses.Visible = false;
+            this.btnChangeExpenses.Click += new System.EventHandler(this.btnChangeExpenses_Click);
+            // 
+            // button4
+            // 
+            this.button4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.button4.Location = new System.Drawing.Point(1300, 611);
+            this.button4.Name = "button4";
+            this.button4.Size = new System.Drawing.Size(37, 35);
+            this.button4.TabIndex = 104;
+            this.button4.Text = "３";
+            this.button4.UseVisualStyleBackColor = true;
+            this.button4.Visible = false;
+            this.button4.Click += new System.EventHandler(this.button4_Click);
+            // 
             // FrmConstructionBudget
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -1172,6 +1200,8 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1344, 692);
+            this.Controls.Add(this.button4);
+            this.Controls.Add(this.btnChangeExpenses);
             this.Controls.Add(this.button3);
             this.Controls.Add(this.button2);
             this.Controls.Add(this.button1);
@@ -1297,5 +1327,7 @@
         private System.Windows.Forms.Button button1;
         private System.Windows.Forms.Button button2;
         private System.Windows.Forms.Button button3;
+        private System.Windows.Forms.Button btnChangeExpenses;
+        private System.Windows.Forms.Button button4;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/FrmConstructionBudgetAuxiliary.cs	(revision 51)
@@ -40,6 +40,25 @@
                 {
                     m_CellSize[wrkCell.Index] = wrkCell.Width;
                 }
+
+                // 経営者は経費の変更ができる
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                    {
+                        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)
             {
@@ -111,6 +130,36 @@
                 string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
                 if (!cbDB.SelectAction(strSQL, ref m_ConstructionBaseInfo)) return false;
 
+                // 増減工事の紐付きデータの場合は親データを取得する
+                string strFluctuationSQL = string.Empty;
+
+                switch (m_ConstructionBaseInfo.TyingFlg)
+                {
+                    case (int)CommonDefine.BaseInfoTyingFlg.Standard:
+                        // 通常データ
+                        break;
+                    case (int)CommonDefine.BaseInfoTyingFlg.Parent:
+                        // 増減親データ
+                        m_FluctuationBaseInfo = m_ConstructionBaseInfo;
+                        break;
+                    case (int)CommonDefine.BaseInfoTyingFlg.Tying:
+                        // 増減子データ
+                        strFluctuationSQL = "SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONLINK";
+                        strFluctuationSQL += string.Format(" WHERE FLUCTUATIONCODE = {0}", m_ConstructionCode);
+                        break;
+                }
+
+                // 対象外は処理しない
+                if (strFluctuationSQL.Length == 0) return true;
+                // 紐付きリンクコードより親コードを取得する
+                ArrayList arList = new ArrayList();
+                if (!cbDB.ExecuteReader(strFluctuationSQL, ref arList)) return false;
+                if (arList.Count == 0) return false;
+                // 親の工事情報を取得する
+                object[] objArray = (object[])arList[0];
+                strSQL = cbDB.CreatePrimarykeyString(CommonMotions.cnvInt(objArray[0]));
+                if (!cbDB.SelectAction(strSQL, ref m_FluctuationBaseInfo)) return false;
+
                 return true;
             }
             catch (Exception ex)
@@ -137,7 +186,7 @@
             {
                 // 工事予算の承認データを取得する
                 int Code = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
-                string strSQL = AppDB.CreatePrimarykeyString(m_ConstructionCode, Code, 1);
+                string strSQL = AppDB.CreatePrimarykeyString(m_ConstructionCode, Code, CommonDefine.s_Default_OrderNo, 1);
                 ProcessApproval AppRec = new ProcessApproval();
                 if (!AppDB.SelectAction(strSQL, ref AppRec)) return false;
 
@@ -260,6 +309,9 @@
             // データ行数
             int DispLineCnt = Enum.GetNames(typeof(CostsRowLine)).Length;
             m_CostsRowCount = new int[DispLineCnt];
+
+            m_DspLabelLocalData = new string[CtrlCnt];
+            Array.Clear(m_DspLabelLocalData, 0, m_DspLabelLocalData.Length);
         }
         #endregion
 
@@ -309,7 +361,6 @@
         /// <returns></returns>
         private bool SetConstructorCode()
         {
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
             IOConstructionBudget cbDB = new IOConstructionBudget();
             try
             {
@@ -327,13 +378,14 @@
                 m_Constructor = m_ConstructionBaseInfo.ConstructionPersonCode;
                 if (m_ApprovalFlg) m_Constructor = cbRec.CreatorCode;
 
-                // 工事担当者のマスタを読み込む
-                strSQL = picDB.CreatePrimarykeyString(m_Constructor);
-                PersonInChargeMaster personRec = new PersonInChargeMaster();
-                picDB.SelectAction(strSQL, ref personRec);
+                // 工事担当者の給与を読み込む
+                double MonthryCost = 0;
+                double YearsCost = 0;
+                // 担当者給与金額取得処理
+                CommonMotions.GetSalaryValue(m_Constructor, ref MonthryCost, ref YearsCost, DateTime.Today);
 
                 // 担当者給与単価セット
-                m_CreatorMonthryCost = (int)(personRec.MonthlySalary * CommonDefine.s_SalaryCorrection);
+                m_CreatorMonthryCost = (int)MonthryCost;
                 if (m_ApprovalFlg) m_CreatorMonthryCost = (int)cbRec.CreatorCosts;
 
                 // ----- 副工事担当者情報
@@ -341,10 +393,10 @@
                 m_SubConstractor = m_ConstructionBaseInfo.ConstrSubPersonCode;
                 if (m_ApprovalFlg) m_SubConstractor = cbRec.AssistantCode;
 
-                // 副工事担当者のマスタを読み込む
-                strSQL = picDB.CreatePrimarykeyString(m_SubConstractor);
-                PersonInChargeMaster subPersonRec = new PersonInChargeMaster();
-                picDB.SelectAction(strSQL, ref subPersonRec);
+                //// 副工事担当者のマスタを読み込む
+                //strSQL = picDB.CreatePrimarykeyString(m_SubConstractor);
+                //PersonInChargeMaster subPersonRec = new PersonInChargeMaster();
+                //picDB.SelectAction(strSQL, ref subPersonRec);
 
                 // 副担当者給与単価セット
                 m_AssistantMonthryCost = CommonDefine.AssistantMonthryCost;
@@ -355,10 +407,10 @@
                 m_Instructor = m_ConstructionBaseInfo.ConstructionInstructor;
                 if (m_ApprovalFlg) m_Instructor = cbRec.InstructorCode;
 
-                // 指導員のマスタを読み込む
-                strSQL = picDB.CreatePrimarykeyString(m_Instructor);
-                PersonInChargeMaster instructorRec = new PersonInChargeMaster();
-                picDB.SelectAction(strSQL, ref instructorRec);
+                //// 指導員のマスタを読み込む
+                //strSQL = picDB.CreatePrimarykeyString(m_Instructor);
+                //PersonInChargeMaster instructorRec = new PersonInChargeMaster();
+                //picDB.SelectAction(strSQL, ref instructorRec);
 
                 // 指導員給与単価セット
                 m_InstructorMonthryCost = CommonDefine.InstructorMonthryCost;
@@ -373,7 +425,6 @@
             }
             finally
             {
-                picDB.close(); picDB = null;
                 cbDB.close(); cbDB = null;
             }
         }
@@ -458,6 +509,7 @@
                 picDB.SelectAction(strSQL, ref personRec);
                 m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName].Text = personRec.PersonName;
                 m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName], personRec.PersonName);
+                m_DspLabelLocalData[(int)DspLblCtrlName.CreatorName] = personRec.SealPrintName;
 
                 // 副担当者取得
                 pnlGroup2.Visible = false;
@@ -469,9 +521,10 @@
                     picDB.SelectAction(strSQL, ref subPersonRec);
                     m_DspLabelCtrl[(int)DspLblCtrlName.AssistantName].Text = subPersonRec.PersonName;
                     m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.AssistantName], subPersonRec.PersonName);
+                    m_DspLabelLocalData[(int)DspLblCtrlName.AssistantName] = subPersonRec.SealPrintName;
                 }
 
-                // 指導員は空らず全日（2016/10/25）
+                // 指導員は変わらず全日（2016/10/25）
                 //pnlGroup3.Visible = false;
                 if (m_Instructor != 0)
                 {
@@ -481,6 +534,7 @@
                     picDB.SelectAction(strSQL, ref instructorRec);
                     m_DspLabelCtrl[(int)DspLblCtrlName.InstructorName].Text = instructorRec.PersonName;
                     m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.InstructorName], instructorRec.PersonName);
+                    m_DspLabelLocalData[(int)DspLblCtrlName.InstructorName] = instructorRec.SealPrintName;
                 }
 
                 DateTime StDate = m_ConstructionBaseInfo.ConstructionPeriodStart;
@@ -530,13 +584,21 @@
                     radioButton4.Checked = true;
                 }
 
-                // 一般ユーザーは人件費を変更できない
-                int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
-                if (CommonMotions.LoginUserData.SecurityManagement == User)
+                bool bDspEnable = true;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    pnlGroup1.Enabled = false;
-                    pnlGroup2.Enabled = false;
+                    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;
+                }
+                // 一般ユーザーは人件費を変更できない
+                pnlGroup1.Enabled = bDspEnable;
+                pnlGroup2.Enabled = bDspEnable;
                 return true;
             }
             catch (Exception ex)
@@ -729,10 +791,22 @@
                 // 金額入力の制御
                 CurRow.Cells[(int)GridColumn.HopePrice].ReadOnly = false;
                 CurRow.Cells[(int)GridColumn.ExecPrice].ReadOnly = false;
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {   // 工事担当者は希望金額のみ入力が可能
-                    CurRow.Cells[(int)GridColumn.ExecPrice].ReadOnly = true;
+
+                // 新セキュリティデータ対応済みかを確認する
+                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;
+                }
+                
+                // 工事担当者は希望金額のみ入力が可能
+                CurRow.Cells[(int)GridColumn.ExecPrice].ReadOnly = bReadOnly;
 
             }
             catch (System.Exception ex)
@@ -1071,14 +1145,16 @@
 
                     // 担当者給与経費
                     CreatePayrollCosts(true);
-
-                    // 純利益
-                    CreateNetIncome(true);
                 }
 
+                // 粗利益行計算
+                CreateGrossProfit(false);
+
+                // 純利益計算
+                CreateNetIncome(true);
+
                 // 合計金額
                 CreateAllTotal(true);
-
             }
             catch (Exception ex)
             {
@@ -1255,6 +1331,8 @@
                 // データ編集に関するボタンを非表示にする
                 btnDataEntry.Visible = false;                       // 登録ボタン
                 btnDataDelete.Visible = false;                      // 削除ボタン
+
+                btnChangeExpenses.Visible = false;                  // 経費変更ボタン
             }
             catch (Exception ex)
             {
@@ -1263,6 +1341,39 @@
         }
         #endregion
 
+        #region 参照モード
+        /// <summary>
+        /// 参照モードにして各コントロールへロックをかける
+        /// </summary>
+        private void SeeModeLock()
+        {
+            try
+            {
+                dgvAllDisplay.ReadOnly = true;
+
+                // 各グループボックスを使用禁止にする
+                pnlGroup1.Enabled = false;
+                pnlGroup2.Enabled = false;
+
+                pnlApproval.Visible = false;
+                pnlApprovalButton.Visible = false;
+
+                // 最後にボタンの処理を行う
+                btnApprovalList.Visible = false;
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnLineAdd.Visible = false;
+                btnLineDel.Visible = false;
+                btnChangeExpenses.Visible = false;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 承認者画面表示
         /// <summary>
         /// 承認画面を表示する
@@ -1275,9 +1386,9 @@
                 m_frmAuthorizerList = new FrmApprovalAuthorizerList();
                 // パラメータセット
                 m_frmAuthorizerList.ConstructionCode = m_ConstructionCode;
-                int ProgressComplete = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
+                m_frmAuthorizerList.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
+                m_frmAuthorizerList.OrderNo = CommonDefine.s_Default_OrderNo;
 
-                m_frmAuthorizerList.ApprovalCode = ProgressComplete;
                 // 位置設定
                 m_frmAuthorizerList.LocationPoint = new Point(this.Right, this.Top);
 
@@ -1465,6 +1576,8 @@
                     }
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = DetailRec.GroupCount;
+                    RowData[(int)GridColumn.ComponentCode] = DetailRec.ComponentCode;
+                    RowData[(int)GridColumn.ItemCode] = DetailRec.ItemCode;
                     RowData[(int)GridColumn.ItemName] = DetailRec.FirstString;
                     RowData[(int)GridColumn.TextName] = DetailRec.SecondString;
                     RowData[(int)GridColumn.CompanyType] = DetailRec.CompanyType;
@@ -1486,6 +1599,8 @@
                     RowData[(int)GridColumn.Negotiation] = s_NegoStr[DetailRec.NegotiateFlg];
 
                     // 行セット
+                    // 工期取得
+                    double BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
                     switch (DetailRec.GroupCount)
                     {
                         case (int)FrmConstructionBudget.DataGroup.Expenses:
@@ -1497,15 +1612,27 @@
                             break;
                         case (int)FrmConstructionBudget.DataGroup.PayrollExpenses:
                             // 担当者給与
-                            CreatePayrollCosts(true);
+                            if (DetailRec.EstimatePrice != 0)
+                                RowData[(int)GridColumn.TextName] = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                                                    BetweenTimes.ToString("0.00"),
+                                                                                    (m_CreatorMonthryCost * CommonDefine.s_SalaryCorrection).ToString("#,0"));
+                            CreateDataRow(RowData, false);
                             break;
                         case (int)FrmConstructionBudget.DataGroup.AssistantCosts:
                             // 副担当者給与
-                            CreateAssistantCosts(true);
+                            if (DetailRec.EstimatePrice != 0)
+                                RowData[(int)GridColumn.TextName] = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                                                BetweenTimes.ToString("0.00"),
+                                                                                m_AssistantMonthryCost.ToString("#,0"));
+                            CreateDataRow(RowData, false);
                             break;
                         case (int)FrmConstructionBudget.DataGroup.InstructorCosts:
                             // 指導員給与
-                            CreateInstructorCosts(true);
+                            if (DetailRec.EstimatePrice != 0)
+                                RowData[(int)GridColumn.TextName] = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                                                BetweenTimes.ToString("0.00"),
+                                                                                m_InstructorMonthryCost.ToString("#,0"));
+                            CreateDataRow(RowData, false);
                             break;
                         case (int)FrmConstructionBudget.DataGroup.GrossProfit:
                             // 粗利益行計算
@@ -1627,6 +1754,8 @@
                     RowData[(int)GridColumn.No] = string.Format("{0}-{1}", (int)FrmConstructionBudget.DataGroup.CommonTempCosts, icnt);
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.CommonTempCosts;
+                    RowData[(int)GridColumn.ComponentCode] = DetailRec.ComponentCode;
+                    RowData[(int)GridColumn.ItemCode] = DetailRec.ItemCode;
                     RowData[(int)GridColumn.ItemName] = DetailRec.FirstString;
                     RowData[(int)GridColumn.TextName] = DetailRec.SecondString;
                     RowData[(int)GridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,0");
@@ -1687,6 +1816,8 @@
                     RowData[(int)GridColumn.No] = string.Format("{0}-{1}", (int)FrmConstructionBudget.DataGroup.CommonTempCosts, icnt);
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.CommonTempCosts;
+                    RowData[(int)GridColumn.ComponentCode] = DetailRec.ComponentCode;
+                    RowData[(int)GridColumn.ItemCode] = DetailRec.ItemCode;
                     RowData[(int)GridColumn.ItemName] = DetailRec.ItemName;
                     RowData[(int)GridColumn.CompanyType] = "0";
                     RowData[(int)GridColumn.CompanyCode] = "0";
@@ -1736,22 +1867,30 @@
                 m_CostsRowCount[(int)CostsRowLine.OutSourceCostsLine] = dgvAllDisplay.RowCount - 1;
 
                 // データ読込
-                List<EstimateBudgetDetail> DetailList = new List<EstimateBudgetDetail>();
-                string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" AND GROUPCOUNT = {0} ", (int)GroupName_EstimateBudget.OutSource);
+                //List<EstimateBudgetDetail> DetailList = new List<EstimateBudgetDetail>();
+                ArrayList ArList = new ArrayList();
+                string strSQL = "SELECT A.*, 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);
 
-                if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
+                if (!DetailDB.ExecuteReader(strSQL, ref ArList)) return false;
 
                 int icnt = 1;
-                foreach (EstimateBudgetDetail DetailRec in DetailList)
+                foreach (object[] objRec in ArList)
                 {
                     object[] RowData = new object[Enum.GetNames(typeof(GridColumn)).Length];
+                    EstimateBudgetDetail DetailRec = new EstimateBudgetDetail();
+                    DetailDB.Reader2Struct(objRec, ref DetailRec);
+                    
                     // データセット
                     RowData[(int)GridColumn.No] = string.Format("{0}-{1}", (int)FrmConstructionBudget.DataGroup.OutSourceCosts, icnt);
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.OutSourceCosts;
+                    RowData[(int)GridColumn.ComponentCode] = DetailRec.ComponentCode;
+                    RowData[(int)GridColumn.ItemCode] = DetailRec.ItemCode;
                     RowData[(int)GridColumn.ItemName] = DetailRec.SecondString;
-                    RowData[(int)GridColumn.CompanyType] = 0;
+                    RowData[(int)GridColumn.CompanyType] = (int)CommonDefine.CodeDataType.Subconstractor;
                     RowData[(int)GridColumn.CompanyCode] = DetailRec.CompanyCode;
                     RowData[(int)GridColumn.CompanyName] = DetailRec.FirstString;
                     RowData[(int)GridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,0");
@@ -1760,6 +1899,13 @@
                     RowData[(int)GridColumn.ExecPrice] = DetailRec.NegotiationPrice.ToString("#,0");
                     RowData[(int)GridColumn.Percent] = CalculattionPercent(DetailRec.NegotiationPrice).ToString("0.00");
 
+                    // データタイプセット
+                    int TypePos = ((int)IOEstimateBudgetDetail.TableColumn.UpdateDate) + 1;
+                    if (CommonMotions.cnvString(objRec[TypePos]).Length != 0)
+                        RowData[(int)GridColumn.CompanyType] = (int)CommonDefine.CodeDataType.Subconstractor;
+                    else
+                        RowData[(int)GridColumn.CompanyType] = (int)CommonDefine.CodeDataType.Person;
+
                     // 行セット
                     CreateDataRow(RowData);
                     icnt++;
@@ -1808,7 +1954,6 @@
                 strSQL += " GROUP BY A.COMPANYCODE, A.COMPONENTCODE, A.ITEMCODE, C.COMPANYNAME, A.ITEMNAME, B.PAGETITLE";
                 strSQL += " ORDER BY A.COMPANYCODE, A.COMPONENTCODE";
 
-
                 ArrayList arList = new ArrayList();
                 if (!DetailDB.ExecuteReader(strSQL, ref arList)) return false;
                 int BreakCode = 0;
@@ -1913,7 +2058,7 @@
             RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.OutSourceCosts;
             RowData[(int)GridColumn.ItemName] = ItemName;
             RowData[(int)GridColumn.TextName] = ComponentName;
-            RowData[(int)GridColumn.CompanyType] = 0;
+            RowData[(int)GridColumn.CompanyType] = (int)CommonDefine.CodeDataType.Subconstractor;
             RowData[(int)GridColumn.CompanyCode] = CompanyCode;
             RowData[(int)GridColumn.CompanyName] = CompanyName;
             RowData[(int)GridColumn.EstimatePrice] = SumaryValue.ToString("#,0");
@@ -1978,6 +2123,8 @@
                     RowData[(int)GridColumn.No] = string.Format("{0}-{1}", (int)FrmConstructionBudget.DataGroup.MyConstruction, icnt);
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.MyConstruction;
+                    RowData[(int)GridColumn.ComponentCode] = DetailRec.ComponentCode;
+                    RowData[(int)GridColumn.ItemCode] = DetailRec.ItemCode;
                     RowData[(int)GridColumn.ItemName] = DetailRec.FirstString;
                     RowData[(int)GridColumn.TextName] = DetailRec.SecondString;
                     RowData[(int)GridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,0");
@@ -2047,6 +2194,8 @@
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.No] = string.Format("{0}-{1}", (int)FrmConstructionBudget.DataGroup.MyConstruction, icnt);
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.MyConstruction;
+                    RowData[(int)GridColumn.ComponentCode] = CommonMotions.cnvInt(wrkrec[3]);
+                    RowData[(int)GridColumn.ItemCode] = CommonMotions.cnvInt(wrkrec[4]);
                     RowData[(int)GridColumn.ItemName] = CommonMotions.cnvString(wrkrec[1]).Trim();
                     RowData[(int)GridColumn.TextName] = CommonMotions.cnvString(wrkrec[5]).Trim();
                     RowData[(int)GridColumn.CompanyType] = "0";
@@ -2356,17 +2505,50 @@
         {
             try
             {
+                // 差分日付
+                // ----- 増減工事のこの場合は期間が同じかのチェックを行う
+                if (m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                {
+                    // 親の期間を取得する
+                    DateTime StDate = m_FluctuationBaseInfo.ConstructionPeriodStart;
+                    DateTime EdDate = m_FluctuationBaseInfo.ConstructionPeriodEnd;
+                    // 期間が同じ場合は処理しない
+                    if (StDate == m_ConstructionBaseInfo.ConstructionPeriodStart && EdDate == m_ConstructionBaseInfo.ConstructionPeriodEnd)
+                    {
+                        //radioButton5.Checked = true;
+                    }
+                    else
+                    {
+                        int dDiffDays = 0;
+                        if (radioButton4.Checked)
+                        {
+                            // 全日時の日付を計算する
+                            dDiffDays = CalcDifferenceDate(m_ConstructionBaseInfo.ConstructionPeriodStart,
+                                                                m_ConstructionBaseInfo.ConstructionPeriodEnd);
+                        }
+                        else if (radioButton6.Checked)
+                        {
+                            dDiffDays = CommonMotions.cnvInt(m_DspLabelCtrl[(int)DspLblCtrlName.A_SalaryDays].Text);
+                        }
+
+                        // 日付をセット
+                        m_DspLabelCtrl[(int)DspLblCtrlName.A_SalaryDays].Text = dDiffDays.ToString("#,0");
+                    }
+                }
+
+                // 受注金額
+                double OrdersPrice = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text);
                 // 工期取得
                 double BetweenTimes = 0;
-                // デフォルト項目
-                string ItemString = s_GroupTitle[(int)FrmConstructionBudget.DataGroup.AssistantCosts];
                 // 給与計算
                 double CostsValue = 0;
                 // 工事内容
                 string Content = string.Empty;
+                // 構成比率
+                double AmountConfigRate = 0;
 
                 // 指導員コードの設定           
-                int CodeType = (int)CommonDefine.SearchLogDataType.Person;
+                int CodeType = (int)CommonDefine.CodeDataType.Person;
                 int PersonCode = m_SubConstractor;
 
                 // 設定無時はセットしない
@@ -2377,9 +2559,18 @@
                 {   // ----- 振分
                     // 工期取得
                     BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
-                    // 給与計算
-                    CostsValue = CommonMotions.cnvRound(CommonDefine.AssistantMonthryCost * BetweenTimes);
-                    Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, CommonDefine.AssistantMonthryCost.ToString("#,0"));
+                    // 着工日
+                    DateTime dtStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
+                    // 完了日
+                    DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
+
+                    // 稼働日数取得
+                    int workingCount = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+                    // 支払い給与計算
+                    CommonMotions.CalcPayValueData(CommonDefine.AssistantMonthryCost, OrdersPrice, workingCount, ref CostsValue, ref AmountConfigRate, false);
+                    Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                            BetweenTimes.ToString("0.00"),
+                                            CommonDefine.AssistantMonthryCost.ToString("#,0"));
                 }
                 else if (radioButton5.Checked)
                 {
@@ -2391,9 +2582,12 @@
                     // 日数取得
                     int daycount = CommonMotions.cnvInt(m_DspLabelCtrl[(int)DspLblCtrlName.A_SalaryDays].Text);
                     // 日額給与取得
-                    double daylySalary = CommonMotions.cnvRound(CommonDefine.AssistantMonthryCost / CommonDefine.s_ManHourUnitMonth);
-                    CostsValue = CommonMotions.cnvRound(daylySalary * daycount);
-                    Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, daycount.ToString("0"), daylySalary.ToString("#,0"));
+                    //double daylySalary = CommonMotions.cnvRound(CommonDefine.AssistantMonthryCost / CommonDefine.s_ManHourUnitMonth);
+                    //CostsValue = CommonMotions.cnvRound(daylySalary * daycount);
+                    CommonMotions.CalcPayValueData(CommonDefine.AssistantMonthryCost, OrdersPrice, daycount, ref CostsValue, ref AmountConfigRate, false);
+                    Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                            ClsCalendar.cnvMonthFromDays(daycount).ToString("0.00"),
+                                            CommonDefine.AssistantMonthryCost.ToString("#,0"));
                 }
 
                 // 工事内容
@@ -2404,10 +2598,14 @@
                 if (CreateRowLine)
                 {
                     object[] RowData = new object[Enum.GetNames(typeof(GridColumn)).Length];
+                    string title1 = s_GroupTitle[(int)FrmConstructionBudget.DataGroup.AssistantCosts];
+                    string title2 = string.Empty;
+                    if (m_DspLabelLocalData[(int)DspLblCtrlName.AssistantName].Length != 0)
+                        title2 = string.Format("【{0}氏】", m_DspLabelLocalData[(int)DspLblCtrlName.AssistantName]);
                     // データセット
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.AssistantCosts;
-                    RowData[(int)GridColumn.ItemName] = ItemString;
+                    RowData[(int)GridColumn.ItemName] = string.Format("{0}{1}", title1, title2);
                     RowData[(int)GridColumn.TextName] = Content;
                     RowData[(int)GridColumn.CompanyType] = CodeType;
                     RowData[(int)GridColumn.CompanyCode] = PersonCode;
@@ -2437,15 +2635,6 @@
                 CurRow.Cells[(int)GridColumn.HopePrice].Value = CostsValue.ToString("#,0");
                 CurRow.Cells[(int)GridColumn.ExecPrice].Value = CostsValue.ToString("#,0");
                 CurRow.Cells[(int)GridColumn.Percent].Value = CalculattionPercent(CostsValue).ToString("0.00");
-
-                // 粗利益行計算
-                CreateGrossProfit(false);
-
-                // 純利益計算
-                CreateNetIncome(false);
-
-                // 合計計算
-                CreateAllTotal(false);
             }
             catch (Exception ex)
             {
@@ -2483,17 +2672,19 @@
         {
             try
             {
+                // 受注金額
+                double OrdersPrice = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text);
                 // 工期取得
                 double BetweenTimes = 0;
-                // デフォルト項目
-                string ItemString = s_GroupTitle[(int)FrmConstructionBudget.DataGroup.InstructorCosts];
                 // 給与計算
                 double CostsValue = 0;
                 // 工事内容
                 string Content = string.Empty;
+                // 構成比率
+                double AmountConfigRate = 0;
 
                 // 指導員コードの設定           
-                int CodeType = (int)CommonDefine.SearchLogDataType.Person;
+                int CodeType = (int)CommonDefine.CodeDataType.Person;
                 int PersonCode = m_Instructor;
 
                 // 設定無時はセットしない
@@ -2502,10 +2693,47 @@
                 // ----- 全日振分
                 // 工期取得
                 BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
-                // 給与計算
-                CostsValue = CommonMotions.cnvRound(CommonDefine.InstructorMonthryCost * BetweenTimes);
-                Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, CommonDefine.InstructorMonthryCost.ToString("#,0"));
+                // 着工日
+                DateTime dtStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
+                // 完了日
+                DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
 
+                // 稼働日数取得
+                int workingCount = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+                // 支払い給与計算
+                CommonMotions.CalcPayValueData(CommonDefine.InstructorMonthryCost, OrdersPrice, workingCount, ref CostsValue, ref AmountConfigRate, false);
+                // 給与コンテンツセット
+                Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes.ToString("0.00"), CommonDefine.InstructorMonthryCost.ToString("#,0"));
+
+                // 差分日付
+                int dDiffDays = 0;
+                // ----- 増減工事のこの場合は期間が同じかのチェックを行う
+                if (m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                {
+                    // 親の期間を取得する
+                    DateTime StDate = m_FluctuationBaseInfo.ConstructionPeriodStart2;
+                    DateTime EdDate = m_FluctuationBaseInfo.ConstructionPeriodEnd2;
+                    if (StDate == DateTime.MinValue) StDate = m_FluctuationBaseInfo.ConstructionPeriodStart;
+                    if (EdDate == DateTime.MinValue) EdDate = m_FluctuationBaseInfo.ConstructionPeriodEnd;
+                    // 期間が同じ場合は処理しない
+                    if (StDate == m_FluctuationBaseInfo.ConstructionPeriodStart && EdDate == m_FluctuationBaseInfo.ConstructionPeriodEnd)
+                    {
+                        CostsValue = 0;
+                        Content = string.Empty;
+                    }
+                    else
+                    {
+                        // 差分日付を取得する
+                        dDiffDays = CalcDifferenceDate(m_ConstructionBaseInfo.ConstructionPeriodStart,
+                                                        m_ConstructionBaseInfo.ConstructionPeriodEnd);
+                        // 支払い給与計算
+                        CommonMotions.CalcPayValueData(CommonDefine.InstructorMonthryCost, OrdersPrice, dDiffDays, ref CostsValue, ref AmountConfigRate, false);
+                        // 給与コンテンツセット
+                        Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                ClsCalendar.cnvMonthFromDays(dDiffDays).ToString("0.00"), CommonDefine.InstructorMonthryCost.ToString("#,0"));
+                    }
+                }
+
                 // 工事内容
                 if (!CheckUserAndLeader()) Content = string.Empty;
 
@@ -2515,10 +2743,14 @@
                 if (CreateRowLine)
                 {
                     object[] RowData = new object[Enum.GetNames(typeof(GridColumn)).Length];
+                    string title1 = s_GroupTitle[(int)FrmConstructionBudget.DataGroup.InstructorCosts];
+                    string title2 = string.Empty;
+                    if (m_DspLabelLocalData[(int)DspLblCtrlName.InstructorName].Length != 0)
+                        title2 = string.Format("【{0}氏】", m_DspLabelLocalData[(int)DspLblCtrlName.InstructorName]);
                     // データセット
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.InstructorCosts;
-                    RowData[(int)GridColumn.ItemName] = ItemString;
+                    RowData[(int)GridColumn.ItemName] = string.Format("{0}{1}", title1, title2);
                     RowData[(int)GridColumn.TextName] = Content;
                     RowData[(int)GridColumn.CompanyType] = CodeType;
                     RowData[(int)GridColumn.CompanyCode] = PersonCode;
@@ -2549,15 +2781,6 @@
                 CurRow.Cells[(int)GridColumn.HopePrice].Value = CostsValue.ToString("#,0");
                 CurRow.Cells[(int)GridColumn.ExecPrice].Value = CostsValue.ToString("#,0");
                 CurRow.Cells[(int)GridColumn.Percent].Value = CalculattionPercent(CostsValue).ToString("0.00");
-
-                // 粗利益行計算
-                CreateGrossProfit(false);
-
-                // 純利益計算
-                CreateNetIncome(false);
-
-                // 合計計算
-                CreateAllTotal(false);
             }
             catch (Exception ex)
             {
@@ -2668,9 +2891,12 @@
                 // 承認済みは処理しない
                 if (ApprovalCheck()) return true;
 
-                // 割合がセットされていなければ処理しない
-                if (DetailRec.AmountConfigRate == 0) return false;
+                //// 割合がセットされていなければ処理しない
+                //if (DetailRec.AmountConfigRate == 0) return false;
 
+                // 名前がセットされていなければ処理しない
+                if (DetailRec.FirstString.Length == 0) return false;
+
                 // 受注金額取得
                 double dBase = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text);
                 // 経費率計算
@@ -2697,35 +2923,17 @@
         }
         #endregion
 
-        #region 給与経費行作成・再計算
+        #region 担当者給与表示データ作成
         /// <summary>
-        /// 給与経費行作成・再計算
+        /// 担当者給与表示データ作成
         /// </summary>
-        /// <returns></returns>
-        private void CreatePayrollCosts(bool CreateRowLine)
+        private void CreatePayrollString(ref double BetweenTimes, ref int monthSalary, ref double CostsValue, ref string Content, ref double AmountConfigRate)
         {
             try
             {
-                // 16期以降は給与を表示する
-                if (m_ConstructionBaseInfo.ConstructionPeriod < 16) return;
+                // 受注金額
+                double OrdersPrice = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text);
 
-                // 工期取得
-                double BetweenTimes = 0;
-                // 給与単価
-                int monthSalary = 0;
-                // 給与計算
-                double CostsValue = 0;
-                // 文字列
-                string Content = string.Empty;
-
-                // 工事担当者コードの設定           
-                int CodeType = (int)CommonDefine.SearchLogDataType.Person;
-                int PersonCode = m_Constructor;
-
-                // 設定無時はセットしない
-                if (PersonCode == 0) goto GridSet;
-                if (!pnlGroup1.Visible) goto GridSet;
-
                 if (radioButton1.Checked)
                 {   // ----- 全日振分
                     // 工期取得
@@ -2736,23 +2944,19 @@
                     // 完了日
                     DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
 
-                    // 稼働日取得
-                    //int WorkingDay = ClsCalendar.CalcOperatingDaysCount(dtStart, dtLast);
-                    int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
-
                     // 給与単価
                     monthSalary = m_CreatorMonthryCost;
-
-                    double daylySalary = CommonMotions.cnvRound(monthSalary / CommonDefine.s_ManHourUnitMonth);
-
-                    // 給与計算
-                    CostsValue = CommonMotions.cnvRound(daylySalary * WorkingDay);
-                    Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, monthSalary.ToString("#,0"));
+                    // 稼働日数取得
+                    int workingCount = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+                    // 支払い給与計算
+                    CommonMotions.CalcPayValueData(monthSalary, OrdersPrice, workingCount, ref CostsValue, ref AmountConfigRate);
+                    // 給与コンテンツセット
+                    Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                            BetweenTimes.ToString("0.00"),
+                                            (monthSalary * CommonDefine.s_SalaryCorrection).ToString("#,0"));
                 }
                 else if (radioButton2.Checked)
                 {
-                    CodeType = 0;
-                    PersonCode = 0;
                 }
                 else if (radioButton3.Checked)
                 {   // ----- 日数指定
@@ -2761,23 +2965,102 @@
                     // 担当給与
                     monthSalary = m_CreatorMonthryCost;
                     // 日額給与取得
-                    double daylySalary = CommonMotions.cnvRound(monthSalary / CommonDefine.s_ManHourUnitMonth);
-                    CostsValue = daylySalary * daycount;
-                    Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, daycount.ToString("0"), daylySalary.ToString("#,0"));
+                    CommonMotions.CalcPayValueData(monthSalary, OrdersPrice, daycount, ref CostsValue, ref AmountConfigRate);
+                    // 給与計算
+                    //CostsValue = daylySalary * daycount;
+                    // 給与コンテンツセット
+                    Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                            ClsCalendar.cnvMonthFromDays(daycount).ToString("0.00"), 
+                                            (monthSalary * CommonDefine.s_SalaryCorrection).ToString("#,0"));
                 }
 
                 // ユーザーは金額を見れない
                 if (!CheckUserAndLeader()) Content = string.Empty;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
 
+        #region 給与経費行作成・再計算
+        /// <summary>
+        /// 給与経費行作成・再計算
+        /// </summary>
+        /// <returns></returns>
+        private void CreatePayrollCosts(bool CreateRowLine)
+        {
+            try
+            {
+                // ----- 増減工事のこの場合は期間が同じかのチェックを行う
+                if (m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Tying)
+                {
+                    // 親の期間を取得する
+                    DateTime StDate = m_FluctuationBaseInfo.ConstructionPeriodStart;
+                    DateTime EdDate = m_FluctuationBaseInfo.ConstructionPeriodEnd;
+                    // 期間が同じ場合は処理しない
+                    if (StDate == m_ConstructionBaseInfo.ConstructionPeriodStart && EdDate == m_ConstructionBaseInfo.ConstructionPeriodEnd)
+                    {
+                        //radioButton2.Checked = true;
+                    }
+                    else
+                    {
+                        int dDiffDays = 0;
+                        if (radioButton1.Checked)
+                        {
+                            // 全日時の日付を計算する
+                            dDiffDays = CalcDifferenceDate(m_ConstructionBaseInfo.ConstructionPeriodStart,
+                                                                m_ConstructionBaseInfo.ConstructionPeriodEnd);
+                        }
+                        else
+                        {
+                            dDiffDays = CommonMotions.cnvInt(m_DspLabelCtrl[(int)DspLblCtrlName.SalaryDays].Text);
+                        }
+
+                        // 日付をセット
+                        m_DspLabelCtrl[(int)DspLblCtrlName.SalaryDays].Text = dDiffDays.ToString("#,0");
+                    }
+                }
+
+                // 16期以降は給与を表示する
+                if (m_ConstructionBaseInfo.ConstructionPeriod < 16) return;
+
+                // 受注金額
+                //double OrdersPrice = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text);
+                // 工期取得
+                double BetweenTimes = 0;
+                // 給与単価
+                int monthSalary = 0;
+                // 給与計算
+                double CostsValue = 0;
+                // 文字列
+                string Content = string.Empty;
+                // 構成比率
+                double AmountConfigRate = 0;
+                
+                // 工事担当者コードの設定           
+                int CodeType = (int)CommonDefine.CodeDataType.Person;
+                int PersonCode = m_Constructor;
+
+                // 設定無時はセットしない
+                if (PersonCode == 0) goto GridSet;
+                if (!pnlGroup1.Visible) goto GridSet;
+
+                // 表示文字列作成
+                CreatePayrollString(ref BetweenTimes, ref monthSalary, ref CostsValue, ref Content, ref AmountConfigRate);
+
             GridSet:
                 DataGridView dgv = dgvAllDisplay;
                 if (CreateRowLine)
                 {
                     object[] RowData = new object[Enum.GetNames(typeof(GridColumn)).Length];
+                    string title1 = s_GroupTitle[(int)FrmConstructionBudget.DataGroup.PayrollExpenses];
+                    string title2 = m_DspLabelLocalData[(int)DspLblCtrlName.CreatorName];
                     // データセット
                     RowData[(int)GridColumn.FixFlg] = "*";
                     RowData[(int)GridColumn.GroupCount] = (int)FrmConstructionBudget.DataGroup.PayrollExpenses;
-                    RowData[(int)GridColumn.ItemName] = s_GroupTitle[(int)FrmConstructionBudget.DataGroup.PayrollExpenses];
+                    RowData[(int)GridColumn.ItemName] = string.Format("{0}【{1}氏】", title1, title2);
                     RowData[(int)GridColumn.TextName] = Content;
                     RowData[(int)GridColumn.CompanyType] = CodeType;
                     RowData[(int)GridColumn.CompanyCode] = PersonCode;
@@ -2808,19 +3091,37 @@
                 CurRow.Cells[(int)GridColumn.HopePrice].Value = CostsValue.ToString("#,0");
                 CurRow.Cells[(int)GridColumn.ExecPrice].Value = CostsValue.ToString("#,0");
                 CurRow.Cells[(int)GridColumn.Percent].Value = CalculattionPercent(CostsValue).ToString("0.00");
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
 
-                // 粗利益行計算
-                CreateGrossProfit(false);
+        #region 差分の日数を返す
+        /// <summary>
+        /// 差分の日数を返す
+        /// </summary>
+        /// <returns></returns>
+        public static int CalcDifferenceDate(DateTime StDate, DateTime EdDate)
+        {
+            try
+            {
+                int iRet = 0;
 
-                // 純利益計算
-                CreateNetIncome(false);
+                // ----- 当初日数
+                // 経過日数を求める
+                TimeSpan tsdays = EdDate.Date - StDate.Date;
+                // 計算では当日の時間引くので＋１する
+                iRet = (int)(tsdays.Days + 1.0);
 
-                // 合計計算
-                CreateAllTotal(false);
+                return iRet;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
             }
         }
         #endregion
@@ -3115,11 +3416,23 @@
                 // 金額入力の制御
                 SetData.Cells[(int)GridColumn.HopePrice].ReadOnly = false;
                 SetData.Cells[(int)GridColumn.ExecPrice].ReadOnly = false;
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {   // 工事担当者は希望金額のみ入力が可能
-                    SetData.Cells[(int)GridColumn.ExecPrice].ReadOnly = true;
+
+                // 新セキュリティデータ対応済みかを確認する
+                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;
+                }
 
+                // 工事担当者は希望金額のみ入力が可能
+                SetData.Cells[(int)GridColumn.ExecPrice].ReadOnly = bReadOnly;
+                
                 // 自分より下の集計行を加算する
                 for (int i = GroupLineNo + 1; i < m_CostsRowCount.Length; i++)
                 {
@@ -3917,7 +4230,7 @@
                 // ----- 工事コード・承認機能番号取得
                 int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
-                if (!ClsApprovalPermission.CheckPetition(iConstructionCode, iApprovalCode)) return;
+                if (!ClsApprovalPermission.CheckPetition(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo)) return;
 
                 // ----- 申請済の場合
                 // 申請ボタンの表示
@@ -3930,7 +4243,7 @@
                 btnApproval.Visible = true;
 
                 // ----- 承認済の場合
-                if (ClsApprovalPermission.CheckApproval(iConstructionCode, iApprovalCode))
+                if (ClsApprovalPermission.CheckApproval(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo))
                 {
                     btnApproval.Text = CommonDefine.ApprovalButtonString[1];
                     btnApproval.ForeColor = Color.Black;
@@ -3964,10 +4277,10 @@
                 int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
                 // 担当部署取得
-                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode);
+                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認データ取得
-                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode);
+                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認経路マスタ取得
                 int MasterCount = ClsApprovalPermission.GetApprovalMasterCount(iApprovalCode, DepartmentCode);
@@ -4055,33 +4368,6 @@
         }
         #endregion
 
-        #region 参照モード
-        /// <summary>
-        /// 参照モードにして各コントロールへロックをかける
-        /// </summary>
-        private void SeeModeLock()
-        {
-            try
-            {
-                dgvAllDisplay.ReadOnly = true;
-                pnlApproval.Visible = false;
-                pnlApprovalButton.Visible = false;
-                
-                // 最後にボタンの処理を行う
-                btnApprovalList.Visible = false;
-                btnDataEntry.Visible = false;
-                btnDataDelete.Visible = false;
-                btnLineAdd.Visible = false;
-                btnLineDel.Visible = false;
-
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region セルの入力後処理
         /// <summary>
         /// セルの入力後処理
@@ -4154,18 +4440,18 @@
                 DataGridViewRow wrkRow = dgvAllDisplay.Rows[RowCnt];
 
                 string NegoStr = CommonMotions.cnvString(wrkRow.Cells[(int)GridColumn.Negotiation].Value);
-                
-                if (NegoStr.Equals(s_NegoStr[(int)NegotiateNo.NegotiateNot]))
-                {   // 未交渉➝交渉済み
+
+                if (NegoStr.Equals(s_NegoStr[(int)NegotiateNo.Blank]))
+                {   // 未定➝交渉済み
                     NegoStr = s_NegoStr[(int)NegotiateNo.Negotiated];
                 }
                 else if (NegoStr.Equals(s_NegoStr[(int)NegotiateNo.Negotiated]))
-                {   // 交渉済み➝未定
-                    NegoStr = s_NegoStr[(int)NegotiateNo.Blank];
+                {   // 交渉済み➝交渉中
+                    NegoStr = s_NegoStr[(int)NegotiateNo.NegotiateNot];
                 }
                 else
-                {   // 未定➝未交渉
-                    NegoStr = s_NegoStr[(int)NegotiateNo.NegotiateNot];
+                {   // 交渉中➝未定
+                    NegoStr = s_NegoStr[(int)NegotiateNo.Blank];
                 }
 
                 wrkRow.Cells[(int)GridColumn.Negotiation].Value = NegoStr;
@@ -4188,50 +4474,89 @@
             try
             {
                 bool bPermit = false;
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // システム管理者
-                    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)
-                {
+                    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);
+                        // 上長は工事が自部署の関連だけ
+                        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);
 
-                    foreach (int Personcode in PersonList)
-                    {
-                        string strSQL = PersonDB.CreatePrimarykeyString(Personcode);
-                        PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                        if (!PersonDB.SelectAction(strSQL, ref PersonRec)) continue;
+                        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;
+                            // 所属上長では無ければfalse
+                            if (PersonRec.DepartmentCode == CommonMotions.LoginUserData.DepartmentCode)
+                            {
+                                bPermit = true;
+                                break;
+                            }
                         }
+
                     }
-
+                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // 一般ユーザー
+                        bPermit = false;
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                else
                 {
-                    // 一般ユーザー
-                    bPermit = false;
+                    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;
+                    }
                 }
                 return bPermit;
             }
@@ -4247,7 +4572,124 @@
         }
         #endregion
 
+        #region 経費変更画面表示
+        /// <summary>
+        /// 経費変更画面表示
+        /// </summary>
+        private void DspChangeExpens()
+        {
+            FrmChangeExpenses frm = new FrmChangeExpenses();
+            try
+            {
+                // データ取得
+                ArrayList GridExpens = new ArrayList();
+                GetExpensesData(ref GridExpens);
 
+                // パラメタセット
+                frm.OrdersPrice = label6.Text;
+                frm.GridData = GridExpens;
+
+                // 画面表示
+                frm.ShowDialog();
+
+                // 終了時キャンセルは以下を処理しない
+                if (frm.EndButton == DialogResult.Cancel) return;
+
+                // データセット
+                SetExpensesData(frm.GridData);
+
+                // 合計金額
+                CreateAllTotal(false);
+
+                // 変更フラグON
+                m_bChengeAns = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 画面より経費データを取得する
+        /// <summary>
+        /// 画面より経費データを取得する
+        /// </summary>
+        /// <param name="GridExpens"></param>
+        private void GetExpensesData(ref ArrayList GridExpens)
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    DataGridViewRow CurRow = dgv.Rows[i];
+                    int GroupNo = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.GroupCount].Value);
+                    int ComponentCode = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.ComponentCode].Value);
+                    if (GroupNo != (int)DataGroup.Expenses) continue;
+                    if (ComponentCode == 0) continue;
+
+                    // 経費を取得する
+                    string ExpensName = CommonMotions.cnvString(CurRow.Cells[(int)GridColumn.ItemName].Value);
+
+                    object[] DataRec = new object[] { CurRow.Cells[(int)GridColumn.No].Value,
+                                                        CurRow.Cells[(int)GridColumn.ComponentCode].Value,
+                                                        ExpensName.Substring(0, ExpensName.IndexOf("(")),
+                                                        CurRow.Cells[(int)GridColumn.Percent].Value,
+                                                        CurRow.Cells[(int)GridColumn.ExecPrice].Value
+                    };
+                    GridExpens.Add(DataRec);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 変更経費表示処理
+        /// <summary>
+        /// 変更経費表示処理
+        /// </summary>
+        /// <param name="ExpensList"></param>
+        private void SetExpensesData(ArrayList ExpensList)
+        {
+            try
+            {
+                if (ExpensList.Count == 0) return;
+
+                DataGridView dgv = dgvAllDisplay;
+                int ListCnt = 0;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    DataGridViewRow CurRow = dgv.Rows[i];
+                    int GroupNo = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.GroupCount].Value);
+                    if (GroupNo != (int)DataGroup.Expenses) continue;
+                    int ComponentCode = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.ComponentCode].Value);
+                    if (ComponentCode == 0) continue;
+
+                    object[] DataRec = (object[])ExpensList[ListCnt];
+
+                    CurRow.Cells[(int)GridColumn.ItemName].Value = string.Format("{0}({1}%)", DataRec[2], CommonMotions.cnvDouble(DataRec[3]).ToString("0.00"));
+                    CurRow.Cells[(int)GridColumn.HopePrice].Value = CommonMotions.cnvInt(DataRec[4]).ToString("#,#");
+                    CurRow.Cells[(int)GridColumn.ExecPrice].Value = CommonMotions.cnvInt(DataRec[4]).ToString("#,#");
+                    CurRow.Cells[(int)GridColumn.Percent].Value = CommonMotions.cnvDouble(DataRec[3]).ToString("0.00");
+
+                    ListCnt++;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
         // ---------- データコンバートロジック
         #region 給与計算
         /// <summary>
@@ -4302,7 +4744,7 @@
                             }
                         }
 
-                        AbortFlg = ClsChangeLedgerData.CalculatePayment(LedgerRec.ConstructionCode, paraD, true);
+                        AbortFlg = ClsChangeLedgerData.CalculatePayment(LedgerRec, paraD, DateTime.MinValue);
                         if (!AbortFlg) break;
                         if (EndProc) break;
                     }
@@ -4346,126 +4788,171 @@
         /// <summary>
         /// 経費再計算
         /// </summary>
-        private void CalcExpenese()
+        //private void CalcExpenese()
+        //{
+            //IOConstructionLedger LedgerDB = new IOConstructionLedger();
+            //IOConstructionLedgerDetail LedgerDDB = new IOConstructionLedgerDetail();
+            //IOConstructionLedgerExcute LedgerEDB = new IOConstructionLedgerExcute();
+            //FrmConstructionLedger frm = new FrmConstructionLedger();
+
+            //try
+            //{
+            //    LedgerDB.connect(); LedgerDB.beginTran();
+            //    LedgerDDB.connect();LedgerDDB.beginTran();
+            //    LedgerEDB.connect(); LedgerEDB.beginTran();
+                
+            //    // 経費率のセット
+            //    string strSQL1 = "SELECT A.CONSTRUCTIONCODE, E.DETAILSTRING, F.DEPARTMENTSTRING, A.LINECOUNT, A.FIRSTSTRING";
+            //    strSQL1 += ", A.EXECUTIONAMOUNT, A.AMOUNTCONFIGRATE, B.CONSTRUCTIONPERIOD, C.DEPARTMENTCODE, D.NAMECODE";
+            //    strSQL1 += ", D.EXPENSESRATIO, ROUND(B.ORDERSDECISIONPRICE * (A.AMOUNTCONFIGRATE / 100.0)), G.NAMESTRING";
+            //    strSQL1 += " FROM CONSTRUCTIONLEDGERDETAIL A, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER C, DEPARTMENTEXPENSESMASTER D, CONSTRUCTIONBASEINFODETAIL E, DEPARTMENTMASTER F, DIVISIONMASTER G";
+            //    strSQL1 += " WHERE A.CONSTRUCTIONCODE <> 2015043401";
+            //    strSQL1 += " AND A.GROUPCOUNT = 1";
+            //    strSQL1 += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+            //    strSQL1 += " AND B.CONSTRUCTIONPERIOD = 16";
+            //    strSQL1 += " AND B.CONSTRUCTIONPERSONCODE = C.PERSONCODE";
+            //    strSQL1 += " AND (C.DEPARTMENTCODE = D.DEPARTMENTCODE AND B.CONSTRUCTIONPERIOD = D.EXPENSESPERIOD AND D.DISPLAYORDER = (A.LINECOUNT - 1))";
+            //    strSQL1 += " AND E.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND E.DETAILNO = 2";
+            //    strSQL1 += " AND F.DEPARTMENTCODE = C.DEPARTMENTCODE";
+            //    strSQL1 += " AND G.DIVISIONCODE = 3";
+            //    strSQL1 += " AND G.NAMECODE = D.NAMECODE";
+            //    strSQL1 += " ORDER BY A.CONSTRUCTIONCODE, A.LINECOUNT";
+            //    ArrayList arList = new ArrayList();
+            //    if (!LedgerDB.ExecuteReader(strSQL1, ref arList, false)) return;
+            //    foreach (object[] CurRec in arList)
+            //    {
+            //        int CurConstrCode = CommonMotions.cnvInt(CurRec[(int)Read1Enum.CONSTRUCTIONCODE]);
+            //        int CurLineCnt = CommonMotions.cnvInt(CurRec[(int)Read1Enum.LINECOUNT]);
+            //        int CurCompnentCode = CommonMotions.cnvInt(CurRec[(int)Read1Enum.NAMECODE]);
+            //        double CurParcent = CommonMotions.cnvDouble(CurRec[(int)Read1Enum.EXPENSESRATIO]);
+            //        int CurValue = CommonMotions.cnvInt(CurRec[(int)Read1Enum.EXPENESE]);
+            //        string strValue = CommonMotions.cnvString(CurRec[(int)Read1Enum.EXPENESENAME]) + string.Format("({0}%)", CurParcent.ToString("0.00"));
+            //        // 項目名
+            //        if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.FirstString, strValue, 1, CurLineCnt, false))
+            //        {
+            //            LedgerDDB.rollback();
+            //            return;
+            //        }
+            //        // 実行金額
+            //        if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.ExecutionAmount, CurValue, 1, CurLineCnt, false))
+            //        {
+            //            LedgerDDB.rollback();
+            //            return;
+            //        }
+            //        // 経費率セット
+            //        if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.AmountConfigRate, CurParcent, 1, CurLineCnt, false))
+            //        {
+            //            LedgerDDB.rollback();
+            //            return;
+            //        }
+            //        // 経費コード
+            //        if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.ComponentCode, CurCompnentCode, 1, CurLineCnt, false))
+            //        {
+            //            LedgerDDB.rollback();
+            //            return;
+            //        }
+            //    }
+
+            //    string strSQL2 = "SELECT A.CONSTRUCTIONCODE, A.TYINGFLG, B.CONSTRUCTIONCODE, B.LINECOUNT, B.DataCnt,";
+            //    strSQL2 += " C.CONSTRUCTIONCODE, C.GROUPCOUNT, C.LINECOUNT, C.COLUMNCOUNT,";
+            //    strSQL2 += " ROUND(A.ORDERSDECISIONPRICE * (D.AMOUNTCONFIGRATE / 100.0))";
+            //    strSQL2 += " FROM CONSTRUCTIONBASEINFO A,";
+            //    strSQL2 += " (SELECT CONSTRUCTIONCODE, LINECOUNT, COUNT(*) DataCnt FROM CONSTRUCTIONLEDGEREXCUTE WHERE GROUPCOUNT = 1 GROUP BY CONSTRUCTIONCODE, LINECOUNT) B,";
+            //    strSQL2 += " CONSTRUCTIONLEDGEREXCUTE C,";
+            //    strSQL2 += " CONSTRUCTIONLEDGERDETAIL D";
+            //    strSQL2 += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+            //    strSQL2 += " AND A.CONSTRUCTIONCODE <> 2015043401";
+            //    strSQL2 += " AND B.DataCnt = 1";
+            //    strSQL2 += " AND C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+            //    strSQL2 += " AND C.GROUPCOUNT = 1";
+            //    strSQL2 += " AND C.LINECOUNT = B.LINECOUNT";
+            //    strSQL2 += " AND D.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+            //    strSQL2 += " AND D.GROUPCOUNT = C.GROUPCOUNT";
+            //    strSQL2 += " AND D.LINECOUNT = C.LINECOUNT";
+            //    strSQL2 += " ORDER BY C.CONSTRUCTIONCODE, C.GROUPCOUNT, C.LINECOUNT, C.COLUMNCOUNT";
+            //    ArrayList arList2 = new ArrayList();
+            //    if (!LedgerEDB.ExecuteReader(strSQL2, ref arList2, false))
+            //    {
+            //        LedgerDDB.rollback();
+            //        return;
+            //    }
+            //    foreach (object[] CurRec in arList2)
+            //    {
+            //        int CONSTRUCTIONCODE = CommonMotions.cnvInt(CurRec[0]);
+            //        int TYINGFLG = CommonMotions.cnvInt(CurRec[1]);
+            //        int CONSTRUCTIONCODE2 = CommonMotions.cnvInt(CurRec[2]);
+            //        int LINECOUNT = CommonMotions.cnvInt(CurRec[3]);
+            //        int DataCnt = CommonMotions.cnvInt(CurRec[4]);
+            //        int CONSTRUCTIONCODE3 = CommonMotions.cnvInt(CurRec[5]);
+            //        int GROUPCOUNT = CommonMotions.cnvInt(CurRec[6]);
+            //        int LINECOUNT2 = CommonMotions.cnvInt(CurRec[7]);
+            //        int COLUMNCOUNT = CommonMotions.cnvInt(CurRec[8]);
+            //        int iValue =CommonMotions.cnvInt(CurRec[9]);
+
+            //        if (!LedgerEDB.UpdateFeild(CONSTRUCTIONCODE3, GROUPCOUNT, LINECOUNT2, COLUMNCOUNT, (int)IOConstructionLedgerExcute.TableColumn.PaymentAmount, iValue, false))
+            //        {
+            //            LedgerDDB.rollback();
+            //            return;
+            //        }
+            //    }
+
+            //    LedgerDB.commit();
+            //    LedgerDDB.commit();
+            //    LedgerEDB.commit();
+
+            //    string strSQL3 = "SELECT A.CONSTRUCTIONCODE FROM CONSTRUCTIONLEDGER A, CONSTRUCTIONBASEINFO B";
+            //    strSQL3 += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+            //    strSQL3 += " AND B.CONSTRUCTIONPERIOD = 16";
+            //    strSQL3 += " ORDER BY A.CONSTRUCTIONCODE";
+            //    ArrayList arList3 = new ArrayList();
+            //    if (!LedgerDB.ExecuteReader(strSQL3, ref arList3)) return;
+            //    foreach (object[] CurRec in arList3)
+            //    {
+            //        // 工事コードのセット
+            //        frm.ConstructionCode = CommonMotions.cnvInt(CurRec[0]);
+
+            //        // 見えない画面を出す
+            //        frm.Hide();
+            //        // フォーム非表示
+            //        //frm.Visible = false;
+
+            //        // 再計算処理
+            //        if (!frm.RecalculateLedger) break;
+            //    }
+            //    // 画面を閉じる
+            //    frm.Close();
+            //}
+            //catch (Exception ex)
+            //{
+            //    logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            //}
+            //finally
+            //{
+            //    LedgerDB.close(); LedgerDB = null;
+            //    LedgerDDB.close(); LedgerDDB = null;
+            //    LedgerEDB.close(); LedgerEDB = null;
+
+            //    frm.Dispose(); frm = null;
+            //}
+        //}
+        #endregion
+
+        #region 未作成データ行作成処理
+        /// <summary>
+        /// 未作成データ行作成処理
+        /// </summary>
+        private void CreateOhtherData()
         {
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
-            IOConstructionLedgerDetail LedgerDDB = new IOConstructionLedgerDetail();
-            IOConstructionLedgerExcute LedgerEDB = new IOConstructionLedgerExcute();
             FrmConstructionLedger frm = new FrmConstructionLedger();
 
             try
             {
-                LedgerDB.connect(); LedgerDB.beginTran();
-                LedgerDDB.connect();LedgerDDB.beginTran();
-                LedgerEDB.connect(); LedgerEDB.beginTran();
-                
-                // 経費率のセット
-                string strSQL1 = "SELECT A.CONSTRUCTIONCODE, E.DETAILSTRING, F.DEPARTMENTSTRING, A.LINECOUNT, A.FIRSTSTRING";
-                strSQL1 += ", A.EXECUTIONAMOUNT, A.AMOUNTCONFIGRATE, B.CONSTRUCTIONPERIOD, C.DEPARTMENTCODE, D.NAMECODE";
-                strSQL1 += ", D.EXPENSESRATIO, ROUND(B.ORDERSDECISIONPRICE * (A.AMOUNTCONFIGRATE / 100.0)), G.NAMESTRING";
-                strSQL1 += " FROM CONSTRUCTIONLEDGERDETAIL A, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER C, DEPARTMENTEXPENSESMASTER D, CONSTRUCTIONBASEINFODETAIL E, DEPARTMENTMASTER F, DIVISIONMASTER G";
-                strSQL1 += " WHERE A.CONSTRUCTIONCODE <> 2015043401";
-                strSQL1 += " AND A.GROUPCOUNT = 1";
-                strSQL1 += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
-                strSQL1 += " AND B.CONSTRUCTIONPERIOD = 16";
-                strSQL1 += " AND B.CONSTRUCTIONPERSONCODE = C.PERSONCODE";
-                strSQL1 += " AND (C.DEPARTMENTCODE = D.DEPARTMENTCODE AND B.CONSTRUCTIONPERIOD = D.EXPENSESPERIOD AND D.DISPLAYORDER = (A.LINECOUNT - 1))";
-                strSQL1 += " AND E.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND E.DETAILNO = 2";
-                strSQL1 += " AND F.DEPARTMENTCODE = C.DEPARTMENTCODE";
-                strSQL1 += " AND G.DIVISIONCODE = 3";
-                strSQL1 += " AND G.NAMECODE = D.NAMECODE";
-                strSQL1 += " ORDER BY A.CONSTRUCTIONCODE, A.LINECOUNT";
+                string strSQL = "SELECT B.CONSTRUCTIONCODE FROM CONSTRUCTIONLEDGER A, CONSTRUCTIONBASEINFO B WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.CONSTRUCTIONPERIOD = 16";
                 ArrayList arList = new ArrayList();
-                if (!LedgerDB.ExecuteReader(strSQL1, ref arList, false)) return;
+                if (!LedgerDB.ExecuteReader(strSQL, ref arList)) return;
                 foreach (object[] CurRec in arList)
                 {
-                    int CurConstrCode = CommonMotions.cnvInt(CurRec[(int)Read1Enum.CONSTRUCTIONCODE]);
-                    int CurLineCnt = CommonMotions.cnvInt(CurRec[(int)Read1Enum.LINECOUNT]);
-                    int CurCompnentCode = CommonMotions.cnvInt(CurRec[(int)Read1Enum.NAMECODE]);
-                    double CurParcent = CommonMotions.cnvDouble(CurRec[(int)Read1Enum.EXPENSESRATIO]);
-                    int CurValue = CommonMotions.cnvInt(CurRec[(int)Read1Enum.EXPENESE]);
-                    string strValue = CommonMotions.cnvString(CurRec[(int)Read1Enum.EXPENESENAME]) + string.Format("({0}%)", CurParcent.ToString("0.00"));
-                    // 項目名
-                    if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.FirstString, strValue, 1, CurLineCnt, false))
-                    {
-                        LedgerDDB.rollback();
-                        return;
-                    }
-                    // 実行金額
-                    if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.ExecutionAmount, CurValue, 1, CurLineCnt, false))
-                    {
-                        LedgerDDB.rollback();
-                        return;
-                    }
-                    // 経費率セット
-                    if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.AmountConfigRate, CurParcent, 1, CurLineCnt, false))
-                    {
-                        LedgerDDB.rollback();
-                        return;
-                    }
-                    // 経費コード
-                    if (!LedgerDDB.UpdateFeild(CurConstrCode, (int)IOConstructionLedgerDetail.DataColumn.ComponentCode, CurCompnentCode, 1, CurLineCnt, false))
-                    {
-                        LedgerDDB.rollback();
-                        return;
-                    }
-                }
-
-                string strSQL2 = "SELECT A.CONSTRUCTIONCODE, A.TYINGFLG, B.CONSTRUCTIONCODE, B.LINECOUNT, B.DataCnt,";
-                strSQL2 += " C.CONSTRUCTIONCODE, C.GROUPCOUNT, C.LINECOUNT, C.COLUMNCOUNT,";
-                strSQL2 += " ROUND(A.ORDERSDECISIONPRICE * (D.AMOUNTCONFIGRATE / 100.0))";
-                strSQL2 += " FROM CONSTRUCTIONBASEINFO A,";
-                strSQL2 += " (SELECT CONSTRUCTIONCODE, LINECOUNT, COUNT(*) DataCnt FROM CONSTRUCTIONLEDGEREXCUTE WHERE GROUPCOUNT = 1 GROUP BY CONSTRUCTIONCODE, LINECOUNT) B,";
-                strSQL2 += " CONSTRUCTIONLEDGEREXCUTE C,";
-                strSQL2 += " CONSTRUCTIONLEDGERDETAIL D";
-                strSQL2 += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
-                strSQL2 += " AND A.CONSTRUCTIONCODE <> 2015043401";
-                strSQL2 += " AND B.DataCnt = 1";
-                strSQL2 += " AND C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
-                strSQL2 += " AND C.GROUPCOUNT = 1";
-                strSQL2 += " AND C.LINECOUNT = B.LINECOUNT";
-                strSQL2 += " AND D.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
-                strSQL2 += " AND D.GROUPCOUNT = C.GROUPCOUNT";
-                strSQL2 += " AND D.LINECOUNT = C.LINECOUNT";
-                strSQL2 += " ORDER BY C.CONSTRUCTIONCODE, C.GROUPCOUNT, C.LINECOUNT, C.COLUMNCOUNT";
-                ArrayList arList2 = new ArrayList();
-                if (!LedgerEDB.ExecuteReader(strSQL2, ref arList2, false))
-                {
-                    LedgerDDB.rollback();
-                    return;
-                }
-                foreach (object[] CurRec in arList2)
-                {
-                    int CONSTRUCTIONCODE = CommonMotions.cnvInt(CurRec[0]);
-                    int TYINGFLG = CommonMotions.cnvInt(CurRec[1]);
-                    int CONSTRUCTIONCODE2 = CommonMotions.cnvInt(CurRec[2]);
-                    int LINECOUNT = CommonMotions.cnvInt(CurRec[3]);
-                    int DataCnt = CommonMotions.cnvInt(CurRec[4]);
-                    int CONSTRUCTIONCODE3 = CommonMotions.cnvInt(CurRec[5]);
-                    int GROUPCOUNT = CommonMotions.cnvInt(CurRec[6]);
-                    int LINECOUNT2 = CommonMotions.cnvInt(CurRec[7]);
-                    int COLUMNCOUNT = CommonMotions.cnvInt(CurRec[8]);
-                    int iValue =CommonMotions.cnvInt(CurRec[9]);
-
-                    if (!LedgerEDB.UpdateFeild(CONSTRUCTIONCODE3, GROUPCOUNT, LINECOUNT2, COLUMNCOUNT, (int)IOConstructionLedgerExcute.TableColumn.PaymentAmount, iValue, false))
-                    {
-                        LedgerDDB.rollback();
-                        return;
-                    }
-                }
-
-                LedgerDB.commit();
-                LedgerDDB.commit();
-                LedgerEDB.commit();
-
-                string strSQL3 = "SELECT A.CONSTRUCTIONCODE FROM CONSTRUCTIONLEDGER A, CONSTRUCTIONBASEINFO B";
-                strSQL3 += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
-                strSQL3 += " AND B.CONSTRUCTIONPERIOD = 16";
-                strSQL3 += " ORDER BY A.CONSTRUCTIONCODE";
-                ArrayList arList3 = new ArrayList();
-                if (!LedgerDB.ExecuteReader(strSQL3, ref arList3)) return;
-                foreach (object[] CurRec in arList3)
-                {
                     // 工事コードのセット
                     frm.ConstructionCode = CommonMotions.cnvInt(CurRec[0]);
 
@@ -4487,8 +4974,6 @@
             finally
             {
                 LedgerDB.close(); LedgerDB = null;
-                LedgerDDB.close(); LedgerDDB = null;
-                LedgerEDB.close(); LedgerEDB = null;
 
                 frm.Dispose(); frm = null;
             }
@@ -4495,33 +4980,148 @@
         }
         #endregion
 
-        #region 未作成データ行作成処理
+        #region 給料開始月再計算
         /// <summary>
-        /// 未作成データ行作成処理
+        /// 給料開始月再計算
         /// </summary>
-        private void CreateOhtherData()
+        private void RecalculateLedgerData()
         {
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
-            FrmConstructionLedger frm = new FrmConstructionLedger();
-
+            IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
+            IOConstructionLedgerExcute ExecDB = new IOConstructionLedgerExcute();
             try
             {
-                string strSQL = "SELECT B.CONSTRUCTIONCODE FROM CONSTRUCTIONLEDGER A, CONSTRUCTIONBASEINFO B WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.CONSTRUCTIONPERIOD = 16";
+
+                // 16期の対象データを取得する
+                string strSQL = "SELECT A.CONSTRUCTIONCODE,";
+                //strSQL += " TO_CHAR(A.CONSTRUCTIONSTART,'YYYY/MM/DD') SDate,";
+                //strSQL += " TO_CHAR(B.CONSTRUCTIONCOMPLETIONDATE,'YYYY/MM/DD') EDate1,";
+                //strSQL += " TO_CHAR(B.BILLINGSTARTDATE,'YYYY/MM/DD')  EDate2";
+                strSQL += " DATE_FORMAT(A.CONSTRUCTIONSTART,'%Y/%m/%d') SDate,";
+                strSQL += " DATE_FORMAT(B.CONSTRUCTIONCOMPLETIONDATE,'%Y/%m/%d') EDate1,";
+                strSQL += " DATE_FORMAT(B.BILLINGSTARTDATE,'%Y/%m/%d')  EDate2";
+                strSQL += " FROM CONSTRUCTIONLEDGER A, CONSTRUCTIONBASEINFO B";
+                strSQL += " WHERE A.CONSTRUCTIONPERIOD = 16";
+                strSQL += " AND DATE(A.CONSTRUCTIONSTART) < DATE(NOW())";
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += " ORDER BY A.CONSTRUCTIONCODE";
+
                 ArrayList arList = new ArrayList();
                 if (!LedgerDB.ExecuteReader(strSQL, ref arList)) return;
-                foreach (object[] CurRec in arList)
+
+                DetailDB.connect(); DetailDB.beginTran();
+                ExecDB.connect(); ExecDB.beginTran();
+
+                foreach (object[] wrkRec in arList)
                 {
-                    // 工事コードのセット
-                    frm.ConstructionCode = CommonMotions.cnvInt(CurRec[0]);
+                    int Constrcode = CommonMotions.cnvInt(wrkRec[0]);
+                    DateTime SDate = CommonMotions.cnvDate(wrkRec[1]);
+                    DateTime EDate1 = CommonMotions.cnvDate(wrkRec[2]);
+                    DateTime EDate2 = CommonMotions.cnvDate(wrkRec[3]);
+                    DateTime EndDate = EDate1;
 
-                    // 見えない画面を出す
-                    frm.Hide();
-                    // フォーム非表示
-                    //frm.Visible = false;
+                    // 終了していないデータは除外する
+                    if (EDate1.Date == DateTime.Parse("0001/01/01")
+                        && EDate2.Date == DateTime.Parse("0001/01/01")) continue;
 
-                    // 再計算処理
-                    if (!frm.RecalculateLedger) break;
+                    // 終了日付を取得する
+                    if (EndDate == DateTime.Parse("0001/01/01")) EndDate = EDate2;
+                    if (EDate2 != DateTime.Parse("0001/01/01") && EndDate > EDate2) EndDate = EDate2;
+
+                    // 経過日付を取得する
+                    int AfterDays = 0;
+                    if (SDate.Year == EndDate.Year && SDate.Month == EndDate.Month)
+                    {
+                        TimeSpan ts = EndDate - SDate;
+                        AfterDays = ts.Days + 1;
+                    }
+                    else
+                    {
+                        DateTime LastDay = DateTimeUtil.EndOfMonth(SDate);
+                        AfterDays = (LastDay.Day - SDate.Day) + 1;
+                    }
+
+                    string strDetail = "SELECT A.CONSTRUCTIONCODE, B.GROUPCOUNT, B.LINECOUNT, MIN(B.COLUMNCOUNT), C.PERSONCODE, C.PERSONNAME, C.MONTHLYSALARY, A.SALARYDAYS";
+                    strDetail += " FROM CONSTRUCTIONLEDGERDETAIL A, CONSTRUCTIONLEDGEREXCUTE B, PERSONINCHARGEMASTER C";
+                    strDetail += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", Constrcode);
+                    strDetail += " AND A.OPERATINGFLG = 1 AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                    strDetail += " AND (A.GROUPCOUNT = 9 Or A.GROUPCOUNT = 10 Or A.GROUPCOUNT = 11)";
+                    strDetail += " AND B.LINECOUNT = A.LINECOUNT AND C.PERSONCODE = A.COMPANYCODE";
+                    strDetail += " GROUP BY A.CONSTRUCTIONCODE, B.GROUPCOUNT, B.LINECOUNT, C.PERSONCODE, C.PERSONNAME, C.MONTHLYSALARY, A.SALARYDAYS";
+
+                    ArrayList ExecArrary = new ArrayList();
+                    if (!DetailDB.ExecuteReader(strDetail, ref ExecArrary, false)) continue;
+                    if (ExecArrary.Count == 0) continue;
+
+                    foreach (object[] CurRec in ExecArrary)
+                    {
+                        int GROUPCOUNT = CommonMotions.cnvInt(CurRec[1]);
+                        int LINECOUNT = CommonMotions.cnvInt(CurRec[2]);
+                        int COLUMNCOUNT = CommonMotions.cnvInt(CurRec[3]);
+                        int MONTHLYSALARY = CommonMotions.cnvInt(CurRec[6]);
+                        int SALARYDays = CommonMotions.cnvInt(CurRec[7]);
+
+                        if (SALARYDays != 0) AfterDays = SALARYDays;
+
+                        int SetSalary = 0;
+                        if (GROUPCOUNT == 9 || GROUPCOUNT == 10)
+                        {
+                            SetSalary = CommonMotions.cnvRound(100000 / 30) * AfterDays;
+                        }
+                        else
+                        {
+                            SetSalary = CommonMotions.cnvRound((MONTHLYSALARY * CommonDefine.s_SalaryCorrection) / 30) * AfterDays;
+                        }
+
+                        if (!ExecDB.UpdateFeild(Constrcode, GROUPCOUNT, LINECOUNT, COLUMNCOUNT, (int)IOConstructionLedgerExcute.TableColumn.PaymentAmount, SetSalary, false))
+                        {
+                            ExecDB.rollback();
+                            return;
+                        }
+                    }
                 }
+
+                ExecDB.commit();
+
+                foreach (object[] wrkRec in arList)
+                {
+                    int Constrcode = CommonMotions.cnvInt(wrkRec[0]);
+                    FormConstructionLedger(Constrcode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                LedgerDB.close(); LedgerDB = null;
+                DetailDB.close(); DetailDB = null;
+                ExecDB.close(); ExecDB = null;
+            }
+        }
+        #endregion
+
+        #region 工事詳細台帳再計算更新
+        /// <summary>
+        /// 工事詳細台帳再計算更新
+        /// </summary>
+        /// <param name="ConstCode"></param>
+        private void FormConstructionLedger(int ConstCode)
+        {
+            FrmConstructionLedger frm = new FrmConstructionLedger();                    // 工事詳細台帳入力
+            try
+            {
+
+                // 工事コードのセット
+                frm.ConstructionCode = ConstCode;
+
+                // 見えない画面を出す
+                frm.Hide();
+
+                // 再計算処理
+                bool bret = frm.RecalculateLedger;
+
                 // 画面を閉じる
                 frm.Close();
             }
@@ -4531,8 +5131,6 @@
             }
             finally
             {
-                LedgerDB.close(); LedgerDB = null;
-
                 frm.Dispose(); frm = null;
             }
         }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBudget/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmConstructionBudget
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] ClsExcute.SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -121,6 +116,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -209,6 +205,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -242,7 +239,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -286,6 +283,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -303,11 +301,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -319,6 +331,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -330,6 +346,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -347,11 +364,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -363,6 +393,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -374,6 +408,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -391,11 +426,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -407,6 +455,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -418,6 +470,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -435,11 +488,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -451,6 +517,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -462,6 +532,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -479,11 +550,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -495,6 +579,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -506,6 +594,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -523,11 +612,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -538,6 +639,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -549,6 +654,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -566,11 +672,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -582,6 +702,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -593,6 +717,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -610,11 +735,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -626,6 +765,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -659,6 +802,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -703,6 +847,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -719,7 +865,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -963,11 +1109,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1136,6 +1283,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.Designer.cs	(revision 51)
@@ -0,0 +1,489 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmConstructionJoin
+    {
+        /// <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 dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnEntry = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.btnSerchWork = new System.Windows.Forms.Button();
+            this.tvDispData = new System.Windows.Forms.TreeView();
+            this.btnNewWork = new System.Windows.Forms.Button();
+            this.dgvMaster = new System.Windows.Forms.DataGridView();
+            this.label2 = new System.Windows.Forms.Label();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.label13 = new System.Windows.Forms.Label();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
+            this.cmbDepartment = new System.Windows.Forms.ComboBox();
+            this.label12 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.btnClear = new System.Windows.Forms.Button();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.groupBox1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(957, 656);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(120, 30);
+            this.btnCancel.TabIndex = 3;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // btnEntry
+            // 
+            this.btnEntry.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEntry.BackColor = System.Drawing.Color.Green;
+            this.btnEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEntry.ForeColor = System.Drawing.Color.White;
+            this.btnEntry.Location = new System.Drawing.Point(831, 656);
+            this.btnEntry.Name = "btnEntry";
+            this.btnEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnEntry.TabIndex = 2;
+            this.btnEntry.Text = "実　行";
+            this.btnEntry.UseVisualStyleBackColor = false;
+            this.btnEntry.Click += new System.EventHandler(this.btnEntry_Click);
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(7, 392);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(160, 30);
+            this.label1.TabIndex = 19;
+            this.label1.Text = "結合先工事";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnSerchWork
+            // 
+            this.btnSerchWork.BackColor = System.Drawing.Color.DarkGray;
+            this.btnSerchWork.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnSerchWork.Location = new System.Drawing.Point(349, 392);
+            this.btnSerchWork.Name = "btnSerchWork";
+            this.btnSerchWork.Size = new System.Drawing.Size(160, 30);
+            this.btnSerchWork.TabIndex = 156;
+            this.btnSerchWork.TabStop = false;
+            this.btnSerchWork.Text = "既存結合検索";
+            this.btnSerchWork.UseVisualStyleBackColor = false;
+            this.btnSerchWork.Click += new System.EventHandler(this.btnSerchWork_Click);
+            // 
+            // tvDispData
+            // 
+            this.tvDispData.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tvDispData.Location = new System.Drawing.Point(7, 424);
+            this.tvDispData.Name = "tvDispData";
+            this.tvDispData.Size = new System.Drawing.Size(1070, 226);
+            this.tvDispData.TabIndex = 157;
+            // 
+            // btnNewWork
+            // 
+            this.btnNewWork.BackColor = System.Drawing.Color.Yellow;
+            this.btnNewWork.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnNewWork.Location = new System.Drawing.Point(173, 392);
+            this.btnNewWork.Name = "btnNewWork";
+            this.btnNewWork.Size = new System.Drawing.Size(160, 30);
+            this.btnNewWork.TabIndex = 156;
+            this.btnNewWork.TabStop = false;
+            this.btnNewWork.Text = "新規結合作成";
+            this.btnNewWork.UseVisualStyleBackColor = false;
+            this.btnNewWork.Click += new System.EventHandler(this.btnNewWork_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle25.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle25.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            dataGridViewCellStyle25.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle25.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle25.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle25.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle25;
+            this.dgvMaster.ColumnHeadersHeight = 24;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column5,
+            this.Column3,
+            this.Column9,
+            this.Column7,
+            this.Column2,
+            this.Column4,
+            this.Column6,
+            this.Column8});
+            this.dgvMaster.Location = new System.Drawing.Point(7, 107);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 24;
+            this.dgvMaster.Size = new System.Drawing.Size(1070, 266);
+            this.dgvMaster.TabIndex = 158;
+            this.dgvMaster.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellValueChanged);
+            this.dgvMaster.CurrentCellDirtyStateChanged += new System.EventHandler(this.dgvMaster_CurrentCellDirtyStateChanged);
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.White;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(7, 75);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(160, 30);
+            this.label2.TabIndex = 159;
+            this.label2.Text = "結合対象工事";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.groupBox1.BackColor = System.Drawing.Color.BurlyWood;
+            this.groupBox1.Controls.Add(this.label13);
+            this.groupBox1.Controls.Add(this.cmbConstructionPerson);
+            this.groupBox1.Controls.Add(this.cmbDepartment);
+            this.groupBox1.Controls.Add(this.label12);
+            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.numUDConstPro);
+            this.groupBox1.Controls.Add(this.label5);
+            this.groupBox1.Controls.Add(this.label7);
+            this.groupBox1.ForeColor = System.Drawing.Color.White;
+            this.groupBox1.Location = new System.Drawing.Point(12, 4);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(1060, 55);
+            this.groupBox1.TabIndex = 160;
+            this.groupBox1.TabStop = false;
+            // 
+            // label13
+            // 
+            this.label13.BackColor = System.Drawing.Color.Gray;
+            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label13.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label13.ForeColor = System.Drawing.Color.WhiteSmoke;
+            this.label13.Location = new System.Drawing.Point(664, 19);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(120, 25);
+            this.label13.TabIndex = 47;
+            this.label13.Text = "担　当　者";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbConstructionPerson
+            // 
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(792, 19);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 24);
+            this.cmbConstructionPerson.TabIndex = 46;
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
+            // 
+            // cmbDepartment
+            // 
+            this.cmbDepartment.BackColor = System.Drawing.Color.White;
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(440, 19);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(200, 24);
+            this.cmbDepartment.TabIndex = 45;
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
+            // 
+            // label12
+            // 
+            this.label12.BackColor = System.Drawing.Color.Gray;
+            this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label12.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label12.ForeColor = System.Drawing.Color.WhiteSmoke;
+            this.label12.Location = new System.Drawing.Point(312, 19);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(120, 25);
+            this.label12.TabIndex = 48;
+            this.label12.Text = "部　　署";
+            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.Gray;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.WhiteSmoke;
+            this.label4.Location = new System.Drawing.Point(30, 19);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 42;
+            this.label4.Text = "営業期";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDConstPro
+            // 
+            this.numUDConstPro.BackColor = System.Drawing.Color.White;
+            this.numUDConstPro.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDConstPro.ForeColor = System.Drawing.Color.Black;
+            this.numUDConstPro.Location = new System.Drawing.Point(183, 20);
+            this.numUDConstPro.Name = "numUDConstPro";
+            this.numUDConstPro.ReadOnly = true;
+            this.numUDConstPro.Size = new System.Drawing.Size(80, 23);
+            this.numUDConstPro.TabIndex = 0;
+            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
+            // 
+            // label5
+            // 
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(263, 23);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(25, 16);
+            this.label5.TabIndex = 39;
+            this.label5.Text = "期";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label7
+            // 
+            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label7.ForeColor = System.Drawing.Color.Black;
+            this.label7.Location = new System.Drawing.Point(158, 23);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(25, 16);
+            this.label7.TabIndex = 40;
+            this.label7.Text = "第";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnClear
+            // 
+            this.btnClear.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnClear.BackColor = System.Drawing.Color.SteelBlue;
+            this.btnClear.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnClear.ForeColor = System.Drawing.Color.White;
+            this.btnClear.Location = new System.Drawing.Point(917, 392);
+            this.btnClear.Name = "btnClear";
+            this.btnClear.Size = new System.Drawing.Size(160, 30);
+            this.btnClear.TabIndex = 161;
+            this.btnClear.TabStop = false;
+            this.btnClear.Text = "結合先クリア";
+            this.btnClear.UseVisualStyleBackColor = false;
+            this.btnClear.Click += new System.EventHandler(this.btnClear_Click);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle26.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle26;
+            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 = 40;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle27.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle27;
+            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;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle28.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle28;
+            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.Width = 450;
+            // 
+            // Column9
+            // 
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle29;
+            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;
+            // 
+            // Column7
+            // 
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle30.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle30;
+            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 = 300;
+            // 
+            // Column2
+            // 
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "選択";
+            this.Column2.Name = "Column2";
+            this.Column2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column2.Width = 60;
+            // 
+            // Column4
+            // 
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "発注者区分";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Visible = false;
+            // 
+            // Column6
+            // 
+            this.Column6.Frozen = true;
+            this.Column6.HeaderText = "発注者コード";
+            this.Column6.Name = "Column6";
+            this.Column6.ReadOnly = true;
+            this.Column6.Visible = false;
+            // 
+            // Column8
+            // 
+            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.Visible = false;
+            this.Column8.Width = 5;
+            // 
+            // FrmConstructionJoin
+            // 
+            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(1084, 696);
+            this.Controls.Add(this.btnClear);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.tvDispData);
+            this.Controls.Add(this.btnNewWork);
+            this.Controls.Add(this.btnSerchWork);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnEntry);
+            this.Controls.Add(this.btnCancel);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmConstructionJoin";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "工事結合処理";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmConstructionJoin_FormClosing);
+            this.Load += new System.EventHandler(this.FrmConstructionJoin_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.groupBox1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnEntry;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button btnSerchWork;
+        private System.Windows.Forms.TreeView tvDispData;
+        private System.Windows.Forms.Button btnNewWork;
+        private System.Windows.Forms.DataGridView dgvMaster;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.NumericUpDown numUDConstPro;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.ComboBox cmbConstructionPerson;
+        private System.Windows.Forms.ComboBox cmbDepartment;
+        private System.Windows.Forms.Label label12;
+        private System.Windows.Forms.Button btnClear;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.cs	(revision 51)
@@ -0,0 +1,373 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmConstructionJoin : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+
+        /// <summary>
+        /// 動作選択
+        /// </summary>
+        private enum ProcessAction
+        {
+            /// <summary>
+            /// 結合新規作成
+            /// </summary>
+            NewCreate = 1,
+            /// <summary>
+            /// 追加結合
+            /// </summary>
+            LinkAdd,
+        }
+
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispGridColumn
+        {
+            DisplayNo = 0,
+            ConstructionCode,
+            ConstructionName,
+            DispStatus,
+            OrdererName,
+            JoinCheck,
+            OrderersDivision,
+            OrderersCode,
+            Status,
+        }
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 初期時フラグ
+        /// </summary>
+        private bool m_bInitFlag = true;
+
+        /// <summary>
+        /// 処理区分
+        /// </summary>
+        private int m_ProcessType = 0;
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        private int m_OrderersDivision = 0;
+        /// <summary>
+        /// 発注者番号
+        /// </summary>
+        private int m_OrdererCode = 0;
+
+        /// <summary>
+        /// 工事名称
+        /// </summary>
+        private string m_ConstructionName = string.Empty;
+
+        #endregion
+
+        #region プロパティ
+
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmConstructionJoin()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionJoin_Load(object sender, EventArgs e)
+        {
+            // コンボボックスセット
+            SetnumUD();
+            SetcmbDepartment();
+            SetcmbPersons();
+
+            // コンボボックス初期化
+            InitCombBox();
+
+            // 初期表示
+            InitDataLoad();
+
+            m_bInitFlag = false;
+        }
+        #endregion
+
+        #region フォーム終了時
+        /// <summary>
+        /// フォーム終了時
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionJoin_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+        }
+        #endregion
+
+        #region 終了ボタン押下
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        #endregion
+
+        #region 実行ボタン押下
+        /// <summary>
+        /// 実行ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEntry_Click(object sender, EventArgs e)
+        {
+            // 実行確認
+            if (MessageBox.Show("選択された工事を結合します。",
+                                "実行確認",
+                                MessageBoxButtons.OKCancel,
+                                MessageBoxIcon.Question) == DialogResult.Cancel) return;
+
+            // データチェック
+            if (!DataCheck()) return;
+
+            // 結合処理
+            if (!JoinData()) return;
+
+            CommonMotions.EntryEndMessage("結合処理データ");
+
+            this.Close();
+        }
+        #endregion
+
+        #region クリアボタン押下
+        /// <summary>
+        /// クリアボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnClear_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                m_ConstructionCode = 0;
+                m_ConstructionName = string.Empty;
+                m_OrderersDivision = 0;
+                m_OrdererCode = 0;
+
+                tvDispData.Nodes.Clear();
+
+                // 選択一覧フォーカスセット
+                tvDispData.Select();
+            }
+            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 btnSerchWork_Click(object sender, EventArgs e)
+        {
+            // 結合工事名称選択
+            SetConstruction(true);
+
+            // 選択一覧フォーカスセット
+            tvDispData.Select();
+        }
+        #endregion
+
+        #region 新規結合作成
+        /// <summary>
+        /// 新規結合作成
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnNewWork_Click(object sender, EventArgs e)
+        {
+            // 新規結合工事作成
+            NewOrdererCreate();
+
+            // 選択一覧フォーカスセット
+            tvDispData.Select();
+        }
+        #endregion
+
+        #region チェックボックスの変化時
+        /// <summary>
+        /// チェックボックスの変化時
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            if (m_bInitFlag) return;
+            try
+            {
+                DataGridView dgv = dgvMaster;
+                DataGridViewRow CurRow = dgv.CurrentRow;
+
+                // チェック以外は処理しない
+                if (e.ColumnIndex != (int)DispGridColumn.JoinCheck) return;
+
+                // 無効行は処理しない
+                string strWork = CommonMotions.cnvString(CurRow.Cells[(int)DispGridColumn.ConstructionCode].Value);
+                if (strWork == string.Empty) return;
+
+                // チェックボックス
+                DataGridViewCell CurCell = dgv[e.ColumnIndex, e.RowIndex];
+                // Off時は処理しない
+                //if (CommonMotions.cnvString(CurCell.Value).Equals("False")) return;
+                if (!(bool)CurCell.Value) return;
+
+                if (tvDispData.Nodes.Count == 0)
+                {
+                    m_OrderersDivision = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.OrderersDivision].Value);
+                    m_OrdererCode = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.OrderersCode].Value);
+                }
+                // エラーチェック
+                if (!GridRowCheck(m_OrderersDivision, m_OrdererCode))
+                {
+                    MessageBox.Show("発注先が違います。", "選択エラー", MessageBoxButtons.OK);
+                    CurCell.Value = false;
+                    dgv.RefreshEdit();
+                }
+            }
+            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 dgvMaster_CurrentCellDirtyStateChanged(object sender, EventArgs e)
+        {
+            switch (dgvMaster.CurrentCellAddress.X)
+            {
+                case (int)DispGridColumn.JoinCheck:
+                    // チェックボックス
+                    if (dgvMaster.IsCurrentCellDirty)
+                    {
+                        //コミットする
+                        dgvMaster.CommitEdit(DataGridViewDataErrorContexts.Commit);
+                    }
+                    break;
+            }
+        }
+        #endregion
+
+        #region 営業期コンボボックス変更
+        /// <summary>
+        /// 営業期変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void numUDConstPro_ValueChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 部署コンボボックス変更
+        /// <summary>
+        /// 部署コンボボックス変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+
+            // 担当者コンボボックス変更
+            SetcmbPersons();
+
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 担当者コンボボックス変更
+        /// <summary>
+        /// 担当者変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+
+            // 担当者選択時部署選択を設定する
+            SetPerosonToDepartment();
+
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 営業・工事担当者切り替え
+        /// <summary>
+        /// 営業・工事担当者切り替え
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void radioButton_CheckedChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+    
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoin.resx	(revision 51)
@@ -0,0 +1,147 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column5.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="Column9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoinAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoinAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmConstructionJoinAuxiliary.cs	(revision 51)
@@ -0,0 +1,1744 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmConstructionJoin
+    {
+
+        #region 部署コンボより担当者コードを取得する
+        /// <summary>
+        /// 部署コンボより担当者コードを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetDepartmentCode()
+        {
+            try
+            {
+                // 表示されていない場合は選択無
+                //if (!cmbDepartment.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボより担当者コードを取得する
+        /// <summary>
+        /// 担当者コンボより担当者コードを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstructionPersonCode()
+        {
+            try
+            {
+                // 表示されていない場合は選択無
+                //if (!cmbConstructionPerson.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示
+        /// <summary>
+        /// コンボボックス初期表示
+        /// </summary>
+        private void InitCombBox()
+        {
+            try
+            {
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    InitCombBox_OLD();
+                }
+                else
+                {
+                    InitCombBox_NEW();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示（旧）
+        /// <summary>
+        /// コンボボックス初期表示（旧）
+        /// </summary>
+        private void InitCombBox_OLD()
+        {
+            try
+            {
+                // システム権限によってデータアクセスに制限がある
+                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)
+                {
+                    // システム管理者
+                    // 最高機密管理者
+                    // 統括機密管理者
+                    // 総務部所属者は全て見える
+
+                    // 部署・担当者コンボ表示
+                    DispAllCombBoxControl(true);
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // 所属長
+                    // 部署コンボ非表示
+                    NonDispDepCombBox();
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // 一般使用者（自分のみアクセス可能）
+                    // 部署・担当者コンボ非表示
+                    DispAllCombBoxControl(false);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示（新）
+        /// <summary>
+        /// コンボボックス初期表示（新）
+        /// </summary>
+        private void InitCombBox_NEW()
+        {
+            try
+            {
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // 全部署
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // 複数部署
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // 自部署のみ
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // 自担当者のみ
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // 部署・担当者コンボ表示
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // 部署コンボ非表示
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // 総務業務使用者がログインしている場合はコンボを空白にする
+                if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)CommonDefine.GeneralAffairs.GeneralDep) return;
+
+                // 初期設定対象がコンボボックスデータにあればセットする
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスの非表示処理
+        /// <summary>
+        /// 部署コンボボックスの非表示処理
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // 部署コンボ非表示
+                label12.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // 表示位置のセット
+                Point loc13 = label13.Location;
+                loc13.X = label12.Location.X;
+                label13.Location = loc13;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label13.Location.X + label13.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 全コンボボックス表示をON/OFFする
+        /// <summary>
+        /// 全コンボボックス表示をON/OFFする
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // 部署・担当者コンボ非表示
+                label12.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label13.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスをセットする
+        /// <summary>
+        /// 部署コンボボックスへ文字をセットする
+        /// </summary>
+        private void SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_bInitFlag;
+            m_bInitFlag = true;
+            try
+            {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
+                // 部署マスタを検索する
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // システム権限によってデータアクセスに制限がある
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // 所属長
+                        // 一般使用者（自分のみアクセス可能）
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // 参照部署マスタより取得する
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
+                // 部署マスタ読込
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // 総務部所属者以外
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                m_bInitFlag = bSave;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスをセットする
+        /// <summary>
+        /// 担当者コンボボックスへ文字をセットする
+        /// </summary>
+        private void SetcmbPersons()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_bInitFlag;
+            m_bInitFlag = true;
+            try
+            {
+                cmbConstructionPerson.DataSource = null;
+                cmbConstructionPerson.Items.Clear();
+                cmbConstructionPerson.Text = "";
+
+                string strSQL = string.Empty;
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0)
+                    strSQL = " WHERE DELETEFLG = 0 ORDER BY EMPLOYEECLASSFLG ASC, DISPLAYORDER ASC";
+                else
+                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DELETEFLG = 0 ORDER BY EMPLOYEECLASSFLG ASC, DISPLAYORDER ASC", DepartmentCode);
+
+                // 担当者マスタ読込
+                if (!picDB.SelectAction(strSQL, ref workList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
+
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // 一般ユーザーで総務部所属者ではない場合、ログイン者のコードをセットする
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                m_bInitFlag = bSave;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスセット時部署をセットする
+        /// <summary>
+        /// 担当者コンボボックスセット時部署をセットする
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // コンボボックスより選択担当者を取得する
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // 部署コンボボックスへ部署コードセット
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_bInitFlag;
+                    m_bInitFlag = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // 担当者コンボボックス変更
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_bInitFlag = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
+        #region 初期営業期セット
+        /// <summary>
+        /// 初期営業期セット
+        /// </summary>
+        private void SetnumUD()
+        {
+            try
+            {
+                // 検索年度セット
+                // データにある事業期と現在の事業セット
+                int minval = 0;
+                int maxval = 0;
+                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                numUDConstPro.Minimum = minval;
+                numUDConstPro.Maximum = maxval;
+                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region DB読込順
+        /// <summary>
+        /// DB読込順
+        /// </summary>
+        private enum ReadDBColumn
+        {
+            ConstructionCode = 0,
+            DetailString,
+            OrderersDivision,
+            OrderersCode,
+            OrderersName1,
+            OrderersName2,
+            ConstructionStatusFlg,
+        }
+        #endregion
+
+        #region 初期表示処理
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                dgvMaster.Rows.Clear();
+
+                int depCode = GetDepartmentCode();
+                int personCode = GetConstructionPersonCode();
+
+                if (personCode == 0 || depCode == 0)
+                {
+                    btnSerchWork.Enabled = false;
+                    return;
+                }
+                else
+                {
+                    btnSerchWork.Enabled = true;
+                }
+
+                string strSQL = string.Empty;
+                int StatusCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+
+                // ----- 工事結合の場合
+                // 対象全ての案件を検索する
+                strSQL = "SELECT DISTINCT A.CONSTRUCTIONCODE";
+                strSQL += ", B.DETAILSTRING";
+                strSQL += ", A.ORDERERSDIVISION";
+                strSQL += ", A.ORDERERSCODE";
+                strSQL += ", D.ORDERERSNAME1";
+                strSQL += ", D.ORDERERSNAME2";
+                strSQL += ", A.CONSTRUCTIONSTATUSFLG";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C, ORDERERSMASTER D";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONSTATUSFLG <> {0}", StatusCode);
+                strSQL += string.Format(" AND (A.CONSTRUCTIONPERIOD = {0})", numUDConstPro.Value);
+                strSQL += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL += string.Format(" AND A.TYINGFLG != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                strSQL += string.Format(" AND A.JOINFLG = {0}", (int)CommonDefine.BaseInfoJoinFlg.Standard);
+                if (cmbConstructionPerson.Text.Length != 0)
+                {
+                    strSQL += string.Format(" AND (A.CONSTRUCTIONPERSONCODE = {0})", GetConstructionPersonCode());
+                }
+                else
+                {
+                    if (depCode != 0) strSQL += string.Format(" AND (C.DEPARTMENTCODE = {0})", depCode);
+                }
+
+                strSQL += " AND (C.PERSONCODE = A.SALESPERSONCODE";
+                strSQL += " Or C.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += " Or C.PERSONCODE = A.CONSTRSUBPERSONCODE";
+                strSQL += " Or C.PERSONCODE = A.CONSTRUCTIONINSTRUCTOR)";
+                strSQL += " AND D.ORDERCOTEGORY = A.ORDERERSDIVISION AND D.ORDERERSCODE = A.ORDERERSCODE";
+                strSQL += " ORDER BY B.DETAILSTRING ASC, A.CONSTRUCTIONCODE DESC";
+
+                ArrayList BaseList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref BaseList)) return;
+                if (BaseList.Count == 0) return;
+
+                // 要素表示
+                int i = 1;
+                string strStatus = string.Empty;
+                foreach (object[] wrk in BaseList)
+                {
+                    // データ表示
+                    int ConstructionCode = CommonMotions.cnvInt(wrk[(int)ReadDBColumn.ConstructionCode]);
+                    string EditConstructionCode = string.Format("{0}-{1:D2}", (ConstructionCode / 100), (ConstructionCode % 100));
+                    strStatus = CommonDefine.ProjectsStatus[CommonMotions.cnvInt(wrk[(int)ReadDBColumn.ConstructionStatusFlg])];
+                    dgvMaster.Rows.Add(i++,
+                                        EditConstructionCode,
+                                        CommonMotions.cnvString(wrk[(int)ReadDBColumn.DetailString]),
+                                        strStatus,
+                                        CommonMotions.cnvString(wrk[(int)ReadDBColumn.OrderersName1]) + " " + CommonMotions.cnvString(wrk[(int)ReadDBColumn.OrderersName2]),
+                                        false,
+                                        CommonMotions.cnvInt(wrk[(int)ReadDBColumn.OrderersDivision]),
+                                        CommonMotions.cnvInt(wrk[(int)ReadDBColumn.OrderersCode]),
+                                        CommonMotions.cnvInt(wrk[(int)ReadDBColumn.ConstructionStatusFlg]));
+                    //dgvMaster.Rows[i++].Cells[(int)DispGridColumn.ConstructionName].ToolTipText = CommonMotions.cnvString(wrk[1]);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+                if (dgvMaster.RowCount < 10) dgvMaster.RowCount += (10 - dgvMaster.Rows.Count);
+
+            }
+        }
+        #endregion
+
+        #region 結合工事名称選択
+        /// <summary>
+        /// 結合工事名称選択
+        /// </summary>
+        /// <param name="RowCnt"></param>
+        private void SetConstruction(bool FirstFlg)
+        {
+            FrmConstructionDiag frm = new FrmConstructionDiag();
+            try
+            {
+                // 発注者コンボボックス値取得
+                if (!FirstFlg && m_OrdererCode == 0) return;
+
+                // 工事担当者検索
+                frm.PersonCharge = (int)FrmConstructionDiag.PersonChargePoint.Construction;
+
+                frm.ProcessNo = (int)ClsExcute.ProcessExecuteNo.OrderJoin;
+                frm.PersonCode = GetConstructionPersonCode();
+
+                frm.ShowDialog();
+                // 終了コード確認
+                if (frm.EndButton == DialogResult.No) return;
+
+                bool bCheck = true;
+                if (m_OrderersDivision != 0 && m_OrderersDivision != frm.OrderCotegory) bCheck = false;
+                if (m_OrdererCode != 0 && m_OrdererCode != frm.OrdererCode) bCheck = false;
+                if (!bCheck)
+                {
+                    MessageBox.Show("発注先が違います。", "選択エラー", MessageBoxButtons.OK);
+                    tvDispData.Nodes.Clear();
+                    return;
+                }
+
+                // ------ 結合先工事情報表示
+                m_ConstructionCode = frm.ConstructionCode;
+                m_ConstructionName = frm.ConstructionName;
+                m_OrderersDivision = frm.OrderCotegory;
+                m_OrdererCode = frm.OrdererCode;
+
+                // 選択データ表示
+                DisplaySelectData();
+
+                // 行動タイプセット
+                m_ProcessType = (int)ProcessAction.LinkAdd;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 工事リンク情報取得処理
+        /// <summary>
+        /// 工事リンク情報取得処理
+        /// </summary>
+        /// <param name="ConstrCode"></param>
+        private void GetLinkData(int SearchCode, ref ArrayList LinkList, bool JoinFlg = true)
+        {
+            IOConstructionLink LinkDB = new IOConstructionLink();
+            try
+            {
+                // 結合情報を検索する
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, C.DETAILSTRING, B.CONSTRUCTIONCODE, B.DETAILSTRING";
+                strSQL += " FROM CONSTRUCTIONLINK A";
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFODETAIL B ON B.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += string.Format(" AND B.DETAILNO = {0}", (int)IOConstructionBaseInfoDetail.TableColumn.DETAIL_STRING);
+                strSQL += " , CONSTRUCTIONBASEINFODETAIL C";
+
+                if (JoinFlg)
+                {
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", SearchCode);
+                    strSQL += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.JoinType);
+                }
+                else
+                {
+                    strSQL += string.Format(" WHERE (A.CONSTRUCTIONCODE = {0} OR A.FLUCTUATIONCODE = {0})", SearchCode);
+                    strSQL += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.FluctuationType);
+                }
+                strSQL += " AND C.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND C.DETAILNO = {0}", (int)IOConstructionBaseInfoDetail.TableColumn.DETAIL_STRING);
+                strSQL += " ORDER BY A.FLUCTUATIONCODE";
+                LinkDB.ExecuteReader(strSQL, ref LinkList);
+
+                return;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                LinkDB.close(); LinkDB = null;
+            }
+        }
+        #endregion
+
+        #region チェックボックス変化時のチェック
+        /// <summary>
+        /// チェックボックス変化時のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool GridRowCheck(int OrderDiv, int OrderCode)
+        {
+            try
+            {
+                int CurOrderDiv = 0;
+                int CurOrderCode = 0;
+                bool bNoneError = true;
+                foreach (DataGridViewRow ReadRow in dgvMaster.Rows)
+                {
+                    // 無効行は処理しない
+                    string strWork = CommonMotions.cnvString(ReadRow.Cells[(int)DispGridColumn.ConstructionCode].Value);
+                    if (strWork == string.Empty) continue;
+
+                    // Offは処理しない
+                    if (ReadRow.Cells[(int)DispGridColumn.JoinCheck].Value == null) continue;
+                    if (!(bool)ReadRow.Cells[(int)DispGridColumn.JoinCheck].Value) continue;
+
+                    CurOrderDiv = CommonMotions.cnvInt(ReadRow.Cells[(int)DispGridColumn.OrderersDivision].Value);
+                    CurOrderCode = CommonMotions.cnvInt(ReadRow.Cells[(int)DispGridColumn.OrderersCode].Value);
+
+                    // 発注先が同じ場合は次行をチェックする
+                    if (OrderDiv == CurOrderDiv && OrderCode == CurOrderCode) continue;
+
+                    // 発注先が違う場合はエラー
+                    bNoneError = false;
+                }
+
+                if (bNoneError)
+                {
+                    m_OrderersDivision = CurOrderDiv;
+                    m_OrdererCode = CurOrderCode;
+                }
+
+                return bNoneError;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 選択データ表示
+        /// <summary>
+        /// 選択データ表示
+        /// </summary>
+        /// <param name="ConstrCode"></param>
+        private void DisplaySelectData()
+        {
+            // treeViewクリア
+            tvDispData.Nodes.Clear();
+            try
+            {
+                ArrayList LinkList = new ArrayList();
+                // 結合情報を検索する
+                GetLinkData(m_ConstructionCode, ref  LinkList);
+                if (LinkList.Count == 0) return;
+
+                object[] curRec = (object[])LinkList[0];
+                tvDispData.Nodes.Add(string.Format("{0}：{1}"
+                                                    , CommonMotions.cnvStringCodeFromInt(CommonMotions.cnvInt(curRec[0]), "-", 8)
+                                                    , CommonMotions.cnvString(curRec[1])));
+                int i = -1;
+                int CurCode = 0;
+                string CurName = string.Empty;
+                string DispData = string.Empty;
+                int FCode = 0;
+                string FName = string.Empty;
+                string FDispData = string.Empty;
+                foreach (object[] LowRec in LinkList)
+                {
+                    // 構成データ追加
+                    CurCode = CommonMotions.cnvInt(LowRec[2]);
+                    CurName = CommonMotions.cnvString(LowRec[3]);
+                    DispData = string.Format("{0}：{1}", CommonMotions.cnvStringCodeFromInt(CurCode, "-", 8), CurName);
+                    tvDispData.Nodes[0].Nodes.Add(DispData);
+                    i++;
+
+                    // 増減データ追加
+                    ArrayList LowList = new ArrayList();
+                    // 結合情報を検索する
+                    GetLinkData(CurCode, ref  LowList, false);
+                    if (LowList.Count == 0) continue;
+
+                    foreach (object[] FRec in LowList)
+                    {
+                        FCode = CommonMotions.cnvInt(FRec[2]);
+                        FName = CommonMotions.cnvString(FRec[3]);
+                        FDispData = string.Format("{0}：{1}", CommonMotions.cnvStringCodeFromInt(FCode, "-", 8), FName);
+                        tvDispData.Nodes[0].Nodes[i].Nodes.Add(FDispData);
+                    }
+                    tvDispData.Nodes[0].Nodes[i].Expand();
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            // treeView表示
+            tvDispData.TopNode.Expand();
+        }
+        #endregion
+
+        #region 新規結合作成
+        /// <summary>
+        /// 新規結合作成
+        /// </summary>
+        private void NewOrdererCreate()
+        {
+            FrmJoinSelect frm = new FrmJoinSelect();
+            try
+            {
+                m_ConstructionName = string.Empty;
+
+                // 選択された工事名を取得する
+                frm.NameList.Clear();
+                foreach (DataGridViewRow CurRow in dgvMaster.Rows)
+                {
+                    if (CurRow.Cells[(int)DispGridColumn.JoinCheck].Value == null) continue;
+                    if (!(bool)CurRow.Cells[(int)DispGridColumn.JoinCheck].Value) continue;
+                    frm.NameList.Add(CommonMotions.cnvString(CurRow.Cells[(int)DispGridColumn.ConstructionName].Value));
+                }
+
+                frm.OrderersDivision = m_OrderersDivision;  // 発注者区分
+                frm.OrdererCode = m_OrdererCode;            // 発注者番号
+                frm.ShowDialog();
+                if (frm.Result == DialogResult.Cancel) return;
+
+                m_ConstructionName = frm.ConstructionName;  // 新規工事名称
+
+                // ツリービュークリア
+                tvDispData.Nodes.Clear();
+
+                tvDispData.Nodes.Add(string.Format("{0}：{1}", "-----------", m_ConstructionName));
+
+                // 行動タイプセット
+                m_ProcessType = (int)ProcessAction.NewCreate;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 実行前チェック処理
+        /// <summary>
+        /// 実行前チェック処理
+        /// </summary>
+        /// <returns></returns>
+        private bool DataCheck()
+        {
+            try
+            {
+                // エラーチェック
+                if (!GridRowCheck(m_OrderersDivision, m_OrdererCode))
+                {
+                    MessageBox.Show("発注先が違います。", "選択エラー", MessageBoxButtons.OK);
+                    return false;
+                }
+
+                int SelCount = 0;
+                foreach (DataGridViewRow CurRow in dgvMaster.Rows)
+                {
+                    // 選択されていないものは処理しない
+                    if (CurRow.Cells[(int)DispGridColumn.JoinCheck].Value == null) continue;
+                    if (!(bool)CurRow.Cells[(int)DispGridColumn.JoinCheck].Value) continue;
+
+                    SelCount++;
+                }
+                if (SelCount == 0)
+                {
+                    MessageBox.Show("データが選択されていません。", "選択エラー", MessageBoxButtons.OK);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+            finally
+            {
+            }
+        }
+        #endregion
+
+        #region 結合処理実行
+        /// <summary>
+        /// 結合処理実行
+        /// </summary>
+        private bool JoinData()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            IOConstructionBaseInfoDetail DetailDB = new IOConstructionBaseInfoDetail();
+            IOConstructionLink LinkDB = new IOConstructionLink();
+            IOConstructionLedger LedgerDB = new IOConstructionLedger();
+            IOConstructionLedgerDetail LedgerDDB = new IOConstructionLedgerDetail();
+            IOConstructionLedgerExcute ExcuteDB = new IOConstructionLedgerExcute();
+            IOCostDataOfPerson CostDataDB = new IOCostDataOfPerson();
+
+            IODailyDataConstruction DailyData1 = new IODailyDataConstruction();
+            IODailyDataDetail DailyData2 = new IODailyDataDetail();
+            IODailyDataVehicles DailyData3 = new IODailyDataVehicles();
+            IODailyDataMaterials DailyData4 = new IODailyDataMaterials();
+            IODailyDataSubcontractors DailyData5 = new IODailyDataSubcontractors();
+            IODailyDataField DailyData6 = new IODailyDataField();
+            try
+            {
+                // DB接続
+                BaseDB.connect(); BaseDB.beginTran();
+                DetailDB.connect(); DetailDB.beginTran();
+                LinkDB.connect(); LinkDB.beginTran();
+                LedgerDB.connect(); LedgerDB.beginTran();
+                LedgerDDB.connect(); LedgerDDB.beginTran();
+                ExcuteDB.connect(); ExcuteDB.beginTran();
+                CostDataDB.connect(); CostDataDB.beginTran();
+
+                DailyData1.connect(); DailyData1.beginTran();
+                DailyData2.connect(); DailyData2.beginTran();
+                DailyData3.connect(); DailyData3.beginTran();
+                DailyData4.connect(); DailyData4.beginTran();
+                DailyData5.connect(); DailyData5.beginTran();
+                DailyData6.connect(); DailyData6.beginTran();
+
+                List<int> DateCodeList = new List<int>();           // 対象コードリスト
+                if (m_ProcessType == (int)ProcessAction.NewCreate)
+                {   // ----- 新規結合作成
+                    if (!NewJoinDataCreate(BaseDB, DetailDB, LinkDB, ref DateCodeList))
+                    {
+                        BaseDB.rollback();
+                        DetailDB.rollback();
+                        LinkDB.rollback();
+                        MessageBox.Show("結合工事情報作成に失敗しました。", "工事情報作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+
+                    // 工事詳細台帳を作成するためにここでコミット
+                    BaseDB.commit();
+                    DetailDB.commit();
+                    LinkDB.commit();
+
+                    // 結合工事進捗更新
+                    if (!ClsChangeBaseInfoData.SetParentConstrStatus(BaseDB, m_ConstructionCode))
+                    {
+                        MessageBox.Show("結合工事情報の施工状態更新に失敗しました。", "工事情報更新エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                        // エラー時工事情報を削除する
+                        JoinRollBackDataProc(BaseDB, DetailDB, LinkDB, LedgerDB, LedgerDDB, ExcuteDB, DateCodeList, m_ConstructionCode);
+                        return false;
+                    }
+
+                    // ----- 工事台帳作成
+                    // 工事詳細台帳データ作成
+                    if (!ClsChangeLedgerData.MakingLedgerData(m_ConstructionCode))
+                    {
+                        MessageBox.Show("結合工事詳細台帳作成に失敗しました。", "台帳作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                        // エラー時工事情報を削除する
+                        JoinRollBackDataProc(BaseDB, DetailDB, LinkDB, LedgerDB, LedgerDDB, ExcuteDB, DateCodeList, m_ConstructionCode);
+                        return false;
+                    }
+
+                    // 工事詳細台帳データ追加
+                    if (!ClsChangeLedgerData.MakeJoinForBudgetData(m_ConstructionCode, DateCodeList))
+                    {
+                        MessageBox.Show("結合工事詳細台帳追加に失敗しました。", "台帳作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                        // エラー時工事情報を削除する
+                        JoinRollBackDataProc(BaseDB, DetailDB, LinkDB, LedgerDB, LedgerDDB, ExcuteDB, DateCodeList, m_ConstructionCode);
+                        return false;
+                    }
+                }
+                else
+                {   // ----- 結合工事追加
+                    if (!JionDataAdditional(BaseDB, DetailDB, LinkDB, LedgerDB, ref DateCodeList))
+                    {
+                        BaseDB.rollback();
+                        DetailDB.rollback();
+                        LinkDB.rollback();
+                        MessageBox.Show("結合工事情報更新に失敗しました。", "工事情報更新エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+
+                    // 工事詳細台帳を作成するためにここでコミット
+                    BaseDB.commit();
+                    DetailDB.commit();
+                    LinkDB.commit();
+
+                    // 結合工事進捗更新
+                    if (!ClsChangeBaseInfoData.SetParentConstrStatus(BaseDB, m_ConstructionCode))
+                    {
+                        MessageBox.Show("結合工事情報の施工状態更新に失敗しました。", "工事情報更新エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                        // エラー時工事情報を削除する
+                        JoinRollBackDataProc(BaseDB, DetailDB, LinkDB, LedgerDB, LedgerDDB, ExcuteDB, DateCodeList, m_ConstructionCode);
+                        return false;
+                    }
+
+                    // 工事詳細台帳データ追加
+                    if (!ClsChangeLedgerData.MakeJoinForBudgetData(m_ConstructionCode, DateCodeList))
+                    {
+                        MessageBox.Show("結合工事詳細台帳追加に失敗しました。", "台帳作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                        // エラー時工事情報を削除する
+                        JoinRollBackDataProc(BaseDB, DetailDB, LinkDB, LedgerDB, LedgerDDB, ExcuteDB, DateCodeList, m_ConstructionCode);
+                        return false;
+                    }
+                }
+
+                // 
+                // 日報結合
+                if (!JoiningDairyData(DateCodeList, DailyData1, DailyData2, DailyData3, DailyData4, DailyData5, DailyData6))
+                {
+                    MessageBox.Show("工事日報結合処理に失敗しました。", "日報結合エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                    // エラー時工事情報を削除する
+                    JoinRollBackDataProc(BaseDB, DetailDB, LinkDB, LedgerDB, LedgerDDB, ExcuteDB, DateCodeList, m_ConstructionCode);
+                    ClsChangeLedgerData.PseudoRollBackForBudgetData(m_ConstructionCode, DateCodeList);
+
+                    return false;
+                }
+                // 購入品結合
+                if (!JoinCostData(DateCodeList, CostDataDB))
+                {
+                    MessageBox.Show("交通費・購入品結合処理に失敗しました。", "交通費・購入品結合エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+
+                    // エラー時工事情報を削除する
+                    JoinRollBackDataProc(BaseDB, DetailDB, LinkDB, LedgerDB, LedgerDDB, ExcuteDB, DateCodeList, m_ConstructionCode);
+                    ClsChangeLedgerData.PseudoRollBackForBudgetData(m_ConstructionCode, DateCodeList);
+                    DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback(); DailyData6.rollback();
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+            finally
+            {
+                BaseDB.commit();
+                DetailDB.commit();
+                LinkDB.commit();
+                LedgerDB.commit();
+                LedgerDDB.commit();
+                ExcuteDB.commit();
+                CostDataDB.commit();
+
+                DailyData1.commit();
+                DailyData2.commit();
+                DailyData3.commit();
+                DailyData4.commit();
+                DailyData5.commit();
+                DailyData6.commit();
+
+                BaseDB.close(); BaseDB = null;
+                DetailDB.close(); DetailDB = null;
+                LinkDB.close(); LinkDB = null;
+                LedgerDB.close(); LedgerDB = null;
+                LedgerDDB.close(); LedgerDDB = null;
+                ExcuteDB.close(); ExcuteDB = null;
+                CostDataDB.close(); CostDataDB = null;
+
+                DailyData1.close(); DailyData1 = null;
+                DailyData2.close(); DailyData2 = null;
+                DailyData3.close(); DailyData3 = null;
+                DailyData4.close(); DailyData4 = null;
+                DailyData5.close(); DailyData5 = null;
+                DailyData6.close(); DailyData6 = null;
+            }
+        }
+        #endregion
+
+        #region 処理失敗時RollBack処理
+        /// <summary>
+        /// 処理失敗時RollBack処理
+        /// </summary>
+        private void JoinRollBackDataProc(IOConstructionBaseInfo BaseDB,
+                                        IOConstructionBaseInfoDetail DetailDB,
+                                        IOConstructionLink LinkDB,
+                                        IOConstructionLedger LedgerDB,
+                                        IOConstructionLedgerDetail LedgerDDB,
+                                        IOConstructionLedgerExcute ExcuteDB,
+                                        List<int> DateCodeList,
+                                        int ConstructionCode)
+        {
+            try
+            {
+                for (int i = 0; i < DateCodeList.Count; i++)
+                {
+                    // ----- 工事情報を結合から基に変更する
+                    if (!BaseDB.UpdateFeild(DateCodeList[i]
+                                            , (int)IOConstructionBaseInfo.TableColumn.JoinFlg
+                                            , (int)CommonDefine.BaseInfoJoinFlg.Standard, false)) return;
+                }
+
+                // エラー時工事情報を削除する
+                string strSQL = BaseDB.CreatePrimarykeyString(ConstructionCode);
+                BaseDB.DeleteAction(strSQL, false);
+                DetailDB.DeleteAction(strSQL, false);
+                LinkDB.DeleteAction(strSQL, false);
+
+                LedgerDB.DeleteAction(strSQL, false);
+                LedgerDDB.DeleteAction(strSQL, false);
+                ExcuteDB.DeleteAction(strSQL, false);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+            }
+        }
+        #endregion
+
+        #region 新規工事番号作成
+        /// <summary>
+        /// 新規工事番号作成
+        /// </summary>
+        /// <returns></returns>
+        private int CreateNewCode()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                int PeriodValue = 0;
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)CommonDefine.SystemConstructionNoBase.BusinessPeriod)
+                {   // ----- 営業期ベースの時
+                    // 期数をセット
+                    PeriodValue = CommonMotions.SystemMasterData.BusinessPeriod;
+                }
+                else
+                {   // ----- 営業年度ベースの時
+
+                    // 営業年をセット
+                    PeriodValue = CommonMotions.SystemMasterData.ConstructionYear;
+                }
+                // 工事番号を作成する
+                return BaseDB.CreateNewCounstructionCode(PeriodValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region 新規結合作成
+        /// <summary>
+        /// 新規結合作成
+        /// </summary>
+        /// <returns></returns>
+        private bool NewJoinDataCreate(IOConstructionBaseInfo BaseDB,
+                                        IOConstructionBaseInfoDetail DetailDB,
+                                        IOConstructionLink LinkDB,
+                                        ref List<int> DateCodeList)
+        {
+            try
+            {
+                // 新規工事番号を作成する
+                m_ConstructionCode = CreateNewCode();
+
+                // 一番最初に作成された工事を取得する
+                int SaveCode = int.MaxValue;
+                int SaveStatus = int.MinValue;
+                int WorkCode = 0;
+                int WorkStatus = 0;
+                string strWork = string.Empty;
+                string strFluction = string.Empty;
+                List<ConstructionLink> LinkList = new List<ConstructionLink>();
+                foreach (DataGridViewRow CurRow in dgvMaster.Rows)
+                {
+                    // 選択されていないものは処理しない
+                    if (CurRow.Cells[(int)DispGridColumn.JoinCheck].Value == null) continue;
+                    if (!(bool)CurRow.Cells[(int)DispGridColumn.JoinCheck].Value) continue;
+
+                    // ----- 工程が一番先に進んでいる一番小さい工事番号を取得する
+                    strWork = CommonMotions.cnvString(CurRow.Cells[(int)DispGridColumn.ConstructionCode].Value).Replace("-", "");
+                    if (strWork == string.Empty) continue;
+                    WorkCode = CommonMotions.cnvInt(strWork);
+                    WorkStatus = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.Status].Value);
+                    if (SaveCode > WorkCode && SaveStatus < WorkStatus)
+                    {
+                        SaveCode = WorkCode;
+                        SaveStatus = WorkStatus;
+                    }
+
+                    // ----- 工事情報を結合へ変更する
+                    if (!BaseDB.UpdateFeild(WorkCode
+                                            , (int)IOConstructionBaseInfo.TableColumn.JoinFlg
+                                            , (int)CommonDefine.BaseInfoJoinFlg.JoinChildren, false)) return false;
+                    // 工事番号を退避する
+                    DateCodeList.Add(WorkCode);
+
+                    // ----- リンク情報を作成する
+                    ConstructionLink LinkRec = new ConstructionLink();
+                    LinkRec.ConstructionCode = m_ConstructionCode;
+                    LinkRec.FluctuationCode = WorkCode;
+                    LinkRec.LinkType = (int)CommonDefine.LinkDataType.JoinType;
+                    if (!LinkDB.InsertAction(LinkRec, false)) return false;
+
+                    // 下位に増減工事があるかを確認する
+                    strFluction = LinkDB.CreatePrimarykeyString(WorkCode);
+                    strFluction += string.Format(" AND LINKTYPE = {0}", (int)CommonDefine.LinkDataType.FluctuationType);
+                    LinkList.Clear();
+                    if (!LinkDB.SelectAction(strFluction, ref LinkList, false)) continue;
+                    if (LinkList.Count == 0) continue;
+                    foreach (ConstructionLink CurLinkRec in LinkList)
+                    {
+                        // あれば結合フラグをONにする
+                        if (!BaseDB.UpdateFeild(CurLinkRec.FluctuationCode
+                                                , (int)IOConstructionBaseInfo.TableColumn.JoinFlg
+                                                , (int)CommonDefine.BaseInfoJoinFlg.JoinChildren, false)) return false;
+                    }
+                }
+                if (SaveCode == int.MaxValue) return false;
+
+                // 施工期間を取得する
+                DateTime SDate = DateTime.MaxValue;
+                DateTime CDate = DateTime.MinValue;
+                GetConstructionDate(BaseDB, DateCodeList, ref SDate, ref CDate);
+
+                // ------ 一番最初に作成された工事から結合工事情報を作成する
+                // まず削除
+                string strSQL = BaseDB.CreatePrimarykeyString(m_ConstructionCode);
+                BaseDB.DeleteAction(strSQL, false);
+                DetailDB.DeleteAction(strSQL, false);
+
+                // 工事情報をコピーで作成
+                if (!BaseDB.RecordCopyAction(SaveCode, m_ConstructionCode, false)) return false;
+                // 増減フラグOFF
+                if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.TyingFlg
+                                        , (int)CommonDefine.BaseInfoTyingFlg.Standard, false)) return false;
+                // 結合フラグON
+                if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.JoinFlg
+                                        , (int)CommonDefine.BaseInfoJoinFlg.JoinParent, false)) return false;
+                // 契約工期開始
+                if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodStart
+                                        , SDate, false)) return false;
+                // 契約工期完了
+                if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodEnd
+                                        , CDate, false)) return false;
+
+                // 工事情報明細をコピーで作成
+                if (!DetailDB.RecordCopyAction(SaveCode, m_ConstructionCode, false)) return false;
+                // 名前変更
+                if (!DetailDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfoDetail.TableColumn.DETAIL_STRING
+                                            , m_ConstructionName, false, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 契約工期取得
+        /// <summary>
+        /// 契約工期取得
+        /// </summary>
+        private void GetConstructionDate(IOConstructionBaseInfo BaseDB, List<int> DateCodeList, ref DateTime SDate, ref DateTime CDate)
+        {
+            try
+            {
+                string strGetDate = string.Empty;
+                for (int ix = 0; ix < 4; ix++)
+                {
+                    strGetDate = "SELECT";
+                    switch (ix)
+                    {
+                        case 0:
+                            strGetDate += " MIN(ConstructionPeriodStart)";
+                            break;
+                        case 1:
+                            strGetDate += " MIN(ConstructionPeriodStart2)";
+                            break;
+                        case 2:
+                            strGetDate += " MAX(ConstructionPeriodEnd)";
+                            break;
+                        case 3:
+                            strGetDate += " MAX(ConstructionPeriodEnd2)";
+                            break;
+                    }
+
+                    strGetDate += " FROM CONSTRUCTIONBASEINFO";
+                    strGetDate += " WHERE CONSTRUCTIONCODE IN (";
+
+                    for (int i = 0; i < DateCodeList.Count; i++)
+                    {
+                        if (i != 0) strGetDate += ",";
+                        strGetDate += string.Format(" {0}", DateCodeList[i]);
+                    }
+                    strGetDate += ")";
+
+                    switch (ix)
+                    {
+                        case 0:
+                            //strGetDate += string.Format(" AND ConstructionPeriodStart != TO_DATE('{0}','YYYY/MM/DD')", DateTime.MinValue.ToShortDateString());
+                            strGetDate += string.Format(" AND ConstructionPeriodStart != STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.MinValue.ToShortDateString());
+                            break;
+                        case 1:
+                            //strGetDate += string.Format(" AND ConstructionPeriodStart2 != TO_DATE('{0}','YYYY/MM/DD')", DateTime.MinValue.ToShortDateString());
+                            strGetDate += string.Format(" AND ConstructionPeriodStart2 != STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.MinValue.ToShortDateString());
+                            break;
+                        case 2:
+                            //strGetDate += string.Format(" AND ConstructionPeriodEnd != TO_DATE('{0}','YYYY/MM/DD')", DateTime.MinValue.ToShortDateString());
+                            strGetDate += string.Format(" AND ConstructionPeriodEnd != STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.MinValue.ToShortDateString());
+                            break;
+                        case 3:
+                            //strGetDate += string.Format(" AND ConstructionPeriodEnd2 != TO_DATE('{0}','YYYY/MM/DD')", DateTime.MinValue.ToShortDateString());
+                            strGetDate += string.Format(" AND ConstructionPeriodEnd2 != STR_TO_DATE('{0}','%Y/%m/%d')", DateTime.MinValue.ToShortDateString());
+                            break;
+                    }
+
+                    ArrayList DateArray = new ArrayList();
+                    BaseDB.ExecuteReader(strGetDate, ref DateArray, false);
+
+                    object[] DataObj = (object[])DateArray[0];
+
+                    DateTime workDT;
+                    switch (ix)
+                    {
+                        case 0:
+                            SDate = CommonMotions.cnvDate(DataObj[0]);
+                            break;
+                        case 1:
+                            workDT = CommonMotions.cnvDate(DataObj[0]);
+                            if (workDT != DateTime.MinValue && SDate > workDT) SDate = workDT;
+                            break;
+                        case 2:
+                            CDate = CommonMotions.cnvDate(DataObj[0]);
+                            break;
+                        case 3:
+                            workDT = CommonMotions.cnvDate(DataObj[0]);
+                            if (workDT != DateTime.MinValue && CDate < workDT) CDate = workDT;
+                            break;
+                    }
+
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+            }
+        }
+        #endregion
+
+        #region 結合データ作成前処理
+        /// <summary>
+        /// 結合データ作成前処理
+        /// </summary>
+        /// <returns></returns>
+        private bool JionDataAdditional(IOConstructionBaseInfo BaseDB,
+                                        IOConstructionBaseInfoDetail DetailDB,
+                                        IOConstructionLink LinkDB,
+                                        IOConstructionLedger LedgerDB,
+                                        ref List<int> DateCodeList)
+        {
+            try
+            {
+                // 一番最初に作成された工事を取得する
+                int WorkCode = 0;
+                string strWork = string.Empty;
+                foreach (DataGridViewRow CurRow in dgvMaster.Rows)
+                {
+                    // 選択されていないものは処理しない
+                    if (CurRow.Cells[(int)DispGridColumn.JoinCheck].Value == null) continue;
+                    if (!(bool)CurRow.Cells[(int)DispGridColumn.JoinCheck].Value) continue;
+
+                    // ----- 対象工事コードを取得する
+                    strWork = CommonMotions.cnvString(CurRow.Cells[(int)DispGridColumn.ConstructionCode].Value).Replace("-", "");
+                    if (strWork == string.Empty) continue;
+                    WorkCode = CommonMotions.cnvInt(strWork);
+
+                    // ----- 工事情報を結合へ変更する
+                    if (!BaseDB.UpdateFeild(WorkCode
+                                            , (int)IOConstructionBaseInfo.TableColumn.JoinFlg
+                                            , (int)CommonDefine.BaseInfoJoinFlg.JoinChildren, false)) return false;
+                    // 工事番号を退避する
+                    DateCodeList.Add(WorkCode);
+
+                    // ----- リンク情報を作成する
+                    ConstructionLink LinkRec = new ConstructionLink();
+                    LinkRec.ConstructionCode = m_ConstructionCode;
+                    LinkRec.FluctuationCode = WorkCode;
+                    LinkRec.LinkType = (int)CommonDefine.LinkDataType.JoinType;
+                    if (!LinkDB.InsertAction(LinkRec, false)) return false;
+                }
+                if (DateCodeList.Count == 0) return false;
+
+                // 施工期間を取得する
+                DateTime SDate = DateTime.MaxValue;
+                DateTime CDate = DateTime.MinValue;
+                GetConstructionDate(BaseDB, DateCodeList, ref SDate, ref CDate);
+
+                // 工事詳細台帳より工期を取得する
+                string strLedger = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
+                ConstructionLedger LedgerRec = new ConstructionLedger();
+                if (!LedgerDB.SelectAction(strLedger, ref LedgerRec, false)) return false;
+
+                // 契約工期開始
+                if (LedgerRec.ConstructionStart > SDate)
+                {
+                    if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodStart
+                                            , SDate, false)) return false;
+                }
+                // 契約工期完了
+                if (LedgerRec.ConstructionEnd < CDate)
+                {
+                    if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionPeriodEnd
+                                        , CDate, false)) return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 日報結合
+        /// <summary>
+        /// 日報結合
+        /// </summary>
+        /// <returns></returns>
+        private bool JoiningDairyData(List<int> DateCodeList,
+                IODailyDataConstruction DailyData1,
+                IODailyDataDetail DailyData2,
+                IODailyDataVehicles DailyData3,
+                IODailyDataMaterials DailyData4,
+                IODailyDataSubcontractors DailyData5,
+                IODailyDataField DailyData6)
+        {
+            try
+            {
+                string[] s_TableName = new string[] { "DAILYDATACONSTRUCTION",
+                                                        "DAILYDATADETAIL",
+                                                        "DAILYDATAVEHICLES",
+                                                        "DAILYDATAMATERIALS",
+                                                        "DAILYDATASUBCONTRACTORS",
+                                                        "DAILYDATAFIELD" };
+
+                string strSelSQL = string.Format("SELECT COUNT(*) FROM {0} WHERE", s_TableName[0]);
+                
+                string strDelSQL = string.Format("DELETE {0} WHERE", s_TableName[0]);
+
+                string strInsSQL = string.Format("INSERT INTO {0}", s_TableName[0]);
+                strInsSQL += " {0} FROM DAILYDATADETAIL WHERE";
+
+                // 検索キー追加
+                for (int i = 0; i < DateCodeList.Count; i++)
+                {
+                    if (i != 0) strSelSQL += " Or";
+                    if (i != 0) strDelSQL += " Or";
+                    if (i != 0) strInsSQL += " Or";
+                    strSelSQL += string.Format(" CONSTRUCTIONCODE = {0}", DateCodeList[i]);
+                    strDelSQL += string.Format(" CONSTRUCTIONCODE = {0}", DateCodeList[i]);
+                    strInsSQL += string.Format(" CONSTRUCTIONCODE = {0}", DateCodeList[i]);
+                }
+
+                // ----- 日報データ更新
+                ArrayList arList = new ArrayList();
+                int DataCount = 0;
+
+                // 工事日報データ更新
+                List<DailyDataConstruction> DailyList = new List<DailyDataConstruction>();
+                string WorkSQL = strSelSQL.Replace(string.Format("SELECT COUNT(*) FROM {0}", s_TableName[0]), "");
+                WorkSQL += " ORDER BY DAILYDATADATE, CONSTRUCTIONCODE";
+                if (!DailyData1.SelectAction(WorkSQL, ref DailyList, false))
+                {
+                    DailyData1.rollback();
+                    return false;
+                }
+                if (DailyList.Count > 0)
+                {
+                    DateTime BreakDate = DateTime.MinValue;
+                    foreach (DailyDataConstruction CurRec in DailyList)
+                    {
+                        if (BreakDate.Date == CurRec.DailyDataDate.Date) continue;
+                        if (!DailyData1.UpdateFeild(CurRec.PersonCode, CurRec.DailyDataDate, CurRec.ConstructionCode,
+                                                        (int)IODailyDataConstruction.DataColumn.ConstructionCode, m_ConstructionCode, false))
+                        {
+                            DailyData1.rollback();
+                            return false;
+                        }
+                        BreakDate = CurRec.DailyDataDate;
+                    }
+
+                    // 残データ削除
+                    arList.Clear();
+                    if (!DailyData1.ExecuteReader(strSelSQL, ref arList, false))
+                    {
+                        DailyData1.rollback();
+                        return false;
+                    }
+                    DataCount = GetDailyDataCount(arList);
+                    if (DataCount > 0)
+                    {
+                        if (!DailyData1.ExecuteNonQuery(strDelSQL, false))
+                        {
+                            DailyData1.rollback();
+                            return false;
+                        }
+                    }
+                }
+
+                // 工事日報データ (明細)
+                strSelSQL = strSelSQL.Replace(s_TableName[0], s_TableName[1]);
+                strInsSQL = strInsSQL.Replace(s_TableName[0], s_TableName[1]);
+                strDelSQL = strDelSQL.Replace(s_TableName[0], s_TableName[1]);
+                
+                string strInsSQL1 = string.Format("SELECT PERSONCODE, DAILYDATADATE, {0},", m_ConstructionCode);
+                strInsSQL1 += " ROW_NUMBER() OVER(PARTITION BY DAILYDATADATE ORDER BY PERSONCODE, DAILYDATADATE, CONSTRUCTIONCODE, SEQNO),";
+                strInsSQL1 += " JOBCATEGORYCODE, COMPANYCODE, TODAYHEADCOUNT, TOTALHEADCOUNT, TODAYWORK, NEXTDAYWORK, NEXTDAYHEADCOUNT, ENTRYDATE, UPDATEDATE";
+
+                arList.Clear();
+                if (!DailyData2.ExecuteReader(strSelSQL, ref arList, false))
+                {
+                    DailyData1.rollback(); DailyData2.rollback();
+                    return false;
+                }
+                DataCount = GetDailyDataCount(arList);
+                if (DataCount > 0)
+                {
+                    if (!DailyData2.ExecuteNonQuery(string.Format(strInsSQL, strInsSQL1), false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback();
+                        return false;
+                    }
+                    if (!DailyData2.ExecuteNonQuery(strDelSQL, false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback();
+                        return false;
+                    }
+                }
+
+                // 工事日報データ (車両)
+                strSelSQL = strSelSQL.Replace(s_TableName[1], s_TableName[2]);
+                strInsSQL = strInsSQL.Replace(s_TableName[1], s_TableName[2]);
+                strDelSQL = strDelSQL.Replace(s_TableName[1], s_TableName[2]);
+
+                string strInsSQL2 = string.Format("SELECT PERSONCODE, DAILYDATADATE, {0},", m_ConstructionCode);
+                strInsSQL2 += " ROW_NUMBER() OVER(PARTITION BY DAILYDATADATE ORDER BY PERSONCODE, DAILYDATADATE, CONSTRUCTIONCODE, SEQNO),";
+                strInsSQL2 += " MODEL, PERFORMANCE, OWNER, DRIVER, STARTWORKINGTIME, ENDWORKINGTIME, ENTRYDATE, UPDATEDATE";
+
+                arList.Clear();
+                if (!DailyData3.ExecuteReader(strSelSQL, ref arList, false))
+                {
+                    DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback();
+                    return false;
+                }
+                DataCount = GetDailyDataCount(arList);
+                if (DataCount > 0)
+                {
+                    if (!DailyData3.ExecuteNonQuery(string.Format(strInsSQL, strInsSQL2), false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback();
+                        return false;
+                    }
+                    if (!DailyData3.ExecuteNonQuery(strDelSQL, false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback();
+                        return false;
+                    }
+                }
+
+                // 工事日報データ (資材)
+                strSelSQL = strSelSQL.Replace(s_TableName[2], s_TableName[3]);
+                strInsSQL = strInsSQL.Replace(s_TableName[2], s_TableName[3]);
+                strDelSQL = strDelSQL.Replace(s_TableName[2], s_TableName[3]);
+
+                string strInsSQL3 = string.Format("SELECT PERSONCODE, DAILYDATADATE, {0},", m_ConstructionCode);
+                strInsSQL3 += " ROW_NUMBER() OVER(PARTITION BY DAILYDATADATE ORDER BY PERSONCODE, DAILYDATADATE, CONSTRUCTIONCODE, SEQNO),";
+                strInsSQL3 += " MATERIALS, QUANTITY, PRODUCTION, DELIVERY, QUALITYCONTROL, ENTRYDATE, UPDATEDATE";
+
+                arList.Clear();
+                if (!DailyData4.ExecuteReader(strSelSQL, ref arList, false))
+                {
+                    DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback();
+                    return false;
+                }
+                DataCount = GetDailyDataCount(arList);
+                if (DataCount > 0)
+                {
+                    if (!DailyData4.ExecuteNonQuery(string.Format(strInsSQL, strInsSQL3), false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback();
+                        return false;
+                    }
+                    if (!DailyData4.ExecuteNonQuery(strDelSQL, false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback();
+                        return false;
+                    }
+                }
+
+                // 工事日報データ (協力業者指示)
+                strSelSQL = strSelSQL.Replace(s_TableName[3], s_TableName[4]);
+                strInsSQL = strInsSQL.Replace(s_TableName[3], s_TableName[4]);
+                strDelSQL = strDelSQL.Replace(s_TableName[3], s_TableName[4]);
+
+                string strInsSQL4 = string.Format("SELECT PERSONCODE, DAILYDATADATE, {0},", m_ConstructionCode);
+                strInsSQL4 += " ROW_NUMBER() OVER(PARTITION BY DAILYDATADATE ORDER BY PERSONCODE, DAILYDATADATE, CONSTRUCTIONCODE, SEQNO),";
+                strInsSQL4 += " ATTENDEE, CONTENTSTEXT, ENTRYDATE, UPDATEDATE";
+
+                arList.Clear();
+                if (!DailyData5.ExecuteReader(strSelSQL, ref arList, false))
+                {
+                    DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback();
+                    return false;
+                }
+                DataCount = GetDailyDataCount(arList);
+                if (DataCount > 0)
+                {
+                    if (!DailyData5.ExecuteNonQuery(string.Format(strInsSQL, strInsSQL4), false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback();
+                        return false;
+                    }
+                    if (!DailyData5.ExecuteNonQuery(strDelSQL, false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback();
+                        return false;
+                    }
+                }
+
+                // 工事日報データ (現場巡回)
+                strSelSQL = strSelSQL.Replace(s_TableName[4], s_TableName[5]);
+                strInsSQL = strInsSQL.Replace(s_TableName[4], s_TableName[5]);
+                strDelSQL = strDelSQL.Replace(s_TableName[4], s_TableName[5]);
+
+                string strInsSQL5 = string.Format("SELECT PERSONCODE, DAILYDATADATE, {0},", m_ConstructionCode);
+                strInsSQL5 += " ROW_NUMBER() OVER(PARTITION BY DAILYDATADATE ORDER BY PERSONCODE, DAILYDATADATE, CONSTRUCTIONCODE, SEQNO),";
+                strInsSQL5 += " PATROLTIME, CONTENTSTEXT, ENTRYDATE, UPDATEDATE";
+
+                arList.Clear();
+                if (!DailyData6.ExecuteReader(strSelSQL, ref arList, false))
+                {
+                    DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback(); DailyData6.rollback();
+                    return false;
+                }
+                DataCount = GetDailyDataCount(arList);
+                if (DataCount > 0)
+                {
+                    if (!DailyData6.ExecuteNonQuery(string.Format(strInsSQL, strInsSQL5), false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback(); DailyData6.rollback();
+                        return false;
+                    }
+                    if (!DailyData6.ExecuteNonQuery(strDelSQL, false))
+                    {
+                        DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback(); DailyData6.rollback();
+                        return false;
+                    }
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                DailyData1.rollback(); DailyData2.rollback(); DailyData3.rollback(); DailyData4.rollback(); DailyData5.rollback(); DailyData6.rollback();
+                return false;
+            }
+        }
+        #endregion
+
+        #region 日報データの件数を取得する
+        /// <summary>
+        /// 日報データの件数を取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetDailyDataCount(ArrayList CntWork)
+        {
+            try
+            {
+                int iRet = 0;
+                object[] objRec = (object[])CntWork[0];
+                iRet = CommonMotions.cnvInt(objRec[0]);
+
+                return iRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region 担当者毎経費データ結合
+        /// <summary>
+        /// 担当者毎経費データ結合
+        /// </summary>
+        /// <returns></returns>
+        private bool JoinCostData(List<int> DateCodeList, IOCostDataOfPerson CostDataDB)
+        {
+            try
+            {
+                string strSelSQL = "SELECT COUNT(*) FROM COSTDATAOFPERSON WHERE";
+
+                string strMoveSQL = string.Format("UPDATE COSTDATAOFPERSON SET CONSTRUCTIONCODE = {0} WHERE", m_ConstructionCode);
+                // 検索キー追加
+                for (int i = 0; i < DateCodeList.Count; i++)
+                {
+                    if (i != 0) strSelSQL += " Or";
+                    if (i != 0) strMoveSQL += " Or";
+                    strSelSQL += string.Format(" CONSTRUCTIONCODE = {0}", DateCodeList[i]);
+                    strMoveSQL += string.Format(" CONSTRUCTIONCODE = {0}", DateCodeList[i]);
+                }
+
+                ArrayList arList = new ArrayList();
+                if (!CostDataDB.ExecuteReader(strSelSQL, ref arList, false)) return false;
+                object[] objRec = (object[])arList[0];
+
+                if (CommonMotions.cnvInt(objRec[0]) > 0)
+                {
+                    if (!CostDataDB.ExecuteNonQuery(strMoveSQL, false))
+                    {
+                        CostDataDB.rollback();
+                        return false;
+                    }
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.Designer.cs	(revision 51)
@@ -0,0 +1,199 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmJoinSelect
+    {
+        /// <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()
+        {
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnEntry = new System.Windows.Forms.Button();
+            this.panel3 = new System.Windows.Forms.Panel();
+            this.comboBox1 = new System.Windows.Forms.ComboBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.lblName = new System.Windows.Forms.Label();
+            this.lblDivision = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.panel3.SuspendLayout();
+            this.panel1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(502, 174);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(120, 30);
+            this.btnCancel.TabIndex = 2;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // btnEntry
+            // 
+            this.btnEntry.BackColor = System.Drawing.Color.Green;
+            this.btnEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEntry.ForeColor = System.Drawing.Color.White;
+            this.btnEntry.Location = new System.Drawing.Point(374, 174);
+            this.btnEntry.Name = "btnEntry";
+            this.btnEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnEntry.TabIndex = 1;
+            this.btnEntry.Text = "実　行";
+            this.btnEntry.UseVisualStyleBackColor = false;
+            this.btnEntry.Click += new System.EventHandler(this.btnEntry_Click);
+            // 
+            // panel3
+            // 
+            this.panel3.BackColor = System.Drawing.Color.White;
+            this.panel3.Controls.Add(this.comboBox1);
+            this.panel3.Controls.Add(this.label3);
+            this.panel3.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.panel3.Location = new System.Drawing.Point(2, 96);
+            this.panel3.Name = "panel3";
+            this.panel3.Size = new System.Drawing.Size(620, 70);
+            this.panel3.TabIndex = 160;
+            // 
+            // comboBox1
+            // 
+            this.comboBox1.BackColor = System.Drawing.Color.White;
+            this.comboBox1.FormattingEnabled = true;
+            this.comboBox1.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.comboBox1.Location = new System.Drawing.Point(14, 32);
+            this.comboBox1.Name = "comboBox1";
+            this.comboBox1.Size = new System.Drawing.Size(596, 27);
+            this.comboBox1.TabIndex = 0;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(10, 10);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(471, 19);
+            this.label3.TabIndex = 2;
+            this.label3.Text = "結合後に使用する工事名称を入力してください。";
+            // 
+            // panel1
+            // 
+            this.panel1.BackColor = System.Drawing.Color.White;
+            this.panel1.Controls.Add(this.lblName);
+            this.panel1.Controls.Add(this.lblDivision);
+            this.panel1.Controls.Add(this.label1);
+            this.panel1.Controls.Add(this.label5);
+            this.panel1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.panel1.Location = new System.Drawing.Point(2, 12);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(620, 76);
+            this.panel1.TabIndex = 162;
+            // 
+            // lblName
+            // 
+            this.lblName.BackColor = System.Drawing.Color.LightGray;
+            this.lblName.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.lblName.Location = new System.Drawing.Point(130, 39);
+            this.lblName.Name = "lblName";
+            this.lblName.Size = new System.Drawing.Size(480, 30);
+            this.lblName.TabIndex = 146;
+            this.lblName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblDivision
+            // 
+            this.lblDivision.BackColor = System.Drawing.Color.LightGray;
+            this.lblDivision.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.lblDivision.Location = new System.Drawing.Point(130, 4);
+            this.lblDivision.Name = "lblDivision";
+            this.lblDivision.Size = new System.Drawing.Size(480, 30);
+            this.lblDivision.TabIndex = 146;
+            this.lblDivision.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.CornflowerBlue;
+            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.Location = new System.Drawing.Point(10, 39);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(120, 30);
+            this.label1.TabIndex = 145;
+            this.label1.Text = "発 注 者";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label5
+            // 
+            this.label5.BackColor = System.Drawing.Color.CornflowerBlue;
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.Location = new System.Drawing.Point(10, 4);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(120, 30);
+            this.label5.TabIndex = 145;
+            this.label5.Text = "発注者区分";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // FrmJoinSelect
+            // 
+            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(625, 211);
+            this.Controls.Add(this.panel1);
+            this.Controls.Add(this.panel3);
+            this.Controls.Add(this.btnEntry);
+            this.Controls.Add(this.btnCancel);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmJoinSelect";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "新規結合作成処理";
+            this.Load += new System.EventHandler(this.FrmJoinSelect_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmJoinSelect_KeyDown);
+            this.panel3.ResumeLayout(false);
+            this.panel3.PerformLayout();
+            this.panel1.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnEntry;
+        private System.Windows.Forms.Panel panel3;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label lblName;
+        private System.Windows.Forms.Label lblDivision;
+        private System.Windows.Forms.ComboBox comboBox1;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.cs	(revision 51)
@@ -0,0 +1,272 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmJoinSelect : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+
+        #endregion
+
+        #region 変数
+
+        /// <summary>
+        /// 工事名称一覧
+        /// </summary>
+        private List<string> m_NameList = new List<string>();
+
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        private int m_OrderersDivision = 0;
+        /// <summary>
+        /// 発注者番号
+        /// </summary>
+        private int m_OrdererCode = 0;
+
+        /// <summary>
+        /// 工事名称
+        /// </summary>
+        private string m_ConstructionName = string.Empty;
+
+        /// <summary>
+        /// 終了ボタン
+        /// </summary>
+        private DialogResult m_Result = DialogResult.Cancel;
+
+        /// <summary>
+        /// 工事情報
+        /// </summary>
+        private ConstructionBaseInfo m_BaseInfo = new ConstructionBaseInfo();
+        #endregion
+
+        #region プロパティ
+
+        /// <summary>
+        /// 工事名称一覧
+        /// </summary>
+        public List<string> NameList
+        {
+            get { return m_NameList; }
+            set { m_NameList = value; }
+        }
+
+        /// <summary>
+        /// 工事名称
+        /// </summary>
+        public string ConstructionName
+        {
+            get { return m_ConstructionName; }
+        }
+
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderersDivision
+        {
+            set { m_OrderersDivision = value; }
+        }
+        /// <summary>
+        /// 発注者番号
+        /// </summary>
+        public int OrdererCode
+        {
+            set { m_OrdererCode = value; }
+        }
+
+        /// <summary>
+        /// 終了ボタン
+        /// </summary>
+        public DialogResult Result
+        {
+            get { return m_Result; }
+        }
+
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmJoinSelect()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmJoinSelect_Load(object sender, EventArgs e)
+        {
+            InitDataDisp();
+        }
+        #endregion
+
+        #region 終了ボタン押下
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                m_Result = DialogResult.Cancel;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                this.Close();
+            }
+        }
+        #endregion
+
+        #region 実行ボタン押下
+        /// <summary>
+        /// 実行ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                m_ConstructionName = string.Empty;
+                // データチェック
+                if (!DispFeildCheck()) return;
+
+                // 工事名称
+                m_ConstructionName = comboBox1.Text;
+
+                m_Result = DialogResult.OK;
+
+                this.Close();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region フィールドチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            try
+            {
+                comboBox1.BackColor = Color.White;
+                if (comboBox1.Text.Length == 0)
+                {
+                    comboBox1.BackColor = Color.Red;
+                    MessageBox.Show("工事名称が選択されていません。", "工事名称エラー", MessageBoxButtons.OK);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 初期表示
+        /// <summary>
+        /// 初期表示
+        /// </summary>
+        private void InitDataDisp()
+        {
+            IOMDivision dvDB = new IOMDivision();
+            try
+            {
+                // 発注者名表示
+                string strSQL = "SELECT A.NAMESTRING, B.ORDERERSNAME1, B.ORDERERSNAME2";
+                strSQL += " FROM DIVISIONMASTER A, ORDERERSMASTER B";
+                strSQL += string.Format(" WHERE (A.DIVISIONCODE = {0} AND A.NAMECODE = {1})"
+                                        , (int)CommonDefine.DivisionMasterCodeDefine.OrderDivision
+                                        , m_OrderersDivision);
+                strSQL += string.Format(" AND B.ORDERCOTEGORY = A.NAMECODE AND B.ORDERERSCODE = {0}", m_OrdererCode);
+                ArrayList arList = new ArrayList();
+                if (!dvDB.ExecuteReader(strSQL, ref arList)) return;
+                object[] objRec = (object[])arList[0];
+                lblDivision.Text = CommonMotions.cnvString(objRec[0]);
+                lblName.Text = CommonMotions.cnvString(objRec[1]) + " " + CommonMotions.cnvString(objRec[2]);
+
+                // 工事名称選択
+                comboBox1.Items.Add("");
+                foreach (string CurName in m_NameList)
+                {
+                    comboBox1.Items.Add(CurName);
+                }
+            }
+            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 FrmJoinSelect_KeyDown(object sender, KeyEventArgs e)
+        {
+            try
+            {
+                //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;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionJoin/FrmJoinSelect.resx	(revision 51)
@@ -0,0 +1,120 @@
+﻿<?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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs	(revision 51)
@@ -147,10 +147,13 @@
             /// �Ǝ햼��
             /// </summary>
             TextName,
-            CompanyType,
             /// <summary>
             /// ���͉�ЃR�[�h�^�C�v
             /// </summary>
+            CompanyType,
+            /// <summary>
+            /// ���͉�ЃR�[�h
+            /// </summary>
             CompanyCode,
             /// <summary>
             /// ���͉�Ж���
@@ -205,9 +208,25 @@
             /// </summary>
             OperatingFlg,
             /// <summary>
+            /// ���H���ԍ�
+            /// </summary>
+            SourceCode,
+            /// <summary>
+            /// �H�����̃^�C�g��
+            /// </summary>
+            JoinTitleFlg,
+            /// <summary>
+            /// �o�^�����z���^
+            /// </summary>
+            SalaryOnRegist,
+            /// <summary>
+            /// ���������s�t���O
+            /// </summary>
+            PurchaseOrderFlg,
+            /// <summary>
             /// �x�����z1�J����
             /// </summary>
-            payment,
+            Payment,
         }
 
         #region ���͕�����MAX�i120�j
@@ -336,7 +355,7 @@
                                                             , "�S �� �� �� �^"
                                                             , "���@�@���@�@�v"
                                                             , "���@�v�@���@�z"
-                                                            , "���@���@���@�z"
+                                                            , "���@���@���@�z�i�ŕʁj"
                                                             , "���ݗ��v���z"};
         private static string s_PersonnelExpensesGroup = "�l�@�@���@�@��";
         #endregion
@@ -460,8 +479,29 @@
                                                                 "���@���@�ρ@��@��"};
         #endregion
 
+        #region �f�[�^�쐬�敪
+        /// <summary>
+        /// �f�[�^�쐬�敪
+        /// </summary>
+        private enum DataCreateFlg
+        {
+            /// <summary>
+            /// �f�[�^�쐬��
+            /// </summary>
+            DataNone = 0,
+            /// <summary>
+            /// �H���\�Z�f�[�^���쐬
+            /// </summary>
+            DataBudget,
+            /// <summary>
+            /// �H���ڍב䒠���쐬
+            /// </summary>
+            DataLedger,
+        }
         #endregion
 
+        #endregion
+
         #region �ϐ�
         /// <summary>
         /// �t�B�[���h�l�ω��t���O
@@ -574,6 +614,16 @@
 
         #endregion
 
+        /// <summary>
+        /// �ΏۃR�[�h���X�g
+        /// </summary>
+        private List<int> m_JoiningCodeList = new List<int>();
+
+        /// <summary>
+        /// �^�����[���o�b�N�t���O
+        /// </summary>
+        private bool m_RollBackJoinLedger = false;
+
         #endregion
 
         #region �v���p�e�B
@@ -679,6 +729,37 @@
             get { return s_GroupTitle[m_GetTitileParametar]; }
         }
 
+        /// <summary>
+        /// �ΏۃR�[�h���X�g
+        /// </summary>
+        public List<int> JoiningCodeList
+        {
+            get { return m_JoiningCodeList; }
+            set { m_JoiningCodeList = value; }
+        }
+        /// <summary>
+        /// �H���ڍב䒠�f�[�^�Ƀf�[�^����
+        /// </summary>
+        public bool JoinDataLedger
+        {
+            get { return JoiningLedgerData(); }
+        }
+
+        /// <summary>
+        /// �f�[�^�폜
+        /// </summary>
+        public bool RemoveJoinLedger
+        {
+            get { return RemoveJoinLedgerData(); }
+        }
+        /// <summary>
+        /// �^�����[���o�b�N�t���O�Z�b�g
+        /// </summary>
+        public bool SetRollBackFlg
+        {
+            get { return m_RollBackJoinLedger; }
+            set { m_RollBackJoinLedger = value; }
+        }
         #endregion
 
         #region �R���X�g���N�^
@@ -880,6 +961,19 @@
         }
         #endregion
 
+        #region �Z�������`��
+        /// <summary>
+        /// �Z�������`��
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvAllDisplay_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
+        {
+            // �����`��
+            CellConnective(sender, e);
+        }
+        #endregion
+
         #region ���F�҈ꗗ�N���[�Y
         /// <summary>
         /// ���F�҈ꗗ�̃N���[�Y���擾����
@@ -1012,7 +1106,7 @@
                 {
                     case (int)GridColumn.ItemName:                          // ����
                     case (int)GridColumn.TextName:                          // �H�����e
-                    case (int)GridColumn.CompanyName:                 // ���͉��
+                    case (int)GridColumn.CompanyName:                       // ���͉��
                         dgv.ImeMode = ImeMode.On;
                         break;
                     default:
@@ -1229,6 +1323,8 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.EntryEndMessage("�H���ڍב䒠�f�[�^");
+
             // �I��
             this.Close();
         }
@@ -1251,6 +1347,8 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.RemoveEndMessage("�H���ڍב䒠�f�[�^");
+
             // �I��
             this.Close();
         }
@@ -1266,7 +1364,6 @@
         {
             // ���͊���
             SetInputComplate(true);
-
         }
         #endregion
 
@@ -1291,7 +1388,7 @@
         private void btnInstractorChange_Click(object sender, EventArgs e)
         {
             // ���S���ҁ^�w�����ύX����
-            ChangeAssistantOrInstractor((int)CommonDefine.PersonSelectFlg.Instructor);
+            //ChangeAssistantOrInstractor((int)CommonDefine.PersonSelectFlg.Instructor);
         }
         #endregion
 
@@ -1327,7 +1424,7 @@
         /// <param name="e"></param>
         private void button2_Click(object sender, EventArgs e)
         {
-            RecalcalculationPersonnelExpenses();
+            //RecalcalculationPersonnelExpenses();
             //ReCalculation();
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs	(revision 51)
@@ -42,6 +42,18 @@
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.panel1 = new System.Windows.Forms.Panel();
+            this.pnlGroup2 = new System.Windows.Forms.Panel();
+            this.label19 = new System.Windows.Forms.Label();
+            this.radioButton4 = new System.Windows.Forms.RadioButton();
+            this.textBox2 = new System.Windows.Forms.TextBox();
+            this.radioButton5 = new System.Windows.Forms.RadioButton();
+            this.radioButton6 = new System.Windows.Forms.RadioButton();
+            this.pnlGroup1 = new System.Windows.Forms.Panel();
+            this.label22 = new System.Windows.Forms.Label();
+            this.radioButton1 = new System.Windows.Forms.RadioButton();
+            this.textBox1 = new System.Windows.Forms.TextBox();
+            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.radioButton3 = new System.Windows.Forms.RadioButton();
             this.lblLabel06 = new System.Windows.Forms.Label();
             this.label23 = new System.Windows.Forms.Label();
             this.label20 = new System.Windows.Forms.Label();
@@ -76,6 +88,14 @@
             this.panel2 = new System.Windows.Forms.Panel();
             this.lblCellTotal = new System.Windows.Forms.Label();
             this.dgvAllDisplay = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.btnDispDown = new System.Windows.Forms.Button();
+            this.btnDispUp = new System.Windows.Forms.Button();
+            this.btnOtherProc = new System.Windows.Forms.Button();
+            this.btnAssistantChange = new System.Windows.Forms.Button();
+            this.btnInstractorChange = new System.Windows.Forms.Button();
+            this.btnChangePrice = new System.Windows.Forms.Button();
+            this.button1 = new System.Windows.Forms.Button();
+            this.button2 = new System.Windows.Forms.Button();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -98,15 +118,13 @@
             this.Column20 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column21 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column22 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.btnDispDown = new System.Windows.Forms.Button();
-            this.btnDispUp = new System.Windows.Forms.Button();
-            this.btnOtherProc = new System.Windows.Forms.Button();
-            this.btnAssistantChange = new System.Windows.Forms.Button();
-            this.btnInstractorChange = new System.Windows.Forms.Button();
-            this.btnChangePrice = new System.Windows.Forms.Button();
-            this.button1 = new System.Windows.Forms.Button();
-            this.button2 = new System.Windows.Forms.Button();
+            this.Column23 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column24 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column25 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column26 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.panel1.SuspendLayout();
+            this.pnlGroup2.SuspendLayout();
+            this.pnlGroup1.SuspendLayout();
             this.panel2.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).BeginInit();
             this.SuspendLayout();
@@ -137,6 +155,7 @@
             this.btnDataDelete.TabIndex = 13;
             this.btnDataDelete.Text = "削　除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
+            this.btnDataDelete.Visible = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
             // btnDataEntry
@@ -172,6 +191,8 @@
             this.panel1.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
             this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.panel1.Controls.Add(this.pnlGroup2);
+            this.panel1.Controls.Add(this.pnlGroup1);
             this.panel1.Controls.Add(this.lblLabel06);
             this.panel1.Controls.Add(this.label23);
             this.panel1.Controls.Add(this.label20);
@@ -204,6 +225,150 @@
             this.panel1.Size = new System.Drawing.Size(1330, 160);
             this.panel1.TabIndex = 0;
             // 
+            // pnlGroup2
+            // 
+            this.pnlGroup2.BackColor = System.Drawing.Color.Beige;
+            this.pnlGroup2.Controls.Add(this.label19);
+            this.pnlGroup2.Controls.Add(this.radioButton4);
+            this.pnlGroup2.Controls.Add(this.textBox2);
+            this.pnlGroup2.Controls.Add(this.radioButton5);
+            this.pnlGroup2.Controls.Add(this.radioButton6);
+            this.pnlGroup2.Enabled = false;
+            this.pnlGroup2.Location = new System.Drawing.Point(959, 92);
+            this.pnlGroup2.Name = "pnlGroup2";
+            this.pnlGroup2.Size = new System.Drawing.Size(360, 30);
+            this.pnlGroup2.TabIndex = 68;
+            // 
+            // label19
+            // 
+            this.label19.AutoSize = true;
+            this.label19.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label19.Location = new System.Drawing.Point(328, 7);
+            this.label19.Name = "label19";
+            this.label19.Size = new System.Drawing.Size(25, 16);
+            this.label19.TabIndex = 12;
+            this.label19.Text = "日";
+            // 
+            // radioButton4
+            // 
+            this.radioButton4.AutoSize = true;
+            this.radioButton4.Checked = true;
+            this.radioButton4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton4.Location = new System.Drawing.Point(7, 5);
+            this.radioButton4.Name = "radioButton4";
+            this.radioButton4.Size = new System.Drawing.Size(94, 20);
+            this.radioButton4.TabIndex = 6;
+            this.radioButton4.TabStop = true;
+            this.radioButton4.Text = "全日振分";
+            this.radioButton4.UseVisualStyleBackColor = true;
+            // 
+            // textBox2
+            // 
+            this.textBox2.BackColor = System.Drawing.Color.White;
+            this.textBox2.Enabled = false;
+            this.textBox2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.textBox2.Location = new System.Drawing.Point(272, 4);
+            this.textBox2.MaxLength = 6;
+            this.textBox2.Name = "textBox2";
+            this.textBox2.Size = new System.Drawing.Size(56, 23);
+            this.textBox2.TabIndex = 10;
+            this.textBox2.TabStop = false;
+            this.textBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // radioButton5
+            // 
+            this.radioButton5.AutoSize = true;
+            this.radioButton5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton5.Location = new System.Drawing.Point(101, 5);
+            this.radioButton5.Name = "radioButton5";
+            this.radioButton5.Size = new System.Drawing.Size(77, 20);
+            this.radioButton5.TabIndex = 7;
+            this.radioButton5.Text = "未振分";
+            this.radioButton5.UseVisualStyleBackColor = true;
+            // 
+            // radioButton6
+            // 
+            this.radioButton6.AutoSize = true;
+            this.radioButton6.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton6.Location = new System.Drawing.Point(178, 5);
+            this.radioButton6.Name = "radioButton6";
+            this.radioButton6.Size = new System.Drawing.Size(94, 20);
+            this.radioButton6.TabIndex = 11;
+            this.radioButton6.Text = "日数指定";
+            this.radioButton6.UseVisualStyleBackColor = true;
+            // 
+            // pnlGroup1
+            // 
+            this.pnlGroup1.BackColor = System.Drawing.Color.MediumAquamarine;
+            this.pnlGroup1.Controls.Add(this.label22);
+            this.pnlGroup1.Controls.Add(this.radioButton1);
+            this.pnlGroup1.Controls.Add(this.textBox1);
+            this.pnlGroup1.Controls.Add(this.radioButton2);
+            this.pnlGroup1.Controls.Add(this.radioButton3);
+            this.pnlGroup1.Enabled = false;
+            this.pnlGroup1.Location = new System.Drawing.Point(959, 62);
+            this.pnlGroup1.Name = "pnlGroup1";
+            this.pnlGroup1.Size = new System.Drawing.Size(360, 30);
+            this.pnlGroup1.TabIndex = 67;
+            // 
+            // label22
+            // 
+            this.label22.AutoSize = true;
+            this.label22.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label22.Location = new System.Drawing.Point(328, 7);
+            this.label22.Name = "label22";
+            this.label22.Size = new System.Drawing.Size(25, 16);
+            this.label22.TabIndex = 9;
+            this.label22.Text = "日";
+            // 
+            // radioButton1
+            // 
+            this.radioButton1.AutoSize = true;
+            this.radioButton1.Checked = true;
+            this.radioButton1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton1.Location = new System.Drawing.Point(7, 5);
+            this.radioButton1.Name = "radioButton1";
+            this.radioButton1.Size = new System.Drawing.Size(94, 20);
+            this.radioButton1.TabIndex = 6;
+            this.radioButton1.TabStop = true;
+            this.radioButton1.Text = "全日振分";
+            this.radioButton1.UseVisualStyleBackColor = true;
+            // 
+            // textBox1
+            // 
+            this.textBox1.BackColor = System.Drawing.Color.White;
+            this.textBox1.Enabled = false;
+            this.textBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.textBox1.Location = new System.Drawing.Point(272, 4);
+            this.textBox1.MaxLength = 6;
+            this.textBox1.Name = "textBox1";
+            this.textBox1.Size = new System.Drawing.Size(56, 23);
+            this.textBox1.TabIndex = 5;
+            this.textBox1.TabStop = false;
+            this.textBox1.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // radioButton2
+            // 
+            this.radioButton2.AutoSize = true;
+            this.radioButton2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton2.Location = new System.Drawing.Point(101, 5);
+            this.radioButton2.Name = "radioButton2";
+            this.radioButton2.Size = new System.Drawing.Size(77, 20);
+            this.radioButton2.TabIndex = 7;
+            this.radioButton2.Text = "未振分";
+            this.radioButton2.UseVisualStyleBackColor = true;
+            // 
+            // radioButton3
+            // 
+            this.radioButton3.AutoSize = true;
+            this.radioButton3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton3.Location = new System.Drawing.Point(178, 5);
+            this.radioButton3.Name = "radioButton3";
+            this.radioButton3.Size = new System.Drawing.Size(94, 20);
+            this.radioButton3.TabIndex = 8;
+            this.radioButton3.Text = "日数指定";
+            this.radioButton3.UseVisualStyleBackColor = true;
+            // 
             // lblLabel06
             // 
             this.lblLabel06.BackColor = System.Drawing.Color.White;
@@ -257,7 +422,7 @@
             this.label18.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label18.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label18.ForeColor = System.Drawing.Color.Black;
-            this.label18.Location = new System.Drawing.Point(959, 95);
+            this.label18.Location = new System.Drawing.Point(959, 35);
             this.label18.Name = "label18";
             this.label18.Size = new System.Drawing.Size(114, 25);
             this.label18.TabIndex = 48;
@@ -271,7 +436,7 @@
             this.lblBudgetOverrun.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblBudgetOverrun.Font = new System.Drawing.Font("MS UI Gothic", 12F, System.Drawing.FontStyle.Bold);
             this.lblBudgetOverrun.ForeColor = System.Drawing.Color.Red;
-            this.lblBudgetOverrun.Location = new System.Drawing.Point(1081, 95);
+            this.lblBudgetOverrun.Location = new System.Drawing.Point(1081, 35);
             this.lblBudgetOverrun.Name = "lblBudgetOverrun";
             this.lblBudgetOverrun.Size = new System.Drawing.Size(170, 25);
             this.lblBudgetOverrun.TabIndex = 49;
@@ -645,7 +810,11 @@
             this.Column19,
             this.Column20,
             this.Column21,
-            this.Column22});
+            this.Column22,
+            this.Column23,
+            this.Column24,
+            this.Column25,
+            this.Column26});
             this.dgvAllDisplay.Location = new System.Drawing.Point(6, 4);
             this.dgvAllDisplay.Name = "dgvAllDisplay";
             this.dgvAllDisplay.RowHeadersVisible = false;
@@ -657,6 +826,7 @@
             this.dgvAllDisplay.TabIndex = 35;
             this.dgvAllDisplay.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellDoubleClick);
             this.dgvAllDisplay.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellEnter);
+            this.dgvAllDisplay.CellPainting += new System.Windows.Forms.DataGridViewCellPaintingEventHandler(this.dgvAllDisplay_CellPainting);
             this.dgvAllDisplay.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellValidated);
             this.dgvAllDisplay.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellValueChanged);
             this.dgvAllDisplay.SelectionChanged += new System.EventHandler(this.dgvAllDisplay_SelectionChanged);
@@ -663,6 +833,112 @@
             this.dgvAllDisplay.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgvAllDisplay_KeyDown);
             this.dgvAllDisplay.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvAllDisplay_MouseUp);
             // 
+            // 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);
+            // 
+            // btnAssistantChange
+            // 
+            this.btnAssistantChange.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnAssistantChange.BackColor = System.Drawing.Color.Beige;
+            this.btnAssistantChange.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
+            this.btnAssistantChange.Location = new System.Drawing.Point(381, 656);
+            this.btnAssistantChange.Name = "btnAssistantChange";
+            this.btnAssistantChange.Size = new System.Drawing.Size(130, 30);
+            this.btnAssistantChange.TabIndex = 96;
+            this.btnAssistantChange.Text = "副担当者変更";
+            this.btnAssistantChange.UseVisualStyleBackColor = false;
+            this.btnAssistantChange.Visible = false;
+            this.btnAssistantChange.Click += new System.EventHandler(this.btnAssistantChange_Click);
+            // 
+            // btnInstractorChange
+            // 
+            this.btnInstractorChange.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnInstractorChange.BackColor = System.Drawing.Color.MistyRose;
+            this.btnInstractorChange.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
+            this.btnInstractorChange.Location = new System.Drawing.Point(519, 656);
+            this.btnInstractorChange.Name = "btnInstractorChange";
+            this.btnInstractorChange.Size = new System.Drawing.Size(130, 30);
+            this.btnInstractorChange.TabIndex = 97;
+            this.btnInstractorChange.Text = "指導員変更";
+            this.btnInstractorChange.UseVisualStyleBackColor = false;
+            this.btnInstractorChange.Visible = false;
+            this.btnInstractorChange.Click += new System.EventHandler(this.btnInstractorChange_Click);
+            // 
+            // btnChangePrice
+            // 
+            this.btnChangePrice.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnChangePrice.BackColor = System.Drawing.Color.Gold;
+            this.btnChangePrice.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
+            this.btnChangePrice.Location = new System.Drawing.Point(243, 656);
+            this.btnChangePrice.Name = "btnChangePrice";
+            this.btnChangePrice.Size = new System.Drawing.Size(130, 30);
+            this.btnChangePrice.TabIndex = 99;
+            this.btnChangePrice.Text = "受注金額変更";
+            this.btnChangePrice.UseVisualStyleBackColor = false;
+            this.btnChangePrice.Click += new System.EventHandler(this.btnChangePrice_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);
+            // 
             // Column1
             // 
             dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
@@ -892,110 +1168,47 @@
             this.Column22.Visible = false;
             this.Column22.Width = 5;
             // 
-            // btnDispDown
+            // Column23
             // 
-            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);
+            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;
             // 
-            // btnDispUp
+            // Column24
             // 
-            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);
+            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;
             // 
-            // btnOtherProc
+            // Column25
             // 
-            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(200, 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);
+            this.Column25.Frozen = true;
+            this.Column25.HeaderText = "担当者給与";
+            this.Column25.Name = "Column25";
+            this.Column25.ReadOnly = true;
+            this.Column25.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column25.Visible = false;
+            this.Column25.Width = 5;
             // 
-            // btnAssistantChange
+            // Column26
             // 
-            this.btnAssistantChange.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnAssistantChange.BackColor = System.Drawing.Color.Beige;
-            this.btnAssistantChange.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnAssistantChange.Location = new System.Drawing.Point(381, 656);
-            this.btnAssistantChange.Name = "btnAssistantChange";
-            this.btnAssistantChange.Size = new System.Drawing.Size(130, 30);
-            this.btnAssistantChange.TabIndex = 96;
-            this.btnAssistantChange.Text = "副担当者変更";
-            this.btnAssistantChange.UseVisualStyleBackColor = false;
-            this.btnAssistantChange.Click += new System.EventHandler(this.btnAssistantChange_Click);
+            this.Column26.Frozen = true;
+            this.Column26.HeaderText = "注文書発行フラグ";
+            this.Column26.Name = "Column26";
+            this.Column26.ReadOnly = true;
+            this.Column26.Visible = false;
+            this.Column26.Width = 5;
             // 
-            // btnInstractorChange
-            // 
-            this.btnInstractorChange.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnInstractorChange.BackColor = System.Drawing.Color.MistyRose;
-            this.btnInstractorChange.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnInstractorChange.Location = new System.Drawing.Point(519, 656);
-            this.btnInstractorChange.Name = "btnInstractorChange";
-            this.btnInstractorChange.Size = new System.Drawing.Size(130, 30);
-            this.btnInstractorChange.TabIndex = 97;
-            this.btnInstractorChange.Text = "指導員変更";
-            this.btnInstractorChange.UseVisualStyleBackColor = false;
-            this.btnInstractorChange.Click += new System.EventHandler(this.btnInstractorChange_Click);
-            // 
-            // btnChangePrice
-            // 
-            this.btnChangePrice.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnChangePrice.BackColor = System.Drawing.Color.Gold;
-            this.btnChangePrice.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnChangePrice.Location = new System.Drawing.Point(243, 656);
-            this.btnChangePrice.Name = "btnChangePrice";
-            this.btnChangePrice.Size = new System.Drawing.Size(130, 30);
-            this.btnChangePrice.TabIndex = 99;
-            this.btnChangePrice.Text = "受注金額変更";
-            this.btnChangePrice.UseVisualStyleBackColor = false;
-            this.btnChangePrice.Click += new System.EventHandler(this.btnChangePrice_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);
-            // 
             // FrmConstructionLedger
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -1032,6 +1245,10 @@
             this.SizeChanged += new System.EventHandler(this.FrmConstructionLedger_SizeChanged);
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionLedger_KeyDown);
             this.panel1.ResumeLayout(false);
+            this.pnlGroup2.ResumeLayout(false);
+            this.pnlGroup2.PerformLayout();
+            this.pnlGroup1.ResumeLayout(false);
+            this.pnlGroup1.PerformLayout();
             this.panel2.ResumeLayout(false);
             this.panel2.PerformLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).EndInit();
@@ -1088,6 +1305,18 @@
         private System.Windows.Forms.Label label23;
         private System.Windows.Forms.Button button1;
         private System.Windows.Forms.Button button2;
+        private System.Windows.Forms.Panel pnlGroup2;
+        private System.Windows.Forms.Label label19;
+        private System.Windows.Forms.RadioButton radioButton4;
+        private System.Windows.Forms.TextBox textBox2;
+        private System.Windows.Forms.RadioButton radioButton5;
+        private System.Windows.Forms.RadioButton radioButton6;
+        private System.Windows.Forms.Panel pnlGroup1;
+        private System.Windows.Forms.Label label22;
+        private System.Windows.Forms.RadioButton radioButton1;
+        private System.Windows.Forms.TextBox textBox1;
+        private System.Windows.Forms.RadioButton radioButton2;
+        private System.Windows.Forms.RadioButton radioButton3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
@@ -1110,5 +1339,9 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column20;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column21;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column22;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column23;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column24;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column25;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column26;
     }
 }
\ 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 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.resx	(revision 51)
@@ -174,4 +174,16 @@
   <metadata name="Column22.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="Column23.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column24.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column25.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column26.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
 </root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 51)
@@ -289,6 +289,103 @@
         }
         #endregion
 
+        #region セルの結合描画処理
+        /// <summary>
+        /// セルの結合描画処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void CellConnective(object sender, DataGridViewCellPaintingEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                // ヘッダーは処理しない
+                if (e.RowIndex < 0) return;
+
+                // 結合タイトル以外は処理しない
+                if (CommonMotions.chkObjectIsNull(dgv.Rows[e.RowIndex].Cells[(int)GridColumn.JoinTitleFlg].Value)) return;
+                if (CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[(int)GridColumn.JoinTitleFlg].Value) == 0) return;
+
+                switch (e.ColumnIndex)
+                {
+                    // 項目名称
+                    case (int)GridColumn.ItemName:
+                    // 業種名称
+                    case (int)GridColumn.TextName:
+                    // 協力会社コードタイプ
+                    case (int)GridColumn.CompanyType:
+                    // 協力会社コード
+                    case (int)GridColumn.CompanyCode:
+                    // 協力会社名称
+                    case (int)GridColumn.CompanyName:
+                        break;
+                    default:
+                        return;
+                }
+
+                // 名称取得
+                string strValue = CommonMotions.cnvString(dgv.Rows[e.RowIndex].Cells[(int)GridColumn.ItemName].Value);
+
+                // セルの矩形を取得
+                Rectangle rect = e.CellBounds;
+                // 開始位置・幅の修正を行う
+
+                rect.X = dgv.GetCellDisplayRectangle((int)GridColumn.ItemName, e.RowIndex, false).X;
+                rect.Width = 0;
+                for (int i = (int)GridColumn.ItemName; i <= (int)GridColumn.CompanyName; i++)
+                {
+                    rect.Width += dgv.Columns[i].Width;
+                }
+
+                // 矩形の位置を補正
+                rect.X -= 1;
+                rect.Y -= 1;
+
+                // 背景、枠線、セルの値を描画
+                using (SolidBrush brush = new SolidBrush(e.CellStyle.BackColor))
+                {
+                    // 背景の描画
+                    e.Graphics.FillRectangle(brush, rect);
+
+                    using (Pen pen = new Pen(dgv.GridColor))
+                    {
+                        // 枠線の描画
+                        e.Graphics.DrawRectangle(pen, rect);
+                    }
+                }
+
+                // 描画文字取得
+                TextFormatFlags txtFlg = TextFormatFlags.Left | TextFormatFlags.VerticalCenter;
+
+                // テキストの位置を調整
+                rect.Y += 2;
+
+                Color DrowForeColor = e.CellStyle.ForeColor;
+                Font DrowFont = e.CellStyle.Font;
+                // セルに表示するテキストを描画
+                TextRenderer.DrawText(e.Graphics, strValue, DrowFont, rect, DrowForeColor, txtFlg);
+
+                // 行色を変える・セルロック
+                for (int i = 0; i < dgv.ColumnCount; i++)
+                {
+                    dgv.Rows[e.RowIndex].Cells[i].Style.ForeColor = Color.Black;
+                    dgv.Rows[e.RowIndex].Cells[i].Style.BackColor = Color.Goldenrod;
+                    dgv.Rows[e.RowIndex].Cells[i].ReadOnly = true;
+                }
+
+                // イベントハンドラ内で処理を行ったことを通知
+                e.Handled = true;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region ヘッダー情報表示
         /// <summary>
         /// ヘッダー情報表示
@@ -299,6 +396,7 @@
             IOMPersonInCharge picDB = new IOMPersonInCharge();
             IOMConstructionType ctypeDB = new IOMConstructionType();
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
+            IOConstructionBudget BudgetDB = new IOConstructionBudget();
             try
             {
                 m_HeaderToolTip = new ToolTip();
@@ -309,7 +407,7 @@
                 // 工事詳細台帳を取得する
                 string strSQL = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
                 ConstructionLedger LedgerRec = new ConstructionLedger();
-                bool bBudgetExist = LedgerDB.SelectAction(strSQL, ref LedgerRec);
+                bool bLedgerExist = LedgerDB.SelectAction(strSQL, ref LedgerRec);
 
                 // データ表示
                 m_DspLabelCtrl[(int)DspLblCtrlName.CreateDate].Text = LedgerRec.CreateDate.ToShortDateString();                                 // 作成日
@@ -320,11 +418,20 @@
                 int OrdersPrice = 0;
                 if (LedgerRec.IntegrationFlg == (int)CommonDefine.LedgerIntegration.Normal)
                 {
-                    // 工事増減の変更がない場合は工事情報より持ってくる
-                    OrdersPrice = GetOrderPraiceTotal();
+                    // 結合工事判定
+                    if (m_ConstructionBaseInfo.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                    {
+                        // 結合工事以外は工事情報より持ってくる
+                        OrdersPrice = GetOrderPraiceTotal();
+                    }
+                    else
+                    {
+                        // 結合工事は工事情報を足しこんで持ってくる
+                        OrdersPrice = GetJoinTotal();
+                    }
                 }
                 else
-                {   // 工事増減の変更がある場合積算見積書の合計を持ってくる
+                {   // 積算見積書の合計を持ってくる
                     OrdersPrice = GetEstimateTotal();
                 }
                 // 入力完了後は確定した受注金額を持ってくる
@@ -372,8 +479,10 @@
 
                 // 副担当取得
                 PersonCode = m_ConstructionBaseInfo.ConstrSubPersonCode;
+                pnlGroup2.Visible = false;
                 if (PersonCode != 0)
                 {
+                    pnlGroup2.Visible = true;
                     strSQL = picDB.CreatePrimarykeyString(PersonCode);
                     PersonInChargeMaster AssistantRec = new PersonInChargeMaster();
                     picDB.SelectAction(strSQL, ref AssistantRec);
@@ -439,15 +548,23 @@
                 comptip.SetToolTip(btnComplate, "このボタンを押すと台帳入力済みになって入力出来なくなります！！");
 
                 // 一般ユーザーは人件費を変更できない
-                int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
-                if (CommonMotions.LoginUserData.SecurityManagement == User)
+                bool bVisible = true;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    btnAssistantChange.Visible = false;
-                    btnInstractorChange.Visible = false;
-                    // 受注金額変更ボタンは上長以上のみ
-                    btnChangePrice.Visible = false;
+                    int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
+                    if (CommonMotions.LoginUserData.SecurityManagement == User) bVisible = false;
                 }
-
+                else
+                {
+                    int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key;            // 一般ユーザー
+                    if (CommonMotions.LoginUserSecurity.SecRank == User) bVisible = false;
+                }
+                //btnAssistantChange.Visible = bVisible;
+                //btnInstractorChange.Visible = bVisible;
+                // 受注金額変更ボタンは上長以上のみ
+                btnChangePrice.Visible = bVisible;
+                
                 return true;
             }
             catch (Exception ex)
@@ -461,10 +578,122 @@
                 picDB.close(); picDB = null;
                 ctypeDB.close(); ctypeDB = null;
                 LedgerDB.close(); LedgerDB = null;
+                BudgetDB.close(); BudgetDB = null;
             }
         }
         #endregion
 
+        #region 給与ラジオボタンチェック処理
+        /// <summary>
+        /// 給与ラジオボタンチェック処理
+        /// </summary>
+        /// <param name="Flag"></param>
+        /// <param name="rdButton1"></param>
+        /// <param name="rdButton2"></param>
+        /// <param name="rdButton3"></param>
+        /// <param name="txtBox"></param>
+        private void SalaryRadioButtonCheck(ConstructionLedgerDetail DetailRec)
+        {
+            try
+            {
+                RadioButton[] rdbWork = new RadioButton[3];
+                TextBox txtWork = null;
+                // 担当無は振分無
+                if (DetailRec.CompanyCode == 0) DetailRec.SalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+                switch (DetailRec.GroupCount)
+                {
+                    case (int)DataGroup.Payroll:
+                        // 担当者給与振分区分
+                        rdbWork[0] = radioButton1;
+                        rdbWork[1] = radioButton2;
+                        rdbWork[2] = radioButton3;
+                        txtWork = textBox1;
+                        break;
+                    case (int)DataGroup.Assistant:
+                        // 副担当者給与振分区分
+                        rdbWork[0] = radioButton4;
+                        rdbWork[1] = radioButton5;
+                        rdbWork[2] = radioButton6;
+                        txtWork = textBox2;
+                        break;
+
+                }
+                
+                switch (DetailRec.SalaryFlg)
+                {
+                    case (int)CommonDefine.SalaryDevision.All:       // 全日
+                        rdbWork[0].Checked = true;
+                        break;
+                    case (int)CommonDefine.SalaryDevision.Noting:    // 振分無
+                        rdbWork[1].Checked = true;
+                        break;
+                    case (int)CommonDefine.SalaryDevision.DaysInput: // 日数入力
+                        rdbWork[2].Checked = true;
+                        txtWork.Text = DetailRec.SalaryDays.ToString("#,##");
+                        break;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 結合工事データ合計取得
+        /// <summary>
+        /// 結合工事データ合計取得
+        /// </summary>
+        /// <returns></returns>
+        private int GetJoinTotal()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                int OrdersPrice = 0;
+
+                string strSQL = "SELECT SUM(B.ORDERSDECISIONPRICE) + SUM(E.ORDERSDECISIONPRICE)";
+                strSQL += " FROM CONSTRUCTIONLINK A";
+
+                strSQL += " LEFT JOIN CONSTRUCTIONLINK D";
+                strSQL += string.Format(" ON (D.CONSTRUCTIONCODE = A.FLUCTUATIONCODE AND D.LINKTYPE = {0})", (int)CommonDefine.LinkDataType.FluctuationType);
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO E ON (E.CONSTRUCTIONCODE = D.FLUCTUATIONCODE)";
+                strSQL += " LEFT JOIN PROCESSAPPROVAL F ON (F.CONSTRUCTIONCODE = E.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND F.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL += string.Format(" AND F.ORDERNO = {0}", CommonDefine.s_Default_OrderNo);
+                strSQL += string.Format(" AND F.SEQNO = 1 AND F.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+
+                strSQL += ", CONSTRUCTIONBASEINFO B, PROCESSAPPROVAL C";
+
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}",m_ConstructionCode);
+                strSQL += string.Format(" AND A.LINKTYPE = {0}", (int)CommonDefine.LinkDataType.JoinType);
+                strSQL += " AND B.CONSTRUCTIONCODE = A.FLUCTUATIONCODE";
+                strSQL += " AND (C.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND C.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL += string.Format(" AND C.ORDERNO = {0}", CommonDefine.s_Default_OrderNo);
+                strSQL += string.Format(" AND C.SEQNO = 1 AND C.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+
+                ArrayList DatArray = new ArrayList();
+                BaseDB.ExecuteReader(strSQL, ref DatArray);
+                object[] objRet = (object[])DatArray[0];
+
+                OrdersPrice = CommonMotions.cnvInt(objRet[0]);
+
+                return OrdersPrice;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
         #region 工事増減を含むデータ合計取得
         /// <summary>
         /// 工事増減を含むデータ合計取得
@@ -481,7 +710,7 @@
                     // 工事増減の変更がない場合は工事情報の受注金額より持ってくる
                     OrdersPrice = (int)m_ConstructionBaseInfo.OrdersDecisionPrice;
                 }
-                else if (m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Pearent)
+                else if (m_ConstructionBaseInfo.TyingFlg == (int)CommonDefine.BaseInfoTyingFlg.Parent)
                 {
                     int iCode1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
 
@@ -488,10 +717,10 @@
                     string strSQL = "SELECT SUM(A.ORDERSDECISIONPRICE) FROM CONSTRUCTIONBASEINFO A";
                     strSQL += " WHERE A.CONSTRUCTIONCODE IN";
                     strSQL += " (SELECT B.CONSTRUCTIONCODE FROM PROCESSAPPROVAL B";
-                    strSQL += string.Format(" WHERE  TRUNCATE(B.CONSTRUCTIONCODE / 100, 0) = {0}", CommonMotions.cnvTruncate(m_ConstructionCode / 100));
+                    strSQL += string.Format(" WHERE  TRUNCATE(B.CONSTRUCTIONCODE / 100) = {0}", CommonMotions.cnvTruncate(m_ConstructionCode / 100));
                     strSQL += string.Format(" AND B.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
-                    strSQL += " AND B.SEQNO = 1";
-                    strSQL += string.Format(" AND B.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                    strSQL += string.Format(" AND B.ORDERNO = {0}", CommonDefine.s_Default_OrderNo);
+                    strSQL += string.Format(" AND B.SEQNO = 1 AND B.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
                     strSQL += string.Format(" AND A.CONSTRUCTIONSTATUSFLG != {0}", iCode1);
 
                     ArrayList DatArray = new ArrayList();
@@ -499,19 +728,6 @@
                     object[] objRet = (object[])DatArray[0];
 
                     OrdersPrice = CommonMotions.cnvInt(objRet[0]);
-
-                    //// 工事増減の変更がある場合は工事増減情報を介して工事情報の受注金額を集計する
-                    //string strSQL = "SELECT SUM(A.ORDERSDECISIONPRICE) FROM CONSTRUCTIONBASEINFO A";
-                    //strSQL += string.Format(" WHERE A.CONSTRUCTIONSTATUSFLG != {0}", CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key);
-                    //strSQL += " AND A.CONSTRUCTIONCODE IN (SELECT FLUCTUATIONCODE FROM CONSTRUCTIONLINK";
-                    //strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0})", m_ConstructionCode);
-                    //ArrayList arList = new ArrayList();
-                    //if (BaseDB.ExecuteReader(strSQL, ref arList))
-                    //{
-                    //    object[] wrkobj = (object[])arList[0];
-                    //    OrdersPrice = CommonMotions.cnvInt(wrkobj[0]);
-                    //}
-                    //OrdersPrice += (int)m_ConstructionBaseInfo.OrdersDecisionPrice;
                 }
                 return OrdersPrice;
             }
@@ -538,7 +754,7 @@
             try
             {
                 string strSQL = EDataDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += " AND FixedItemCode = 'A'";
+                strSQL += string.Format(" AND FixedItemCode = '{0}'", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal1));
                 EstimateData EDataRec = new EstimateData();
                 EDataDB.SelectAction(strSQL, ref EDataRec);
 
@@ -632,10 +848,20 @@
                 // グリッドの全行を対象にする
                 foreach (DataGridViewRow CurRow in dgv.Rows)
                 {
+                    // 明細以外は処理しない
+                    if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)GridColumn.TotalFlg].Value)) continue;
+                    if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.TotalFlg].Value) != 0) continue;
+
+                    if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)GridColumn.TitleFlg].Value)) continue;
+                    if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.TitleFlg].Value) != 0) continue;
+
+                    if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)GridColumn.BlankFlg].Value)) continue;
+                    if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.BlankFlg].Value) != 0) continue;
+
                     // 空白行は処理しない
                     if (BlankLine(CurRow.Index)) continue;
 
-                    for (int ix = ((int)GridColumn.payment + 1); ix < dgv.ColumnCount; ix++)
+                    for (int ix = ((int)GridColumn.Payment + 1); ix < dgv.ColumnCount; ix++)
                     {
                         // 空白カラムは処理しない
                         if (CommonMotions.cnvString(CurRow.Cells[ix].Value).Length == 0) continue;
@@ -877,7 +1103,6 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-
         }
         #endregion
 
@@ -953,12 +1178,16 @@
                 {
                     // 請求金額
                 }
-
                 else if (RowCount == m_CostsRowCount[(int)CostsRowLine.CurrentProfitRowLine])
                 {
                     // 現在利益金額
 
                 }
+                else if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.JoinTitleFlg].Value) == 1)
+                {   // 結合タイトル
+                    SetForeColor = Color.Black;
+                    SetBackColor = Color.White;
+                }
                 else
                 {   // 明細行
                     // 列の色を変える
@@ -1075,7 +1304,7 @@
         }
         #endregion
 
-        // ---------- 工事予算書よりデータを取得する
+        // ---------- 工事予算書よりデータを取得する↓↓
         #region 工事予算書よりデータを取得する
         /// <summary>
         /// 工事予算書よりデータを取得する
@@ -1298,8 +1527,9 @@
                     RowData[(int)GridColumn.Percent] = dExpenses.ToString("0.00");
                     RowData[(int)GridColumn.IndependentFlg] = "1";
                     RowData[(int)GridColumn.FluctuationFlg] = "0";
-                    RowData[(int)GridColumn.payment] = CalcValue.ToString("#,#");
-
+                    RowData[(int)GridColumn.Payment] = CalcValue.ToString("#,#");
+                    RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
+                    
                     // 合計欄位置取得
                     int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
                     RowData[TotalPoint] = CalcValue.ToString("#,#");
@@ -1354,14 +1584,16 @@
                     RowData[(int)GridColumn.GroupCount] = GroupNo;
                     RowData[(int)GridColumn.ItemName] = DetailRec.FirstString;
                     RowData[(int)GridColumn.TextName] = DetailRec.SecondString;
-                    RowData[(int)GridColumn.CompanyCode] = DetailRec.CompanyType;
+                    RowData[(int)GridColumn.CompanyType] = DetailRec.CompanyType;
                     RowData[(int)GridColumn.CompanyCode] = DetailRec.CompanyCode;
                     RowData[(int)GridColumn.CompanyName] = DetailRec.CompanyName;
                     RowData[(int)GridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,0");
                     RowData[(int)GridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
                     RowData[(int)GridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
+                    RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
                     RowData[(int)GridColumn.IndependentFlg] = "1";
                     RowData[(int)GridColumn.FluctuationFlg] = "0";
+                    RowData[(int)GridColumn.PurchaseOrderFlg] = (int)CommonDefine.PurchaseOrderFlg.NoCreate;
 
                     // 合計欄位置取得
                     int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
@@ -1448,6 +1680,7 @@
                 RowData[(int)GridColumn.Percent] = CommonMotions.cnvDouble(wrkobj[2]).ToString("0.00");
                 RowData[(int)GridColumn.IndependentFlg] = "1";
                 RowData[(int)GridColumn.FluctuationFlg] = "0";
+                RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
 
                 // 合計欄位置取得
                 int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
@@ -1539,7 +1772,7 @@
                         CreatePersonCosts(GroupNo, DetailRec, bExists, ref RowData);
                         
                         // 一般ユーザーは指導員の給与を見えないようにする
-                        if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
+                        if (CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
                     // 副担当者給与費用
                     case (int)FrmConstructionBudget.DataGroup.AssistantCosts:
@@ -1593,6 +1826,7 @@
                 RowData[(int)GridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
                 RowData[(int)GridColumn.IndependentFlg] = "1";
                 RowData[(int)GridColumn.FluctuationFlg] = "0";
+                RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
 
                 // 合計欄位置取得
                 int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
@@ -1655,9 +1889,12 @@
 
                 DataGridView dgv = dgvAllDisplay;
 
+                int SalaryFlg = 0;                  // 給与振分区分
+                int SalaryDays = 0;                 // 給与振分日数
                 // データがある場合はデータよりセットする
                 if (bExists)
                 {
+                    // 工事予算書からデータを取得する
                     string strSQL = BudgetDB.CreatePrimarykeyString(m_ConstructionCode);
                     ConstructionBudget BudgetRec = new ConstructionBudget();
                     BudgetDB.SelectAction(strSQL, ref BudgetRec);
@@ -1665,26 +1902,39 @@
                     switch (GroupNo)
                     {
                         case (int)DataGroup.Payroll:                                                    // 担当者
-                            RowData[(int)GridColumn.SalaryFlg] = BudgetRec.SalaryFlg;                   // 給与振分区分
-                            RowData[(int)GridColumn.SalaryDays] = BudgetRec.SalaryDays;                 // 給与振分日数
+                            SalaryFlg = BudgetRec.SalaryFlg;                                            // 給与振分区分
+                            SalaryDays = BudgetRec.SalaryDays;                                          // 給与振分日数
                             break;
                         case (int)DataGroup.Assistant:                                                  // 副担当者
-                            RowData[(int)GridColumn.SalaryFlg] = BudgetRec.A_SalaryFlg;                 // 給与振分区分
-                            RowData[(int)GridColumn.SalaryDays] = BudgetRec.A_SalaryDays;               // 給与振分日数
+                            if (BudgetRec.AssistantCode == 0)                                           // 給与振分区分
+                                SalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+                            else
+                                SalaryFlg = BudgetRec.A_SalaryFlg;
+                            SalaryDays = BudgetRec.A_SalaryDays;                                        // 給与振分日数
                             break;
                         case (int)DataGroup.Instructor:                                                 // 指導員
-                            RowData[(int)GridColumn.SalaryFlg] = BudgetRec.I_SalaryFlg;                 // 給与振分区分
-                            RowData[(int)GridColumn.SalaryDays] = BudgetRec.I_SalaryDays;               // 給与振分日数
+                            if (BudgetRec.InstructorCode == 0)                                          // 給与振分区分
+                                SalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+                            else
+                                SalaryFlg = BudgetRec.I_SalaryFlg;
+                            SalaryDays = BudgetRec.I_SalaryDays;                                        // 給与振分日数
                             break;
                     }
                 }
                 else
                 {   // 無い場合は振分無にする
-                    RowData[(int)GridColumn.SalaryFlg] = (int)CommonDefine.SalaryDevision.Noting;               // 給与振分区分
-                    RowData[(int)GridColumn.SalaryDays] = 0;                                                    // 給与振分日数
+                    SalaryFlg = (int)CommonDefine.SalaryDevision.Noting;                                // 給与振分区分
+                    SalaryDays = 0;                                                                     // 給与振分日数
                 }
-                
-                RowData[(int)GridColumn.OperatingFlg] = (int)CommonDefine.SalaryOperateKind.Oparateing;         // 担当中フラグ
+
+                if (SalaryFlg == 0)                                                                         // 給与振分区分
+                    RowData[(int)GridColumn.SalaryFlg] = (int)CommonDefine.SalaryDevision.Noting;
+                else
+                    RowData[(int)GridColumn.SalaryFlg] = SalaryFlg;
+
+                RowData[(int)GridColumn.SalaryDays] = SalaryDays;                                           // 給与振分日数
+                RowData[(int)GridColumn.OperatingFlg] = (int)CommonDefine.SalaryOperateKind.Oparateing;     // 担当中フラグ
+                RowData[(int)GridColumn.CompanyType] = (int)CommonDefine.CodeDataType.Person;               // コードタイプ（担当者）
             }
             catch (Exception ex)
             {
@@ -1696,7 +1946,7 @@
             }
         }
         #endregion
-        // ---------- 工事予算書よりデータを取得する
+        // ---------- 工事予算書よりデータを取得する↑↑
 
         #region 明細合計を集計
         /// <summary>
@@ -1737,7 +1987,7 @@
 
                     // 月毎加算
                     int arrayCnt = 0;
-                    for (int i = (int)GridColumn.payment; i < dgv.ColumnCount; i++, arrayCnt++)
+                    for (int i = (int)GridColumn.Payment; i < dgv.ColumnCount; i++, arrayCnt++)
                     {
                         MTotal[arrayCnt] += CommonMotions.cnvInt(wrkRow.Cells[i].Value);
                     }
@@ -1769,7 +2019,7 @@
                 double PercentValue = 0;
                 int TotalValue = 0;
                 int ResultValue = 0;
-                int Colcnt = dgv.ColumnCount - (int)GridColumn.payment;
+                int Colcnt = dgv.ColumnCount - (int)GridColumn.Payment;
                 int[] MTotal = new int[Colcnt];
 
                 // 合計値取得
@@ -1815,7 +2065,7 @@
                 double PercentValue = 0;
                 int TotalValue = 0;
                 int ResultPriceValue = 0;
-                int Colcnt = dgv.ColumnCount - (int)GridColumn.payment;
+                int Colcnt = dgv.ColumnCount - (int)GridColumn.Payment;
                 int[] MTotal = new int[Colcnt];
 
                 // 合計値取得
@@ -1832,6 +2082,7 @@
                 RowData[(int)GridColumn.EstimatePrice] = EstimateValue.ToString("#,0");
                 RowData[(int)GridColumn.ExecPrice] = ExecValue.ToString("#,0");
                 RowData[(int)GridColumn.Percent] = CalculattionPercent((double)ExecValue).ToString("0.00");
+                RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
 
                 // 行セット
                 CreateDataRow(RowData);
@@ -1901,7 +2152,7 @@
                 double PercentValue = 0;
                 int TotalValue = 0;
                 int ResultPriceValue = 0;
-                int Colcnt = dgv.ColumnCount - (int)GridColumn.payment;
+                int Colcnt = dgv.ColumnCount - (int)GridColumn.Payment;
                 int[] MTotal = new int[Colcnt];
 
                 // 合計値取得
@@ -1928,7 +2179,7 @@
 
                     // 月毎合計
                     int arrayCnt = 0;
-                    for (int i = (int)GridColumn.payment; i < dgv.ColumnCount; i++, arrayCnt++)
+                    for (int i = (int)GridColumn.Payment; i < dgv.ColumnCount; i++, arrayCnt++)
                     {
                         RowData[i] = MTotal[arrayCnt].ToString("#,0");
                     }
@@ -1977,7 +2228,7 @@
 
                     // 月毎合計
                     int arrayCnt = 0;
-                    for (int i = (int)GridColumn.payment; i < dgv.ColumnCount; i++, arrayCnt++)
+                    for (int i = (int)GridColumn.Payment; i < dgv.ColumnCount; i++, arrayCnt++)
                     {
                         dgv.Rows[LineCnt].Cells[i].Value = MTotal[arrayCnt].ToString("#,0");
                     }
@@ -2022,9 +2273,21 @@
                 // 請求金額行取得
                 int BillingAmount = CommonMotions.cnvInt(dgv.Rows[BillingAmountRow].Cells[TotalPoint].Value);
 
+                // 現在利益金額数取得
                 int LineCnt = m_CostsRowCount[(int)CostsRowLine.CurrentProfitRowLine];
 
+                int workTotal = 0;
+                int workBilling = 0;
+                for (int ix = (int)GridColumn.Payment; ix < TotalPoint; ix++)
+                {
+                    workTotal += CommonMotions.cnvInt(dgv.Rows[AllTotalRow].Cells[ix].Value);
+                    workBilling += CommonMotions.cnvInt(dgv.Rows[BillingAmountRow].Cells[ix].Value);
+
+                    dgv.Rows[LineCnt].Cells[ix].Value = (workBilling - workTotal).ToString("#,#");
+                }
+
                 // 現在利益金額
+                if (AllTotal < 0) AllTotal *= -1;
                 int Total = BillingAmount - AllTotal;
                 dgv.Rows[LineCnt].Cells[TotalPoint].Value = Total.ToString("#,0");
             }
@@ -2051,6 +2314,7 @@
                 RowData[(int)GridColumn.FixFlg] = "*";
                 RowData[(int)GridColumn.GroupCount] = (int)DataGroup.CurrentProfit;
                 RowData[(int)GridColumn.ItemName] = s_GroupTitle[(int)DataGroup.CurrentProfit];
+                RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
 
                 // 合計欄位置取得
                 int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
@@ -2064,6 +2328,7 @@
                 int BillingAmount = CommonMotions.cnvInt(dgv.Rows[BillingAmountRow].Cells[TotalPoint].Value);
 
                 // 現在利益金額
+                if (AllTotal < 0) AllTotal *= -1;
                 RowData[TotalPoint] = (BillingAmount - AllTotal).ToString("#,0");
 
                 // 行セット
@@ -2073,6 +2338,16 @@
                 int LineCnt = dgv.RowCount - 1;
                 m_CostsRowCount[(int)CostsRowLine.CurrentProfitRowLine] = LineCnt;
 
+                int workTotal = 0;
+                int workBilling = 0;
+                for (int ix = (int)GridColumn.Payment; ix < TotalPoint; ix++)
+                {
+                    workTotal += CommonMotions.cnvInt(dgv.Rows[AllTotalRow].Cells[ix].Value);
+                    workBilling += CommonMotions.cnvInt(dgv.Rows[BillingAmountRow].Cells[ix].Value);
+
+                    dgv.Rows[LineCnt].Cells[ix].Value = (workBilling - workTotal).ToString("#,#");
+                }
+
                 // 行色変更
                 DefaultRowChangeColor(LineCnt);
 
@@ -2109,7 +2384,7 @@
 
                 // 月毎合計
                 int Total = 0;
-                for (int i = (int)GridColumn.payment; i < (dgv.ColumnCount + (int)ColPayTotal.Totals); i++)
+                for (int i = (int)GridColumn.Payment; i < (dgv.ColumnCount + (int)ColPayTotal.Totals); i++)
                 {
                     Total += CommonMotions.cnvInt(dgv.Rows[BillingAmountRow].Cells[i].Value);
                 }
@@ -2144,6 +2419,7 @@
                 RowData[(int)GridColumn.ItemName] = s_GroupTitle[(int)DataGroup.BillingAmount];
                 RowData[(int)GridColumn.IndependentFlg] = "1";
                 RowData[(int)GridColumn.FluctuationFlg] = "0";
+                RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
 
                 string strSQL = ExcuteDB.CreatePrimarykeyString(m_ConstructionCode,
                                                                 (int)DataGroup.BillingAmount);
@@ -2158,7 +2434,7 @@
                 {
                     //グリッドの対象列を取得する（データのカラム数から年月に変更する）
                     string CurMounth = string.Format("{0}年{1}月", ExcRec.TargetMonth.Year, ExcRec.TargetMonth.Month);
-                    for (int ix = (int)GridColumn.payment; ix < dgv.ColumnCount; ix++)
+                    for (int ix = (int)GridColumn.Payment; ix < dgv.ColumnCount; ix++)
                     {
                         // グリッドの対象列を探す
                         if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
@@ -2198,28 +2474,6 @@
         }
         #endregion
 
-        #region 書込み禁止処理
-        /// <summary>
-        /// 書込み禁止処理
-        /// </summary>
-        private void BudgetInputReadOnly()
-        {
-            try
-            {
-                // 総計グリッドを読込専用にする
-                dgvAllDisplay.ReadOnly = true;
-
-                // データ編集に関するボタンを非表示にする
-                btnDataEntry.Visible = false;                       // 登録ボタン
-                btnDataDelete.Visible = false;                      // 削除ボタン
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region 表示大タイトルをセットする
         /// <summary>
         /// 表示大タイトルをセットする
@@ -2286,13 +2540,6 @@
         /// <summary>
         /// 表示番号編集
         /// </summary>
-        /// <param name="DetailRec"></param>
-        /// <param name="GroupNo"></param>
-        /// <param name="Block"></param>
-        /// <param name="icnt"></param>
-        /// <param name="RowData"></param>
-        /// <param name="strParentNo"></param>
-        /// <param name="childNo"></param>
         private void SetDisplayNo(ConstructionLedgerDetail DetailRec, int GroupNo,
                                     ref int Block, ref int icnt, ref object[] RowData, ref string strParentNo, ref int childNo)
         {
@@ -2301,6 +2548,14 @@
                 switch (GroupNo)
                 {
                     case (int)DataGroup.ConstructionCosts:       // 施工費
+                        if (DetailRec.JoinTitleFlg == 1) break;
+                        if (DetailRec.FirstString.Length == 0 && DetailRec.SecondString.Length == 0
+                            && DetailRec.EstimatePrice == 0 && DetailRec.ExecutionAmount == 0) break;
+                        // ブランク行は採番しない
+                        if (DetailRec.FirstString.Length == 0 && DetailRec.SecondString.Length == 0 && DetailRec.CompanyName.Length == 0
+                            && DetailRec.EstimatePrice == 0 && DetailRec.ExecutionAmount == 0) break;
+
+
                         // 独立項目の場合
                         if (DetailRec.IndependentFlg == 1)
                         {
@@ -2341,7 +2596,7 @@
         }
         #endregion
 
-        // ---------- 工事詳細台帳よりデータを取得する
+        // ---------- 工事詳細台帳よりデータを取得する↓↓
         #region 工事詳細台帳よりデータを取得する
         /// <summary>
         /// 工事詳細台帳よりデータを取得する
@@ -2352,6 +2607,7 @@
             IOConstructionLedger LedgerDB = new IOConstructionLedger();
             IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
             IOConstructionLedgerExcute ExcuteDB = new IOConstructionLedgerExcute();
+            IOProcessApproval ProAppDB = new IOProcessApproval();
             try
             {
                 // 工事詳細台帳データを読み込む
@@ -2365,6 +2621,16 @@
                 if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
                 if (DetailList.Count == 0) return false;
 
+                // 工事予算書の承認を確認する
+                string strApp = ProAppDB.CreatePrimarykeyString(m_ConstructionCode,
+                                                                (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval,
+                                                                CommonDefine.s_Default_OrderNo,
+                                                                1);
+                ProcessApproval ProAppList = new ProcessApproval();
+                bool NoneApp = false;
+                if (!ProAppDB.SelectAction(strApp, ref ProAppList)) NoneApp = true;
+                if (ProAppList.ApprovalStatus != (int)CommonDefine.ApprovalStatus.Approval) NoneApp = true;
+
                 // グリッド行削除
                 dgvAllDisplay.Rows.Clear();
 
@@ -2385,6 +2651,8 @@
                     if (DetailRec.GroupCount == (int)DataGroup.AllTotal) continue;
                     // 現在利益金額は読み込まない
                     if (DetailRec.GroupCount == (int)DataGroup.CurrentProfit) continue;
+                    // 請求金額は読み込まない
+                    if (DetailRec.GroupCount == (int)DataGroup.BillingAmount) continue;
 
                     // グループ番号が違えばタイトル行表示
                     if (GroupNo != DetailRec.GroupCount)
@@ -2403,6 +2671,12 @@
                         GroupNo = DetailRec.GroupCount;
                     }
 
+                    // 結合工事のタイトルを表示する時は前に空欄を表示する（1番はじめ以外）
+                    if (DetailRec.JoinTitleFlg == 1 && CommonMotions.cnvInt(dgv.Rows[dgv.RowCount - 1].Cells[(int)GridColumn.TitleFlg].Value) == 0)
+                    {
+                        AddEmptyRow();
+                    }
+
                     // ----- 行データセット
                     object[] RowData = new object[GridColMax];
 
@@ -2422,11 +2696,39 @@
                     RowData[(int)GridColumn.CompanyType] = DetailRec.CompanyType;
                     RowData[(int)GridColumn.CompanyCode] = DetailRec.CompanyCode;
                     RowData[(int)GridColumn.CompanyName] = DetailRec.CompanyName;
-                    RowData[(int)GridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,#");
-
-                    RowData[(int)GridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
-                    RowData[(int)GridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
+                    // 名称・会社名が全てない場合は金額クリア
+                    if (DetailRec.FirstString.Length == 0 && DetailRec.SecondString.Length == 0 && DetailRec.CompanyName.Length == 0)
+                    {
+                        RowData[(int)GridColumn.EstimatePrice] = string.Empty;
+                        RowData[(int)GridColumn.ExecPrice] = string.Empty;
+                        RowData[(int)GridColumn.Percent] = string.Empty;
+                    }
+                    else
+                    {
+                        RowData[(int)GridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,#");
+                        RowData[(int)GridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
+                        RowData[(int)GridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
+                    }
+                    // 増減工事フラグ
                     RowData[(int)GridColumn.FluctuationFlg] = DetailRec.FluctuationFlg;
+                    // 給与振分区分
+                    RowData[(int)GridColumn.SalaryFlg] = DetailRec.SalaryFlg;
+                    // 給与振分日数
+                    RowData[(int)GridColumn.SalaryDays] = DetailRec.SalaryDays;
+                    // 担当中フラグ
+                    RowData[(int)GridColumn.OperatingFlg] = DetailRec.OperatingFlg;
+                    // 元工事番号
+                    RowData[(int)GridColumn.SourceCode] = DetailRec.SourceCode;
+                    // 工事名称タイトルフラグ
+                    RowData[(int)GridColumn.JoinTitleFlg] = DetailRec.JoinTitleFlg;
+                    if (DetailRec.JoinTitleFlg == 1)
+                    {
+                        RowData[(int)GridColumn.EstimatePrice] = string.Empty;
+                        RowData[(int)GridColumn.ExecPrice] = string.Empty;
+                        RowData[(int)GridColumn.Percent] = string.Empty;
+                    }
+                    // 注文書発行フラグ
+                    RowData[(int)GridColumn.PurchaseOrderFlg] = DetailRec.PurchaseOrderFlg;
 
                     // ----- 支払いデータをセットする
                     double TotalValue = 0;
@@ -2438,7 +2740,7 @@
                     {
                         //グリッドの対象列を取得する（データのカラム数から年月に変更する）
                         string CurMounth = string.Format("{0}年{1}月", ExcuteRec.TargetMonth.Year, ExcuteRec.TargetMonth.Month);
-                        for (int ix = (int)GridColumn.payment; ix < dgv.ColumnCount; ix++)
+                        for (int ix = (int)GridColumn.Payment; ix < dgv.ColumnCount; ix++)
                         {
                             // グリッドの対象列を探す
                             if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
@@ -2464,56 +2766,31 @@
                     // 支払補填額
                     RowData[GridColMax + (int)ColPayTotal.PaymentBurdens] = DetailRec.PaymentBurden.ToString("#,0");
 
-                    // ----- 行作成
+                    // *----------------------------------------------------------------*
+                    // *----- いきなり工事詳細台帳が出来たものは、経費を再計算する -----*
+                    // *----------------------------------------------------------------*
+                    if (LedgerRec.ComplateFlg != (int)CommonDefine.ComplateTitleNo.Complated
+                        && NoneApp == true 
+                        && DetailRec.GroupCount == (int)DataGroup.Expenses)
+                    {
+                        CalculateExpenss(DetailRec, ref RowData);
+                    }
+
+                    // 人件費行の金額表示
                     switch (DetailRec.GroupCount)
                     {
-                        case (int)DataGroup.BillingAmount:
-                            // 14:請求金額データ
-                            // データを作成しない
-                            break;
-
-                        case (int)DataGroup.Expenses:
-                            // 1:経費
-                            if (CalculateExpenss(DetailRec, ref RowData))
-                            {
-                                // データ行作成
-                                CreateDataRow(RowData);
-                            }
-                            break;
-
                         case (int)DataGroup.Instructor:
-                            // 9:指導員給与
-                            if (MakeInstrSubConstrRow((int)DataGroup.Instructor, DetailRec, ref RowData))
-                            {
-                                // データ行作成
-                                CreateDataRow(RowData);
-                            }
-                            break;
-
                         case (int)DataGroup.Assistant:
-                            // 10:副担当給与
-                            if (MakeInstrSubConstrRow((int)DataGroup.Assistant, DetailRec, ref RowData))
-                            {
-                                // データ行作成
-                                CreateDataRow(RowData);
-                            }
-                            break;
-
                         case (int)DataGroup.Payroll:
-                            // 11:担当者給与
-                            if (MakePersonRow(DetailRec, ref RowData))
-                            {
-                                // データ行作成
-                                CreateDataRow(RowData);
-                            }
+                            MakeConstrSalaryRow(DetailRec, ref RowData);
                             break;
-
                         default:
-                            // データ行作成
-                            CreateDataRow(RowData);
                             break;
                     }
 
+                    // ----- 行作成
+                    CreateDataRow(RowData);
+
                     // ----- 列のロック
                     for (int i = (int)GridColumn.ItemName; i <= (int)GridColumn.CompanyName; i++)
                     {
@@ -2532,20 +2809,20 @@
                             }
                             break;
 
+                        case (int)DataGroup.Assistant:               // 副担当
+                        case (int)DataGroup.Payroll:                 // 工事担当
+                            // 一般ユーザーは行ロック
+                            if (m_ConstructionBaseInfo.ConstructionPeriod < 16) dgv.Rows[dgv.RowCount - 1].Visible = false;
+                            if (!CheckLeaderOrUser()) dgv.Rows[dgv.RowCount - 1].ReadOnly = true;
+                            // ヘッダーチェックボックス表示
+                            SalaryRadioButtonCheck(DetailRec);
+                            break;
                         case (int)DataGroup.Instructor:              // 指導員
-                        case (int)DataGroup.Assistant:               // 副担当
-                        case (int)DataGroup.Payroll:                 // 給与
                         case (int)DataGroup.NetIncome:               // 純利益
                             // 16期より前は指導員金額・担当者給与・純利益を表示しない
-                            if (m_ConstructionBaseInfo.ConstructionPeriod < 16)
-                            {
-                                dgv.Rows[dgv.RowCount - 1].Visible = false;
-                            }
+                            if (m_ConstructionBaseInfo.ConstructionPeriod < 16) dgv.Rows[dgv.RowCount - 1].Visible = false;
                             // 一般ユーザーは行ロック
-                            if (!CheckLeaderOrUser())
-                            {
-                                dgv.Rows[dgv.RowCount - 1].ReadOnly = true;
-                            }
+                            if (!CheckLeaderOrUser()) dgv.Rows[dgv.RowCount - 1].ReadOnly = true;
                             break;
                         default:
                             break;
@@ -2602,13 +2879,14 @@
                 LedgerDB.close(); LedgerDB = null;
                 DetailDB.close(); DetailDB = null;
                 ExcuteDB.close(); ExcuteDB = null;
+                ProAppDB.close(); ProAppDB = null;
             }
         }
         #endregion
 
-        #region 工事詳細台帳より比率により経費に金額を設定する
+        #region 受注金額より比率により経費に金額を設定する
         /// <summary>
-        /// 工事詳細台帳より比率により経費に金額を設定する
+        /// 受注金額より比率により経費に金額を設定する
         /// </summary>
         /// <param name="DetailRec"></param>
         /// <param name="RowData"></param>
@@ -2633,25 +2911,18 @@
                 // グリッドのカラム数
                 int GridBaseCnt = dgvAllDisplay.ColumnCount;
 
-                // 合計欄位置取得
-                int TotalPoint = GridBaseCnt + (int)ColPayTotal.Totals;
-
-                int ExecTotal = 0;
-                for (int i = (int)GridColumn.payment; i < TotalPoint; i++)
-                {
-                    ExecTotal += CommonMotions.cnvInt(RowData[i]);
-                }
                 // 実行金額
                 int ExcePoint = (int)GridColumn.ExecPrice;
-                RowData[ExcePoint] = DetailRec.ExecutionAmount.ToString("#,0");
+                RowData[ExcePoint] = dExpenss.ToString("#,0");
 
+                // 支払金額
+                int PaymentPoint = (int)GridColumn.Payment;
+                RowData[PaymentPoint] = dExpenss.ToString("#,0");
+
                 // 合計金額セット
-                RowData[TotalPoint] = ExecTotal.ToString("#,0");
+                int TotalPoint = GridBaseCnt + (int)ColPayTotal.Totals;
+                RowData[TotalPoint] = dExpenss.ToString("#,0");
 
-                // 実績欄位置取得
-                int ResultPoint = GridBaseCnt + (int)ColPayTotal.Results;
-                RowData[ResultPoint] = (dExpenss - ExecTotal).ToString("#,0");
-
                 return true;
             }
             catch (Exception ex)
@@ -2662,131 +2933,44 @@
         }
         #endregion
 
-        #region 工事詳細台帳より担当者給与行を作成する
-        /// <summary>
-        /// 工事詳細台帳より担当者給与行を作成する
-        /// </summary>
-        /// <returns></returns>
-        private bool MakePersonRow(ConstructionLedgerDetail DetailRec, ref object[] RowData)
-        {
-            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
-            try
-            {
-                // 現担当者以外は処理しない
-                if (DetailRec.OperatingFlg != (int)CommonDefine.SalaryOperateKind.Oparateing) return true;
-                // 入力完了は処理しない
-                if (lblComplate.Text.Equals(ComplateString[(int)CommonDefine.ComplateTitleNo.Complated])) return true;
-                //return true;
-
-                // 担当者マスタより担当者名を取得する
-                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                string strPerson = PersonDB.CreatePrimarykeyString(DetailRec.CompanyCode);
-                if (!PersonDB.SelectAction(strPerson, ref PersonRec)) return false;
-
-                double Salary = PersonRec.MonthlySalary * CommonDefine.s_SalaryCorrection;                                      // 月額給与計算
-                double daylySalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);                          // 日当計算
-                string ItemText = s_GroupTitle[DetailRec.GroupCount];
-                string Content = string.Empty;
-                double BetweenTimes = 0;
-                int CostsValue = 0;
-
-                if (DetailRec.CompanyCode != 0)
-                {
-                    ItemText = ItemText + string.Format("【{0}氏】", PersonRec.SealPrintName);     // 項目名称セット
-                    // 工期と給与額を表示する
-                    switch (DetailRec.SalaryFlg)
-                    {
-                        case (int)CommonDefine.SalaryDevision.All:
-                            // ----- 全日振分
-                            // 工期取得
-                            BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
-                            // 着工日
-                            DateTime dtStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
-                            // 完了日
-                            DateTime dtLast = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
-
-                            // 稼働日取得
-                            //int WorkingDay = ClsCalendar.CalcOperatingDaysCount(dtStart, dtLast);
-                            int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
-
-                            // 給与計算
-                            CostsValue = CommonMotions.cnvRound(daylySalary * WorkingDay);
-                            Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, Salary.ToString("#,0"));
-
-                            break;
-                        case (int)CommonDefine.SalaryDevision.Noting:
-                            // ----- 指定無し
-
-                            break;
-                        case (int)CommonDefine.SalaryDevision.DaysInput:
-                            // ----- 日数指定
-                            CostsValue = CommonMotions.cnvRound(daylySalary * DetailRec.SalaryDays);
-                            Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, DetailRec.SalaryDays.ToString("0"), daylySalary.ToString("#,0"));
-
-                            break;
-                    }
-                }
-                // 担当名表示
-                RowData[(int)GridColumn.ItemName] = ItemText;
-                // 一般ユーザー以外は説明文を表示
-                RowData[(int)GridColumn.TextName] = Content;
-
-                // 総金額を表示
-                RowData[(int)GridColumn.EstimatePrice] = CostsValue.ToString("#,#");
-                RowData[(int)GridColumn.ExecPrice] = CostsValue.ToString("#,0");
-
-                // パーセントを表示する
-                RowData[(int)GridColumn.Percent] = CalculattionPercent(CostsValue).ToString("0.00");
-
-                // 人件費情報
-                RowData[(int)GridColumn.SalaryFlg] = DetailRec.SalaryFlg;                   // 給与振分区分
-                RowData[(int)GridColumn.SalaryDays] = DetailRec.SalaryDays;                 // 給与振分日数
-                RowData[(int)GridColumn.OperatingFlg] = DetailRec.OperatingFlg;             // 担当中フラグ
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                PersonDB.close(); PersonDB = null;
-                // 一般ユーザーは指導員給与を見えないようにする
-                if (!CheckLeaderOrUser()) RowData[(int)GridColumn.TextName] = string.Empty;
-            }
-        }
-        #endregion
-
         #region 工事詳細台帳より指導員行・ 副担当者行を作成する
         /// <summary>
         /// 工事詳細台帳より指導員行・ 副担当者行を作成する
         /// </summary>
         /// <returns></returns>
-        private bool MakeInstrSubConstrRow(int Group, ConstructionLedgerDetail DetailRec, ref object[] RowData)
+        private bool MakeConstrSalaryRow(ConstructionLedgerDetail DetailRec, ref object[] RowData)
         {
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
                 // 現担当者以外は処理しない
-                if (DetailRec.OperatingFlg != (int)CommonDefine.SalaryOperateKind.Oparateing) return true;
-                // 入力完了は処理しない
-                if (lblComplate.Text.Equals(ComplateString[(int)CommonDefine.ComplateTitleNo.Complated])) return true;
+                //if (DetailRec.OperatingFlg != (int)CommonDefine.SalaryOperateKind.Oparateing) return true;
+                //// 入力完了は処理しない
+                //if (lblComplate.Text.Equals(ComplateString[(int)CommonDefine.ComplateTitleNo.Complated])) return true;
                 //return true;
 
                 // 担当者マスタより担当者名を取得する
                 PersonInChargeMaster PersonRec = new PersonInChargeMaster();
                 string strPerson = PersonDB.CreatePrimarykeyString(DetailRec.CompanyCode);
-                //if (!PersonDB.SelectAction(strPerson, ref PersonRec)) return false;
                 PersonDB.SelectAction(strPerson, ref PersonRec);
 
                 double Salary = 0;
                 // 月額給与計算
-                if ((int)DataGroup.Instructor == Group)
-                    Salary = CommonDefine.InstructorMonthryCost;
-                else
-                    Salary = CommonDefine.AssistantMonthryCost;
+                switch (DetailRec.GroupCount)
+                {
+                    case (int)DataGroup.Instructor:
+                        Salary = CommonDefine.InstructorMonthryCost;
+                        break;
+                    case (int)DataGroup.Assistant:
+                        Salary = CommonDefine.AssistantMonthryCost;
+                        break;
+                    case (int)DataGroup.Payroll:
+                        if (DetailRec.SalaryOnRegist != 0)
+                            Salary = DetailRec.SalaryOnRegist * CommonDefine.s_SalaryCorrection;
+                        else
+                            Salary = PersonRec.MonthlySalary * CommonDefine.s_SalaryCorrection;
+                        break;
+                }
                 // 日額給与取得
                 double DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
                 string ItemText = s_GroupTitle[DetailRec.GroupCount];
@@ -2817,7 +3001,9 @@
                             // 給与計算
                             CostsValue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
 
-                            Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, Salary.ToString("#,0"));
+                            Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                    BetweenTimes.ToString("0.00"),
+                                                    Salary.ToString("#,0"));
 
                             break;
                         case (int)CommonDefine.SalaryDevision.Noting:
@@ -2829,7 +3015,9 @@
                             // 給与計算
                             CostsValue = CommonMotions.cnvRound(DaysSalary * DetailRec.SalaryDays);
 
-                            Content = string.Format(CommonDefine.s_SalaryCostDaylyFormat, DetailRec.SalaryDays.ToString("0"), DaysSalary.ToString("#,0"));
+                            Content = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                    ClsCalendar.cnvMonthFromDays(DetailRec.SalaryDays).ToString("0.00"),
+                                                    Salary.ToString("#,0"));
                             break;
                     }
                 }
@@ -2850,6 +3038,10 @@
                 RowData[(int)GridColumn.SalaryFlg] = DetailRec.SalaryFlg;                   // 給与振分区分
                 RowData[(int)GridColumn.SalaryDays] = DetailRec.SalaryDays;                 // 給与振分日数
                 RowData[(int)GridColumn.OperatingFlg] = DetailRec.OperatingFlg;             // 担当中フラグ
+                if (DetailRec.SalaryOnRegist != 0)                                          // 登録時月額給与
+                    RowData[(int)GridColumn.SalaryOnRegist] = DetailRec.SalaryOnRegist;
+                else
+                    RowData[(int)GridColumn.SalaryOnRegist] = PersonRec.MonthlySalary;
 
                 return true;
             }
@@ -2866,7 +3058,7 @@
             }
         }
         #endregion
-        // ---------- 工事詳細台帳よりデータを取得する
+        // ---------- 工事詳細台帳よりデータを取得する↑↑
 
         #region グループごとの処理を行う(グループごとの特殊処理)
         /// <summary>
@@ -3159,6 +3351,7 @@
                 string strParentNo = string.Empty;
                 for (int i = StLineCnt; i < dgv.RowCount; i++)
                 {
+                    if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)GridColumn.JoinTitleFlg].Value) == 1) continue;
                     if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)GridColumn.BlankFlg].Value) == 1) break;
 
                     dgv.Rows[i].Cells[(int)GridColumn.No].Value = string.Format("{0}-{1}", GroupCount, iCnt);
@@ -3411,6 +3604,8 @@
                     for (int i = StLineCnt; i < dgv.RowCount; i++)
                     {
                         if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)GridColumn.BlankFlg].Value) == 1) break;
+                        if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)GridColumn.JoinTitleFlg].Value) == 1) break;
+                        
                         // 従属項目がある行は子行を採番する
                         if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)GridColumn.IndependentFlg].Value) != 1)
                         {
@@ -3623,7 +3818,7 @@
 
                 if (Display)
                 {
-                    if (MessageBox.Show("工事予算書データを更新します、よろしいですか？", "登録確認"
+                    if (MessageBox.Show("工事詳細台帳データを更新します、よろしいですか？", "登録確認"
                                         , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return false;
                 }
 
@@ -3712,7 +3907,7 @@
         }
         #endregion
 
-        // ---------- データ登録
+        // ---------- データ登録↓↓
         #region 工事詳細台帳データ登録
         /// <summary>
         /// 工事詳細台帳データ登録
@@ -3729,7 +3924,7 @@
                 int TotalValue = 0;
                 int ResultPriceValue = 0;
 
-                int Colcnt = dgv.ColumnCount - (int)GridColumn.payment;
+                int Colcnt = dgv.ColumnCount - (int)GridColumn.Payment;
                 int[] MTotal = new int[Colcnt];
                 int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
 
@@ -3761,7 +3956,7 @@
                 int Rowcnt1 = GetExpenss("会社", 3);
                 int Rowcnt2 = GetExpenss("部署", 2);
                 int Rowcnt3 = GetExpenss("営業", 1);
-                for (int i = (int)GridColumn.payment; i < TotalPoint; i++)
+                for (int i = (int)GridColumn.Payment; i < TotalPoint; i++)
                 {
                     // 会社経費合計
                     work.CompanyExpenses += CommonMotions.cnvDouble(dgv.Rows[Rowcnt1].Cells[i].Value);
@@ -3826,7 +4021,9 @@
                 }
 
                 // 総支払額（支払額－（担当者給与＋副担当者給与＋指導員給与））
-                work.TotalPayment = TotalValue - (work.Allowance + bworkAssistant + bworkInstructor);
+                double work1 = (work.Allowance + bworkAssistant + bworkInstructor);
+                if (work1 < 0) work1 *= -1;
+                work.TotalPayment = TotalValue - work1;
 
                 // 請求金額
                 int BillingLineCnt = m_CostsRowCount[(int)CostsRowLine.BillingAmountRowLine];
@@ -3836,7 +4033,9 @@
                     BillingValue = CommonMotions.cnvInt(dgv.Rows[BillingLineCnt].Cells[TotalPoint].Value);
                 }
                 // 粗利（請求金額－（支払額－（担当者給与＋副担当者給与＋指導員給与）））
-                work.GrossProfit = BillingValue - (TotalValue - (work.Allowance + bworkAssistant + bworkInstructor));
+                double work2 = (TotalValue - (work.Allowance + bworkAssistant + bworkInstructor));
+                if (work2 < 0) work2 *= -1;
+                work.GrossProfit = BillingValue - work2;
 
                 // 純利益
                 // 合計欄位置取得
@@ -3915,11 +4114,11 @@
                 foreach (DataGridViewRow wrkRow in dgv.Rows)
                 {
                     RowLineCnt++;
-                    //// 純利益は書き込まない（2016/10/20　データを作成する）
+                    //// 純利益は書き込まない（2016/10/20　データを作成するため書き込む）
                     //if (CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.GroupCount].Value) == (int)DataGroup.NetIncome) continue;
-                    //// 合計金額は書き込まない
+                    //// 合計金額は書き込まない（2016/10/20　データを作成するため書き込む）
                     //if (CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.GroupCount].Value) == (int)DataGroup.AllTotal) continue;
-                    //// 現在利益金額は書き込まない
+                    //// 現在利益金額は書き込まない（2016/10/20　データを作成するため書き込む）
                     //if (CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.GroupCount].Value) == (int)DataGroup.CurrentProfit) continue;
 
                     // データ定義
@@ -3991,6 +4190,14 @@
                     work.IndependentFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.IndependentFlg].Value);
                     // 増減データフラグ
                     work.FluctuationFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.FluctuationFlg].Value);
+                    // 元工事番号
+                    work.SourceCode = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.SourceCode].Value);
+                    // 工事名称タイトルフラグ
+                    work.JoinTitleFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.JoinTitleFlg].Value);
+                    // 登録時月額給与
+                    work.SalaryOnRegist = CommonMotions.cnvDouble(wrkRow.Cells[(int)GridColumn.SalaryOnRegist].Value);
+                    // 注文書発行フラグ
+                    work.PurchaseOrderFlg = CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.PurchaseOrderFlg].Value);
 
                     // 工事担当者・指導員行・ 副担当者行の場合は追加データセット
                     switch (work.GroupCount)
@@ -4080,10 +4287,10 @@
                     // 空白行は処理しない
                     if (BlankLine(wrkRow.Index)) continue;
 
-                    for (int i = (int)GridColumn.payment; i < PayEnd; i++)
+                    for (int i = (int)GridColumn.Payment; i < PayEnd; i++)
                     {
                         // 支払金額が無い場合は処理しない
-                        if (CommonMotions.cnvString(wrkRow.Cells[i].Value).Length == 0) continue;
+                        if (CommonMotions.cnvInt(wrkRow.Cells[i].Value) == 0) continue;
 
                         // データ定義
                         ConstructionLedgerExcute work = new ConstructionLedgerExcute();
@@ -4125,7 +4332,7 @@
             }
         }
         #endregion
-        // ---------- データ登録
+        // ---------- データ登録↑↑
 
         #region 画面項目のチェック
         /// <summary>
@@ -4212,7 +4419,7 @@
 
                     // 支払金額のチェック
                     int PayEnd = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                    for (int i = (int)GridColumn.payment; i < PayEnd; i++)
+                    for (int i = (int)GridColumn.Payment; i < PayEnd; i++)
                     {
                         bAns = true;
                         if (CommonMotions.chkObjectIsNull(wrkRow.Cells[i].Value)) continue;
@@ -4256,7 +4463,7 @@
         }
         #endregion
 
-        // ---------- データ削除
+        // ---------- データ削除↓↓
         #region 工事詳細台帳データ削除
         /// <summary>
         /// 削除ボタン押下
@@ -4452,7 +4659,7 @@
             }
         }
         #endregion
-        // ---------- データ削除
+        // ---------- データ削除↑↑
 
         #region ブランク行の判定
         /// <summary>
@@ -4525,7 +4732,7 @@
                 if (frm.EndButton == System.Windows.Forms.DialogResult.OK)
                 {
                     SuppliersMaster selRec = frm.SelectData;
-                    dgv.CurrentRow.Cells[(int)GridColumn.CompanyType].Value = (int)CommonDefine.SearchLogDataType.Subconstractor;
+                    dgv.CurrentRow.Cells[(int)GridColumn.CompanyType].Value = (int)CommonDefine.CodeDataType.Subconstractor;
                     dgv.CurrentRow.Cells[(int)GridColumn.CompanyCode].Value = selRec.SuppliersCode;
                     dgv.CurrentRow.Cells[(int)GridColumn.CompanyName].Value = selRec.SuppliersName1 + " " + selRec.SuppliersName2;
                     m_bChengeAns = true;
@@ -4554,11 +4761,18 @@
                 dgvAllDisplay.ReadOnly = !bLook;
 
                 // 最後にボタンの処理を行う
-                //btnApprovalList.Visible = bLook;
                 btnDataEntry.Visible = bLook;
-                //btnDataDelete.Visible = bLook;
                 btnLineAdd.Visible = bLook;
                 btnLineDel.Visible = bLook;
+                btnComplate.Visible = bLook;
+                btnDispUp.Visible = bLook;
+                btnDispDown.Visible = bLook;
+                btnAssistantChange.Visible = bLook;
+                btnInstractorChange.Visible = bLook;
+                //btnChangePrice.Visible = bLook;
+
+                pnlGroup1.Enabled = bLook;
+                pnlGroup2.Enabled = bLook;
             }
             catch (Exception ex)
             {
@@ -4699,52 +4913,95 @@
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
+                // 参照モードは全てロック
+                //if (!m_EditLock) return false;
+
                 bool bPermit = false;
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // システム管理者
-                    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)
-                {
+                    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);
+                        // 上長は工事が自部署の関連だけ
+                        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);
 
-                    foreach (int Personcode in PersonList)
-                    {
-                        string strSQL = PersonDB.CreatePrimarykeyString(Personcode);
-                        PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                        if (!PersonDB.SelectAction(strSQL, ref PersonRec)) continue;
+                        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;
+                            // 所属上長では無ければfalse
+                            if (PersonRec.DepartmentCode == CommonMotions.LoginUserData.DepartmentCode)
+                            {
+                                bPermit = true;
+                                break;
+                            }
                         }
+
                     }
-
+                    else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // 一般ユーザー
+                        bPermit = false;
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                else
                 {
-                    // 一般ユーザー
-                    bPermit = false;
+                    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;
+                    }
                 }
+
                 return bPermit;
             }
             catch (Exception ex)
@@ -5028,12 +5285,6 @@
         /// <summary>
         /// 変更データのセット
         /// </summary>
-        /// <param name="GroupCount"></param>
-        /// <param name="InsertCnt"></param>
-        /// <param name="SalaryFlg"></param>
-        /// <param name="SalaryDays"></param>
-        /// <param name="CodeType"></param>
-        /// <param name="PersonCode"></param>
         private void SetRowOnChangeData(int GroupCount, int InsertCnt, int SalaryFlg, int SalaryDays, int PersonCode)
         {
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
@@ -5044,7 +5295,7 @@
                 PersonInChargeMaster PersonRec = new PersonInChargeMaster();
                 PersonDB.SelectAction(strSQL, ref PersonRec);
 
-                int CodeType = (int)CommonDefine.SearchLogDataType.Person;
+                int CodeType = (int)CommonDefine.CodeDataType.Person;
                 double BetweenTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);   // 工期取得
                 double CostsValue = 0;
                 string FirstString = string.Empty;
@@ -5058,13 +5309,13 @@
                     case (int)CommonDefine.SalaryDevision.All:       // 全日
                         // 給与計算
                         CostsValue = CommonDefine.AssistantMonthryCost * BetweenTimes;
-                        SecondString = string.Format(CommonDefine.s_SalaryCostMonthlyFormat, BetweenTimes, CommonDefine.AssistantMonthryCost.ToString("#,0"));
+                        SecondString = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                        BetweenTimes.ToString("0.00"),
+                                                        CommonDefine.AssistantMonthryCost.ToString("#,0"));
                         FirstString = string.Format("{0}【{1}氏】", s_GroupTitle[GroupCount], PersonRec.SealPrintName);
 
                         break;
                     case (int)CommonDefine.SalaryDevision.Noting:    // 振分無
-                        CodeType = 0;
-                        PersonCode = 0;
                         SecondString = string.Empty;
                         break;
 
@@ -5072,7 +5323,9 @@
                         // 日額給与取得
                         double daylySalary = CommonMotions.cnvRound(CommonDefine.AssistantMonthryCost / CommonDefine.s_ManHourUnitMonth);
                         CostsValue = daylySalary * SalaryDays;
-                        SecondString = string.Format(CommonDefine.s_SalaryCostDaylyFormat, SalaryDays.ToString("0"), daylySalary.ToString("#,0"));
+                        SecondString = string.Format(CommonDefine.s_SalaryCostMonthlyFormat,
+                                                    ClsCalendar.cnvMonthFromDays(SalaryDays).ToString("0.00"),
+                                                    CommonDefine.AssistantMonthryCost.ToString("#,0"));
                         FirstString = string.Format("{0}【{1}氏】", s_GroupTitle[GroupCount], PersonRec.SealPrintName);
                         break;
                 }
@@ -5146,6 +5399,9 @@
                 // パラメタ設定
                 frm.ConstructionCode = m_ConstructionCode;
                 frm.EditFalg = CheckLeaderOrUser();
+                int OderP = CommonMotions.cnvInt(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text);
+                frm.OrdersDecisionPrice = CommonMotions.cnvInt(OderP);
+                // 変更画面表示
                 frm.ShowDialog();
                 if (frm.EndButton != DialogResult.OK) return;
 
@@ -5202,6 +5458,9 @@
                 if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)GridColumn.BlankFlg].Value)) return;
                 if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.BlankFlg].Value) != 0) return;
 
+                if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)GridColumn.JoinTitleFlg].Value)) return;
+                if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.JoinTitleFlg].Value) != 0) return;
+
                 // 空白行は処理しない
                 if (BlankLine(RowIndex)) return;
 
@@ -5213,12 +5472,12 @@
                 {
                     case (int)GridColumn.EstimatePrice:
                         // 予定金額
-                        CurRow.Cells[ColumnIndex].Value = CommonMotions.cnvInt(CurRow.Cells[ColumnIndex].Value).ToString("#,#");
+                        CurRow.Cells[ColumnIndex].Value = CommonMotions.cnvInt(CurRow.Cells[ColumnIndex].Value).ToString("#,0");
                         break;
                     case (int)GridColumn.ExecPrice:
                         // 実行金額
                         int execprice = CommonMotions.cnvInt(CurRow.Cells[ColumnIndex].Value);
-                        CurRow.Cells[ColumnIndex].Value = execprice.ToString("#,#");
+                        CurRow.Cells[ColumnIndex].Value = execprice.ToString("#,0");
 
                         if (GroupNo != (int)DataGroup.BillingAmount && GroupNo != (int)DataGroup.CurrentProfit)
                         {
@@ -5228,43 +5487,43 @@
                         break;
                     default:
                         // その他
-                        if (ColumnIndex >= (int)GridColumn.payment)
+                        if ((int)GridColumn.Payment <= ColumnIndex)
                         {
-                            CurRow.Cells[ColumnIndex].Value = CommonMotions.cnvInt(CurRow.Cells[ColumnIndex].Value).ToString("#,#");
+                            CurRow.Cells[ColumnIndex].Value = CommonMotions.cnvInt(CurRow.Cells[ColumnIndex].Value).ToString("#,0");
                         }
                         break;
                 }
 
-                // 従属項目がある独立項目であれば自行の合計を表示しない
-                bool bDspTotalFlg = true;
-                int nextRowCnt = CurRow.Index + 1;
-                if (nextRowCnt < dgv.RowCount)
-                {
+                // 従属項目がある独立項目であれば自行の合計を表示しない(2016/11/08従属項目は使用していない)
+                //bool bDspTotalFlg = true;
+                //int nextRowCnt = CurRow.Index + 1;
+                //if (nextRowCnt < dgv.RowCount)
+                //{
                     // 自行は独立項目
-                    if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.IndependentFlg].Value) == 1)
-                    {
-                        // 次行は従属項目
-                        if (CommonMotions.cnvInt(dgv.Rows[nextRowCnt].Cells[(int)GridColumn.ChildFlg].Value) == 1)
-                            bDspTotalFlg = false;
-                    }
-                }
+                    //if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.IndependentFlg].Value) == 1)
+                    //{
+                    //    // 次行は従属項目
+                    //    //if (CommonMotions.cnvInt(dgv.Rows[nextRowCnt].Cells[(int)GridColumn.ChildFlg].Value) == 1)
+                    //        //bDspTotalFlg = false;
+                    //}
+                //}
 
                 // 支払い合計計算
                 int TotalCols = dgv.ColumnCount + (int)ColPayTotal.Totals;
+                //int RowTotal = 0;
+                //if (bDspTotalFlg)
+                //{
+                // 支払金額の合計
                 int RowTotal = 0;
-                if (bDspTotalFlg)
+                for (int i = (int)GridColumn.Payment; i < TotalCols; i++)
                 {
-                    // 支払金額の合計
-                    RowTotal = 0;
-                    for (int i = (int)GridColumn.payment; i < TotalCols; i++)
-                    {
-                        RowTotal += CommonMotions.cnvInt(CurRow.Cells[i].Value);
-                    }
+                    RowTotal += CommonMotions.cnvInt(CurRow.Cells[i].Value);
                 }
-                else
-                {   // 表示しないときは支払合計を0にする
-                    RowTotal = 0;
-                }
+                //}
+                //else
+                //{   // 表示しないときは支払合計を0にする
+                //    RowTotal = 0;
+                //}
 
                 // グループによって支払計算の表示等を変更する
                 int ResultCols = dgv.ColumnCount + (int)ColPayTotal.Results;
@@ -5288,6 +5547,7 @@
                         // 実績表示
                         int ExecPrice = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.ExecPrice].Value);
                         int ResultValue = (ExecPrice - RowTotal);
+
                         CurRow.Cells[TotalCols].Value = RowTotal.ToString("#,0");
                         CurRow.Cells[ResultCols].Value = ResultValue.ToString("#,0");
 
@@ -5330,7 +5590,7 @@
 
                 // 経費金額計算
                 CurRow.Cells[(int)GridColumn.ExecPrice].Value = ((int)(OrdersPrice * (percent / 100.0))).ToString("#,#");
-                CurRow.Cells[(int)GridColumn.payment].Value = ((int)(OrdersPrice * (percent / 100.0))).ToString("#,#");
+                CurRow.Cells[(int)GridColumn.Payment].Value = ((int)(OrdersPrice * (percent / 100.0))).ToString("#,#");
 
                 DataGridView dgv = dgvAllDisplay;
                 // 合計欄位置取得
@@ -5365,6 +5625,7 @@
                 strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
                 strSQL += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND B.APPROVALCODE = {0})", (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval);
+                strSQL += string.Format(" AND B.ORDERNO = {0}", CommonDefine.s_Default_OrderNo);
                 strSQL += string.Format(" AND CONSTRUCTIONSTATUSFLG != {0}", CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key);
 
                 ArrayList arList = new ArrayList();
@@ -5388,7 +5649,7 @@
         }
         #endregion
 
-        // ---------- 増減データを台帳データへ追加する
+        // ---------- 台帳データへ追加する↓↓
         #region 増減データを台帳データへ追加する
         /// <summary>
         /// 増減データを台帳データへ追加する
@@ -5419,7 +5680,8 @@
                 if (!InitDispData()) return false;
 
                 // 受注金額を変更する
-                if (!SetAddData_OrderPrice()) return false;
+                //（2017/01/17 ヘッダーセット時に金額のセットを行っているのでここでは変更しない）
+                //if (!SetAddData_OrderPrice()) return false;
 
                 // 経費を再計算
                 if (!SetAddData_Expeness()) return false;
@@ -5511,12 +5773,12 @@
                 // 現在年月日取得
                 string NowMonth = string.Format("{0}/{1}/1", DateTime.Now.Year, DateTime.Now.Month);
                 // 工事開始年月取得
-                string StartHeder = CommonMotions.cnvString(dgv.Columns[(int)GridColumn.payment].HeaderCell.Value).Replace("年", "/").Replace("月", "/") + "1";
+                string StartHeder = CommonMotions.cnvString(dgv.Columns[(int)GridColumn.Payment].HeaderCell.Value).Replace("年", "/").Replace("月", "/") + "1";
 
                 // 経過月数計算
                 DateTime StDate = CommonMotions.cnvDate(StartHeder);
                 DateTime EdDate = CommonMotions.cnvDate(NowMonth);
-                int Betwen = (int)GridColumn.payment + MonthDiff(StDate, EdDate);
+                int Betwen = (int)GridColumn.Payment + MonthDiff(StDate, EdDate);
 
                 for (int i = StartLine; i < dgv.RowCount; i++)
                 {
@@ -5537,7 +5799,7 @@
                     //GridRow.Cells[(int)DispGridColumn.ExecPrice].Value = ((int)CalcValue).ToString("#,#");
 
                     // 支払金額セット
-                    if (Betwen == (int)GridColumn.payment)
+                    if (Betwen == (int)GridColumn.Payment)
                     {   // 工期が１カ月しかない場合
                         GridRow.Cells[Betwen].Value = ((int)CalcValue).ToString("#,#");
                     }
@@ -5633,7 +5895,7 @@
                     TargetLine = i;
                 }
 
-                // データ号現番号取得
+                // データ増減番号取得
                 int FluctuationNo = (int)CommonDefine.FluctuatesFlg.Fluctuates;
                 // 次の行から追加
                 TargetLine++;
@@ -5657,8 +5919,10 @@
                     GridRow.Cells[(int)GridColumn.EstimatePrice].Value = DetailRec.EstimatePrice.ToString("#,0");
                     GridRow.Cells[(int)GridColumn.ExecPrice].Value = DetailRec.ExecutionAmount.ToString("#,0");
                     GridRow.Cells[(int)GridColumn.Percent].Value = CalculattionPercent(DetailRec.ExecutionAmount).ToString("0.00");
+                    GridRow.Cells[(int)GridColumn.SourceCode].Value = m_AddingConstrCode;
                     GridRow.Cells[(int)GridColumn.IndependentFlg].Value = "1";
                     GridRow.Cells[(int)GridColumn.FluctuationFlg].Value = FluctuationNo;
+                    GridRow.Cells[(int)GridColumn.PurchaseOrderFlg].Value = (int)CommonDefine.PurchaseOrderFlg.NoCreate;
 
                     // 合計欄位置取得
                     int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
@@ -5703,7 +5967,8 @@
                 // 交通費表示
                 if (!SetAddData_ConstructionBudget((int)FrmConstructionBudget.DataGroup.TransportationCosts)) return false;
                 // 購入品
-                if (!SetAddData_PurchaseCosts()) return false;
+                //if (!SetAddData_PurchaseCosts()) return false;
+                if (!SetAddData_ConstructionBudget((int)FrmConstructionBudget.DataGroup.PurchaseCosts)) return false;
                 // 車両リース代
                 if (!SetAddData_ConstructionBudget((int)FrmConstructionBudget.DataGroup.VehicleLeaseFee)) return false;
                 // 駐車場・資材置き場
@@ -5723,9 +5988,9 @@
         }
         #endregion
 
-        #region データ追加：購入品をマージする
+        #region データ追加：購入品をマージする（※未使用）
         /// <summary>
-        /// データ追加：購入品をマージする
+        /// データ追加：購入品をマージする（※未使用）
         /// </summary>
         /// <returns></returns>
         private bool SetAddData_PurchaseCosts()
@@ -5735,7 +6000,7 @@
             {
                 // 工事予算書明細データを読み込む
                 string strSQL = "SELECT SUM(ESTIMATEPRICE), SUM(EXECUTIONAMOUNT), SUM(AMOUNTCONFIGRATE) FROM CONSTRUCTIONBUDGETDETAIL";
-                strSQL += DetailDB.CreatePrimarykeyString(AddingConstrCode);
+                strSQL += DetailDB.CreatePrimarykeyString(m_AddingConstrCode);
                 strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)FrmConstructionBudget.DataGroup.PurchaseCosts);       // 購入品
                 ArrayList DetailList = new ArrayList();
                 if (!DetailDB.ExecuteReader(strSQL, ref DetailList)) return false;
@@ -5784,7 +6049,7 @@
             try
             {
                 // 工事予算書明細データを読み込む
-                string strSQL = DetailDB.CreatePrimarykeyString(AddingConstrCode);
+                string strSQL = DetailDB.CreatePrimarykeyString(m_AddingConstrCode);
                 strSQL += string.Format(" AND GROUPCOUNT = {0}", GroupNo);
                 strSQL += " ORDER BY LineCount ASC";
 
@@ -5799,6 +6064,10 @@
                     case (int)FrmConstructionBudget.DataGroup.VehicleLeaseFee:
                         TargetLine = m_CostsRowCount[(int)CostsRowLine.VehicleLeaseFeeRowLine];
                         break;
+                    // 購入品
+                    case (int)FrmConstructionBudget.DataGroup.PurchaseCosts:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.PurchaseCostsRowLine];
+                        break;
                     // 交通費（通行料・電車代）
                     case (int)FrmConstructionBudget.DataGroup.TransportationCosts:
                         TargetLine = m_CostsRowCount[(int)CostsRowLine.TransportationCostsRowLine];
@@ -5853,20 +6122,19 @@
         /// <returns></returns>
         private bool SetAddData_WorkingValue()
         {
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
             try
             {
-                int GroupNo = (int)DataGroup.TransportationCosts + 1;
+                int BlockNo = (int)DataGroup.TransportationCosts + 1;
                 int icnt = 1;
                 // グループ名表示
-                CreateTitleRow(GroupNo, s_PersonnelExpensesGroup);
+                CreateTitleRow(BlockNo, s_PersonnelExpensesGroup);
 
                 // 指導員給与
-                if (!SetAddData_AddWorkingRow(GroupNo, (int)FrmConstructionBudget.DataGroup.InstructorCosts, icnt++)) return false;
+                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.InstructorCosts, icnt++)) return false;
                 // 副担当者給与
-                if (!SetAddData_AddWorkingRow(GroupNo, (int)FrmConstructionBudget.DataGroup.AssistantCosts, icnt++)) return false;
+                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.AssistantCosts, icnt++)) return false;
                 // 担当者給与経費
-                if (!SetAddData_AddWorkingRow(GroupNo, (int)FrmConstructionBudget.DataGroup.PayrollExpenses, icnt++)) return false;
+                if (!SetAddData_AddWorkingRow(BlockNo, (int)FrmConstructionBudget.DataGroup.PayrollExpenses, icnt++)) return false;
 
                 return true;
             }
@@ -5875,10 +6143,6 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-            finally
-            {
-                DetailDB.close(); DetailDB = null;
-            }
         }
         #endregion
 
@@ -5898,7 +6162,8 @@
                 strSQL += " ORDER BY LineCount ASC";
 
                 ConstructionBudgetDetail DetailRec = new ConstructionBudgetDetail();
-                if (!DetailDB.SelectAction(strSQL, ref DetailRec)) return false;
+                //　データが無ければ対象外
+                if (!DetailDB.SelectAction(strSQL, ref DetailRec)) return true;
 
                 // 対象行数取得
                 int TargetLine = -1;
@@ -5931,6 +6196,8 @@
                         TargetLine = m_CostsRowCount[(int)CostsRowLine.PayrollRowLine];
                         GroupNo = (int)DataGroup.Payroll;
 
+                        // 担当者行に名前を入れる
+                        SetFirstStringName(GroupNo, ref DetailRec);
                         // 一般ユーザーは担当者の給与を見えないようにする
                         if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
                         break;
@@ -6017,7 +6284,1322 @@
             }
         }
         #endregion
+        // ---------- 台帳データへ追加する↑↑
 
+        // ---------- 結合処理↓↓
+        #region 結合データを台帳データへ追加する
+        /// <summary>
+        /// 結合データを台帳データへ追加する
+        /// </summary>
+        /// <returns></returns>
+        private bool JoiningLedgerData()
+        {
+            try
+            {
+                // 初期設定
+                InitSettingLoad();
+
+                //コントロールオブジェクト取得
+                SetDisplayObject();
+
+                // 表示クリア
+                ClearDisplay();
+
+                if (!GetBaseInfoData()) return false;
+
+                // ヘッダー表示
+                if (!DispHeader()) return false;
+
+                // グリッド行削除
+                dgvAllDisplay.Rows.Clear();
+
+                // データ表示を行う
+                if (!InitDispData()) return false;
+
+                // 経費を再計算
+                if (!SetJoinData_Expeness()) return false;
+
+                // 外部編集用コネクション開始
+                JoinDBOpen();
+
+                // ----- 繰り返し↓↓
+                for (int i = 0; i < m_JoiningCodeList.Count; i++)
+                {
+                    // データ元を検索
+                    int DataSource = GetSourceDataPoint(m_JoiningCodeList[i]);
+                    if (DataSource == (int)DataCreateFlg.DataNone) continue;
+
+                    // 施工費を取り込む
+                    if (!SetJoinConstruction(m_JoiningCodeList[i], DataSource))
+                    {
+                        // 外部編集用コネクション更新前復帰
+                        JoinDBRollBack();
+                        return false;
+                    }
+
+                    // 購入品ブロックを取り込む
+                    if (!SetJoinData_OtherExpeness(m_JoiningCodeList[i], DataSource))
+                    {
+                        // 外部編集用コネクション更新前復帰
+                        JoinDBRollBack();
+                        return false;
+                    }
+
+                    // 人件費ブロックを取り込む
+                    if (!SetJoinData_WorkingValue(m_JoiningCodeList[i], DataSource))
+                    {
+                        // 外部編集用コネクション更新前復帰
+                        JoinDBRollBack();
+                        return false;
+                    }
+
+                    // 工事詳細台帳より請求金額・現在利益ブロックを取り込む
+                    if (!SetJoinData_BillingValue(m_JoiningCodeList[i], DataSource))
+                    {
+                        // 外部編集用コネクション更新前復帰
+                        JoinDBRollBack();
+                        return false;
+                    }
+                }
+                // ----- 繰り返し↑↑
+
+
+                // 純利益行計算
+                CalculateNetIncome();
+
+                // 合計金額
+                CreateAllTotal(false);
+
+                // 請求金額計算
+                CalculateBillingAmount();
+
+                // 現在利益作成
+                CalculateCurrentProfit();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                // 外部編集用コネクション終了
+                JoinDBClose();
+
+            }
+        }
+        #endregion
+
+        #region 台帳データの作成元を探す
+        /// <summary>
+        /// 台帳データの作成元を探す
+        /// </summary>
+        /// <param name="ConstrCode"></param>
+        /// <returns></returns>
+        private int GetSourceDataPoint(int ConstrCode)
+        {
+            IOProcessApproval AppDB = new IOProcessApproval();
+            try
+            {
+                int iRet = (int)DataCreateFlg.DataNone;
+
+                // 工事詳細台帳承認確認
+                string strApp = "SELECT A.CONSTRUCTIONCODE, A.APPROVALSTATUS, B.CONSTRUCTIONCODE";
+                strApp += " FROM PROCESSAPPROVAL A LEFT JOIN CONSTRUCTIONLEDGER B ON B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strApp += AppDB.CreatePrimarykeyString(ConstrCode,
+                                                        (int)ClsExcute.ApprovalListNo.ConstructionBudgetApproval,
+                                                        CommonDefine.s_Default_OrderNo,
+                                                        1,
+                                                        "A.");
+                ArrayList AppCount = new ArrayList();
+                if (AppDB.ExecuteReader(strApp, ref AppCount))
+                {
+                    object[] objRec = (object[])AppCount[0];
+                    // 承認済み？
+                    if (CommonMotions.cnvInt(objRec[1]) == (int)CommonDefine.ApprovalStatus.Approval)
+                    {
+                        // 工事詳細台帳が無い場合
+                        if (CommonMotions.cnvInt(objRec[2]) == 0)
+                        {
+                            iRet = (int)DataCreateFlg.DataBudget;
+                        }
+                        else
+                        {
+                            iRet = (int)DataCreateFlg.DataLedger;
+                        }
+                    }
+                }
+                else
+                {
+                    iRet = (int)DataCreateFlg.DataNone;
+                }
+
+                return iRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return (int)DataCreateFlg.DataNone;
+            }
+            finally
+            {
+                AppDB.close(); AppDB = null;
+            }
+        }
+        #endregion
+
+        #region データ結合：経費再計算
+        /// <summary>
+        /// データ結合：経費再計算
+        /// </summary>
+        private bool SetJoinData_Expeness()
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                int GroupNo = (int)DataGroup.Expenses;
+                // 受注金額取得
+                double OrdersPrice = CommonMotions.cnvInt(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text);
+
+                // 行位置取得
+                int StartLine = m_CostsRowCount[(int)CostsRowLine.ExpensesRowLine];
+
+                // ----- 経費支払月の計算
+                // 現在年月日取得
+                string NowMonth = string.Format("{0}/{1}/1", DateTime.Now.Year, DateTime.Now.Month);
+                // 工事開始年月取得
+                string StartHeder = CommonMotions.cnvString(dgv.Columns[(int)GridColumn.Payment].HeaderCell.Value).Replace("年", "/").Replace("月", "/") + "1";
+
+                // 経過月数計算
+                DateTime StDate = CommonMotions.cnvDate(StartHeder);
+                DateTime EdDate = CommonMotions.cnvDate(NowMonth);
+                int Betwen = (int)GridColumn.Payment + MonthDiff(StDate, EdDate);
+
+                for (int i = StartLine; i < dgv.RowCount; i++)
+                {
+                    DataGridViewRow GridRow = dgv.Rows[i];
+
+                    // 経費グループ以外は処理しない
+                    if (CommonMotions.cnvInt(GridRow.Cells[(int)GridColumn.GroupCount].Value) != GroupNo) break;
+
+                    // 経費率取得
+                    double dExpenses = CommonMotions.cnvDouble(GridRow.Cells[(int)GridColumn.Percent].Value);
+
+                    // 実行金額現在値取得
+                    double NowValue = CommonMotions.cnvInt(GridRow.Cells[(int)GridColumn.ExecPrice].Value);
+                    // 金額計算
+                    double CalcValue = CommonMotions.cnvRound(OrdersPrice * (dExpenses / 100.0));
+
+                    // データセット 元の金額は変更しない
+                    //GridRow.Cells[(int)DispGridColumn.ExecPrice].Value = ((int)CalcValue).ToString("#,#");
+
+                    // 支払金額セット
+                    if (Betwen == (int)GridColumn.Payment)
+                    {   // 工期が１カ月しかない場合
+                        GridRow.Cells[Betwen].Value = ((int)CalcValue).ToString("#,#");
+                    }
+                    else
+                    {   // 工期が数カ月ある場合
+                        GridRow.Cells[Betwen].Value = ((int)(CalcValue - NowValue)).ToString("#,#");
+                    }
+
+                    // 合計欄位置取得
+                    int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
+                    GridRow.Cells[TotalPoint].Value = ((int)CalcValue).ToString("#,#");
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 外部編集用コネクション
+        IOConstructionBaseInfoDetail OuterBaseDDB = null;
+        IOProcessApproval OuterAppDB = null;
+        IOConstructionLedgerDetail OuterDetailDB = null;
+        IOConstructionLedgerExcute OuterExcuteDB = null;
+        IOConstructionBudgetDetail OuterBudgetDDB = null;
+        #endregion
+
+        #region 外部編集用コネクション開始
+        /// <summary>
+        /// 外部編集用コネクション開始
+        /// </summary>
+        private void JoinDBOpen()
+        {
+            try
+            {
+                OuterBaseDDB = new IOConstructionBaseInfoDetail();
+                OuterAppDB = new IOProcessApproval();
+                OuterDetailDB = new IOConstructionLedgerDetail();
+                OuterExcuteDB = new IOConstructionLedgerExcute();
+                OuterBudgetDDB = new IOConstructionBudgetDetail();
+
+                OuterBaseDDB.connect(); OuterBaseDDB.beginTran();
+                OuterAppDB.connect(); OuterAppDB.beginTran();
+                OuterDetailDB.connect(); OuterDetailDB.beginTran();
+                OuterExcuteDB.connect(); OuterExcuteDB.beginTran();
+                OuterBudgetDDB.connect(); OuterBudgetDDB.beginTran();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 外部編集用コネクション更新前復帰
+        /// <summary>
+        /// 外部編集用コネクション更新前復帰
+        /// </summary>
+        private void JoinDBRollBack()
+        {
+            try
+            {
+                OuterBaseDDB.rollback();
+                OuterAppDB.rollback();
+                OuterDetailDB.rollback();
+                OuterExcuteDB.rollback();
+                OuterBudgetDDB.rollback();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 外部編集用コネクション終了
+        /// <summary>
+        /// 外部編集用コネクション終了
+        /// </summary>
+        private void JoinDBClose()
+        {
+            try
+            {
+                OuterBaseDDB.commit();
+                OuterAppDB.commit();
+                OuterDetailDB.commit();
+                OuterExcuteDB.commit();
+                OuterBudgetDDB.commit();
+
+                OuterBaseDDB.connect(); OuterBaseDDB.beginTran();
+                OuterAppDB.connect(); OuterAppDB.beginTran();
+                OuterDetailDB.connect(); OuterDetailDB.beginTran();
+                OuterExcuteDB.connect(); OuterExcuteDB.beginTran();
+                OuterBudgetDDB.connect(); OuterBudgetDDB.beginTran();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region データ結合：施工費追加
+        /// <summary>
+        /// データ結合：施工費追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinConstruction(int ConstrCode, int DataSource)
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                // 工事名称取得
+                string strName = "SELECT DETAILSTRING FROM CONSTRUCTIONBASEINFODETAIL";
+                strName += OuterBaseDDB.CreatePrimarykeyString(ConstrCode, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                ArrayList arList = new ArrayList();
+                OuterBaseDDB.ExecuteReader(strName, ref arList);
+                object[] NameObj = (object[])arList[0];
+                string ConstrName = string.Empty;
+                if (arList.Count != 0) ConstrName = CommonMotions.cnvString(NameObj[0]);
+
+                int GroupNo = (int)DataGroup.ConstructionCosts;
+
+                // 行位置取得
+                int StartLine = m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine];
+
+                // データ挿入位置検索
+                int TargetLine = GetGridInsertPosion();
+
+                // データ増減番号取得
+                int FluctuationNo = (int)CommonDefine.FluctuatesFlg.Normal;
+
+                // 次の行から追加
+                TargetLine++;
+                // タイトル追加
+                DataGridViewAction.CreateNewLine(dgv, ref TargetLine);
+                DataGridViewRow TitleRow = dgv.Rows[TargetLine];
+                TitleRow.Cells[(int)GridColumn.FixFlg].Value = "*";
+                TitleRow.Cells[(int)GridColumn.GroupCount].Value = GroupNo;
+                TitleRow.Cells[(int)GridColumn.ItemName].Value = ConstrName;
+                TitleRow.Cells[(int)GridColumn.IndependentFlg].Value = "1";
+                TitleRow.Cells[(int)GridColumn.FluctuationFlg].Value = FluctuationNo;
+                TitleRow.Cells[(int)GridColumn.SourceCode].Value = ConstrCode;
+                TitleRow.Cells[(int)GridColumn.JoinTitleFlg].Value = 1;
+                TitleRow.Cells[(int)GridColumn.TitleFlg].Value = "0";
+                TitleRow.Cells[(int)GridColumn.TotalFlg].Value = "0";
+                TitleRow.Cells[(int)GridColumn.BlankFlg].Value = "0";
+
+                switch (DataSource)
+                {
+                    case (int)DataCreateFlg.DataLedger:
+                        // 工事詳細台帳よりデータ作成
+                        if (!SetJoinLedger(ConstrCode, ref TargetLine)) return false;
+                        break;
+
+                    case (int)DataCreateFlg.DataBudget:
+                        // 工事予算書よりデータ作成
+                        if (!SetJoinBudget(ConstrCode, ref TargetLine)) return false;
+                        break;
+                }
+                
+                // 行のエリアを更新する
+                SetCostsRowCount();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：施工費データ追加位置取得
+        /// <summary>
+        /// データ結合：施工費データ追加位置取得
+        /// </summary>
+        /// <returns></returns>
+        private int GetGridInsertPosion()
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                // 行位置取得
+                int StartLine = m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine];
+                int GroupNo = (int)DataGroup.ConstructionCosts;
+
+                // データ挿入位置検索
+                int TargetLine = -1;
+                for (int i = StartLine; i < dgv.RowCount; i++)
+                {
+                    DataGridViewRow GridRow = dgv.Rows[i];
+                    if (CommonMotions.cnvInt(GridRow.Cells[(int)GridColumn.GroupCount].Value) != GroupNo) break;
+
+                    // 金額が変わった可能性があるので比率計算
+                    double execprice = CommonMotions.cnvDouble(GridRow.Cells[(int)GridColumn.ExecPrice].Value);
+                    GridRow.Cells[(int)GridColumn.Percent].Value = CalculattionPercent(execprice).ToString("0.00");
+
+                    // 同じ場合は行数を退避
+                    TargetLine = i;
+                }
+
+                return TargetLine;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #endregion
+
+        #region データ結合：工事予算書より施工費追加
+        /// <summary>
+        /// データ結合：工事予算書より施工費追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinBudget(int ConstrCode, ref int TargetLine)
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                // 工事予算書明細データを読み込む
+                List<ConstructionBudgetDetail> DetailList = new List<ConstructionBudgetDetail>();
+                string strSQL = OuterBudgetDDB.CreatePrimarykeyString(ConstrCode);
+                strSQL += string.Format(" AND (GROUPCOUNT = {0}", (int)FrmConstructionBudget.DataGroup.CommonTempCosts);       // 共通仮設
+                strSQL += string.Format(" OR GROUPCOUNT = {0}", (int)FrmConstructionBudget.DataGroup.OutSourceCosts);          // 外注費
+                strSQL += string.Format(" OR GROUPCOUNT = {0})", (int)FrmConstructionBudget.DataGroup.MyConstruction);         // 自社施工
+                strSQL += " ORDER BY GroupCount ASC, LineCount ASC";
+                if (!OuterBudgetDDB.SelectAction(strSQL, ref DetailList)) return false;
+                if (DetailList.Count == 0) return true;
+
+                int GroupNo = (int)DataGroup.ConstructionCosts;
+                int icnt = 0;
+
+                // 行位置取得
+                int StartLine = m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine];
+
+                // データ増減番号取得
+                int FluctuationNo = (int)CommonDefine.FluctuatesFlg.Normal;
+
+                // 次の行から追加
+                TargetLine++;
+                // データ追加
+                foreach (ConstructionBudgetDetail DetailRec in DetailList)
+                {
+                    // 行追加
+                    DataGridViewAction.CreateNewLine(dgv, ref TargetLine);
+
+                    DataGridViewRow GridRow = dgv.Rows[TargetLine];
+
+                    // データセット
+                    GridRow.Cells[(int)GridColumn.No].Value = string.Format("{0}-{1}", GroupNo, ++icnt);
+                    GridRow.Cells[(int)GridColumn.FixFlg].Value = "*";
+                    GridRow.Cells[(int)GridColumn.GroupCount].Value = GroupNo;
+                    GridRow.Cells[(int)GridColumn.ItemName].Value = DetailRec.FirstString;
+                    GridRow.Cells[(int)GridColumn.TextName].Value = DetailRec.SecondString;
+                    GridRow.Cells[(int)GridColumn.CompanyCode].Value = DetailRec.CompanyType;
+                    GridRow.Cells[(int)GridColumn.CompanyCode].Value = DetailRec.CompanyCode;
+                    GridRow.Cells[(int)GridColumn.CompanyName].Value = DetailRec.CompanyName;
+                    GridRow.Cells[(int)GridColumn.EstimatePrice].Value = DetailRec.EstimatePrice.ToString("#,0");
+                    GridRow.Cells[(int)GridColumn.ExecPrice].Value = DetailRec.ExecutionAmount.ToString("#,0");
+                    GridRow.Cells[(int)GridColumn.Percent].Value = CalculattionPercent(DetailRec.ExecutionAmount).ToString("0.00");
+                    GridRow.Cells[(int)GridColumn.SourceCode].Value = ConstrCode;
+                    GridRow.Cells[(int)GridColumn.IndependentFlg].Value = "1";
+                    GridRow.Cells[(int)GridColumn.FluctuationFlg].Value = FluctuationNo;
+                    GridRow.Cells[(int)GridColumn.PurchaseOrderFlg].Value = (int)CommonDefine.PurchaseOrderFlg.NoCreate;
+
+                    // 合計欄位置取得
+                    int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
+                    GridRow.Cells[TotalPoint].Value = "0";
+                    // 実績欄位置取得
+                    int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
+                    GridRow.Cells[ResultPoint].Value = DetailRec.ExecutionAmount.ToString("#,0");
+
+                    GridRow.Cells[(int)GridColumn.TitleFlg].Value = "0";
+                    GridRow.Cells[(int)GridColumn.TotalFlg].Value = "0";
+                    GridRow.Cells[(int)GridColumn.BlankFlg].Value = "0";
+
+                    TargetLine++;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：工事詳細台帳より施工費追加
+        /// <summary>
+        /// データ結合：工事詳細台帳より施工費追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinLedger(int ConstrCode, ref int TargetLine)
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                // 工事詳細台帳明細データを読み込む
+                List<ConstructionLedgerDetail> DetailList = new List<ConstructionLedgerDetail>();
+                string strSQL = OuterDetailDB.CreatePrimarykeyString(ConstrCode);
+                strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)DataGroup.ConstructionCosts);       // 施工費
+                strSQL += " ORDER BY GroupCount ASC, LineCount ASC";
+                if (!OuterDetailDB.SelectAction(strSQL, ref DetailList)) return false;
+                if (DetailList.Count == 0) return true;
+
+                // 行位置取得
+                int StartLine = m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine];
+
+                int GridColMax = dgv.ColumnCount;
+
+                // 次の行から追加
+                TargetLine++;
+                // データ追加
+                foreach (ConstructionLedgerDetail DetailRec in DetailList)
+                {
+                    // 行追加
+                    DataGridViewAction.CreateNewLine(dgv, ref TargetLine);
+
+                    DataGridViewRow GridRow = dgv.Rows[TargetLine];
+
+                    // 固定フラグをセットする
+                    if (DetailRec.FixDataFlg == 1) GridRow.Cells[(int)GridColumn.FixFlg].Value = "*";
+
+                    // 独立データフラグ
+                    GridRow.Cells[(int)GridColumn.IndependentFlg].Value = 1;
+
+
+                    GridRow.Cells[(int)GridColumn.GroupCount].Value = DetailRec.GroupCount;
+                    GridRow.Cells[(int)GridColumn.ComponentCode].Value = DetailRec.ComponentCode;
+                    GridRow.Cells[(int)GridColumn.ItemName].Value = DetailRec.FirstString;
+                    GridRow.Cells[(int)GridColumn.TextName].Value = DetailRec.SecondString;
+                    GridRow.Cells[(int)GridColumn.CompanyType].Value = DetailRec.CompanyType;
+                    GridRow.Cells[(int)GridColumn.CompanyCode].Value = DetailRec.CompanyCode;
+                    GridRow.Cells[(int)GridColumn.CompanyName].Value = DetailRec.CompanyName;
+
+                    GridRow.Cells[(int)GridColumn.EstimatePrice].Value = DetailRec.EstimatePrice.ToString("#,#");
+                    GridRow.Cells[(int)GridColumn.ExecPrice].Value = DetailRec.ExecutionAmount.ToString("#,0");
+                    GridRow.Cells[(int)GridColumn.Percent].Value = DetailRec.AmountConfigRate.ToString("0.00");
+
+                    //GridRow.Cells[(int)GridColumn.FluctuationFlg].Value = DetailRec.FluctuationFlg;
+                    // 給与振分区分
+                    GridRow.Cells[(int)GridColumn.SalaryFlg].Value = DetailRec.SalaryFlg;
+                    // 給与振分日数
+                    GridRow.Cells[(int)GridColumn.SalaryDays].Value = DetailRec.SalaryDays;
+                    // 担当中フラグ
+                    GridRow.Cells[(int)GridColumn.OperatingFlg].Value = DetailRec.OperatingFlg;
+                    // 元工事番号
+                    GridRow.Cells[(int)GridColumn.SourceCode].Value = DetailRec.SourceCode;
+                    // 工事名称タイトルフラグ
+                    GridRow.Cells[(int)GridColumn.JoinTitleFlg].Value = DetailRec.JoinTitleFlg;
+                    // 注文書発行フラグ
+                    GridRow.Cells[(int)GridColumn.PurchaseOrderFlg].Value = DetailRec.PurchaseOrderFlg;
+
+                    GridRow.Cells[(int)GridColumn.TitleFlg].Value = "0";
+                    GridRow.Cells[(int)GridColumn.TotalFlg].Value = "0";
+                    GridRow.Cells[(int)GridColumn.BlankFlg].Value = "0";
+                    // ----- 支払いデータをセットする
+                    double TotalValue = 0;
+                    strSQL = OuterExcuteDB.CreatePrimarykeyString(ConstrCode, DetailRec.GroupCount, DetailRec.LineCount);
+                    strSQL += " ORDER BY ColumnCount";
+                    List<ConstructionLedgerExcute> ExcuteList = new List<ConstructionLedgerExcute>();
+                    OuterExcuteDB.SelectAction(strSQL, ref ExcuteList);
+                    foreach (ConstructionLedgerExcute ExcuteRec in ExcuteList)
+                    {
+                        //グリッドの対象列を取得する（データのカラム数から年月に変更する）
+                        string CurMounth = string.Format("{0}年{1}月", ExcuteRec.TargetMonth.Year, ExcuteRec.TargetMonth.Month);
+                        for (int ix = (int)GridColumn.Payment; ix < dgv.ColumnCount; ix++)
+                        {
+                            // グリッドの対象列を探す
+                            if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
+
+                            // あればセットする
+                            GridRow.Cells[ix].Value = ExcuteRec.PaymentAmount.ToString("#,0");
+                            TotalValue += ExcuteRec.PaymentAmount;
+                            break;
+                        }
+                    }
+
+                    // 合計金額表示
+                    GridRow.Cells[GridColMax + (int)ColPayTotal.Totals].Value = TotalValue.ToString("#,0");
+
+                    // 支払可能額表示
+                    int ExecValue = 0;
+                    // 経費以外の時のみ支払可能額を計算する
+                    ExecValue = (int)(DetailRec.ExecutionAmount - TotalValue);
+
+                    GridRow.Cells[GridColMax + (int)ColPayTotal.Results].Value = ExecValue.ToString("#,0");
+
+                    // 支払補填額
+                    GridRow.Cells[GridColMax + (int)ColPayTotal.PaymentBurdens].Value = DetailRec.PaymentBurden.ToString("#,0");
+
+                    TargetLine++;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：購入品ブロック追加
+        /// <summary>
+        /// データ結合：購入品ブロック追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinData_OtherExpeness(int ConstrCode, int DataSource)
+        {
+            try
+            {
+                // 交通費表示
+                if (!SetJoinData_ConstructionBudget((int)DataGroup.TransportationCosts, ConstrCode, DataSource)) return false;
+                // 購入品
+                if (!SetJoinData_ConstructionBudget((int)DataGroup.PurchaseCosts, ConstrCode, DataSource)) return false;
+                // 車両リース代
+                if (!SetJoinData_ConstructionBudget((int)DataGroup.VehicleLeaseFee, ConstrCode, DataSource)) return false;
+                // 駐車場・資材置き場
+                if (!SetJoinData_ConstructionBudget((int)DataGroup.ParkingCosts, ConstrCode, DataSource)) return false;
+                // 宿泊費
+                if (!SetJoinData_ConstructionBudget((int)DataGroup.RoomChargeCosts, ConstrCode, DataSource)) return false;
+                // 処分費等
+                if (!SetJoinData_ConstructionBudget((int)DataGroup.DisposeCosts, ConstrCode, DataSource)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：購入費等追加
+        /// <summary>
+        /// データ結合：購入費等追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinData_ConstructionBudget(int GroupNo, int ConstrCode, int DataSource)
+        {
+            try
+            {
+                int SearchGroup = GroupNo;
+                // 工事予算書はグループ番号が違う
+                if (DataSource == (int)DataCreateFlg.DataBudget)
+                {
+                    switch (GroupNo)
+                    {
+                        // 車両リース代
+                        case (int)DataGroup.VehicleLeaseFee:
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.VehicleLeaseFee;
+                            break;
+                        // 購入品
+                        case (int)DataGroup.PurchaseCosts:
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.PurchaseCosts;
+                            break;
+                        // 交通費（通行料・電車代）
+                        case (int)DataGroup.TransportationCosts:
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.TransportationCosts;
+                            break;
+                        // 駐車場・資材置き場
+                        case (int)DataGroup.ParkingCosts:
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.ParkingCosts;
+                            break;
+                        // 宿泊費
+                        case (int)DataGroup.RoomChargeCosts:
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.RoomChargeCosts;
+                            break;
+                        // 処分費等
+                        case (int)DataGroup.DisposeCosts:
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.DisposeCosts;
+                            break;
+                        default:
+                            // その他の項目
+                            break;
+                    }
+                }
+                // 工事予算書明細データを読み込む
+                string strSQL = OuterDetailDB.CreatePrimarykeyString(ConstrCode);
+                strSQL += string.Format(" AND GROUPCOUNT = {0}", SearchGroup);
+                strSQL += " ORDER BY LineCount ASC";
+
+                ConstructionLedgerDetail DetailRec = new ConstructionLedgerDetail();
+                // 作成元によってデータを読む
+                if (DataSource == (int)DataCreateFlg.DataLedger)
+                {
+                    if (!OuterDetailDB.SelectAction(strSQL, ref DetailRec)) return false;
+                }
+                else if (DataSource == (int)DataCreateFlg.DataBudget)
+                {
+                    ConstructionBudgetDetail workDetailRec = new ConstructionBudgetDetail();
+                    if (!OuterBudgetDDB.SelectAction(strSQL, ref workDetailRec)) return false;
+                    DetailRec.EstimatePrice = workDetailRec.EstimatePrice;
+                    DetailRec.ExecutionAmount = workDetailRec.ExecutionAmount;
+                }
+
+                int TargetLine = -1;
+                // データセット
+                switch (GroupNo)
+                {
+                    // 車両リース代
+                    case (int)DataGroup.VehicleLeaseFee:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.VehicleLeaseFeeRowLine];
+                        break;
+                    // 購入品
+                    case (int)DataGroup.PurchaseCosts:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.PurchaseCostsRowLine];
+                        break;
+                    // 交通費（通行料・電車代）
+                    case (int)DataGroup.TransportationCosts:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.TransportationCostsRowLine];
+                        break;
+                    // 駐車場・資材置き場
+                    case (int)DataGroup.ParkingCosts:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.ParkingCostsRowLine];
+                        break;
+                    // 宿泊費
+                    case (int)DataGroup.RoomChargeCosts:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.RoomChargeCostsRowLine];
+                        break;
+                    // 処分費等
+                    case (int)DataGroup.DisposeCosts:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.DisposeCostsRowLine];
+                        break;
+
+                    default:
+                        // その他の項目
+                        break;
+                }
+
+                DataGridView dgv = dgvAllDisplay;
+                DataGridViewRow RowData = dgv.Rows[TargetLine];
+
+                RowData.Cells[(int)GridColumn.SourceCode].Value = m_ConstructionCode;
+
+                int[] NowValue = new int[3];
+                NowValue[0] = CommonMotions.cnvInt(RowData.Cells[(int)GridColumn.EstimatePrice].Value) + (int)DetailRec.EstimatePrice;
+                NowValue[1] = CommonMotions.cnvInt(RowData.Cells[(int)GridColumn.ExecPrice].Value) + (int)DetailRec.ExecutionAmount;
+
+                RowData.Cells[(int)GridColumn.EstimatePrice].Value = NowValue[0].ToString("#,0");
+                RowData.Cells[(int)GridColumn.ExecPrice].Value = NowValue[1].ToString("#,0");
+                RowData.Cells[(int)GridColumn.Percent].Value = CalculattionPercent((double)NowValue[1]).ToString("0.00");
+
+                double TotalValue = 0;
+                // 工事詳細台帳がある場合のみ実績セット
+                if (DataSource == (int)DataCreateFlg.DataLedger)
+                {
+                    // ----- 支払いデータをセットする
+                    strSQL = OuterExcuteDB.CreatePrimarykeyString(ConstrCode, DetailRec.GroupCount, DetailRec.LineCount);
+                    strSQL += " ORDER BY ColumnCount";
+                    List<ConstructionLedgerExcute> ExcuteList = new List<ConstructionLedgerExcute>();
+                    OuterExcuteDB.SelectAction(strSQL, ref ExcuteList);
+                    foreach (ConstructionLedgerExcute ExcuteRec in ExcuteList)
+                    {
+                        //グリッドの対象列を取得する（データのカラム数から年月に変更する）
+                        string CurMounth = string.Format("{0}年{1}月", ExcuteRec.TargetMonth.Year, ExcuteRec.TargetMonth.Month);
+                        for (int ix = (int)GridColumn.Payment; ix < dgv.ColumnCount; ix++)
+                        {
+                            // グリッドの対象列を探す
+                            if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
+
+                            // あればセットする
+                            int SourceValue = CommonMotions.cnvInt(RowData.Cells[ix].Value);
+                            RowData.Cells[ix].Value = (SourceValue + ExcuteRec.PaymentAmount).ToString("#,0");
+                            TotalValue += ExcuteRec.PaymentAmount;
+                            break;
+                        }
+                    }
+                }
+
+                int GridColMax = dgv.ColumnCount;
+                // 合計金額表示
+                RowData.Cells[GridColMax + (int)ColPayTotal.Totals].Value = TotalValue.ToString("#,0");
+
+                // 支払可能額表示
+                int ExecValue = 0;
+                // 経費以外の時のみ支払可能額を計算する
+                ExecValue = (int)(DetailRec.ExecutionAmount - TotalValue);
+
+                RowData.Cells[GridColMax + (int)ColPayTotal.Results].Value = ExecValue.ToString("#,0");
+
+                // 支払補填額
+                RowData.Cells[GridColMax + (int)ColPayTotal.PaymentBurdens].Value = DetailRec.PaymentBurden.ToString("#,0");
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：人件費ブロック追加
+        /// <summary>
+        /// データ結合：人件費ブロック追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinData_WorkingValue(int ConstrCode, int DataSource)
+        {
+            try
+            {
+                int BlockNo = (int)DataGroup.TransportationCosts + 1;
+                int icnt = 1;
+                // グループ名表示
+                CreateTitleRow(BlockNo, s_PersonnelExpensesGroup);
+
+                // 指導員給与
+                if (!SetJoinData_AddWorkingRow(BlockNo, (int)DataGroup.Instructor, icnt++, ConstrCode, DataSource)) return false;
+                // 副担当者給与
+                if (!SetJoinData_AddWorkingRow(BlockNo, (int)DataGroup.Assistant, icnt++, ConstrCode, DataSource)) return false;
+                // 担当者給与経費
+                if (!SetJoinData_AddWorkingRow(BlockNo, (int)DataGroup.Payroll, icnt++, ConstrCode, DataSource)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：人件費を追加
+        /// <summary>
+        /// データ結合：人件費を追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinData_AddWorkingRow(int BlockNo, int GroupNo, int DataNo, int ConstrCode, int DataSource)
+        {
+            try
+            {
+                int SearchGroup = GroupNo;
+                // 工事予算書はグループ番号が違う
+                if (DataSource == (int)DataCreateFlg.DataBudget)
+                {
+                    switch (GroupNo)
+                    {
+                        case (int)DataGroup.Instructor:
+                            // 指導員給与
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.InstructorCosts;
+                            break;
+                        case (int)DataGroup.Assistant:
+                            // 副担当者給与
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.AssistantCosts;
+                            break;
+                        case (int)DataGroup.Payroll:
+                            // 担当者給与経費
+                            SearchGroup = (int)FrmConstructionBudget.DataGroup.PayrollExpenses;
+                            break;
+                        default:
+                            // その他の項目
+                            break;
+                    }
+                }
+
+                // 工事予算書明細データを読み込む
+                string strSQL = OuterDetailDB.CreatePrimarykeyString(ConstrCode);
+                strSQL += string.Format(" AND GROUPCOUNT = {0}", SearchGroup);
+                strSQL += " ORDER BY LineCount ASC";
+
+                ConstructionLedgerDetail DetailRec = new ConstructionLedgerDetail();
+                // 作成元によってデータを読む
+                if (DataSource == (int)DataCreateFlg.DataLedger)
+                {
+                    //　データが無ければ対象外
+                    if (!OuterDetailDB.SelectAction(strSQL, ref DetailRec)) return true;
+                }
+                else if (DataSource == (int)DataCreateFlg.DataBudget)
+                {
+                    ConstructionBudgetDetail workDetailRec = new ConstructionBudgetDetail();
+                    if (!OuterBudgetDDB.SelectAction(strSQL, ref workDetailRec)) return true;
+                    DetailRec.FirstString = workDetailRec.FirstString;
+                    DetailRec.SecondString = workDetailRec.SecondString;
+                    DetailRec.CompanyType = workDetailRec.CompanyType;
+                    DetailRec.CompanyCode = workDetailRec.CompanyCode;
+                    DetailRec.CompanyName = workDetailRec.CompanyName;
+                    DetailRec.EstimatePrice = workDetailRec.EstimatePrice;
+                    DetailRec.ExecutionAmount = workDetailRec.ExecutionAmount;
+                    DetailRec.AmountConfigRate = workDetailRec.AmountConfigRate;
+                }
+
+                ConstructionBudgetDetail BudgetDRec = new ConstructionBudgetDetail();
+                // 対象行数取得
+                int TargetLine = -1;
+                switch (GroupNo)
+                {
+                    // 指導員費用
+                    case (int)DataGroup.Instructor:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.InstructorRowLine];
+                        GroupNo = (int)DataGroup.Instructor;
+
+                        // 指導員行に名前を入れる
+                        BudgetDRec.CompanyCode = DetailRec.CompanyCode;
+                        SetFirstStringName(GroupNo, ref BudgetDRec);
+                        DetailRec.FirstString = BudgetDRec.FirstString;
+
+                        // 一般ユーザーは指導員の給与を見えないようにする
+                        if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
+                        break;
+
+                    // 副担当者給与費用
+                    case (int)DataGroup.Assistant:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.AssistantRowLine];
+                        GroupNo = (int)DataGroup.Assistant;
+
+                        // 副担当行に名前を入れる
+                        BudgetDRec.CompanyCode = DetailRec.CompanyCode;
+                        SetFirstStringName(GroupNo, ref BudgetDRec);
+                        DetailRec.FirstString = BudgetDRec.FirstString;
+
+                        // 一般ユーザーは副担当者の給与を見えないようにする
+                        if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
+                        break;
+
+                    // 担当者給与費用
+                    case (int)DataGroup.Payroll:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.PayrollRowLine];
+                        GroupNo = (int)DataGroup.Payroll;
+
+                        // 担当者行に名前を入れる
+                        BudgetDRec.CompanyCode = DetailRec.CompanyCode;
+                        SetFirstStringName(GroupNo, ref BudgetDRec);
+                        DetailRec.FirstString = BudgetDRec.FirstString;
+
+                        // 一般ユーザーは担当者の給与を見えないようにする
+                        if (!CheckLeaderOrUser()) DetailRec.SecondString = string.Empty;
+                        break;
+                    default:
+                        // その他の項目（ここには来ないが念のため）
+                        GroupNo = 0;
+                        break;
+                }
+
+                // 担当者が同じならば金額を変更する、担当者がいなければ行を増やす
+                bool bExist = false;
+                DataGridView dgv = dgvAllDisplay;
+                for (int i = TargetLine; i < dgv.RowCount; i++, TargetLine++)
+                {
+                    DataGridViewRow wrkRow = dgv.Rows[i];
+                    // 対象グループ以外は抜ける
+                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.GroupCount].Value) != GroupNo) break;
+                    // 同じ担当者がいれば抜ける
+                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)GridColumn.CompanyCode].Value) == DetailRec.CompanyCode)
+                    {
+                        bExist = true;
+                        break;
+                    }
+                }
+
+                // データ行現番号取得
+                int FluctuationNo = (int)CommonDefine.FluctuatesFlg.Fluctuates;
+
+                if (bExist)
+                {
+                    DataGridViewRow RowData = dgv.Rows[TargetLine];
+                    int EstimatePrice = CommonMotions.cnvInt(RowData.Cells[(int)GridColumn.EstimatePrice].Value) + (int)DetailRec.EstimatePrice;
+                    int ExecutionAmount = CommonMotions.cnvInt(RowData.Cells[(int)GridColumn.ExecPrice].Value) + (int)DetailRec.ExecutionAmount;
+
+                    RowData.Cells[(int)GridColumn.EstimatePrice].Value = EstimatePrice.ToString("#,0");
+                    RowData.Cells[(int)GridColumn.ExecPrice].Value = ExecutionAmount.ToString("#,0");
+                }
+                else
+                {
+                    object[] RowData = new object[dgv.Columns.Count];
+
+                    RowData[(int)GridColumn.No] = string.Format("{0}-{1}", BlockNo, DataNo);        // ここでの番号は見えないのでおかしくてもよい
+                    RowData[(int)GridColumn.FixFlg] = "*";
+                    RowData[(int)GridColumn.GroupCount] = GroupNo;
+                    RowData[(int)GridColumn.ItemName] = DetailRec.FirstString;
+                    RowData[(int)GridColumn.TextName] = DetailRec.SecondString;
+
+                    RowData[(int)GridColumn.CompanyType] = DetailRec.CompanyType;
+                    RowData[(int)GridColumn.CompanyCode] = DetailRec.CompanyCode;
+                    RowData[(int)GridColumn.CompanyName] = DetailRec.CompanyName;
+
+                    RowData[(int)GridColumn.EstimatePrice] = DetailRec.ExecutionAmount.ToString("#,0");
+                    RowData[(int)GridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
+                    RowData[(int)GridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
+                    
+                    RowData[(int)GridColumn.IndependentFlg] = "1";
+                    RowData[(int)GridColumn.FluctuationFlg] = FluctuationNo;
+                    RowData[(int)GridColumn.SourceCode] = m_ConstructionCode;
+
+                    // 合計欄位置取得
+                    int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
+                    RowData[TotalPoint] = "0";
+                    // 実績欄位置取得
+                    int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
+                    RowData[ResultPoint] = DetailRec.ExecutionAmount.ToString("#,0");
+
+                    RowData[(int)GridColumn.TitleFlg] = "0";
+                    RowData[(int)GridColumn.TotalFlg] = "0";
+                    RowData[(int)GridColumn.BlankFlg] = "0";
+
+                    dgv.Rows.Insert(TargetLine, RowData);
+                }
+
+                // 行数保持のエリアを更新する
+                SetCostsRowCount();
+
+                double TotalValue = 0;
+                DataGridViewRow ExecRow = dgv.Rows[TargetLine];
+                // 工事詳細台帳がある場合のみ実績セット
+                if (DataSource == (int)DataCreateFlg.DataLedger)
+                {
+                    // ----- 支払いデータをセットする
+                    strSQL = OuterExcuteDB.CreatePrimarykeyString(ConstrCode, DetailRec.GroupCount, DetailRec.LineCount);
+                    strSQL += " ORDER BY ColumnCount";
+                    List<ConstructionLedgerExcute> ExcuteList = new List<ConstructionLedgerExcute>();
+                    OuterExcuteDB.SelectAction(strSQL, ref ExcuteList);
+                    foreach (ConstructionLedgerExcute ExcuteRec in ExcuteList)
+                    {
+                        //グリッドの対象列を取得する（データのカラム数から年月に変更する）
+                        string CurMounth = string.Format("{0}年{1}月", ExcuteRec.TargetMonth.Year, ExcuteRec.TargetMonth.Month);
+                        for (int ix = (int)GridColumn.Payment; ix < dgv.ColumnCount; ix++)
+                        {
+                            // グリッドの対象列を探す
+                            if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
+
+                            // あればセットする
+                            int SourceValue = CommonMotions.cnvInt(ExecRow.Cells[ix].Value);
+                            ExecRow.Cells[ix].Value = (SourceValue + ExcuteRec.PaymentAmount).ToString("#,0");
+                            TotalValue += ExcuteRec.PaymentAmount;
+                            break;
+                        }
+                    }
+                }
+
+                int GridColMax = dgv.ColumnCount;
+                // 合計金額表示
+                ExecRow.Cells[GridColMax + (int)ColPayTotal.Totals].Value = TotalValue.ToString("#,0");
+
+                // 支払可能額表示
+                int ExecValue = 0;
+                // 経費以外の時のみ支払可能額を計算する
+                ExecValue = (int)(DetailRec.ExecutionAmount - TotalValue);
+
+                ExecRow.Cells[GridColMax + (int)ColPayTotal.Results].Value = ExecValue.ToString("#,0");
+
+                // 支払補填額
+                ExecRow.Cells[GridColMax + (int)ColPayTotal.PaymentBurdens].Value = DetailRec.PaymentBurden.ToString("#,0");
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：請求ブロック追加
+        /// <summary>
+        /// データ結合：請求ブロック追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinData_BillingValue(int ConstrCode, int DataSource)
+        {
+            try
+            {
+                if (DataSource == (int)DataCreateFlg.DataBudget) return　true;
+
+                // 請求金額
+                if (!SetJoinData_AddBillingRow((int)DataGroup.BillingAmount, ConstrCode)) return false;
+                // 現在利益額
+                if (!SetJoinData_AddBillingRow((int)DataGroup.CurrentProfit, ConstrCode)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region データ結合：請求金額を追加
+        /// <summary>
+        /// データ結合：請求金額を追加
+        /// </summary>
+        /// <returns></returns>
+        private bool SetJoinData_AddBillingRow(int GroupNo, int ConstrCode)
+        {
+            try
+            {
+                // 工事予算書明細データを読み込む
+                string strSQL = OuterDetailDB.CreatePrimarykeyString(ConstrCode);
+                strSQL += string.Format(" AND GROUPCOUNT = {0}", GroupNo);
+                strSQL += " ORDER BY LineCount ASC";
+
+                ConstructionLedgerDetail DetailRec = new ConstructionLedgerDetail();
+                //　データが無ければ対象外
+                if (!OuterDetailDB.SelectAction(strSQL, ref DetailRec)) return true;
+
+                ConstructionBudgetDetail BudgetDRec = new ConstructionBudgetDetail();
+                // 対象行数取得
+                int TargetLine = -1;
+                switch (GroupNo)
+                {
+                    // 請求金額
+                    case (int)DataGroup.BillingAmount:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.BillingAmountRowLine];
+                        GroupNo = (int)DataGroup.BillingAmount;
+                        break;
+
+                    // 現在利益額
+                    case (int)DataGroup.CurrentProfit:
+                        TargetLine = m_CostsRowCount[(int)CostsRowLine.CurrentProfitRowLine];
+                        GroupNo = (int)DataGroup.CurrentProfit;
+                        break;
+
+                    default:
+                        // その他の項目（ここには来ないが念のため）
+                        GroupNo = 0;
+                        break;
+                }
+
+                DataGridView dgv = dgvAllDisplay;
+
+                // 行数保持のエリアを更新する
+                SetCostsRowCount();
+
+                double TotalValue = 0;
+                DataGridViewRow ExecRow = dgv.Rows[TargetLine];
+                ExecRow.Cells[(int)GridColumn.SourceCode].Value = m_ConstructionCode;
+                
+                // 工事詳細台帳がある場合のみ実績セット
+
+                // ----- 支払いデータをセットする
+                strSQL = OuterExcuteDB.CreatePrimarykeyString(ConstrCode, DetailRec.GroupCount, DetailRec.LineCount);
+                strSQL += " ORDER BY ColumnCount";
+                List<ConstructionLedgerExcute> ExcuteList = new List<ConstructionLedgerExcute>();
+                OuterExcuteDB.SelectAction(strSQL, ref ExcuteList);
+                foreach (ConstructionLedgerExcute ExcuteRec in ExcuteList)
+                {
+                    //グリッドの対象列を取得する（データのカラム数から年月に変更する）
+                    string CurMounth = string.Format("{0}年{1}月", ExcuteRec.TargetMonth.Year, ExcuteRec.TargetMonth.Month);
+                    for (int ix = (int)GridColumn.Payment; ix < dgv.ColumnCount; ix++)
+                    {
+                        // グリッドの対象列を探す
+                        if (!CurMounth.Equals(dgv.Columns[ix].HeaderText)) continue;
+
+                        // あればセットする
+                        int SourceValue = CommonMotions.cnvInt(ExecRow.Cells[ix].Value);
+                        ExecRow.Cells[ix].Value = (SourceValue + ExcuteRec.PaymentAmount).ToString("#,0");
+                        TotalValue += ExcuteRec.PaymentAmount;
+                        break;
+                    }
+                }
+
+                int GridColMax = dgv.ColumnCount;
+                // 合計金額表示
+                ExecRow.Cells[GridColMax + (int)ColPayTotal.Totals].Value = TotalValue.ToString("#,0");
+
+                // 支払可能額表示
+                int ExecValue = 0;
+                // 経費以外の時のみ支払可能額を計算する
+                ExecValue = (int)(DetailRec.ExecutionAmount - TotalValue);
+
+                ExecRow.Cells[GridColMax + (int)ColPayTotal.Results].Value = ExecValue.ToString("#,0");
+
+                // 支払補填額
+                ExecRow.Cells[GridColMax + (int)ColPayTotal.PaymentBurdens].Value = DetailRec.PaymentBurden.ToString("#,0");
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+        // ---------- 結合処理↑↑
+
+        // ---------- 終了時台帳データ削除↓↓
+        #region 結合後詳細台帳データ削除
+        /// <summary>
+        /// 結合後詳細台帳データ削除
+        /// </summary>
+        /// <returns></returns>
+        private bool RemoveJoinLedgerData()
+        {
+            IOConstructionLedger DB00 = new IOConstructionLedger();                 // 工事詳細台帳データ
+            IOConstructionLedgerDetail DB01 = new IOConstructionLedgerDetail();     // 工事詳細台帳明細データ
+            IOConstructionLedgerExcute DB02 = new IOConstructionLedgerExcute();     // 工事詳細台帳実行データ
+            try
+            {
+                // 処理終了後、対象リストを基にデータを削除する
+                string strCopy = string.Empty;
+                string strRemove = string.Empty;
+
+                strCopy = "INSERT INTO BK_CONSTRUCTIONLEDGER SELECT * FROM CONSTRUCTIONLEDGER WHERE CONSTRUCTIONCODE IN (";
+                strRemove = "DELETE FROM CONSTRUCTIONLEDGER WHERE CONSTRUCTIONCODE IN (";
+
+                if (m_RollBackJoinLedger)
+                {
+                    strCopy = "INSERT INTO CONSTRUCTIONLEDGER SELECT * FROM BK_CONSTRUCTIONLEDGER WHERE CONSTRUCTIONCODE IN (";
+                    strRemove = "DELETE FROM BK_CONSTRUCTIONLEDGER WHERE CONSTRUCTIONCODE IN (";
+                }
+
+                // 検索キー追加
+                for (int i = 0; i < m_JoiningCodeList.Count; i++)
+                {
+                    if (i != 0) strCopy += " ,";
+                    strCopy += string.Format("{0}", m_JoiningCodeList[i]);
+
+                    if (i != 0) strRemove += " ,";
+                    strRemove += string.Format("{0}", m_JoiningCodeList[i]);
+                }
+                strCopy += ")";
+                strRemove += ")";
+
+                DB00.connect(); DB00.beginTran();
+                DB01.connect(); DB01.beginTran();
+                DB02.connect(); DB02.beginTran();
+
+                if (!DB00.ExecuteNonQuery(strCopy, false))
+                {
+                    DB00.rollback(); DB01.rollback(); DB02.rollback();
+                    return false;
+                }
+
+                strCopy = strCopy.Replace("CONSTRUCTIONLEDGER", "CONSTRUCTIONLEDGERDETAIL");
+                if (!DB01.ExecuteNonQuery(strCopy, false))
+                {
+                    DB00.rollback(); DB01.rollback(); DB02.rollback();
+                    return false;
+                }
+
+                strCopy = strCopy.Replace("CONSTRUCTIONLEDGERDETAIL", "CONSTRUCTIONLEDGEREXCUTE");
+                if (!DB02.ExecuteNonQuery(strCopy, false))
+                {
+                    DB00.rollback(); DB01.rollback(); DB02.rollback();
+                    return false;
+                }
+
+
+                if (!DB00.ExecuteNonQuery(strRemove, false))
+                {
+                    DB00.rollback(); DB01.rollback(); DB02.rollback();
+                    return false;
+                }
+
+                strRemove = strRemove.Replace("CONSTRUCTIONLEDGER", "CONSTRUCTIONLEDGERDETAIL");
+                if (!DB01.ExecuteNonQuery(strRemove, false))
+                {
+                    DB00.rollback(); DB01.rollback(); DB02.rollback();
+                    return false;
+                }
+
+                strRemove = strRemove.Replace("CONSTRUCTIONLEDGERDETAIL", "CONSTRUCTIONLEDGEREXCUTE");
+                if (!DB02.ExecuteNonQuery(strRemove, false))
+                {
+                    DB00.rollback(); DB01.rollback(); DB02.rollback();
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                DB00.commit();
+                DB01.commit();
+                DB02.commit();
+                
+                DB00.close(); DB00 = null;
+                DB01.close(); DB01 = null;
+                DB02.close(); DB02 = null;
+            }
+        }
+        #endregion
+        // ---------- 終了時台帳データ削除↑↑
+
         // ---------- データコンバートロジック
         #region フラグコンバート
         /// <summary>
@@ -6196,434 +7778,437 @@
         #endregion
 
         #region 人件費再計算
-        /// <summary>
-        /// 人件費再計算
-        /// </summary>
-        private void RecalcalculationPersonnelExpenses()
-        {
-            IOConstructionLedger LedgerDB = new IOConstructionLedger();
-            IOConstructionLedgerDetail LDetailDB = new IOConstructionLedgerDetail();
-            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
-            FrmConstructionLedger frm = new FrmConstructionLedger();
-            try
-            {
-                // ------ 通常分
-                string strSQL = "SELECT A.CONSTRUCTIONCODE";
-                strSQL += " , B.CreatorCode B1";
-                strSQL += " , B.SalaryFlg B2";
-                strSQL += " , B.SalaryDays B3";
-                strSQL += " , B.AssistantCode B4";
-                strSQL += " , B.A_SalaryFlg B5";
-                strSQL += " , B.A_SalaryDays B6";
-                strSQL += " , B.InstructorCode B7";
-                strSQL += " , B.I_SalaryFlg B8";
-                strSQL += " , B.I_SalaryDays B9";
-                strSQL += " , C.CONSTRUCTIONPERSONCODE C10";
-                strSQL += " , C.CONSTRSUBPERSONCODE C11";
-                strSQL += " , C.CONSTRUCTIONINSTRUCTOR C12";
-                strSQL += " , C.CONSTRUCTIONPERIODSTART C13";
-                strSQL += " , C.CONSTRUCTIONPERIODSTART2 C14";
-                strSQL += " , C.CONSTRUCTIONPERIODEND C15";
-                strSQL += " , C.CONSTRUCTIONPERIODEND2 C16";
-                strSQL += " , C.CONSTRUCTIONPERIOD C17";
-                strSQL += " , count(*)";
-                strSQL += " FROM CONSTRUCTIONLEDGER A LEFT JOIN CONSTRUCTIONBUDGET B ON A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
-                strSQL += " , CONSTRUCTIONBASEINFO C";
-                strSQL += " WHERE A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
-                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.CreatorCode, B.AssistantCode, B.InstructorCode, B.SalaryFlg, ";
-                strSQL += " B.SalaryDays, B.A_SalaryFlg, B.A_SalaryDays, B.I_SalaryFlg, B.I_SalaryDays, ";
-                strSQL += " C.CONSTRUCTIONPERSONCODE, C.CONSTRSUBPERSONCODE, C.CONSTRUCTIONINSTRUCTOR, C.CONSTRUCTIONPERIOD, C.CONSTRUCTIONPERIODSTART, ";
-                strSQL += " C.CONSTRUCTIONPERIODSTART2, C.CONSTRUCTIONPERIODEND, C.CONSTRUCTIONPERIODEND2";
-                strSQL += " ORDER BY A.CONSTRUCTIONCODE";
+        ///// <summary>
+        ///// 人件費再計算
+        ///// </summary>
+        //private void RecalcalculationPersonnelExpenses()
+        //{
+        //    IOConstructionLedger LedgerDB = new IOConstructionLedger();
+        //    IOConstructionLedgerDetail LDetailDB = new IOConstructionLedgerDetail();
+        //    IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+        //    FrmConstructionLedger frm = new FrmConstructionLedger();
+        //    try
+        //    {
+        //        // ------ 通常分
+        //        string strSQL = "SELECT A.CONSTRUCTIONCODE";
+        //        strSQL += " , B.CreatorCode B1";
+        //        strSQL += " , B.SalaryFlg B2";
+        //        strSQL += " , B.SalaryDays B3";
+        //        strSQL += " , B.AssistantCode B4";
+        //        strSQL += " , B.A_SalaryFlg B5";
+        //        strSQL += " , B.A_SalaryDays B6";
+        //        strSQL += " , B.InstructorCode B7";
+        //        strSQL += " , B.I_SalaryFlg B8";
+        //        strSQL += " , B.I_SalaryDays B9";
+        //        strSQL += " , C.CONSTRUCTIONPERSONCODE C10";
+        //        strSQL += " , C.CONSTRSUBPERSONCODE C11";
+        //        strSQL += " , C.CONSTRUCTIONINSTRUCTOR C12";
+        //        strSQL += " , C.CONSTRUCTIONPERIODSTART C13";
+        //        strSQL += " , C.CONSTRUCTIONPERIODSTART2 C14";
+        //        strSQL += " , C.CONSTRUCTIONPERIODEND C15";
+        //        strSQL += " , C.CONSTRUCTIONPERIODEND2 C16";
+        //        strSQL += " , C.CONSTRUCTIONPERIOD C17";
+        //        strSQL += " , count(*)";
+        //        strSQL += " FROM CONSTRUCTIONLEDGER A LEFT JOIN CONSTRUCTIONBUDGET B ON A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+        //        strSQL += " , CONSTRUCTIONBASEINFO C";
+        //        strSQL += " WHERE A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+        //        strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.CreatorCode, B.AssistantCode, B.InstructorCode, B.SalaryFlg, ";
+        //        strSQL += " B.SalaryDays, B.A_SalaryFlg, B.A_SalaryDays, B.I_SalaryFlg, B.I_SalaryDays, ";
+        //        strSQL += " C.CONSTRUCTIONPERSONCODE, C.CONSTRSUBPERSONCODE, C.CONSTRUCTIONINSTRUCTOR, C.CONSTRUCTIONPERIOD, C.CONSTRUCTIONPERIODSTART, ";
+        //        strSQL += " C.CONSTRUCTIONPERIODSTART2, C.CONSTRUCTIONPERIODEND, C.CONSTRUCTIONPERIODEND2";
+        //        strSQL += " ORDER BY A.CONSTRUCTIONCODE";
 
-                ArrayList DatList = new ArrayList();
-                if (!LedgerDB.ExecuteReader(strSQL, ref DatList)) return;
+        //        ArrayList DatList = new ArrayList();
+        //        if (!LedgerDB.ExecuteReader(strSQL, ref DatList)) return;
 
-                LDetailDB.connect(); LDetailDB.beginTran();
-                PersonDB.connect(); PersonDB.beginTran();
-                foreach (object[] objArry in DatList)
-                {
-                    ConstructionLedgerDetail DetailRec1 = new ConstructionLedgerDetail();
-                    SetDatailData(PersonDB, (int)DataGroup.Payroll, objArry, ref DetailRec1);
-                    if (!LDetailDB.InsertAction(DetailRec1))
-                    {
-                        LDetailDB.rollback();
-                        PersonDB.rollback();
-                        break;
-                    }
+        //        LDetailDB.connect(); LDetailDB.beginTran();
+        //        PersonDB.connect(); PersonDB.beginTran();
+        //        foreach (object[] objArry in DatList)
+        //        {
+        //            ConstructionLedgerDetail DetailRec1 = new ConstructionLedgerDetail();
+        //            SetDatailData(PersonDB, (int)DataGroup.Payroll, objArry, ref DetailRec1);
+        //            if (!LDetailDB.InsertAction(DetailRec1))
+        //            {
+        //                LDetailDB.rollback();
+        //                PersonDB.rollback();
+        //                break;
+        //            }
 
-                    ConstructionLedgerDetail DetailRec2 = new ConstructionLedgerDetail();
-                    SetDatailData(PersonDB, (int)DataGroup.Assistant, objArry, ref DetailRec2);
-                    if(!LDetailDB.InsertAction(DetailRec2))
-                    {
-                        LDetailDB.rollback();
-                        PersonDB.rollback();
-                        break;
-                    }
+        //            ConstructionLedgerDetail DetailRec2 = new ConstructionLedgerDetail();
+        //            SetDatailData(PersonDB, (int)DataGroup.Assistant, objArry, ref DetailRec2);
+        //            if(!LDetailDB.InsertAction(DetailRec2))
+        //            {
+        //                LDetailDB.rollback();
+        //                PersonDB.rollback();
+        //                break;
+        //            }
 
-                    ConstructionLedgerDetail DetailRec3 = new ConstructionLedgerDetail();
-                    SetDatailData(PersonDB, (int)DataGroup.Instructor, objArry, ref DetailRec3);
-                    if(!LDetailDB.InsertAction(DetailRec3))
-                    {
-                        LDetailDB.rollback();
-                        PersonDB.rollback();
-                        break;
-                    }
+        //            ConstructionLedgerDetail DetailRec3 = new ConstructionLedgerDetail();
+        //            SetDatailData(PersonDB, (int)DataGroup.Instructor, objArry, ref DetailRec3);
+        //            if(!LDetailDB.InsertAction(DetailRec3))
+        //            {
+        //                LDetailDB.rollback();
+        //                PersonDB.rollback();
+        //                break;
+        //            }
 
-                    // 工事コードのセット
-                    frm.ConstructionCode = CommonMotions.cnvInt(objArry[0]);
+        //            // 工事コードのセット
+        //            frm.ConstructionCode = CommonMotions.cnvInt(objArry[0]);
 
-                    // 見えない画面を出す
-                    frm.Hide();
+        //            // 見えない画面を出す
+        //            frm.Hide();
 
-                    // 再計算処理
-                    if (!frm.RecalculateLedger) break;
-                }
+        //            // 再計算処理
+        //            if (!frm.RecalculateLedger) break;
+        //        }
 
-                // ------ 工事増減分
-                strSQL = "SELECT A.CONSTRUCTIONCODE";
-                strSQL += " , B.CreatorCode B1";
-                strSQL += " , B.SalaryFlg B2";
-                strSQL += " , B.SalaryDays B3";
-                strSQL += " , B.AssistantCode B4";
-                strSQL += " , B.A_SalaryFlg B5";
-                strSQL += " , B.A_SalaryDays B6";
-                strSQL += " , B.InstructorCode B7";
-                strSQL += " , B.I_SalaryFlg B8";
-                strSQL += " , B.I_SalaryDays B9";
-                strSQL += " , A.CONSTRUCTIONPERSONCODE C10";
-                strSQL += " , A.CONSTRSUBPERSONCODE C11";
-                strSQL += " , A.CONSTRUCTIONINSTRUCTOR C12";
-                strSQL += " , A.CONSTRUCTIONPERIODSTART C13";
-                strSQL += " , A.CONSTRUCTIONPERIODSTART2 C14";
-                strSQL += " , A.CONSTRUCTIONPERIODEND C15";
-                strSQL += " , A.CONSTRUCTIONPERIODEND2 C16";
-                strSQL += " , A.CONSTRUCTIONPERIOD C17";
-                strSQL += " , C.CONSTRUCTIONCODE C18";
-                strSQL += " , D.COMPANYCODE D19";
-                strSQL += " , E.COMPANYCODE E20";
-                strSQL += " , F.COMPANYCODE F21";
-                strSQL += " , count(*)";
-                strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBUDGET B, CONSTRUCTIONLINK C";
-                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL D ON C.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE AND D.GROUPCOUNT = 11";
-                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL E ON C.CONSTRUCTIONCODE = E.CONSTRUCTIONCODE AND E.GROUPCOUNT = 10";
-                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL F ON C.CONSTRUCTIONCODE = F.CONSTRUCTIONCODE AND F.GROUPCOUNT = 9";
-                strSQL += " WHERE A.TYINGFLG = 2";
-                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
-                strSQL += " AND C.FLUCTUATIONCODE = A.CONSTRUCTIONCODE";
-                strSQL += " group by A.CONSTRUCTIONCODE, B.CreatorCode, B.SalaryFlg, B.SalaryDays, B.AssistantCode, ";
-                strSQL += " B.A_SalaryFlg, B.A_SalaryDays, B.InstructorCode, B.I_SalaryFlg, B.I_SalaryDays, ";
-                strSQL += " A.CONSTRUCTIONPERSONCODE, A.CONSTRSUBPERSONCODE, A.CONSTRUCTIONINSTRUCTOR, A.CONSTRUCTIONPERIODSTART, A.CONSTRUCTIONPERIODSTART2, ";
-                strSQL += " A.CONSTRUCTIONPERIODEND, A.CONSTRUCTIONPERIODEND2, A.CONSTRUCTIONPERIOD, C.CONSTRUCTIONCODE, D.COMPANYCODE, E.COMPANYCODE, F.COMPANYCODE";
-                strSQL += " ORDER BY A.CONSTRUCTIONCODE";
+        //        // ------ 工事増減分
+        //        strSQL = "SELECT A.CONSTRUCTIONCODE";
+        //        strSQL += " , B.CreatorCode B1";
+        //        strSQL += " , B.SalaryFlg B2";
+        //        strSQL += " , B.SalaryDays B3";
+        //        strSQL += " , B.AssistantCode B4";
+        //        strSQL += " , B.A_SalaryFlg B5";
+        //        strSQL += " , B.A_SalaryDays B6";
+        //        strSQL += " , B.InstructorCode B7";
+        //        strSQL += " , B.I_SalaryFlg B8";
+        //        strSQL += " , B.I_SalaryDays B9";
+        //        strSQL += " , A.CONSTRUCTIONPERSONCODE C10";
+        //        strSQL += " , A.CONSTRSUBPERSONCODE C11";
+        //        strSQL += " , A.CONSTRUCTIONINSTRUCTOR C12";
+        //        strSQL += " , A.CONSTRUCTIONPERIODSTART C13";
+        //        strSQL += " , A.CONSTRUCTIONPERIODSTART2 C14";
+        //        strSQL += " , A.CONSTRUCTIONPERIODEND C15";
+        //        strSQL += " , A.CONSTRUCTIONPERIODEND2 C16";
+        //        strSQL += " , A.CONSTRUCTIONPERIOD C17";
+        //        strSQL += " , C.CONSTRUCTIONCODE C18";
+        //        strSQL += " , D.COMPANYCODE D19";
+        //        strSQL += " , E.COMPANYCODE E20";
+        //        strSQL += " , F.COMPANYCODE F21";
+        //        strSQL += " , count(*)";
+        //        strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBUDGET B, CONSTRUCTIONLINK C";
+        //        strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL D ON C.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE AND D.GROUPCOUNT = 11";
+        //        strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL E ON C.CONSTRUCTIONCODE = E.CONSTRUCTIONCODE AND E.GROUPCOUNT = 10";
+        //        strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL F ON C.CONSTRUCTIONCODE = F.CONSTRUCTIONCODE AND F.GROUPCOUNT = 9";
+        //        strSQL += " WHERE A.TYINGFLG = 2";
+        //        strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+        //        strSQL += " AND C.FLUCTUATIONCODE = A.CONSTRUCTIONCODE";
+        //        strSQL += " group by A.CONSTRUCTIONCODE, B.CreatorCode, B.SalaryFlg, B.SalaryDays, B.AssistantCode, ";
+        //        strSQL += " B.A_SalaryFlg, B.A_SalaryDays, B.InstructorCode, B.I_SalaryFlg, B.I_SalaryDays, ";
+        //        strSQL += " A.CONSTRUCTIONPERSONCODE, A.CONSTRSUBPERSONCODE, A.CONSTRUCTIONINSTRUCTOR, A.CONSTRUCTIONPERIODSTART, A.CONSTRUCTIONPERIODSTART2, ";
+        //        strSQL += " A.CONSTRUCTIONPERIODEND, A.CONSTRUCTIONPERIODEND2, A.CONSTRUCTIONPERIOD, C.CONSTRUCTIONCODE, D.COMPANYCODE, E.COMPANYCODE, F.COMPANYCODE";
+        //        strSQL += " ORDER BY A.CONSTRUCTIONCODE";
 
-                ArrayList DatList2 = new ArrayList();
-                if (!LedgerDB.ExecuteReader(strSQL, ref DatList2)) return;
+        //        ArrayList DatList2 = new ArrayList();
+        //        if (!LedgerDB.ExecuteReader(strSQL, ref DatList2)) return;
 
-                bool recalc = false;
-                foreach (object[] objArry in DatList2)
-                {
-                    recalc = false;
-                    if (CommonMotions.cnvInt(objArry[1]) != CommonMotions.cnvInt(objArry[19]))
-                    {
-                        ConstructionLedgerDetail DetailRec1 = new ConstructionLedgerDetail();
-                        SetDatailData(PersonDB, (int)DataGroup.Payroll, objArry, ref DetailRec1, false);
-                        if (!LDetailDB.InsertAction(DetailRec1))
-                        {
-                            LDetailDB.rollback();
-                            PersonDB.rollback();
-                            break;
-                        }
-                        recalc = true;
-                    }
+        //        bool recalc = false;
+        //        foreach (object[] objArry in DatList2)
+        //        {
+        //            recalc = false;
+        //            if (CommonMotions.cnvInt(objArry[1]) != CommonMotions.cnvInt(objArry[19]))
+        //            {
+        //                ConstructionLedgerDetail DetailRec1 = new ConstructionLedgerDetail();
+        //                SetDatailData(PersonDB, (int)DataGroup.Payroll, objArry, ref DetailRec1, false);
+        //                if (!LDetailDB.InsertAction(DetailRec1))
+        //                {
+        //                    LDetailDB.rollback();
+        //                    PersonDB.rollback();
+        //                    break;
+        //                }
+        //                recalc = true;
+        //            }
 
-                    if (CommonMotions.cnvInt(objArry[4]) != CommonMotions.cnvInt(objArry[20]))
-                    {
-                        if (CommonMotions.cnvInt(objArry[4]) == 0 && CommonMotions.cnvInt(objArry[11]) == 0)
-                        {
+        //            if (CommonMotions.cnvInt(objArry[4]) != CommonMotions.cnvInt(objArry[20]))
+        //            {
+        //                if (CommonMotions.cnvInt(objArry[4]) == 0 && CommonMotions.cnvInt(objArry[11]) == 0)
+        //                {
 
-                        }
-                        else
-                        {
-                            ConstructionLedgerDetail DetailRec2 = new ConstructionLedgerDetail();
-                            SetDatailData(PersonDB, (int)DataGroup.Assistant, objArry, ref DetailRec2, false);
-                            if (!LDetailDB.InsertAction(DetailRec2))
-                            {
-                                LDetailDB.rollback();
-                                PersonDB.rollback();
-                                break;
-                            }
-                            recalc = true;
-                        }
-                    }
+        //                }
+        //                else
+        //                {
+        //                    ConstructionLedgerDetail DetailRec2 = new ConstructionLedgerDetail();
+        //                    SetDatailData(PersonDB, (int)DataGroup.Assistant, objArry, ref DetailRec2, false);
+        //                    if (!LDetailDB.InsertAction(DetailRec2))
+        //                    {
+        //                        LDetailDB.rollback();
+        //                        PersonDB.rollback();
+        //                        break;
+        //                    }
+        //                    recalc = true;
+        //                }
+        //            }
 
-                    if (CommonMotions.cnvInt(objArry[7]) != CommonMotions.cnvInt(objArry[21]))
-                    {
-                        if (CommonMotions.cnvInt(objArry[7]) == 0 && CommonMotions.cnvInt(objArry[12]) == 0)
-                        {
+        //            if (CommonMotions.cnvInt(objArry[7]) != CommonMotions.cnvInt(objArry[21]))
+        //            {
+        //                if (CommonMotions.cnvInt(objArry[7]) == 0 && CommonMotions.cnvInt(objArry[12]) == 0)
+        //                {
 
-                        }
-                        else
-                        {
-                            ConstructionLedgerDetail DetailRec3 = new ConstructionLedgerDetail();
-                            SetDatailData(PersonDB, (int)DataGroup.Instructor, objArry, ref DetailRec3, false);
-                            if (!LDetailDB.InsertAction(DetailRec3))
-                            {
-                                LDetailDB.rollback();
-                                PersonDB.rollback();
-                                break;
-                            }
-                            recalc = true;
-                        }
-                    }
+        //                }
+        //                else
+        //                {
+        //                    ConstructionLedgerDetail DetailRec3 = new ConstructionLedgerDetail();
+        //                    SetDatailData(PersonDB, (int)DataGroup.Instructor, objArry, ref DetailRec3, false);
+        //                    if (!LDetailDB.InsertAction(DetailRec3))
+        //                    {
+        //                        LDetailDB.rollback();
+        //                        PersonDB.rollback();
+        //                        break;
+        //                    }
+        //                    recalc = true;
+        //                }
+        //            }
 
-                    if (recalc)
-                    {
+        //            if (recalc)
+        //            {
 
-                        // 工事コードのセット
-                        frm.ConstructionCode = CommonMotions.cnvInt(objArry[18]);
+        //                // 工事コードのセット
+        //                frm.ConstructionCode = CommonMotions.cnvInt(objArry[18]);
 
-                        // 見えない画面を出す
-                        frm.Hide();
+        //                // 見えない画面を出す
+        //                frm.Hide();
 
-                        // 再計算処理
-                        if (!frm.RecalculateLedger) break;
-                    }
-                }
+        //                // 再計算処理
+        //                if (!frm.RecalculateLedger) break;
+        //            }
+        //        }
 
-                // 画面を閉じる
-                frm.Close();
+        //        // 画面を閉じる
+        //        frm.Close();
 
-                LDetailDB.commit();
-                PersonDB.commit();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                LedgerDB.close(); LedgerDB = null;
-                LDetailDB.close(); LDetailDB = null;
-                PersonDB.close(); PersonDB = null;
-                frm.Dispose(); frm = null;
-            }
-        }
+        //        LDetailDB.commit();
+        //        PersonDB.commit();
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //    finally
+        //    {
+        //        LedgerDB.close(); LedgerDB = null;
+        //        LDetailDB.close(); LDetailDB = null;
+        //        PersonDB.close(); PersonDB = null;
+        //        frm.Dispose(); frm = null;
+        //    }
+        //}
         #endregion
 
         #region 工事詳細台帳明細データセット
-        /// <summary>
-        /// 工事詳細台帳明細データセット
-        /// </summary>
-        /// <param name="GroupNo"></param>
-        /// <param name="objRec"></param>
-        /// <param name="DetailRec"></param>
-        private void SetDatailData(IOMPersonInCharge PersonDB, int GroupNo, object[] objRec, ref ConstructionLedgerDetail DetailRec, bool FirstFlg = true)
-        {
-            try
-            {
-                if (FirstFlg)
-                    DetailRec.ConstructionCode = CommonMotions.cnvInt(objRec[0]);	            // 工事コード
-                else
-                    DetailRec.ConstructionCode = CommonMotions.cnvInt(objRec[18]);	            // 工事コード
-                DetailRec.GroupCount = GroupNo;                                             // グループ番号
-                DetailRec.FirstString = s_GroupTitle[GroupNo];                              // 項目名称
-                DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;         // 協力会社コードタイプ
-                DetailRec.FixDataFlg = 1;                   // 固定データフラグ
-                DetailRec.IndependentFlg = 1;               // 独立データフラグ
-                DetailRec.FluctuationFlg = 0;               // 増減データフラグ
-                DetailRec.OperatingFlg = (int)CommonDefine.SalaryOperateKind.Oparateing;        // 担当中フラグ
+        ///// <summary>
+        ///// 工事詳細台帳明細データセット
+        ///// </summary>
+        ///// <param name="GroupNo"></param>
+        ///// <param name="objRec"></param>
+        ///// <param name="DetailRec"></param>
+        //private void SetDatailData(IOMPersonInCharge PersonDB, int GroupNo, object[] objRec, ref ConstructionLedgerDetail DetailRec, bool FirstFlg = true)
+        //{
+        //    try
+        //    {
+        //        if (FirstFlg)
+        //            DetailRec.ConstructionCode = CommonMotions.cnvInt(objRec[0]);	            // 工事コード
+        //        else
+        //            DetailRec.ConstructionCode = CommonMotions.cnvInt(objRec[18]);	            // 工事コード
+        //        DetailRec.GroupCount = GroupNo;                                                 // グループ番号
+        //        DetailRec.FirstString = s_GroupTitle[GroupNo];                                  // 項目名称
+        //        DetailRec.CompanyType = (int)CommonDefine.SearchLogDataType.Person;             // 協力会社コードタイプ
+        //        DetailRec.FixDataFlg = 1;                   // 固定データフラグ
+        //        DetailRec.IndependentFlg = 1;               // 独立データフラグ
+        //        DetailRec.FluctuationFlg = 0;               // 増減データフラグ
+        //        DetailRec.OperatingFlg = (int)CommonDefine.SalaryOperateKind.Oparateing;        // 担当中フラグ
 
-                int iCompanyCode = 0;
-                int iPricevalue = 0;
-                int iSalaryFlg = 0;
-                int iSalaryDays = 0;
+        //        int iCompanyCode = 0;
+        //        int iPricevalue = 0;
+        //        int iSalaryFlg = 0;
+        //        int iSalaryDays = 0;
 
-                // 当期期首日・期末日を取得
-                DateTime dtDefaultStart = DateTime.MinValue;
-                DateTime dtDefaultEnd = DateTime.MinValue;
-                CreateDefaultStartAndEndDate(ref dtDefaultStart, ref dtDefaultEnd, CommonMotions.cnvInt(objRec[16]));
+        //        // 当期期首日・期末日を取得
+        //        DateTime dtDefaultStart = DateTime.MinValue;
+        //        DateTime dtDefaultEnd = DateTime.MinValue;
+        //        CreateDefaultStartAndEndDate(ref dtDefaultStart, ref dtDefaultEnd, CommonMotions.cnvInt(objRec[16]));
 
-                DateTime stDate = dtDefaultStart;
-                DateTime edDate = dtDefaultEnd;
-                DateTime maxDate = dtDefaultEnd;
-                // 最小の開始日を取得する
-                stDate = dtDefaultStart;
-                DateTime wrkDate = CommonMotions.cnvDate(objRec[13]).Date;
-                if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
-                wrkDate = CommonMotions.cnvDate(objRec[14]).Date;
-                if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
+        //        DateTime stDate = dtDefaultStart;
+        //        DateTime edDate = dtDefaultEnd;
+        //        DateTime maxDate = dtDefaultEnd;
+        //        // 最小の開始日を取得する
+        //        stDate = dtDefaultStart;
+        //        DateTime wrkDate = CommonMotions.cnvDate(objRec[13]).Date;
+        //        if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
+        //        wrkDate = CommonMotions.cnvDate(objRec[14]).Date;
+        //        if (wrkDate != DateTime.MinValue && wrkDate < stDate) stDate = wrkDate;
 
-                // 最大の終了日を取得する
-                maxDate = dtDefaultEnd;
-                wrkDate = CommonMotions.cnvDate(objRec[15]).Date;
-                if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
-                wrkDate = CommonMotions.cnvDate(objRec[16]).Date;
-                if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+        //        // 最大の終了日を取得する
+        //        maxDate = dtDefaultEnd;
+        //        wrkDate = CommonMotions.cnvDate(objRec[15]).Date;
+        //        if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
+        //        wrkDate = CommonMotions.cnvDate(objRec[16]).Date;
+        //        if (wrkDate != DateTime.MinValue && wrkDate > maxDate) maxDate = wrkDate;
 
-                if (DetailRec.ConstructionCode == 2015050101)
-                {
-                    Debug.WriteLine("");
-                }
-                double Salary = 0;
-                double daylySalary = 0;
-                double DaysSalary = 0;
-                switch (GroupNo)
-                {
-                    case (int)FrmConstructionLedger.DataGroup.Payroll:
-                        // 担当者
-                        iCompanyCode = CommonMotions.cnvInt(objRec[1]);
-                        iSalaryFlg = CommonMotions.cnvInt(objRec[2]);
-                        iSalaryDays = CommonMotions.cnvInt(objRec[3]);
-                        if (iCompanyCode == 0)
-                        {
-                            iCompanyCode = CommonMotions.cnvInt(objRec[10]);
-                            iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
-                            iSalaryDays = 0;
-                        }
-                        if (iCompanyCode != 0)
-                        {
-                            // 担当者マスタより担当者名を取得する
-                            PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                            string strPerson = PersonDB.CreatePrimarykeyString(iCompanyCode);
-                            PersonDB.SelectAction(strPerson, ref PersonRec, false);
+        //        if (DetailRec.ConstructionCode == 2015050101)
+        //        {
+        //            Debug.WriteLine("");
+        //        }
+        //        double Salary = 0;
+        //        double daylySalary = 0;
+        //        double DaysSalary = 0;
+        //        switch (GroupNo)
+        //        {
+        //            case (int)FrmConstructionLedger.DataGroup.Payroll:
+        //                // 担当者
+        //                iCompanyCode = CommonMotions.cnvInt(objRec[1]);
+        //                iSalaryFlg = CommonMotions.cnvInt(objRec[2]);
+        //                iSalaryDays = CommonMotions.cnvInt(objRec[3]);
+        //                if (iCompanyCode == 0)
+        //                {
+        //                    iCompanyCode = CommonMotions.cnvInt(objRec[10]);
+        //                    iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+        //                    iSalaryDays = 0;
+        //                }
+        //                if (iCompanyCode != 0)
+        //                {
+        //                    // 給与を取得する
+        //                    double MonthryCost = 0;
+        //                    double YearsCost = 0;
+        //                    // 担当者給与金額取得処理
+        //                    CommonMotions.GetSalaryValue(PersonDB, iCompanyCode, ref MonthryCost, ref YearsCost, DateTime.Today);
 
-                            Salary = PersonRec.MonthlySalary * CommonDefine.s_SalaryCorrection;                                      // 月額給与計算
-                            daylySalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);                          // 日当計算
+        //                    Salary = MonthryCost * CommonDefine.s_SalaryCorrection;                             // 月額給与計算
+        //                    daylySalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);     // 日当計算
+        //                    // 給与額計算
+        //                    CommonMotions.CalcPayValueData(MonthryCost,);
 
-                            // 工期と給与額を表示する
-                            switch (iSalaryFlg)
-                            {
-                                case (int)CommonDefine.SalaryDevision.All:
-                                    // ----- 全日振分
-                                    // 着工日
-                                    DateTime dtStart = stDate;
-                                    // 完了日
-                                    DateTime dtLast = maxDate;
+        //                    // 工期と給与額を表示する
+        //                    switch (iSalaryFlg)
+        //                    {
+        //                        case (int)CommonDefine.SalaryDevision.All:
+        //                            // ----- 全日振分
+        //                            // 着工日
+        //                            DateTime dtStart = stDate;
+        //                            // 完了日
+        //                            DateTime dtLast = maxDate;
 
-                                    // 稼働日取得
-                                    int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+        //                            // 稼働日取得
+        //                            int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
 
-                                    // 給与計算
-                                    iPricevalue = CommonMotions.cnvRound(daylySalary * WorkingDay);
+        //                            // 給与計算
+        //                            iPricevalue = CommonMotions.cnvRound(daylySalary * WorkingDay);
 
-                                    break;
-                                case (int)CommonDefine.SalaryDevision.Noting:
-                                    // ----- 指定無し
+        //                            break;
+        //                        case (int)CommonDefine.SalaryDevision.Noting:
+        //                            // ----- 指定無し
 
-                                    break;
-                                case (int)CommonDefine.SalaryDevision.DaysInput:
-                                    // ----- 日数指定
-                                    iPricevalue = CommonMotions.cnvRound(daylySalary * iSalaryDays);
+        //                            break;
+        //                        case (int)CommonDefine.SalaryDevision.DaysInput:
+        //                            // ----- 日数指定
+        //                            iPricevalue = CommonMotions.cnvRound(daylySalary * iSalaryDays);
 
-                                    break;
-                            }
-                        }
-                        break;
-                    case (int)FrmConstructionLedger.DataGroup.Assistant:
-                        // 副担当者
-                        iCompanyCode = CommonMotions.cnvInt(objRec[4]);
-                        iSalaryFlg = CommonMotions.cnvInt(objRec[5]);
-                        iSalaryDays = CommonMotions.cnvInt(objRec[6]);
-                        if (iCompanyCode == 0)
-                        {
-                            iCompanyCode = CommonMotions.cnvInt(objRec[11]);
-                            iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
-                            iSalaryDays = 0;
-                        }
+        //                            break;
+        //                    }
+        //                }
+        //                break;
+        //            case (int)FrmConstructionLedger.DataGroup.Assistant:
+        //                // 副担当者
+        //                iCompanyCode = CommonMotions.cnvInt(objRec[4]);
+        //                iSalaryFlg = CommonMotions.cnvInt(objRec[5]);
+        //                iSalaryDays = CommonMotions.cnvInt(objRec[6]);
+        //                if (iCompanyCode == 0)
+        //                {
+        //                    iCompanyCode = CommonMotions.cnvInt(objRec[11]);
+        //                    iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+        //                    iSalaryDays = 0;
+        //                }
 
-                        if (iCompanyCode != 0)
-                        {
-                            Salary = CommonDefine.AssistantMonthryCost;
-                            // 日額給与取得
-                            DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
-                            // 工期と給与額を表示する
-                            switch (iSalaryFlg)
-                            {
-                                case (int)CommonDefine.SalaryDevision.All:
-                                    // ----- 全日振分
-                                    DateTime dtStart = stDate;
-                                    // 完了日
-                                    DateTime dtLast = maxDate;
+        //                if (iCompanyCode != 0)
+        //                {
+        //                    Salary = CommonDefine.AssistantMonthryCost;
+        //                    // 日額給与取得
+        //                    DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
+        //                    // 工期と給与額を表示する
+        //                    switch (iSalaryFlg)
+        //                    {
+        //                        case (int)CommonDefine.SalaryDevision.All:
+        //                            // ----- 全日振分
+        //                            DateTime dtStart = stDate;
+        //                            // 完了日
+        //                            DateTime dtLast = maxDate;
 
-                                    // 稼働日取得
-                                    int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+        //                            // 稼働日取得
+        //                            int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
 
-                                    // 給与計算
-                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
-                                    break;
-                                case (int)CommonDefine.SalaryDevision.Noting:
-                                    // ----- 指定無し
+        //                            // 給与計算
+        //                            iPricevalue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
+        //                            break;
+        //                        case (int)CommonDefine.SalaryDevision.Noting:
+        //                            // ----- 指定無し
 
-                                    break;
-                                case (int)CommonDefine.SalaryDevision.DaysInput:
-                                    // ----- 日数指定
-                                    // 給与計算
-                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * iSalaryDays);
-                                    break;
-                            }
-                        }
-                        break;
+        //                            break;
+        //                        case (int)CommonDefine.SalaryDevision.DaysInput:
+        //                            // ----- 日数指定
+        //                            // 給与計算
+        //                            iPricevalue = CommonMotions.cnvRound(DaysSalary * iSalaryDays);
+        //                            break;
+        //                    }
+        //                }
+        //                break;
 
-                    case (int)FrmConstructionLedger.DataGroup.Instructor:
-                        // 指導員
-                        iCompanyCode = CommonMotions.cnvInt(objRec[7]);
-                        iSalaryFlg = CommonMotions.cnvInt(objRec[8]);
-                        iSalaryDays = CommonMotions.cnvInt(objRec[9]);
-                        if (iCompanyCode == 0)
-                        {
-                            iCompanyCode = CommonMotions.cnvInt(objRec[12]);
-                            iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
-                            iSalaryDays = 0;
-                        }
+        //            case (int)FrmConstructionLedger.DataGroup.Instructor:
+        //                // 指導員
+        //                iCompanyCode = CommonMotions.cnvInt(objRec[7]);
+        //                iSalaryFlg = CommonMotions.cnvInt(objRec[8]);
+        //                iSalaryDays = CommonMotions.cnvInt(objRec[9]);
+        //                if (iCompanyCode == 0)
+        //                {
+        //                    iCompanyCode = CommonMotions.cnvInt(objRec[12]);
+        //                    iSalaryFlg = (int)CommonDefine.SalaryDevision.Noting;
+        //                    iSalaryDays = 0;
+        //                }
 
-                        if (iCompanyCode != 0)
-                        {
-                            // 月額給与計算
-                            Salary = CommonDefine.InstructorMonthryCost;
-                            // 日額給与取得
-                            DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
-                            // 工期と給与額を表示する
-                            switch (iSalaryFlg)
-                            {
-                                case (int)CommonDefine.SalaryDevision.All:
-                                    // ----- 全日振分
-                                    DateTime dtStart = stDate;
-                                    // 完了日
-                                    DateTime dtLast = maxDate;
+        //                if (iCompanyCode != 0)
+        //                {
+        //                    // 月額給与計算
+        //                    Salary = CommonDefine.InstructorMonthryCost;
+        //                    // 日額給与取得
+        //                    DaysSalary = CommonMotions.cnvRound(Salary / CommonDefine.s_ManHourUnitMonth);
+        //                    // 工期と給与額を表示する
+        //                    switch (iSalaryFlg)
+        //                    {
+        //                        case (int)CommonDefine.SalaryDevision.All:
+        //                            // ----- 全日振分
+        //                            DateTime dtStart = stDate;
+        //                            // 完了日
+        //                            DateTime dtLast = maxDate;
 
-                                    // 稼働日取得
-                                    int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
+        //                            // 稼働日取得
+        //                            int WorkingDay = ClsCalendar.CalcPassedDaysCount(dtStart, dtLast);
 
-                                    // 給与計算
-                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
-                                    break;
-                                case (int)CommonDefine.SalaryDevision.Noting:
-                                    // ----- 指定無し
+        //                            // 給与計算
+        //                            iPricevalue = CommonMotions.cnvRound(DaysSalary * WorkingDay);
+        //                            break;
+        //                        case (int)CommonDefine.SalaryDevision.Noting:
+        //                            // ----- 指定無し
 
-                                    break;
-                                case (int)CommonDefine.SalaryDevision.DaysInput:
-                                    // ----- 日数指定
-                                    // 給与計算
-                                    iPricevalue = CommonMotions.cnvRound(DaysSalary * iSalaryDays);
-                                    break;
-                            }
-                        }
-                        break;
-                }
+        //                            break;
+        //                        case (int)CommonDefine.SalaryDevision.DaysInput:
+        //                            // ----- 日数指定
+        //                            // 給与計算
+        //                            iPricevalue = CommonMotions.cnvRound(DaysSalary * iSalaryDays);
+        //                            break;
+        //                    }
+        //                }
+        //                break;
+        //        }
 
-                DetailRec.CompanyCode = iCompanyCode;                   // 協力会社コード
-                DetailRec.EstimatePrice = iPricevalue;                  // 予算（見積）金額
-                DetailRec.ExecutionAmount = iPricevalue;                // 実行金額
-                DetailRec.SalaryFlg = iSalaryFlg;                       // 給与振分区分
-                DetailRec.SalaryDays = iSalaryDays;                     // 給与振分日数
+        //        DetailRec.CompanyCode = iCompanyCode;                   // 協力会社コード
+        //        DetailRec.EstimatePrice = iPricevalue;                  // 予算（見積）金額
+        //        DetailRec.ExecutionAmount = iPricevalue;                // 実行金額
+        //        DetailRec.SalaryFlg = iSalaryFlg;                       // 給与振分区分
+        //        DetailRec.SalaryDays = iSalaryDays;                     // 給与振分日数
 
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //}
         #endregion
 
         #region デフォルトの期首日・期末日を求める
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmConstructionLedger
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] ClsExcute.SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -91,13 +86,6 @@
                 {
                     // 自プロセスは処理しない
                     if (CurRec.Key == s_CurrentProcessNo) continue;
-
-                    // 総務部所属者はデータ参照出来る処理がある
-                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
-                    {
-                        if (!ClsSecurityPermission.PermitGeneralAffairsDevision(CurRec.Key)) continue;
-                    }
-
                     //イベントの登録
                     EventHandler handle = null;
                     switch (CurRec.Key)
@@ -121,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -209,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -242,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -286,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -303,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -319,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -330,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -347,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -363,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -374,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -391,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -407,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -418,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -435,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -451,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -462,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -479,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -495,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -506,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -523,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -538,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -549,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -566,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -582,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -593,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -610,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -626,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -659,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -703,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -720,7 +859,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -963,11 +1102,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1136,6 +1276,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.cs	(revision 51)
@@ -17,6 +17,7 @@
 using ProcessManagement.DB.Core;
 using ProcessManagement.Forms.CustomControls;
 using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
 //*---------------------------- �H���ڍב䒠�ꗗ��� --------------------------*
 //  2016/05/11  Ver1.0.0.0      Create Source           
 //
@@ -25,7 +26,7 @@
 //*----------------------------------------------------------------------------*
 namespace ProcessManagement.Forms.DataEntry
 {
-    public partial class FrmConstructionLedgerList : Form
+    public partial class FrmLedgerStatus : Form
     {
         #region �g�p��`
         //log4net���O���g�p����
@@ -257,6 +258,12 @@
         /// </summary>
         private bool m_NextProcFlg = false;
         #endregion
+
+        /// <summary>
+        /// �䒠�󋵊m�F���
+        /// </summary>
+        private FrmPriceOfBudget m_PriceOfBudget = null;
+
         #endregion
 
         #region �v���p�e�B
@@ -351,13 +358,13 @@
         #endregion
 
         #region �R���X�g���N�^
-        public FrmConstructionLedgerList()
+        public FrmLedgerStatus()
         {
             InitializeComponent();
         }
         #endregion
         #region �f�X�g���N�^
-        ~FrmConstructionLedgerList()
+        ~FrmLedgerStatus()
         {
             try
             {
@@ -378,10 +385,24 @@
         /// <param name="e"></param>
         private void FrmConstructionLedgerList_FormClosing(object sender, FormClosingEventArgs e)
         {
-            if (m_CloseingProcessOff) return;
+            try
+            {
+                if (m_CloseingProcessOff) return;
 
-            // �O�v���Z�X�ɖ߂�
-            ClsExcute.BackProcess();
+                // �䒠�󋵊m�F��ʂ��\������Ă���΃N���[�Y����
+                if (m_PriceOfBudget != null)
+                {
+                    m_PriceOfBudget.Dispose();
+                    m_PriceOfBudget = null;
+                }
+
+                // �O�v���Z�X�ɖ߂�
+                ClsExcute.BackProcess();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
         #endregion
 
@@ -393,11 +414,6 @@
         /// <param name="e"></param>
         private void btnEnd_Click(object sender, EventArgs e)
         {
-            // �O�v���Z�X�ɖ߂�
-            ClsExcute.BackProcess();
-
-            m_CloseingProcessOff = true;
-            
             this.Close();
         }
         #endregion
@@ -419,6 +435,48 @@
         }
         #endregion
 
+        #region �䒠�󋵊m�F�{�^������
+        /// <summary>
+        /// �䒠�󋵊m�F�{�^������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLedgerStatus_Click(object sender, EventArgs e)
+        {
+            // �t�H�[�����\������Ă���ꍇ�͑O�ʕ\�����Ĕ�����
+            if (m_PriceOfBudget != null)
+            {
+                m_PriceOfBudget.Activate();
+                return;
+            }
+            // �O�ʕ\��
+            DispPriceOfBudget();
+        }
+        #endregion
+
+        #region �䒠�󋵊m�F��ʃN���[�Y
+        /// <summary>
+        /// �䒠�󋵊m�F��ʂ̃N���[�Y���擾����
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmPriceOfBudget_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                this.Activate();
+
+                // �n���h���N���A
+                m_PriceOfBudget.Dispose();
+                m_PriceOfBudget = null;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region �t�H�[�����[�h
         /// <summary>
         /// �����t�H�[�����[�h
@@ -428,18 +486,13 @@
         private void FrmConstructionBaseInfoList_Load(object sender, EventArgs e)
         {
 
-            // �R���{�{�b�N�X�����\��
-            SetcmbPeriod();
-            InitcmbDepartment();
-            InitcmbPersons();
-
             // �R���{�{�b�N�X�Z�b�g
-            m_initDataLoad = true;
             SetcmbDepartment();
-            m_initDataLoad = true;
             SetcmbPersons();
-            m_initDataLoad = true;
 
+            // �R���{�{�b�N�X�����\��
+            InitCombBox();
+
             // �O���b�h�����ݒ�
             SetDisplayObject();
 
@@ -533,44 +586,47 @@
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�ύX
+        #region �����R���{�{�b�N�X�ύX
         /// <summary>
-        /// �S���ҕύX
+        /// �����R���{�{�b�N�X�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbConstructionPerson_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
 
-            // �S���ґI���������I����ݒ肷��
-            SetPerosonToDepartment();
+            // �S���҃R���{�{�b�N�X�ύX
+            SetcmbPersons();
 
             // �f�[�^�\��
             DataDisplay();
-            // �����ʈꗗ����̋N���͒S���ҕύX���p�����[�^�ύX
-            if (!m_FirstStartFlg)
-            {
-                m_FirstStartPersonCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
-            }
         }
         #endregion
 
-        #region �����R���{�{�b�N�X�ύX
+        #region �S���҃R���{�{�b�N�X�ύX
         /// <summary>
-        /// �����R���{�{�b�N�X�ύX
+        /// �S���҃R���{�{�b�N�X�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
-            
-            // �S���҃R���{�{�b�N�X�ύX
-            SetcmbPersons();
 
+            // �S���ґI���������I����ݒ肷��
+            SetPerosonToDepartment();
+
             // �f�[�^�\��
             DataDisplay();
+            // �����ʈꗗ����̋N���͒S���ҕύX���p�����[�^�ύX
+            if (!m_FirstStartFlg)
+            {
+                m_FirstStartPersonCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+
+            // �f�[�^�\��
+            DataDisplay();
         }
         #endregion
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerList.designer.cs	(revision 51)
@@ -1,6 +1,6 @@
 ﻿namespace ProcessManagement.Forms.DataEntry
 {
-    partial class FrmConstructionLedgerList
+    partial class FrmLedgerStatus
     {
         /// <summary>
         /// 必要なデザイナ変数です。
@@ -28,53 +28,27 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = 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 dataGridViewCellStyle37 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle38 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle54 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle39 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle40 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle41 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle42 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle43 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle44 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle45 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle46 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle47 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle48 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle49 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle50 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle51 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle52 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle53 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.groupBox1 = new System.Windows.Forms.GroupBox();
-            this.cmbDepartment = new System.Windows.Forms.ComboBox();
-            this.label5 = new System.Windows.Forms.Label();
-            this.label2 = new System.Windows.Forms.Label();
-            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
-            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
-            this.label3 = new System.Windows.Forms.Label();
-            this.label4 = new System.Windows.Forms.Label();
-            this.label7 = new System.Windows.Forms.Label();
-            this.lblCellTotal = new System.Windows.Forms.Label();
-            this.ProgressBar = new System.Windows.Forms.ProgressBar();
-            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.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.pnlPayroll = new System.Windows.Forms.Panel();
             this.lblEndDate = new System.Windows.Forms.Label();
             this.lblStartDate = new System.Windows.Forms.Label();
@@ -104,10 +78,37 @@
             this.label15 = new System.Windows.Forms.Label();
             this.lblCalcValue1 = new System.Windows.Forms.Label();
             this.label10 = new System.Windows.Forms.Label();
+            this.cmbDepartment = new System.Windows.Forms.ComboBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.lblCellTotal = new System.Windows.Forms.Label();
+            this.ProgressBar = new System.Windows.Forms.ProgressBar();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.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.btnLedgerStatus = new System.Windows.Forms.Button();
             this.groupBox1.SuspendLayout();
+            this.pnlPayroll.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
-            this.pnlPayroll.SuspendLayout();
             this.SuspendLayout();
             // 
             // btnEnd
@@ -143,12 +144,12 @@
             this.groupBox1.BackColor = System.Drawing.Color.LimeGreen;
             this.groupBox1.Controls.Add(this.pnlPayroll);
             this.groupBox1.Controls.Add(this.cmbDepartment);
-            this.groupBox1.Controls.Add(this.label5);
             this.groupBox1.Controls.Add(this.label2);
+            this.groupBox1.Controls.Add(this.label4);
             this.groupBox1.Controls.Add(this.numUDConstPro);
             this.groupBox1.Controls.Add(this.cmbConstructionPerson);
             this.groupBox1.Controls.Add(this.label3);
-            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.label5);
             this.groupBox1.Controls.Add(this.label7);
             this.groupBox1.ForeColor = System.Drawing.Color.White;
             this.groupBox1.Location = new System.Drawing.Point(5, 40);
@@ -157,357 +158,6 @@
             this.groupBox1.TabIndex = 0;
             this.groupBox1.TabStop = false;
             // 
-            // cmbDepartment
-            // 
-            this.cmbDepartment.BackColor = System.Drawing.Color.White;
-            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbDepartment.FormattingEnabled = true;
-            this.cmbDepartment.Location = new System.Drawing.Point(408, 11);
-            this.cmbDepartment.Name = "cmbDepartment";
-            this.cmbDepartment.Size = new System.Drawing.Size(200, 23);
-            this.cmbDepartment.TabIndex = 1;
-            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_SelectedIndexChanged);
-            // 
-            // label5
-            // 
-            this.label5.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label5.ForeColor = System.Drawing.Color.Black;
-            this.label5.Location = new System.Drawing.Point(280, 10);
-            this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(120, 25);
-            this.label5.TabIndex = 40;
-            this.label5.Text = "担当部署";
-            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label2
-            // 
-            this.label2.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label2.ForeColor = System.Drawing.Color.Black;
-            this.label2.Location = new System.Drawing.Point(6, 10);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(120, 25);
-            this.label2.TabIndex = 38;
-            this.label2.Text = "営業期";
-            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // numUDConstPro
-            // 
-            this.numUDConstPro.BackColor = System.Drawing.Color.White;
-            this.numUDConstPro.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numUDConstPro.ForeColor = System.Drawing.Color.Black;
-            this.numUDConstPro.Location = new System.Drawing.Point(159, 11);
-            this.numUDConstPro.Name = "numUDConstPro";
-            this.numUDConstPro.ReadOnly = true;
-            this.numUDConstPro.Size = new System.Drawing.Size(80, 23);
-            this.numUDConstPro.TabIndex = 0;
-            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
-            // 
-            // cmbConstructionPerson
-            // 
-            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
-            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbConstructionPerson.FormattingEnabled = true;
-            this.cmbConstructionPerson.Location = new System.Drawing.Point(752, 11);
-            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
-            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
-            this.cmbConstructionPerson.TabIndex = 2;
-            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbConstructionPerson_SelectedIndexChanged);
-            // 
-            // label3
-            // 
-            this.label3.BackColor = System.Drawing.Color.PaleGoldenrod;
-            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label3.ForeColor = System.Drawing.Color.Black;
-            this.label3.Location = new System.Drawing.Point(624, 10);
-            this.label3.Name = "label3";
-            this.label3.Size = new System.Drawing.Size(120, 25);
-            this.label3.TabIndex = 4;
-            this.label3.Text = "工事担当者";
-            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label4
-            // 
-            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label4.ForeColor = System.Drawing.Color.Black;
-            this.label4.Location = new System.Drawing.Point(239, 14);
-            this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(25, 16);
-            this.label4.TabIndex = 0;
-            this.label4.Text = "期";
-            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label7
-            // 
-            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label7.ForeColor = System.Drawing.Color.Black;
-            this.label7.Location = new System.Drawing.Point(134, 14);
-            this.label7.Name = "label7";
-            this.label7.Size = new System.Drawing.Size(25, 16);
-            this.label7.TabIndex = 0;
-            this.label7.Text = "第";
-            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblCellTotal
-            // 
-            this.lblCellTotal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.lblCellTotal.AutoSize = true;
-            this.lblCellTotal.BackColor = System.Drawing.Color.Black;
-            this.lblCellTotal.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblCellTotal.ForeColor = System.Drawing.Color.White;
-            this.lblCellTotal.Location = new System.Drawing.Point(200, 628);
-            this.lblCellTotal.Name = "lblCellTotal";
-            this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
-            this.lblCellTotal.TabIndex = 29;
-            // 
-            // ProgressBar
-            // 
-            this.ProgressBar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressBar.Location = new System.Drawing.Point(5, 619);
-            this.ProgressBar.Name = "ProgressBar";
-            this.ProgressBar.Size = new System.Drawing.Size(388, 30);
-            this.ProgressBar.TabIndex = 30;
-            this.ProgressBar.Visible = false;
-            // 
-            // dgvMaster
-            // 
-            this.dgvMaster.AllowUserToAddRows = false;
-            this.dgvMaster.AllowUserToDeleteRows = false;
-            this.dgvMaster.AllowUserToResizeColumns = false;
-            this.dgvMaster.AllowUserToResizeRows = false;
-            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
-            this.dgvMaster.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
-            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.Column1,
-            this.Column13,
-            this.Column14,
-            this.Column2,
-            this.Column3,
-            this.Column4,
-            this.Column15,
-            this.Column5,
-            this.Column6,
-            this.Column7,
-            this.Column8,
-            this.Column9,
-            this.Column10,
-            this.Column11,
-            this.Column12});
-            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle18.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle18.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle18.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle18.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
-            dataGridViewCellStyle18.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle18;
-            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
-            this.dgvMaster.Location = new System.Drawing.Point(5, 168);
-            this.dgvMaster.Name = "dgvMaster";
-            this.dgvMaster.RowHeadersVisible = false;
-            this.dgvMaster.RowHeadersWidth = 20;
-            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvMaster.RowTemplate.Height = 21;
-            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvMaster.Size = new System.Drawing.Size(1330, 446);
-            this.dgvMaster.TabIndex = 5;
-            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
-            this.dgvMaster.SelectionChanged += new System.EventHandler(this.dgvMaster_SelectionChanged);
-            this.dgvMaster.Leave += new System.EventHandler(this.dgvMaster_Leave);
-            this.dgvMaster.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvMaster_MouseUp);
-            // 
-            // 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.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;
-            // 
-            // 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.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            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.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            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.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column5
-            // 
-            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle10.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle10;
-            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 = 120;
-            // 
-            // Column6
-            // 
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle11.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle11;
-            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;
-            // 
-            // Column7
-            // 
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle12.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle12;
-            this.Column7.HeaderText = "部署経費";
-            this.Column7.Name = "Column7";
-            this.Column7.ReadOnly = true;
-            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column8
-            // 
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle13.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle13;
-            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;
-            // 
-            // Column9
-            // 
-            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle14.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
-            this.Column9.DefaultCellStyle = dataGridViewCellStyle14;
-            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;
-            // 
-            // Column10
-            // 
-            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle15.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
-            this.Column10.DefaultCellStyle = dataGridViewCellStyle15;
-            this.Column10.HeaderText = "粗　利";
-            this.Column10.Name = "Column10";
-            this.Column10.ReadOnly = true;
-            this.Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
-            // Column11
-            // 
-            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle16.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
-            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("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
-            this.Column12.DefaultCellStyle = dataGridViewCellStyle17;
-            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;
-            // 
             // pnlPayroll
             // 
             this.pnlPayroll.BackColor = System.Drawing.Color.PaleGoldenrod;
@@ -540,7 +190,7 @@
             this.pnlPayroll.Controls.Add(this.label15);
             this.pnlPayroll.Controls.Add(this.lblCalcValue1);
             this.pnlPayroll.Controls.Add(this.label10);
-            this.pnlPayroll.Location = new System.Drawing.Point(3, 36);
+            this.pnlPayroll.Location = new System.Drawing.Point(6, 36);
             this.pnlPayroll.Name = "pnlPayroll";
             this.pnlPayroll.Size = new System.Drawing.Size(1320, 84);
             this.pnlPayroll.TabIndex = 47;
@@ -899,24 +549,390 @@
             this.label10.Text = "振分済給与";
             this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // FrmConstructionLedgerList
+            // cmbDepartment
             // 
+            this.cmbDepartment.BackColor = System.Drawing.Color.White;
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(408, 11);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(200, 23);
+            this.cmbDepartment.TabIndex = 1;
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(280, 10);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(120, 25);
+            this.label2.TabIndex = 40;
+            this.label2.Text = "担当部署";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(6, 10);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 38;
+            this.label4.Text = "営業期";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDConstPro
+            // 
+            this.numUDConstPro.BackColor = System.Drawing.Color.White;
+            this.numUDConstPro.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDConstPro.ForeColor = System.Drawing.Color.Black;
+            this.numUDConstPro.Location = new System.Drawing.Point(159, 11);
+            this.numUDConstPro.Name = "numUDConstPro";
+            this.numUDConstPro.ReadOnly = true;
+            this.numUDConstPro.Size = new System.Drawing.Size(80, 23);
+            this.numUDConstPro.TabIndex = 0;
+            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
+            // 
+            // cmbConstructionPerson
+            // 
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(752, 11);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
+            this.cmbConstructionPerson.TabIndex = 2;
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
+            // 
+            // label3
+            // 
+            this.label3.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(624, 10);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(120, 25);
+            this.label3.TabIndex = 4;
+            this.label3.Text = "工事担当者";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label5
+            // 
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(239, 14);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(25, 16);
+            this.label5.TabIndex = 0;
+            this.label5.Text = "期";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label7
+            // 
+            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label7.ForeColor = System.Drawing.Color.Black;
+            this.label7.Location = new System.Drawing.Point(134, 14);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(25, 16);
+            this.label7.TabIndex = 0;
+            this.label7.Text = "第";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblCellTotal
+            // 
+            this.lblCellTotal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.lblCellTotal.AutoSize = true;
+            this.lblCellTotal.BackColor = System.Drawing.Color.Black;
+            this.lblCellTotal.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblCellTotal.ForeColor = System.Drawing.Color.White;
+            this.lblCellTotal.Location = new System.Drawing.Point(200, 628);
+            this.lblCellTotal.Name = "lblCellTotal";
+            this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
+            this.lblCellTotal.TabIndex = 29;
+            // 
+            // ProgressBar
+            // 
+            this.ProgressBar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressBar.Location = new System.Drawing.Point(5, 619);
+            this.ProgressBar.Name = "ProgressBar";
+            this.ProgressBar.Size = new System.Drawing.Size(388, 30);
+            this.ProgressBar.TabIndex = 30;
+            this.ProgressBar.Visible = false;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            dataGridViewCellStyle37.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle37;
+            this.dgvMaster.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle38.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle38.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle38.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle38.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle38.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle38.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle38.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle38;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column13,
+            this.Column14,
+            this.Column2,
+            this.Column3,
+            this.Column4,
+            this.Column15,
+            this.Column5,
+            this.Column6,
+            this.Column7,
+            this.Column8,
+            this.Column9,
+            this.Column10,
+            this.Column11,
+            this.Column12});
+            dataGridViewCellStyle54.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle54.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle54.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle54.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle54.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle54.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle54.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle54;
+            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvMaster.Location = new System.Drawing.Point(5, 168);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(1330, 446);
+            this.dgvMaster.TabIndex = 5;
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            this.dgvMaster.SelectionChanged += new System.EventHandler(this.dgvMaster_SelectionChanged);
+            this.dgvMaster.Leave += new System.EventHandler(this.dgvMaster_Leave);
+            this.dgvMaster.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvMaster_MouseUp);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle39.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle39;
+            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
+            // 
+            dataGridViewCellStyle40.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column13.DefaultCellStyle = dataGridViewCellStyle40;
+            this.Column13.Frozen = true;
+            this.Column13.HeaderText = "済";
+            this.Column13.Name = "Column13";
+            this.Column13.ReadOnly = true;
+            this.Column13.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column13.Width = 30;
+            // 
+            // Column14
+            // 
+            dataGridViewCellStyle41.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column14.DefaultCellStyle = dataGridViewCellStyle41;
+            this.Column14.Frozen = true;
+            this.Column14.HeaderText = "部署";
+            this.Column14.Name = "Column14";
+            this.Column14.ReadOnly = true;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle42.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle42;
+            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;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle43.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle43;
+            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
+            // 
+            dataGridViewCellStyle44.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle44;
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "工　事　名　称";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column4.Width = 210;
+            // 
+            // Column15
+            // 
+            dataGridViewCellStyle45.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle45.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column15.DefaultCellStyle = dataGridViewCellStyle45;
+            this.Column15.Frozen = true;
+            this.Column15.HeaderText = "状　態";
+            this.Column15.Name = "Column15";
+            this.Column15.ReadOnly = true;
+            this.Column15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle46.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle46.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle46;
+            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 = 120;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle47.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle47.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle47;
+            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;
+            // 
+            // Column7
+            // 
+            dataGridViewCellStyle48.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle48.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle48;
+            this.Column7.HeaderText = "部署経費";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column8
+            // 
+            dataGridViewCellStyle49.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle49.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle49;
+            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;
+            // 
+            // Column9
+            // 
+            dataGridViewCellStyle50.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle50.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle50;
+            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;
+            // 
+            // Column10
+            // 
+            dataGridViewCellStyle51.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle51.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
+            this.Column10.DefaultCellStyle = dataGridViewCellStyle51;
+            this.Column10.HeaderText = "粗　利";
+            this.Column10.Name = "Column10";
+            this.Column10.ReadOnly = true;
+            this.Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column11
+            // 
+            dataGridViewCellStyle52.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle52.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
+            this.Column11.DefaultCellStyle = dataGridViewCellStyle52;
+            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
+            // 
+            dataGridViewCellStyle53.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle53.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold);
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle53;
+            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;
+            // 
+            // btnLedgerStatus
+            // 
+            this.btnLedgerStatus.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnLedgerStatus.BackColor = System.Drawing.Color.DodgerBlue;
+            this.btnLedgerStatus.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnLedgerStatus.ForeColor = System.Drawing.Color.Black;
+            this.btnLedgerStatus.Location = new System.Drawing.Point(1185, 5);
+            this.btnLedgerStatus.Name = "btnLedgerStatus";
+            this.btnLedgerStatus.Size = new System.Drawing.Size(150, 30);
+            this.btnLedgerStatus.TabIndex = 47;
+            this.btnLedgerStatus.Text = "未作成台帳確認";
+            this.btnLedgerStatus.UseVisualStyleBackColor = false;
+            this.btnLedgerStatus.Click += new System.EventHandler(this.btnLedgerStatus_Click);
+            // 
+            // FrmLedgerStatus
+            // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1340, 657);
-            this.Controls.Add(this.ProgressBar);
+            this.Controls.Add(this.btnLedgerStatus);
             this.Controls.Add(this.lblCellTotal);
             this.Controls.Add(this.dgvMaster);
             this.Controls.Add(this.groupBox1);
             this.Controls.Add(this.label1);
             this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.ProgressBar);
             this.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
             this.KeyPreview = true;
             this.MinimizeBox = false;
-            this.Name = "FrmConstructionLedgerList";
+            this.Name = "FrmLedgerStatus";
             this.ShowIcon = false;
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmConstructionLedgerList_FormClosing);
@@ -924,10 +940,10 @@
             this.SizeChanged += new System.EventHandler(this.FrmConstructionLedgerList_SizeChanged);
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionLedgerList_KeyDown);
             this.groupBox1.ResumeLayout(false);
+            this.pnlPayroll.ResumeLayout(false);
+            this.pnlPayroll.PerformLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
-            this.pnlPayroll.ResumeLayout(false);
-            this.pnlPayroll.PerformLayout();
             this.ResumeLayout(false);
             this.PerformLayout();
 
@@ -943,10 +959,10 @@
         private System.Windows.Forms.ComboBox cmbConstructionPerson;
         private System.Windows.Forms.Label label3;
         private System.Windows.Forms.NumericUpDown numUDConstPro;
+        private System.Windows.Forms.Label label5;
         private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.ComboBox cmbDepartment;
         private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.ComboBox cmbDepartment;
-        private System.Windows.Forms.Label label5;
         private System.Windows.Forms.Label lblCellTotal;
         private System.Windows.Forms.ProgressBar ProgressBar;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
@@ -993,5 +1009,6 @@
         private System.Windows.Forms.Label label15;
         private System.Windows.Forms.Label lblCalcValue1;
         private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Button btnLedgerStatus;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedgerList/FrmConstructionLedgerListAuxiliary.cs	(revision 51)
@@ -20,6 +20,7 @@
 using ProcessManagement.DB.Core;
 using ProcessManagement.Forms.CustomControls;
 using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
 //*---------------------------- �H���ڍב䒠�ꗗ��� --------------------------*
 //  2016/05/11  Ver1.0.0.0      Create Source           
 //
@@ -28,7 +29,7 @@
 //*----------------------------------------------------------------------------*
 namespace ProcessManagement.Forms.DataEntry
 {
-    partial class FrmConstructionLedgerList
+    partial class FrmLedgerStatus
     {
         #region �萔
         private const string StaticSQL1 = "SELECT A.ConstructionCode, A.ConstructionPeriod, B.DetailString, A.SalesPersonCode, A.ConstructionPersonCode, A.ConstructionStatusFlg ";
@@ -61,6 +62,20 @@
             {
                 m_CellSize[wrkCell.Index] = wrkCell.Width;
             }
+
+            // ----- ���쐬�䒠�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;
+                if (CommonMotions.LoginUserSecurity.SecRank == Master) btnLedgerStatus.Visible = true;
+                else btnLedgerStatus.Visible = false;
+            }
         }
         #endregion
 
@@ -136,12 +151,107 @@
         /// ����SQL�̃Z�L�����e�B���蕔�����쐬����
         /// </summary>
         /// <param name="strSQL"></param>
-        private void CreateSecuritySQL(ref List<string> strSecurity)
+        private void CreateSecuritySQL(ref string strSecurity)
         {
-            string strSQL1 = string.Empty;
-            string strSQL2 = string.Empty;
             try
             {
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    CreateOldSecuritySQL(ref strSecurity);
+                }
+                else
+                {
+                    CreateNewSecuritySQL(ref strSecurity);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewSecuritySQL(ref string strSecurity)
+        {
+            //string strSQL = string.Empty;
+            try
+            {
+                // �L�[�l�擾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                // �f�[�^�A�N�Z�X�Ɍ����ɂ�萧��������
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ���ׂđΏہi����SQL���j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // �ꕔ�����L
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+
+                    strSecurity = " And (D.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1";
+                    strSecurity += string.Format(" Where A1.DepartmentCode IN (SELECT A2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A2 WHERE A2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or (D.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSecurity += " And (D.ConstructionPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3";
+                    strSecurity += string.Format(" Where A3.DepartmentCode IN (SELECT A4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A4 WHERE A4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += " Or D.CONSTRSUBPERSONCODE IN (Select A5.PersonCode From PersonInChargeMaster A5";
+                    strSecurity += string.Format(" Where A5.DepartmentCode IN (SELECT A6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A6 WHERE A6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += " Or D.ConstructionInstructor IN (Select A7.PersonCode From PersonInChargeMaster A7";
+                    strSecurity += string.Format(" Where A7.DepartmentCode IN (SELECT A8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A8 WHERE A8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or (D.ConstructionStatusFlg >= {0} And D.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSecurity += string.Format(" Or (D.ConstructionStatusFlg = {0}", iStatus2);                                            // �������p���͈��p�����̂��̂͌�����
+                    strSecurity += string.Format(" And D.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ��ʎg�p��
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+
+                    strSecurity = string.Format(" And (D.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or (D.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSecurity += string.Format(" And (D.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or D.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or D.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSecurity);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateOldSecuritySQL(ref string strSecurity)
+        {
+            try
+            {
                 // �����������҂̓f�[�^�Q�Əo���鏈��������
                 if (ClsSecurityPermission.PermitGeneralAffairsDevision(m_ExecuteFlg)) return;
 
@@ -161,28 +271,19 @@
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
                 {
                     // �@���Ǘ��ҁi�������̂݁j
-                    strSQL1 = string.Format(" AND C.DepartmentCode = {0}", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL2 = string.Format(" AND (A.CREATORCODE = C.PERSONCODE AND C.DEPARTMENTCODE = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSecurity.Add(strSQL1);
-                    strSecurity.Add(strSQL2);
+                    strSecurity = string.Format(" AND (A.CREATORCODE = C.PERSONCODE AND C.DEPARTMENTCODE = {0})", CommonMotions.LoginUserData.DepartmentCode);
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
                 {
                     // ��ʎg�p�ҁi���f�[�^�̂݁j
-                    //strSQL1 = string.Format(" AND C.PERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
-                    strSQL1 = string.Format(" AND (A.CONSTRUCTIONPERSONCODE = {0} OR A.CONSTRUCTIONINSTRUCTOR = {0})"
+                    strSecurity = " AND A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
+                    strSecurity += string.Format(" AND (D.CONSTRUCTIONPERSONCODE = {0} OR D.CONSTRUCTIONINSTRUCTOR = {0} OR D.CONSTRSUBPERSONCODE = {0})"
                                                                         , CommonMotions.LoginUserData.PersonCode);
-                    //strSQL2 = string.Format(" AND (A.CREATORCODE = C.PERSONCODE AND C.DEPARTMENTCODE = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL2 = " AND A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
-                    strSQL2 += string.Format(" AND (D.CONSTRUCTIONPERSONCODE = {0} OR D.CONSTRUCTIONINSTRUCTOR = {0} OR D.CONSTRSUBPERSONCODE = {0})"
-                                                                        , CommonMotions.LoginUserData.PersonCode);
-                    strSecurity.Add(strSQL1);
-                    strSecurity.Add(strSQL2);
                 }
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}�F{2}", ex.Message, strSQL1, strSQL2);
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSecurity);
             }
         }
         #endregion
@@ -253,6 +354,15 @@
             {
                 DataGridView dgv = dgvMaster;
 
+                // �����N�x�Z�b�g
+                // �f�[�^�ɂ��鎖�Ɗ��ƌ��݂̎��ƃZ�b�g
+                int minval = 0;
+                int maxval = 0;
+                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                numUDConstPro.Minimum = minval;
+                numUDConstPro.Maximum = maxval;
+                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+
                 int NowPoint = ClsExcute.GetNowProcessPoint();
                 // �����\�����ɑ��̉�ʂ��̃p�����[�^���������ꍇ
                 if (!m_FirstStartFlg && m_initDataLoad)
@@ -280,11 +390,23 @@
                     }
                 }
                 // ��ʎg�p�҂͋��^�̗��������Ȃ��悤�ɂ���
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    dgvMaster.Columns[(int)DispColumn.Allowance].Visible = false;
-                    m_CellSize[(int)DispColumn.Allowance] = 0;
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        dgvMaster.Columns[(int)DispColumn.Allowance].Visible = false;
+                        m_CellSize[(int)DispColumn.Allowance] = 0;
+                    }
                 }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key)
+                    {
+                        dgvMaster.Columns[(int)DispColumn.Allowance].Visible = false;
+                        m_CellSize[(int)DispColumn.Allowance] = 0;
+                    }
+                }
 
                 // �f�[�^�\��
                 DataDisplay();
@@ -344,104 +466,6 @@
         }
         #endregion
 
-        #region �����R���{�{�b�N�X���Z�b�g����
-        /// <summary>
-        /// �����R���{�{�b�N�X�֕������Z�b�g����
-        /// </summary>
-        private bool SetcmbDepartment()
-        {
-            IOMDepartment depDB = new IOMDepartment();
-            try
-            {
-                m_initDataLoad = true;
-
-                cmbDepartment.DataSource = null;
-                cmbDepartment.Items.Clear();
-                cmbDepartment.Text = "";
-
-                string strSQL = string.Empty;
-                // �����}�X�^����������
-                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
-                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C , CONSTRUCTIONLEDGERDETAIL D";
-                strSQL += " WHERE A.DELETEFLG = 0";
-
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
-                    || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ������
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
-                }
-                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
-                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
-                strSQL += " AND D.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
-                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
-                strSQL += " ORDER BY A.DISPLAYORDER ASC";
-
-                // �����}�X�^�Ǎ�
-                ArrayList arList = new ArrayList();
-                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
-
-                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
-                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
-
-                foreach (object[] work in arList)
-                {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
-                                                                                    , CommonMotions.cnvString(work[1]));
-
-                    ConstructionDataList.Add(keyval);
-                }
-
-                // �R���{�{�b�N�X�����\��
-                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
-
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
-                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ������
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
-                }
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                depDB.close(); depDB = null;
-                m_initDataLoad = false;
-            }
-        }
-        #endregion
-
-        #region �����R���{���S���҃R�[�h���擾����
-        /// <summary>
-        /// �����R���{���S���҃R�[�h���擾����
-        /// </summary>
-        /// <returns></returns>
-        private int GetDepartmentCode()
-        {
-            try
-            {
-                // �\������Ă��Ȃ��ꍇ�͑I��
-                //if (!cmbDepartment.Visible) return 0;
-
-                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
-                return 0;
-            }
-        }
-        #endregion
-
         #region ��ʃT�C�Y�ύX���̃Z���T�C�Y�ύX
         /// <summary>
         /// ��ʃT�C�Y�ύX���̃Z���T�C�Y�ύX
@@ -629,6 +653,8 @@
                 strSQL += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
                 if (PersonCode != 0) strSQL += string.Format(" AND B.CONSTRSUBPERSONCODE = {0}", PersonCode);
+                //strSQL += " AND TO_CHAR(B.CONSTRUCTIONPERIODSTART,'YYYY/MM/DD') != '0001/01/01'";
+                //strSQL += " AND TO_CHAR(B.CONSTRUCTIONPERIODEND,'YYYY/MM/DD') != '0001/01/01'";
                 strSQL += " AND DATE_FORMAT(B.CONSTRUCTIONPERIODSTART,'%Y/%m/%d') != '0001/01/01'";
                 strSQL += " AND DATE_FORMAT(B.CONSTRUCTIONPERIODEND,'%Y/%m/%d') != '0001/01/01'";
                 ArrayList arList = new ArrayList();
@@ -785,28 +811,6 @@
         }
         #endregion
 
-        #region �S���҃R���{���S���҃R�[�h���擾����
-        /// <summary>
-        /// �S���҃R���{���S���҃R�[�h���擾����
-        /// </summary>
-        /// <returns></returns>
-        private int GetConstructionPersonCode()
-        {
-            try
-            {
-                // �\������Ă��Ȃ��ꍇ�͑I��
-                //if (!cmbConstructionPerson.Visible) return 0;
-
-                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
-                return 0;
-            }
-        }
-        #endregion
-
         #region ���ԃf�[�^�擾��
         /// <summary>
         /// ���ԃf�[�^�擾��
@@ -927,33 +931,46 @@
                 strSQL += " ,MAX(C.CONSTRUCTIONPERIODEND) M3, MAX(C.CONSTRUCTIONPERIODEND2) M4";
                 strSQL += " ,MAX(D.CONSTRUCTIONPERIODEND) S3, MAX(D.CONSTRUCTIONPERIODEND2) S4";
                 strSQL += " ,MAX(E.CONSTRUCTIONPERIODEND) I3, MAX(E.CONSTRUCTIONPERIODEND2) I4";
-                strSQL += " ,SUM(C2.EXECUTIONAMOUNT) M5, SUM(D2.EXECUTIONAMOUNT) S5, SUM(E2.EXECUTIONAMOUNT) I5";
-                strSQL += " ,COUNT(C2.EXECUTIONAMOUNT) M6, COUNT(D2.EXECUTIONAMOUNT) S6, COUNT(E2.EXECUTIONAMOUNT) I6";
+                strSQL += " ,SUM(C.EXECUTIONAMOUNT) M5, SUM(D.EXECUTIONAMOUNT) S5, SUM(E.EXECUTIONAMOUNT) I5";
+                strSQL += " ,COUNT(C.EXECUTIONAMOUNT) M6, COUNT(D.EXECUTIONAMOUNT) S6, COUNT(E.EXECUTIONAMOUNT) I6";
                 strSQL += " FROM PERSONINCHARGEMASTER P";
 
                 // �H���S���҂̃f�[�^�擾
-                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO C ON C.CONSTRUCTIONPERSONCODE = P.PERSONCODE";
+                strSQL += " LEFT JOIN (SELECT C1.CONSTRUCTIONPERSONCODE, C1.CONSTRUCTIONSTATUSFLG, C1.CONSTRUCTIONPERIOD";
+                strSQL += ", C1.CONSTRUCTIONPERIODSTART, C1.CONSTRUCTIONPERIODSTART2, C1.CONSTRUCTIONPERIODEND, C1.CONSTRUCTIONPERIODEND2, C2.EXECUTIONAMOUNT";
+                strSQL += " FROM CONSTRUCTIONBASEINFO C1, CONSTRUCTIONLEDGERDETAIL C2, CONSTRUCTIONLEDGER C3";
+                strSQL += " WHERE C2.CONSTRUCTIONCODE = C1.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND C2.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Payroll);
+                strSQL += " AND C3.CONSTRUCTIONCODE = C1.CONSTRUCTIONCODE) C";
+                strSQL += " ON C.CONSTRUCTIONPERSONCODE = P.PERSONCODE";
                 strSQL += string.Format(" AND C.CONSTRUCTIONSTATUSFLG <> {0}", NotOrder);
                 strSQL += string.Format(" AND C.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
-                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL C2 ON C2.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
-                strSQL += string.Format(" AND C2.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Payroll);
 
                 // �H�����S���҂̃f�[�^�擾
-                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO D ON D.CONSTRSUBPERSONCODE = P.PERSONCODE";
+                strSQL += " LEFT JOIN (SELECT D1.CONSTRUCTIONPERSONCODE, D1.CONSTRUCTIONSTATUSFLG, D1.CONSTRUCTIONPERIOD";
+                strSQL += ", D1.CONSTRUCTIONPERIODSTART, D1.CONSTRUCTIONPERIODSTART2, D1.CONSTRUCTIONPERIODEND, D1.CONSTRUCTIONPERIODEND2, D2.EXECUTIONAMOUNT";
+                strSQL += " FROM CONSTRUCTIONBASEINFO D1, CONSTRUCTIONLEDGERDETAIL D2, CONSTRUCTIONLEDGER D3";
+                strSQL += " WHERE D2.CONSTRUCTIONCODE = D1.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND D2.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Assistant);
+                strSQL += " AND D3.CONSTRUCTIONCODE = D1.CONSTRUCTIONCODE) D";
+                strSQL += " ON D.CONSTRUCTIONPERSONCODE = P.PERSONCODE";
                 strSQL += string.Format(" AND D.CONSTRUCTIONSTATUSFLG <> {0}", NotOrder);
                 strSQL += string.Format(" AND D.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
-                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL D2 ON D2.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
-                strSQL += string.Format(" AND D2.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Assistant);
 
                 // �H���w�����̃f�[�^�擾
-                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO E ON E.CONSTRUCTIONINSTRUCTOR = P.PERSONCODE";
+                strSQL += " LEFT JOIN (SELECT E1.CONSTRUCTIONPERSONCODE, E1.CONSTRUCTIONSTATUSFLG, E1.CONSTRUCTIONPERIOD";
+                strSQL += ", E1.CONSTRUCTIONPERIODSTART, E1.CONSTRUCTIONPERIODSTART2, E1.CONSTRUCTIONPERIODEND, E1.CONSTRUCTIONPERIODEND2, E2.EXECUTIONAMOUNT";
+                strSQL += " FROM CONSTRUCTIONBASEINFO E1, CONSTRUCTIONLEDGERDETAIL E2, CONSTRUCTIONLEDGER E3";
+                strSQL += " WHERE E2.CONSTRUCTIONCODE = E1.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND E2.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Instructor);
+                strSQL += " AND E3.CONSTRUCTIONCODE = E1.CONSTRUCTIONCODE) E";
+                strSQL += " ON E.CONSTRUCTIONPERSONCODE = P.PERSONCODE";
                 strSQL += string.Format(" AND E.CONSTRUCTIONSTATUSFLG <> {0}", NotOrder);
                 strSQL += string.Format(" AND E.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
-                strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL E2 ON E2.CONSTRUCTIONCODE = E.CONSTRUCTIONCODE";
-                strSQL += string.Format(" AND E2.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Instructor);
 
                 strSQL += " WHERE P.DELETEFLG = 0";
                 strSQL += string.Format(" AND P.LEDGERFLG = {0}", (int)CommonDefine.PersonLedgerDivNo.CalcTarget);
+
                 // �H���䒠�f�[�^�̕����������Ώ�
                 strSQL += " AND P.DEPARTMENTCODE IN";
                 strSQL += " (SELECT DEPARTMENTCODE FROM (SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*) CNT";
@@ -962,6 +979,7 @@
                 strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
                 strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
                 strSQL += " AND D.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+
                 strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER))";
 
                 // 16�����胊�t�H�[���͌_��Ј����ǉ�����
@@ -975,6 +993,7 @@
                 // �����R�[�h�I�����͕��������������֓����
                 if (DepartmentCode != 0) strSQL += string.Format(" AND P.DEPARTMENTCODE = {0}", DepartmentCode);
                 if (PersonCode != 0) strSQL += string.Format(" AND P.PERSONCODE = {0}", PersonCode);
+
                 strSQL += " GROUP BY P.PERSONCODE, P.PERSONNAME, P.DISPLAYORDER, P.MonthlySalary";
                 strSQL += " ORDER BY P.DISPLAYORDER";
 
@@ -1050,6 +1069,8 @@
                 // �S���Җ��o��f�[�^���ǂ��̍H���ɂ��������Ă��Ȃ��o����擾����
                 string strSQL = "SELECT PERSONCODE, DATATYPE, SUM(ENTRYPRICE) FROM COSTDATAOFPERSON";
                 strSQL += string.Format(" WHERE PERSONCODE = {0}", PersonCode);
+                //strSQL += string.Format(" AND ('{0}' <= TO_CHAR(ACTIONDATE,'YYYY/MM/DD')", dtStart.ToShortDateString());
+                //strSQL += string.Format(" AND TO_CHAR(ACTIONDATE,'YYYY/MM/DD') <= '{0}')", dtEnd.ToShortDateString());
                 strSQL += string.Format(" AND ('{0}' <= DATE_FORMAT(ACTIONDATE,'%Y/%m/%d')", dtStart.ToShortDateString());
                 strSQL += string.Format(" AND DATE_FORMAT(ACTIONDATE,'%Y/%m/%d') <= '{0}')", dtEnd.ToShortDateString());
                 strSQL += " AND CONSTRUCTIONCODE = 0";
@@ -1098,14 +1119,18 @@
                 int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
 
                 // �H���ڍב䒠�f�[�^���⏕�U�����擾����
-                string strSQL = "SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
-                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                //string strSQL = "SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
+                string strSQL = "SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(B.PAYMENTAMOUNT)";
+                //strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P LEFT JOIN CONSTRUCTIONLEDGEREXCUTE B";
+                strSQL += " ON B.CONSTRUCTIONCODE = P.CONSTRUCTIONCODE AND B.GROUPCOUNT = P.GROUPCOUNT AND B.LINECOUNT = P.LINECOUNT";
+                strSQL += " , CONSTRUCTIONBASEINFO A";
                 strSQL += string.Format(" WHERE P.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Instructor);
 
-                strSQL += " AND P.COMPANYCODE IN (SELECT PERSONCODE FROM PERSONINCHARGEMASTER WHERE DELETEFLG = 0";
+                strSQL += " AND P.COMPANYCODE IN (SELECT A1.PERSONCODE FROM PERSONINCHARGEMASTER A1 WHERE A1.DELETEFLG = 0";
 
-                if (DepartmentCode != 0) strSQL += string.Format(" AND DEPARTMENTCODE = {0}", DepartmentCode);
-                if (PersonCode != 0) strSQL += string.Format(" AND PERSONCODE = {0}", PersonCode);
+                if (DepartmentCode != 0) strSQL += string.Format(" AND A1.DEPARTMENTCODE = {0}", DepartmentCode);
+                if (PersonCode != 0) strSQL += string.Format(" AND A1.PERSONCODE = {0}", PersonCode);
                 
                 strSQL += " )";
                 strSQL += " AND P.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
@@ -1114,15 +1139,19 @@
                 strSQL += " GROUP BY A.CONSTRUCTIONPERIOD, P.GROUPCOUNT";
 
                 strSQL += " UNION";
-                strSQL += " SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
-                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                //strSQL += " SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
+                strSQL += " SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(B.PAYMENTAMOUNT)";
+                //strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P LEFT JOIN CONSTRUCTIONLEDGEREXCUTE B";
+                strSQL += " ON B.CONSTRUCTIONCODE = P.CONSTRUCTIONCODE AND B.GROUPCOUNT = P.GROUPCOUNT AND B.LINECOUNT = P.LINECOUNT";
+                strSQL += " , CONSTRUCTIONBASEINFO A";
                 strSQL += string.Format(" WHERE P.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Assistant);
 
-                strSQL += " AND P.COMPANYCODE IN (SELECT PERSONCODE FROM PERSONINCHARGEMASTER WHERE DELETEFLG = 0";
-                
-                if (DepartmentCode != 0) strSQL += string.Format(" AND DEPARTMENTCODE = {0}", DepartmentCode);
-                if (PersonCode != 0) strSQL += string.Format(" AND PERSONCODE = {0}", PersonCode);
+                strSQL += " AND P.COMPANYCODE IN (SELECT A1.PERSONCODE FROM PERSONINCHARGEMASTER A1 WHERE A1.DELETEFLG = 0";
 
+                if (DepartmentCode != 0) strSQL += string.Format(" AND A1.DEPARTMENTCODE = {0}", DepartmentCode);
+                if (PersonCode != 0) strSQL += string.Format(" AND A1.PERSONCODE = {0}", PersonCode);
+
                 strSQL += " )";
                 strSQL += " AND P.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND A.CONSTRUCTIONSTATUSFLG <> {0}", NotOrder);
@@ -1174,13 +1203,13 @@
                 int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
 
                 // �U�����^���z�擾
-                //string strSQL = "SELECT SUM(E.PAYMENTAMOUNT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, CONSTRUCTIONLEDGERDETAIL C, PERSONINCHARGEMASTER D, CONSTRUCTIONLEDGEREXCUTE E";
                 string strSQL = "SELECT SUM(C.EXECUTIONAMOUNT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, CONSTRUCTIONLEDGERDETAIL C, PERSONINCHARGEMASTER D";
                 // �U�����ł͖���
                 strSQL += " WHERE P.CONSTRUCTIONCODE IN (SELECT A.CONSTRUCTIONCODE FROM CONSTRUCTIONLEDGERDETAIL A";
-                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                //strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND (A.SALARYFLG = {1} OR A.SALARYFLG = {2}))"
                                         , (int)FrmConstructionLedger.DataGroup.Payroll
-                                        , (int)CommonDefine.SalaryOperateKind.Oparateing
+                                        //, (int)CommonDefine.SalaryOperateKind.Oparateing
                                         , (int)CommonDefine.SalaryDevision.All
                                         , (int)CommonDefine.SalaryDevision.DaysInput);
 
@@ -1189,10 +1218,7 @@
                 strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG != {0}", NotOrder);
                 strSQL += " AND C.CONSTRUCTIONCODE = P.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND C.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Payroll);
-                strSQL += string.Format(" AND C.OPERATINGFLG = {0}", (int)CommonDefine.SalaryOperateKind.Oparateing);
-                //strSQL += " AND E.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
-                //strSQL += " AND E.GROUPCOUNT = C.GROUPCOUNT";
-                //strSQL += " AND E.LINECOUNT = C.LINECOUNT";
+                //strSQL += string.Format(" AND C.OPERATINGFLG = {0}", (int)CommonDefine.SalaryOperateKind.Oparateing);
                 strSQL += " AND D.PERSONCODE = B.CONSTRUCTIONPERSONCODE";
                 if (DepartmentCode != 0) strSQL += string.Format(" AND D.DEPARTMENTCODE = {0}", DepartmentCode);
                 if (PersonCode != 0) strSQL += string.Format(" AND D.PERSONCODE = {0}", PersonCode);
@@ -1206,9 +1232,10 @@
                 strSQL = "SELECT SUM(P.NETPROFIT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER D";
                 // �U���ςݕ������v
                 strSQL += " WHERE P.CONSTRUCTIONCODE IN (SELECT A.CONSTRUCTIONCODE  FROM CONSTRUCTIONLEDGERDETAIL A";
-                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                //strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND (A.SALARYFLG = {1} OR A.SALARYFLG = {2}))"
                                         , (int)FrmConstructionLedger.DataGroup.Payroll
-                                        , (int)CommonDefine.SalaryOperateKind.Oparateing
+                                        //, (int)CommonDefine.SalaryOperateKind.Oparateing
                                         , (int)CommonDefine.SalaryDevision.All
                                         , (int)CommonDefine.SalaryDevision.DaysInput);
 
@@ -1228,9 +1255,10 @@
                 strSQL = "SELECT SUM(P.NETPROFIT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER D";
                 // �U���ςݕ������v
                 strSQL += " WHERE P.CONSTRUCTIONCODE NOT IN (SELECT A.CONSTRUCTIONCODE  FROM CONSTRUCTIONLEDGERDETAIL A";
-                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                //strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND (A.SALARYFLG = {1} OR A.SALARYFLG = {2}))"
                                         , (int)FrmConstructionLedger.DataGroup.Payroll
-                                        , (int)CommonDefine.SalaryOperateKind.Oparateing
+                                        //, (int)CommonDefine.SalaryOperateKind.Oparateing
                                         , (int)CommonDefine.SalaryDevision.All
                                         , (int)CommonDefine.SalaryDevision.DaysInput);
 
@@ -1586,7 +1614,7 @@
             try
             {
                 // SQL�ɃA�N�Z�X������������
-                List<string> strSecurity = new List<string>();
+                string strSecurity = string.Empty;
                 CreateSecuritySQL(ref strSecurity);
 
                 // �����R���{�{�b�N�X�l�擾
@@ -1611,7 +1639,7 @@
                 strSQL += " AND C.DEPARTMENTCODE = E.DEPARTMENTCODE";
                 strSQL += string.Format(" AND D.CONSTRUCTIONSTATUSFLG != {0}", NotOrder);
                 strSQL += " AND A.CREATORCODE = C.PERSONCODE";
-                if (strSecurity.Count > 0) strSQL += strSecurity[1];
+                if (strSecurity.Length > 0) strSQL += strSecurity;
                 if (DepartmentCode != 0) strSQL += string.Format(" AND C.DEPARTMENTCODE = {0}", DepartmentCode);
                 if (PersonCode != 0)
                 {
@@ -1634,210 +1662,47 @@
         }
         #endregion
 
-        #region �����R���{�{�b�N�X�����\��
+        #region �����R���{���S���҃R�[�h���擾����
         /// <summary>
-        /// �����R���{�{�b�N�X�����\��
+        /// �����R���{���S���҃R�[�h���擾����
         /// </summary>
-        private void InitcmbDepartment()
+        /// <returns></returns>
+        private int GetDepartmentCode()
         {
             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)
-                {
-                    // �V�X�e���Ǘ���
-                    // �ō��@���Ǘ���
-                    // �����@���Ǘ���
-                    // �����}�X�^����������
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // ������
-                    // �����R���{��\��
-                    label5.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Location = label5.Location;
-                    cmbConstructionPerson.Location = cmbDepartment.Location;
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    // �����E�S���҃R���{��\��
-                    label5.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Visible = false;
-                    cmbConstructionPerson.Visible = false;
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbDepartment.Visible) return 0;
 
-        #region �S���҃R���{�{�b�N�X�����\��
-        /// <summary>
-        /// �S���҃R���{�{�b�N�X�����\��
-        /// </summary>
-        private void InitcmbPersons()
-        {
-            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)
-                {
-                    // �V�X�e���Ǘ���
-                    // �ō��@���Ǘ���
-                    // �����@���Ǘ���
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // ������
-                    // �����R���{��\��
-                    label5.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Location = label5.Location;
-                    cmbConstructionPerson.Location = cmbDepartment.Location;
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
-                    // �����E�S���҃R���{��\��
-                    label5.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label3.Visible = false;
-                    cmbConstructionPerson.Visible = false;
-                }
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
             }
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X���Z�b�g����
+        #region �S���҃R���{���S���҃R�[�h���擾����
         /// <summary>
-        /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
+        /// �S���҃R���{���S���҃R�[�h���擾����
         /// </summary>
-        private bool SetcmbPersons()
-        {
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            try
-            {
-                cmbConstructionPerson.DataSource = null;
-                cmbConstructionPerson.Items.Clear();
-                cmbConstructionPerson.Text = "";
-
-                string strSQL = string.Empty;
-                int DepartmentCode = GetDepartmentCode();
-                if (m_initDataLoad) DepartmentCode = m_FirstStartDepartmentCode;
-
-                //strSQL = "SELECT A.PERSONCODE, A.PERSONNAME, A.DISPLAYORDER, A.EMPLOYEECLASSFLG, COUNT(*)";
-                //strSQL += " FROM PERSONINCHARGEMASTER A, DEPARTMENTMASTER B, CONSTRUCTIONBASEINFO C, CONSTRUCTIONLEDGERDETAIL D";
-                strSQL = "SELECT A.PERSONCODE, A.PERSONNAME, A.DISPLAYORDER, A.EMPLOYEECLASSFLG";
-                strSQL +=" FROM PERSONINCHARGEMASTER A, DEPARTMENTMASTER B, CONSTRUCTIONBASEINFO C";
-                strSQL +=" WHERE A.DELETEFLG = 0";
-                if (DepartmentCode != 0) strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", DepartmentCode);
-                // 16�����胊�t�H�[���͌_��Ј����ǉ�����
-                if (numUDConstPro.Value <= 16 && DepartmentCode != 9)
-                    strSQL += string.Format(" AND A.EMPLOYEECLASSFLG = {0}", (int)CommonDefine.EmployeeClassFlg.Regular);
-                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
-                //strSQL += " AND A.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
-                strSQL += " AND (A.PERSONCODE = C.CONSTRUCTIONPERSONCODE OR A.PERSONCODE = C.CONSTRUCTIONINSTRUCTOR OR A.PERSONCODE = C.CONSTRSUBPERSONCODE)";
-                //strSQL += " AND D.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
-                strSQL += " GROUP BY A.PERSONCODE, A.PERSONNAME, A.DISPLAYORDER, A.EMPLOYEECLASSFLG";
-                strSQL += " ORDER BY A.EMPLOYEECLASSFLG, A.DISPLAYORDER ASC";
-
-                ArrayList arList = new ArrayList();
-                // �S���҃}�X�^�Ǎ�
-                if (!picDB.ExecuteReader(strSQL, ref arList)) return false;
-
-                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
-                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
-
-                // �Z�b�g�O�ɃC�x���g�X�g�b�v
-                m_initDataLoad = true;
-
-                foreach (object[] work in arList)
-                {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0]), CommonMotions.cnvString(work[1]));
-
-                    ConstructionDataList.Add(keyval);
-                }
-
-                // �R���{�{�b�N�X�����\��
-                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
-
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
-                }
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                picDB.close(); picDB = null;
-                m_initDataLoad = false;
-            }
-        }
-        #endregion
-
-        #region �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
-        /// <summary>
-        /// �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
-        /// </summary>
         /// <returns></returns>
-        private bool SetPerosonToDepartment()
+        private int GetConstructionPersonCode()
         {
-            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
-                // �R���{�{�b�N�X���I��S���҂��擾����
-                int PersonCode = GetConstructionPersonCode();
-                if (PersonCode < 1) return false;
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbConstructionPerson.Visible) return 0;
 
-                int DepartmentCode = GetDepartmentCode();
-
-                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
-                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                PersonDB.SelectAction(strSQL, ref PersonRec);
-
-                // �����R���{�{�b�N�X�֕����R�[�h�Z�b�g
-                if (PersonRec.DepartmentCode < 0 || DepartmentCode == PersonRec.DepartmentCode) return true;
-
-                m_initDataLoad = true;
-
-                // �����R�[�h�Z�b�g
-                cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
-
-                // �S���҃R�[�h�ăZ�b�g
-                cmbConstructionPerson.SelectedValue = PersonCode;
-
-                m_initDataLoad = false;
-
-                return true;
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
             }
-            finally
-            {
-                PersonDB.close(); PersonDB = null;
-            }
         }
         #endregion
 
@@ -1916,43 +1781,81 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (!cmbConstructionPerson.Visible) PersonCode = CommonMotions.LoginUserData.PersonCode;
 
-                // �Z�L�����e�B���x���擾
-                int SecLevel1 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key;
-                int SecLevel2 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key;
-                int SecLevel3 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key;
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
-                    bRet = true;
+                    // �Z�L�����e�B���x���擾
+                    int SecLevel1 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key;
+                    int SecLevel2 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key;
+                    int SecLevel3 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key;
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                    {
+                        // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                        bRet = true;
+                    }
+                    else if (CommonMotions.LoginUserData.SecurityManagement == SecLevel1)
+                    {
+                        // �ō��@���Ǘ��ҁi���ׂđΏہj
+                        bRet = true;
+                    }
+                    else if (CommonMotions.LoginUserData.SecurityManagement == SecLevel2)
+                    {
+                        // �����@���Ǘ��ҁi�@�\�����j
+                        bRet = true;
+                    }
+                    else if (CommonMotions.LoginUserData.SecurityManagement == SecLevel3)
+                    {
+                        // ������
+                        bRet = true;
+                    }
+                    else
+                    {
+                        // ��ʃ��[�U�[�͎����̋��^��������
+                        if (CommonMotions.LoginUserData.PersonCode == PersonCode)
+                            bRet = true;
+                        else
+                            bRet = false;
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == SecLevel1)
-                {
-                    // �ō��@���Ǘ��ҁi���ׂđΏہj
-                    bRet = true;
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == SecLevel2)
-                {
-                    // �����@���Ǘ��ҁi�@�\�����j
-                    bRet = true;
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == SecLevel3)
-                {
-                    // ������
-                    bRet = true;
-                }
                 else
                 {
-                    // ��ʃ��[�U�[�͎����̋��^��������
-                    if (CommonMotions.LoginUserData.PersonCode == PersonCode)
+                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;
+                    int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;
+                    int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;
+
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+                        // �V�X�e���Ǘ��ҁi���ׂđΏہj
                         bRet = true;
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
+                    {
+                        // �o�c�ҁi���ׂđΏہj
+                        bRet = true;
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[FRank].Key)
+                    {
+                        // �����Ǘ��ҁi�@�\�����j
+                        bRet = true;
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[LRank].Key)
+                    {
+                        // ������
+                        bRet = true;
+                    }
                     else
-                        bRet = false;
+                    {
+                        // ��ʃ��[�U�[�͎����̋��^��������
+                        if (CommonMotions.LoginUserData.PersonCode == PersonCode)
+                            bRet = true;
+                        else
+                            bRet = false;
+                    }
                 }
-                
                 // �f�[�^�\��
                 pnlPayroll.Visible = bRet;
-                //pnlPayroll.Visible = false;
 
                 // �̈�N���A
                 ClearSalary();
@@ -2098,28 +2001,408 @@
         }
         #endregion
 
-        #region �S���҃}�X�^��茎�z���^�擾
+        #region �R���{�{�b�N�X�����\��
         /// <summary>
-        /// �S���҃}�X�^��茎�z���^�擾
+        /// �R���{�{�b�N�X�����\��
         /// </summary>
-        /// <param name="PersonCode"></param>
+        private void InitCombBox()
+        {
+            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;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // �����R���{��\��
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // �����Ɩ��g�p�҂����O�C�����Ă���ꍇ�̓R���{���󔒂ɂ���
+                if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)CommonDefine.GeneralAffairs.GeneralDep) return;
+
+                // �����ݒ�Ώۂ��R���{�{�b�N�X�f�[�^�ɂ���΃Z�b�g����
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X�̔�\������
+        /// <summary>
+        /// �����R���{�{�b�N�X�̔�\������
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // �����R���{��\��
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // �\���ʒu�̃Z�b�g
+                Point loc3 = label3.Location;
+                loc3.X = label2.Location.X + 10;
+                label3.Location = loc3;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �S�R���{�{�b�N�X�\����ON/OFF����
+        /// <summary>
+        /// �S�R���{�{�b�N�X�\����ON/OFF����
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // �����E�S���҃R���{��\��
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X���Z�b�g����
+        /// <summary>
+        /// �����R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private void SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
+                // �����}�X�^����������
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // ������
+                        // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // �Q�ƕ����}�X�^���擾����
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT AA.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER AA";
+                        strSQL += string.Format(" WHERE AA.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
+                // �����}�X�^�Ǎ�
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // �R���{�{�b�N�X�����\��
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ������
+                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
+                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // �����������҈ȊO
+                        if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                            cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{�{�b�N�X���Z�b�g����
+        /// <summary>
+        /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private void SetcmbPersons()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            //List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+                cmbConstructionPerson.DataSource = null;
+                cmbConstructionPerson.Items.Clear();
+                cmbConstructionPerson.Text = "";
+
+                string strSQL = string.Empty;
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0 && m_FirstStartDepartmentCode != 0) DepartmentCode = m_FirstStartDepartmentCode;
+
+                //if (DepartmentCode == 0)
+                //    strSQL = " WHERE DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC";
+                //else
+                //    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC", DepartmentCode);
+
+                //// �S���҃}�X�^�Ǎ�
+                //if (!picDB.SelectAction(strSQL, ref workList)) return;
+                strSQL = "SELECT DISTINCT A.PERSONCODE, A.PERSONNAME, A.EMPLOYEECLASSFLG, A.DISPLAYORDER";
+                strSQL +=" FROM PERSONINCHARGEMASTER A, CONSTRUCTIONBASEINFO B, CONSTRUCTIONLEDGER C";
+                if (DepartmentCode == 0)
+                {
+                    strSQL += " WHERE B.CONSTRUCTIONPERSONCODE = A.PERSONCODE";
+                }
+                else
+                {
+                    strSQL += string.Format(" WHERE A.DEPARTMENTCODE = {0}", DepartmentCode);
+                    strSQL += " AND B.CONSTRUCTIONPERSONCODE = A.PERSONCODE";
+                }
+                strSQL += " AND C.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+                strSQL += " Order By A.EMPLOYEECLASSFLG ASC, A.DISPLAYORDER ASC";
+
+                ArrayList arList = new ArrayList();
+                // �S���҃}�X�^�Ǎ�
+                if (!picDB.ExecuteReader(strSQL, ref arList)) return;
+
+                
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0]), CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // �R���{�{�b�N�X�����\��
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// <summary>
+        /// �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// </summary>
         /// <returns></returns>
-        private int GetPersonMonthlySalary(int PersonCode)
+        private bool SetPerosonToDepartment()
         {
             IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
-                if (PersonCode == 0) PersonCode = CommonMotions.LoginUserData.PersonCode;
+                // �R���{�{�b�N�X���I��S���҂��擾����
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
                 string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
                 PersonInChargeMaster PersonRec = new PersonInChargeMaster();
                 PersonDB.SelectAction(strSQL, ref PersonRec);
-                
-                return CommonMotions.cnvRound(PersonRec.MonthlySalary);
+
+                // �����R���{�{�b�N�X�֕����R�[�h�Z�b�g
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_initDataLoad;
+                    m_initDataLoad = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // �S���҃R���{�{�b�N�X�ύX
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_initDataLoad = bSave;
+                }
+
+                return true;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-                return 0;
+                return false;
             }
             finally
             {
@@ -2128,5 +2411,32 @@
         }
         #endregion
 
+        #region �䒠�󋵊m�F��ʂ�\������
+        /// <summary>
+        /// �䒠�󋵊m�F��ʂ�\������
+        /// </summary>
+        private void DispPriceOfBudget()
+        {
+            try
+            {
+                // �䒠�󋵊m�F��ʕ\��
+                m_PriceOfBudget = new FrmPriceOfBudget();
+
+                // �ʒu�ݒ�
+                m_PriceOfBudget.LocationPoint = new Point(this.Right, this.Top);
+
+                // �^�X�N�o�[�ɕ\�����Ȃ�
+                //m_PriceOfBudget.ShowInTaskbar = false;
+
+                // �N���[�X�h�n���h����������Œ�`����
+                m_PriceOfBudget.FormClosed += new FormClosedEventHandler(FrmPriceOfBudget_FormClosed);
+                m_PriceOfBudget.Show();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionPersonList/FrmConstructionPersonListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionPersonList/FrmConstructionPersonListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionPersonList/FrmConstructionPersonListAuxiliary.cs	(revision 51)
@@ -1063,6 +1063,8 @@
                 strSQL += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
                 if (PersonCode != 0) strSQL += string.Format(" AND B.CONSTRSUBPERSONCODE = {0}", PersonCode);
+                //strSQL += " AND TO_CHAR(B.CONSTRUCTIONPERIODSTART,'YYYY/MM/DD') != '0001/01/01'";
+                //strSQL += " AND TO_CHAR(B.CONSTRUCTIONPERIODEND,'YYYY/MM/DD') != '0001/01/01'";
                 strSQL += " AND DATE_FORMAT(B.CONSTRUCTIONPERIODSTART,'%Y/%m/%d') != '0001/01/01'";
                 strSQL += " AND DATE_FORMAT(B.CONSTRUCTIONPERIODEND,'%Y/%m/%d') != '0001/01/01'";
                 ArrayList arList = new ArrayList();
@@ -1351,6 +1353,8 @@
                 // �S���Җ��o��f�[�^���ǂ��̍H���ɂ��������Ă��Ȃ��o����擾����
                 string strSQL = "SELECT PERSONCODE, DATATYPE, SUM(ENTRYPRICE) FROM COSTDATAOFPERSON";
                 strSQL += string.Format(" WHERE PERSONCODE = {0}", PersonCode);
+                //strSQL += string.Format(" AND ('{0}' <= TO_CHAR(ACTIONDATE,'YYYY/MM/DD')", dtStart.ToShortDateString());
+                //strSQL += string.Format(" AND TO_CHAR(ACTIONDATE,'YYYY/MM/DD') <= '{0}')", dtEnd.ToShortDateString());
                 strSQL += string.Format(" AND ('{0}' <= DATE_FORMAT(ACTIONDATE,'%Y/%m/%d')", dtStart.ToShortDateString());
                 strSQL += string.Format(" AND DATE_FORMAT(ACTIONDATE,'%Y/%m/%d') <= '{0}')", dtEnd.ToShortDateString());
                 strSQL += " AND CONSTRUCTIONCODE = 0";
@@ -1640,15 +1644,15 @@
         /// <returns></returns>
         private int GetPersonMonthlySalary(int PersonCode)
         {
-            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
                 if (PersonCode == 0) PersonCode = CommonMotions.LoginUserData.PersonCode;
-                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
-                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                PersonDB.SelectAction(strSQL, ref PersonRec);
-                
-                return CommonMotions.cnvRound(PersonRec.MonthlySalary);
+                double MonthryCost = 0;
+                double YearsCost = 0;
+                // �S���ҋ��^���z�擾�����i�Z�b�V�����R�l�N�g���j
+                CommonMotions.GetSalaryValue(PersonCode, ref MonthryCost, ref YearsCost, DateTime.Today);
+
+                return CommonMotions.cnvRound(MonthryCost);
             }
             catch (Exception ex)
             {
@@ -1655,10 +1659,6 @@
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
                 return 0;
             }
-            finally
-            {
-                PersonDB.close(); PersonDB = null;
-            }
         }
         #endregion
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.Designer.cs	(revision 51)
@@ -0,0 +1,567 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmConstructionSplit
+    {
+        /// <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 dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle31 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle32 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnEntry = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.dgvSource = new System.Windows.Forms.DataGridView();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.label13 = new System.Windows.Forms.Label();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
+            this.cmbDepartment = new System.Windows.Forms.ComboBox();
+            this.label12 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.dgvMaster = new System.Windows.Forms.DataGridView();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.lblNewName = new System.Windows.Forms.Label();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvSource)).BeginInit();
+            this.groupBox1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(957, 647);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(120, 30);
+            this.btnCancel.TabIndex = 3;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // btnEntry
+            // 
+            this.btnEntry.BackColor = System.Drawing.Color.Green;
+            this.btnEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEntry.ForeColor = System.Drawing.Color.White;
+            this.btnEntry.Location = new System.Drawing.Point(831, 647);
+            this.btnEntry.Name = "btnEntry";
+            this.btnEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnEntry.TabIndex = 2;
+            this.btnEntry.Text = "実　行";
+            this.btnEntry.UseVisualStyleBackColor = false;
+            this.btnEntry.Click += new System.EventHandler(this.btnEntry_Click);
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(7, 75);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(126, 30);
+            this.label1.TabIndex = 19;
+            this.label1.Text = "分割対象工事";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dgvSource
+            // 
+            this.dgvSource.AllowUserToAddRows = false;
+            this.dgvSource.AllowUserToDeleteRows = false;
+            this.dgvSource.AllowUserToResizeColumns = false;
+            this.dgvSource.AllowUserToResizeRows = false;
+            this.dgvSource.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle23.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle23.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            dataGridViewCellStyle23.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle23.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle23.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle23.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvSource.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle23;
+            this.dgvSource.ColumnHeadersHeight = 24;
+            this.dgvSource.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvSource.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column2,
+            this.Column5,
+            this.Column3,
+            this.Column6,
+            this.Column7});
+            this.dgvSource.Location = new System.Drawing.Point(7, 397);
+            this.dgvSource.Name = "dgvSource";
+            this.dgvSource.RowHeadersVisible = false;
+            this.dgvSource.RowHeadersWidth = 20;
+            this.dgvSource.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvSource.RowTemplate.Height = 24;
+            this.dgvSource.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvSource.Size = new System.Drawing.Size(1070, 242);
+            this.dgvSource.TabIndex = 4;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle24.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle24;
+            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 = 40;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle25;
+            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;
+            this.Column2.Width = 400;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle26;
+            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 = 400;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle27.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle27;
+            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.Width = 150;
+            // 
+            // Column6
+            // 
+            this.Column6.Frozen = true;
+            this.Column6.HeaderText = "選択";
+            this.Column6.Name = "Column6";
+            this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column6.Width = 60;
+            // 
+            // Column7
+            // 
+            this.Column7.Frozen = true;
+            this.Column7.HeaderText = "構成キー";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.Visible = false;
+            this.Column7.Width = 5;
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.groupBox1.BackColor = System.Drawing.Color.Tomato;
+            this.groupBox1.Controls.Add(this.label13);
+            this.groupBox1.Controls.Add(this.cmbConstructionPerson);
+            this.groupBox1.Controls.Add(this.cmbDepartment);
+            this.groupBox1.Controls.Add(this.label12);
+            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.numUDConstPro);
+            this.groupBox1.Controls.Add(this.label5);
+            this.groupBox1.Controls.Add(this.label7);
+            this.groupBox1.ForeColor = System.Drawing.Color.White;
+            this.groupBox1.Location = new System.Drawing.Point(12, 4);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(1060, 55);
+            this.groupBox1.TabIndex = 161;
+            this.groupBox1.TabStop = false;
+            // 
+            // label13
+            // 
+            this.label13.BackColor = System.Drawing.Color.Gray;
+            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label13.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label13.ForeColor = System.Drawing.Color.WhiteSmoke;
+            this.label13.Location = new System.Drawing.Point(664, 19);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(120, 25);
+            this.label13.TabIndex = 47;
+            this.label13.Text = "担　当　者";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbConstructionPerson
+            // 
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(792, 19);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 24);
+            this.cmbConstructionPerson.TabIndex = 46;
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
+            // 
+            // cmbDepartment
+            // 
+            this.cmbDepartment.BackColor = System.Drawing.Color.White;
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(440, 19);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(200, 24);
+            this.cmbDepartment.TabIndex = 45;
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
+            // 
+            // label12
+            // 
+            this.label12.BackColor = System.Drawing.Color.Gray;
+            this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label12.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label12.ForeColor = System.Drawing.Color.WhiteSmoke;
+            this.label12.Location = new System.Drawing.Point(312, 19);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(120, 25);
+            this.label12.TabIndex = 48;
+            this.label12.Text = "部　　署";
+            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.Gray;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.WhiteSmoke;
+            this.label4.Location = new System.Drawing.Point(30, 19);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 42;
+            this.label4.Text = "営業期";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDConstPro
+            // 
+            this.numUDConstPro.BackColor = System.Drawing.Color.White;
+            this.numUDConstPro.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDConstPro.ForeColor = System.Drawing.Color.Black;
+            this.numUDConstPro.Location = new System.Drawing.Point(183, 20);
+            this.numUDConstPro.Name = "numUDConstPro";
+            this.numUDConstPro.ReadOnly = true;
+            this.numUDConstPro.Size = new System.Drawing.Size(80, 23);
+            this.numUDConstPro.TabIndex = 0;
+            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
+            // 
+            // label5
+            // 
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(263, 23);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(25, 16);
+            this.label5.TabIndex = 39;
+            this.label5.Text = "期";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label7
+            // 
+            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label7.ForeColor = System.Drawing.Color.Black;
+            this.label7.Location = new System.Drawing.Point(158, 23);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(25, 16);
+            this.label7.TabIndex = 40;
+            this.label7.Text = "第";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle28.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle28.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            dataGridViewCellStyle28.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle28.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle28.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle28.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle28;
+            this.dgvMaster.ColumnHeadersHeight = 24;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn1,
+            this.dataGridViewTextBoxColumn2,
+            this.dataGridViewTextBoxColumn3,
+            this.Column9,
+            this.dataGridViewTextBoxColumn4,
+            this.dataGridViewTextBoxColumn5,
+            this.dataGridViewTextBoxColumn6,
+            this.Column8});
+            this.dgvMaster.Location = new System.Drawing.Point(7, 107);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 24;
+            this.dgvMaster.Size = new System.Drawing.Size(1070, 242);
+            this.dgvMaster.TabIndex = 162;
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle29.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle29;
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "№";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn1.Width = 40;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle30.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle30;
+            this.dataGridViewTextBoxColumn2.Frozen = true;
+            this.dataGridViewTextBoxColumn2.HeaderText = "工事番号";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle31.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle31;
+            this.dataGridViewTextBoxColumn3.Frozen = true;
+            this.dataGridViewTextBoxColumn3.HeaderText = "工　事　名　称";
+            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
+            this.dataGridViewTextBoxColumn3.ReadOnly = true;
+            this.dataGridViewTextBoxColumn3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn3.Width = 510;
+            // 
+            // Column9
+            // 
+            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle32;
+            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;
+            // 
+            // dataGridViewTextBoxColumn4
+            // 
+            dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle33.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle33;
+            this.dataGridViewTextBoxColumn4.Frozen = true;
+            this.dataGridViewTextBoxColumn4.HeaderText = "発　注　者";
+            this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4";
+            this.dataGridViewTextBoxColumn4.ReadOnly = true;
+            this.dataGridViewTextBoxColumn4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn4.Width = 300;
+            // 
+            // dataGridViewTextBoxColumn5
+            // 
+            this.dataGridViewTextBoxColumn5.Frozen = true;
+            this.dataGridViewTextBoxColumn5.HeaderText = "発注者区分";
+            this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5";
+            this.dataGridViewTextBoxColumn5.ReadOnly = true;
+            this.dataGridViewTextBoxColumn5.Visible = false;
+            // 
+            // dataGridViewTextBoxColumn6
+            // 
+            this.dataGridViewTextBoxColumn6.Frozen = true;
+            this.dataGridViewTextBoxColumn6.HeaderText = "発注者コード";
+            this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6";
+            this.dataGridViewTextBoxColumn6.ReadOnly = true;
+            this.dataGridViewTextBoxColumn6.Visible = false;
+            // 
+            // Column8
+            // 
+            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.Visible = false;
+            this.Column8.Width = 5;
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.White;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(7, 365);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(160, 30);
+            this.label2.TabIndex = 163;
+            this.label2.Text = "分割項目";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Red;
+            this.label3.Location = new System.Drawing.Point(7, 647);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(534, 19);
+            this.label3.TabIndex = 164;
+            this.label3.Text = "※分割処理は積算見積書の承認以降は処理できません。";
+            // 
+            // lblNewName
+            // 
+            this.lblNewName.BackColor = System.Drawing.Color.White;
+            this.lblNewName.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblNewName.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblNewName.ForeColor = System.Drawing.Color.Black;
+            this.lblNewName.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            this.lblNewName.Location = new System.Drawing.Point(176, 365);
+            this.lblNewName.Name = "lblNewName";
+            this.lblNewName.Size = new System.Drawing.Size(901, 30);
+            this.lblNewName.TabIndex = 165;
+            this.lblNewName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // FrmConstructionSplit
+            // 
+            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(1084, 681);
+            this.Controls.Add(this.lblNewName);
+            this.Controls.Add(this.label3);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.dgvSource);
+            this.Controls.Add(this.btnEntry);
+            this.Controls.Add(this.btnCancel);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmConstructionSplit";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "工事分割処理";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmConstructionSplit_FormClosing);
+            this.Load += new System.EventHandler(this.FrmConstructionSplit_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvSource)).EndInit();
+            this.groupBox1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnEntry;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.DataGridView dgvSource;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.ComboBox cmbConstructionPerson;
+        private System.Windows.Forms.ComboBox cmbDepartment;
+        private System.Windows.Forms.Label label12;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.NumericUpDown numUDConstPro;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.DataGridView dgvMaster;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.Label lblNewName;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.cs	(revision 51)
@@ -0,0 +1,261 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmConstructionSplit : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum MasterGridColumn
+        {
+            DisplayNo = 0,
+            ConstructionCode,
+            ConstructionName,
+            DispStatus,
+            OrdererName,
+            OrderersDivision,
+            OrderersCode,
+            Status,
+        }
+
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DetailGridColumn
+        {
+            DisplayNo = 0,
+            CompomentName,
+            ItemName,
+            PriceValue,
+            SplitCheck,
+            CompomentCode,
+        }
+
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 初期時フラグ
+        /// </summary>
+        private bool m_bInitFlag = true;
+
+        /// <summary>
+        /// 新規工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+
+        /// <summary>
+        /// 選択工事コード
+        /// </summary>
+        private int m_SelectionCode = 0;
+
+        #endregion
+
+        #region プロパティ
+
+        /// <summary>
+        /// 新規工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        /// <summary>
+        /// 選択工事
+        /// </summary>
+        public int SelectionCode
+        {
+            get { return m_SelectionCode; }
+            set { m_SelectionCode = value; }
+        }
+
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmConstructionSplit()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionSplit_Load(object sender, EventArgs e)
+        {
+            // コンボボックスセット
+            SetnumUD();
+            SetcmbDepartment();
+            SetcmbPersons();
+
+            // コンボボックス初期化
+            InitCombBox();
+
+            InitDataLoad();
+
+            m_bInitFlag = false;
+        }
+        #endregion
+
+        #region フォーム終了時
+        /// <summary>
+        /// フォーム終了時
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionSplit_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+        }
+        #endregion
+
+        #region 終了ボタン押下
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        #endregion
+
+        #region 実行ボタン押下
+        /// <summary>
+        /// 実行ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEntry_Click(object sender, EventArgs e)
+        {
+            // 実行確認
+            if (MessageBox.Show("選択された工事を分割します。",
+                                "実行確認",
+                                MessageBoxButtons.OKCancel,
+                                MessageBoxIcon.Question) == DialogResult.Cancel) return;
+
+            // データチェック
+            if (!DataCheck()) return;
+
+            // 結合処理
+            if (!SplitData()) return;
+
+            CommonMotions.EntryEndMessage("分割処理データ");
+
+            this.Close();
+        }
+        #endregion
+
+        #region 工事グリッドダブルクリック
+        /// <summary>
+        /// 工事グリッドダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // 新規分割工事作成
+            NewOrdererCreate();
+
+            // 選択一覧フォーカスセット
+            dgvSource.Select();
+        }
+        #endregion
+
+        #region 営業期コンボボックス変更
+        /// <summary>
+        /// 営業期変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void numUDConstPro_ValueChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 部署コンボボックス変更
+        /// <summary>
+        /// 部署コンボボックス変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+
+            // 担当者コンボボックス変更
+            SetcmbPersons();
+
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 担当者コンボボックス変更
+        /// <summary>
+        /// 担当者変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+
+            // 担当者選択時部署選択を設定する
+            SetPerosonToDepartment();
+
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 営業・工事担当者切り替え
+        /// <summary>
+        /// 営業・工事担当者切り替え
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void radioButton_CheckedChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlag) return;
+
+            // データ表示
+            InitDataLoad();
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplit.resx	(revision 51)
@@ -0,0 +1,162 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.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="Column3.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="Column7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <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="Column9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplitAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplitAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionSplit/FrmConstructionSplitAuxiliary.cs	(revision 51)
@@ -0,0 +1,914 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmConstructionSplit
+    {
+        #region 部署コンボより担当者コードを取得する
+        /// <summary>
+        /// 部署コンボより担当者コードを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetDepartmentCode()
+        {
+            try
+            {
+                // 表示されていない場合は選択無
+                //if (!cmbDepartment.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボより担当者コードを取得する
+        /// <summary>
+        /// 担当者コンボより担当者コードを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstructionPersonCode()
+        {
+            try
+            {
+                // 表示されていない場合は選択無
+                //if (!cmbConstructionPerson.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示
+        /// <summary>
+        /// コンボボックス初期表示
+        /// </summary>
+        private void InitCombBox()
+        {
+            try
+            {
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    InitCombBox_OLD();
+                }
+                else
+                {
+                    InitCombBox_NEW();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示（旧）
+        /// <summary>
+        /// コンボボックス初期表示（旧）
+        /// </summary>
+        private void InitCombBox_OLD()
+        {
+            try
+            {
+                // システム権限によってデータアクセスに制限がある
+                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)
+                {
+                    // システム管理者
+                    // 最高機密管理者
+                    // 統括機密管理者
+                    // 総務部所属者は全て見える
+
+                    // 部署・担当者コンボ表示
+                    DispAllCombBoxControl(true);
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // 所属長
+                    // 部署コンボ非表示
+                    NonDispDepCombBox();
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // 一般使用者（自分のみアクセス可能）
+                    // 部署・担当者コンボ非表示
+                    DispAllCombBoxControl(false);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示（新）
+        /// <summary>
+        /// コンボボックス初期表示（新）
+        /// </summary>
+        private void InitCombBox_NEW()
+        {
+            try
+            {
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // 全部署
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // 複数部署
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // 自部署のみ
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // 自担当者のみ
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // 部署・担当者コンボ表示
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // 部署コンボ非表示
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // 総務業務使用者がログインしている場合はコンボを空白にする
+                if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)CommonDefine.GeneralAffairs.GeneralDep) return;
+
+                // 初期設定対象がコンボボックスデータにあればセットする
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスの非表示処理
+        /// <summary>
+        /// 部署コンボボックスの非表示処理
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // 部署コンボ非表示
+                label12.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // 表示位置のセット
+                Point loc13 = label13.Location;
+                loc13.X = label12.Location.X;
+                label13.Location = loc13;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label13.Location.X + label13.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 全コンボボックス表示をON/OFFする
+        /// <summary>
+        /// 全コンボボックス表示をON/OFFする
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // 部署・担当者コンボ非表示
+                label12.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label13.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスをセットする
+        /// <summary>
+        /// 部署コンボボックスへ文字をセットする
+        /// </summary>
+        private void SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_bInitFlag;
+            m_bInitFlag = true;
+            try
+            {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
+                // 部署マスタを検索する
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // システム権限によってデータアクセスに制限がある
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // 所属長
+                        // 一般使用者（自分のみアクセス可能）
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // 参照部署マスタより取得する
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
+                // 部署マスタ読込
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // 総務部所属者以外
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                m_bInitFlag = bSave;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスをセットする
+        /// <summary>
+        /// 担当者コンボボックスへ文字をセットする
+        /// </summary>
+        private void SetcmbPersons()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_bInitFlag;
+            m_bInitFlag = true;
+            try
+            {
+                cmbConstructionPerson.DataSource = null;
+                cmbConstructionPerson.Items.Clear();
+                cmbConstructionPerson.Text = "";
+
+                string strSQL = string.Empty;
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0)
+                    strSQL = " WHERE DELETEFLG = 0 ORDER BY EMPLOYEECLASSFLG ASC, DISPLAYORDER ASC";
+                else
+                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DELETEFLG = 0 ORDER BY EMPLOYEECLASSFLG ASC, DISPLAYORDER ASC", DepartmentCode);
+
+                // 担当者マスタ読込
+                if (!picDB.SelectAction(strSQL, ref workList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
+
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // 一般ユーザーで総務部所属者ではない場合、ログイン者のコードをセットする
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                m_bInitFlag = bSave;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスセット時部署をセットする
+        /// <summary>
+        /// 担当者コンボボックスセット時部署をセットする
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // コンボボックスより選択担当者を取得する
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // 部署コンボボックスへ部署コードセット
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_bInitFlag;
+                    m_bInitFlag = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // 担当者コンボボックス変更
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_bInitFlag = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
+        #region 初期営業期セット
+        /// <summary>
+        /// 初期営業期セット
+        /// </summary>
+        private void SetnumUD()
+        {
+            try
+            {
+                // 検索年度セット
+                // データにある事業期と現在の事業セット
+                int minval = 0;
+                int maxval = 0;
+                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                numUDConstPro.Minimum = minval;
+                numUDConstPro.Maximum = maxval;
+                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region DB読込順
+        /// <summary>
+        /// DB読込順
+        /// </summary>
+        private enum ReadDBColumn
+        {
+            ConstructionCode = 0,
+            DetailString,
+            OrderersDivision,
+            OrderersCode,
+            OrderersName1,
+            OrderersName2,
+            ConstructionStatusFlg,
+        }
+        #endregion
+
+        #region 初期時データ取得
+        /// <summary>
+        /// 初期時データ取得
+        /// </summary>
+        private void InitDataLoad()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                dgvMaster.Rows.Clear();
+
+                int depCode = GetDepartmentCode();
+                int personCode = GetConstructionPersonCode();
+
+                string strSQL = string.Empty;
+                int StatusCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+
+                // ----- 工事結合の場合
+                // 対象全ての案件を検索する
+                strSQL = "SELECT DISTINCT A.CONSTRUCTIONCODE";
+                strSQL += ", B.DETAILSTRING";
+                strSQL += ", A.ORDERERSDIVISION";
+                strSQL += ", A.ORDERERSCODE";
+                strSQL += ", D.ORDERERSNAME1";
+                strSQL += ", D.ORDERERSNAME2";
+                strSQL += ", A.CONSTRUCTIONSTATUSFLG";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C, ORDERERSMASTER D";
+                strSQL += string.Format(" WHERE NOT EXISTS (SELECT * FROM PROCESSAPPROVAL APP WHERE APP.APPROVALCODE > {0} AND APP.APPROVALSTATUS = {1})",
+                                        (int)ClsExcute.ApprovalListNo.EstimateApproval,
+                                        //(int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval,
+                                        (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += string.Format(" AND A.CONSTRUCTIONSTATUSFLG <> {0}", StatusCode);
+                strSQL += string.Format(" AND (A.CONSTRUCTIONPERIOD = {0})", numUDConstPro.Value);
+                strSQL += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL += string.Format(" AND A.TYINGFLG != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                strSQL += string.Format(" AND A.JOINFLG = {0}", (int)CommonDefine.BaseInfoJoinFlg.Standard);
+                if (cmbConstructionPerson.Text.Length != 0)
+                {
+                    strSQL += string.Format(" AND (A.CONSTRUCTIONPERSONCODE = {0})", GetConstructionPersonCode());
+                }
+                else
+                {
+                    if (depCode != 0) strSQL += string.Format(" AND (C.DEPARTMENTCODE = {0})", depCode);
+                }
+
+                strSQL += " AND (C.PERSONCODE = A.SALESPERSONCODE";
+                strSQL += " Or C.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += " Or C.PERSONCODE = A.CONSTRSUBPERSONCODE";
+                strSQL += " Or C.PERSONCODE = A.CONSTRUCTIONINSTRUCTOR)";
+                strSQL += " AND D.ORDERCOTEGORY = A.ORDERERSDIVISION AND D.ORDERERSCODE = A.ORDERERSCODE";
+                strSQL += " ORDER BY B.DETAILSTRING ASC, A.CONSTRUCTIONCODE DESC";
+
+                ArrayList BaseList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref BaseList)) return;
+                if (BaseList.Count == 0) return;
+
+                // 要素表示
+                int i = 1;
+                string strStatus = string.Empty;
+                foreach (object[] wrk in BaseList)
+                {
+                    // データ表示
+                    int ConstructionCode = CommonMotions.cnvInt(wrk[(int)ReadDBColumn.ConstructionCode]);
+                    string EditConstructionCode = string.Format("{0}-{1:D2}", (ConstructionCode / 100), (ConstructionCode % 100));
+                    strStatus = CommonDefine.ProjectsStatus[CommonMotions.cnvInt(wrk[(int)ReadDBColumn.ConstructionStatusFlg])];
+                    dgvMaster.Rows.Add(i++,
+                                        EditConstructionCode,
+                                        CommonMotions.cnvString(wrk[(int)ReadDBColumn.DetailString]),
+                                        strStatus,
+                                        CommonMotions.cnvString(wrk[(int)ReadDBColumn.OrderersName1]) + " " + CommonMotions.cnvString(wrk[(int)ReadDBColumn.OrderersName2]),
+                                        CommonMotions.cnvInt(wrk[(int)ReadDBColumn.OrderersDivision]),
+                                        CommonMotions.cnvInt(wrk[(int)ReadDBColumn.OrderersCode]),
+                                        CommonMotions.cnvInt(wrk[(int)ReadDBColumn.ConstructionStatusFlg]));
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+                if (dgvMaster.RowCount < 9) dgvMaster.RowCount += (9 - dgvMaster.Rows.Count);
+
+            }
+        }
+        #endregion
+
+        #region 見積大項目表示
+        /// <summary>
+        /// 見積大項目表示
+        /// </summary>
+        private void ReadDatail()
+        {
+            IOEstimateData EstiDB = new IOEstimateData();
+            try
+            {
+                int ConstrCode = CommonMotions.cnvInt(m_SelectionCode);
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, A.ITEMNAME, A.WORKNAME, A.PRICEVALUE, A.COMPONENTCODE FROM ESTIMATEDATA A";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", ConstrCode);
+                strSQL += " AND A.FIXEDITEMCODE = '0'";
+                ArrayList ArList = new ArrayList();
+
+                if (!EstiDB.ExecuteReader(strSQL, ref ArList)) return;
+
+                dgvSource.Rows.Clear();
+                int i = 1;
+                foreach (object[] objRec in ArList)
+                {
+                    dgvSource.Rows.Add(i++,
+                                        CommonMotions.cnvString(objRec[1]),
+                                        CommonMotions.cnvString(objRec[2]),
+                                        CommonMotions.cnvInt(objRec[3]).ToString("#,0"),
+                                        false,
+                                        CommonMotions.cnvInt(objRec[4])
+                                        );
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+            }
+            finally
+            {
+                EstiDB.close(); EstiDB = null;
+                if ((9 - dgvSource.RowCount) > 0) dgvSource.RowCount += (9 - dgvSource.RowCount);
+            }
+        }
+        #endregion
+
+        #region 新規分割作成
+        /// <summary>
+        /// 新分割合作成
+        /// </summary>
+        private void NewOrdererCreate()
+        {
+            FrmJoinSelect frm = new FrmJoinSelect();
+            try
+            {
+                // クリア
+                lblNewName.Text = string.Empty;
+                dgvSource.Rows.Clear();
+
+                // 選択された工事名を取得する
+                frm.NameList.Clear();
+
+                DataGridViewRow CurRow = dgvMaster.CurrentRow;
+                if (CurRow.Cells[(int)MasterGridColumn.ConstructionName].Value == null) return;
+
+                // 工事番号取得
+                string strConstrCode = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)MasterGridColumn.ConstructionCode].Value).Replace("-", "");
+                m_SelectionCode = CommonMotions.cnvInt(strConstrCode);
+                // 工事名称取得
+                frm.NameList.Add(CommonMotions.cnvString(CurRow.Cells[(int)MasterGridColumn.ConstructionName].Value));
+
+                frm.OrderersDivision = CommonMotions.cnvInt(CurRow.Cells[(int)MasterGridColumn.OrderersDivision].Value);    // 発注者区分
+                frm.OrdererCode = CommonMotions.cnvInt(CurRow.Cells[(int)MasterGridColumn.OrderersCode].Value);             // 発注者番号
+                frm.ShowDialog();
+                if (frm.Result == DialogResult.Cancel) return;
+
+                lblNewName.Text = frm.ConstructionName;  // 新規工事名称
+
+                // 見積大項目表示
+                ReadDatail();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 実行前チェック
+        /// <summary>
+        /// 実行前チェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DataCheck()
+        {
+            try
+            {
+                int SelCount = 0;
+                foreach (DataGridViewRow CurRow in dgvSource.Rows)
+                {
+                    // 選択されていないものは処理しない
+                    if (CurRow.Cells[(int)DetailGridColumn.SplitCheck].Value == null) continue;
+                    if (!(bool)CurRow.Cells[(int)DetailGridColumn.SplitCheck].Value) continue;
+
+                    SelCount++;
+                }
+                if (SelCount == 0)
+                {
+                    MessageBox.Show("データが選択されていません。", "選択エラー", MessageBoxButtons.OK);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 分割処理実行
+        /// <summary>
+        /// 分割処理実行
+        /// </summary>
+        private bool SplitData()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();		        // 工事基本情報
+            IOConstructionBaseInfoDetail BaseDDB = new IOConstructionBaseInfoDetail();  // 工事基本情報明細
+            IOEstimateData EstimateDB = new IOEstimateData();                           // 積算見積書データ
+            IOEstimateDataBody EstimateBDB = new IOEstimateDataBody();                  // 積算見積書ページデータ
+            IOEstimateDataDetail EstimateDDB = new IOEstimateDataDetail();              // 積算見積書明細データ
+
+            FrmNewOrContinueCopy frmCopy = new FrmNewOrContinueCopy();
+            bool bRet = false;
+            try
+            {
+                // 工事番号を作成する
+                m_ConstructionCode = CreateNewCode();
+                if (m_ConstructionCode == 0) return false;
+
+                BaseDB.connect(); BaseDDB.connect(); EstimateDB.connect(); EstimateBDB.connect(); EstimateDDB.connect();
+                BaseDB.beginTran(); BaseDDB.beginTran(); EstimateDB.beginTran(); EstimateBDB.beginTran(); EstimateDDB.beginTran();
+
+                // 工事基本情報・工事基本情報明細コピー
+                if(!frmCopy.RecordCopyTypeA(m_SelectionCode, m_ConstructionCode,BaseDB, BaseDDB))
+                {
+                    BaseDB.rollback(); BaseDDB.rollback();
+                    return false;
+                }
+                // 工事基本情報・工事基本情報明細
+                if (!CopyConstructionData(BaseDB, BaseDDB))
+                {
+                    BaseDB.rollback(); BaseDDB.rollback();
+                    return false;
+                }
+
+                // 積算見積書をコピーする
+                if(!frmCopy.RecordCopyTypeB(m_SelectionCode, m_ConstructionCode, EstimateDB, EstimateBDB, EstimateDDB))
+                {
+                    BaseDB.rollback(); BaseDDB.rollback(); EstimateDB.rollback(); EstimateBDB.rollback(); EstimateDDB.rollback();
+                    return false;
+                }
+
+                // 積算見積書データを整理する
+                if (!ArrangementAllEstimate(EstimateDB, EstimateBDB, EstimateDDB))
+                {
+                    BaseDB.rollback(); BaseDDB.rollback(); EstimateDB.rollback(); EstimateBDB.rollback(); EstimateDDB.rollback();
+                    return false;
+                }
+
+                BaseDB.commit(); BaseDDB.commit(); EstimateDB.commit(); EstimateBDB.commit(); EstimateDDB.commit();
+
+                bRet = true;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+            finally
+            {
+                if (!bRet)
+                {
+                    MessageBox.Show("分割処理に失敗しました。", "分割エラー", MessageBoxButtons.OK);
+                }
+
+                BaseDB.close(); BaseDDB.close(); EstimateDB.close(); EstimateBDB.close(); EstimateDDB.close();
+                BaseDB = null; BaseDDB = null; EstimateDB = null; EstimateBDB = null; EstimateDDB = null;
+                frmCopy.Dispose(); frmCopy = null;
+            }
+        }
+        #endregion
+
+        #region 新規工事番号作成
+        /// <summary>
+        /// 新規工事番号作成
+        /// </summary>
+        /// <returns></returns>
+        private int CreateNewCode()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                int PeriodValue = 0;
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)CommonDefine.SystemConstructionNoBase.BusinessPeriod)
+                {   // ----- 営業期ベースの時
+                    // 期数をセット
+                    PeriodValue = CommonMotions.SystemMasterData.BusinessPeriod;
+                }
+                else
+                {   // ----- 営業年度ベースの時
+
+                    // 営業年をセット
+                    PeriodValue = CommonMotions.SystemMasterData.ConstructionYear;
+                }
+                // 工事番号を作成する
+                return BaseDB.CreateNewCounstructionCode(PeriodValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region 工事情報・工事情報明細作成
+        /// <summary>
+        /// 工事情報・工事情報明細作成
+        /// </summary>
+        /// <returns></returns>
+        private bool CopyConstructionData(IOConstructionBaseInfo BaseDB,
+                                        IOConstructionBaseInfoDetail DetailDB)
+        {
+            try
+            {
+                // ----- 工事情報
+                // 施工状態フラグ変更
+                int iCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("依頼受け中")).Key;
+                if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.ConstructionStatusFlg
+                                        , iCode, false)) return false;
+                // 増減フラグOFF
+                if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.TyingFlg
+                                        , (int)CommonDefine.BaseInfoTyingFlg.Standard, false)) return false;
+                // 結合フラグOFF
+                if (!BaseDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfo.TableColumn.JoinFlg
+                                        , (int)CommonDefine.BaseInfoJoinFlg.Standard, false)) return false;
+
+                // ----- 工事情報明細
+                // 名前変更
+                if (!DetailDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionBaseInfoDetail.TableColumn.DETAIL_STRING
+                                            , lblNewName.Text, false, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 積算見積書データより不要データを削除する
+        /// <summary>
+        /// 積算見積書データより不要データを削除する
+        /// </summary>
+        /// <returns></returns>
+        private bool ArrangementAllEstimate(IOEstimateData EstimateDB,
+                                            IOEstimateDataBody EstimateBDB,
+                                            IOEstimateDataDetail EstimateDDB)
+        {
+            try
+            {
+                // バックアップを取る
+                string strSQL = "INSERT INTO BK_ESTIMATEDATA SELECT SYSDATE, A.* FROM ESTIMATEDATA A";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_SelectionCode);
+                if (!EstimateDB.ExecuteNonQuery(strSQL, false)) return false;
+
+                strSQL = strSQL.Replace("ESTIMATEDATA", "ESTIMATEDATABODY");
+                if (!EstimateBDB.ExecuteNonQuery(strSQL, false)) return false;
+
+                strSQL = strSQL.Replace("ESTIMATEDATABODY", "ESTIMATEDATADETAIL");
+                if (!EstimateDDB.ExecuteNonQuery(strSQL, false)) return false;
+
+                // 不要なデータを削除する
+                string strDelSource = string.Format(" WHERE CONSTRUCTIONCODE = {0} AND COMPONENTCODE > 0 AND (", m_SelectionCode);
+                string strDelDest = string.Format(" WHERE CONSTRUCTIONCODE = {0} AND COMPONENTCODE > 0 AND (", m_ConstructionCode);
+
+                bool bFirst = true;
+                int ComponentCode = 0;
+                foreach (DataGridViewRow CurRow in dgvSource.Rows)
+                {
+                    // 選択されたデータを探す
+                    if (CurRow.Cells[(int)DetailGridColumn.SplitCheck].Value == null) continue;
+                    if ((bool)CurRow.Cells[(int)DetailGridColumn.SplitCheck].Value == false) continue;
+
+                    ComponentCode = CommonMotions.cnvInt(CurRow.Cells[(int)DetailGridColumn.CompomentCode].Value);
+                    if(!bFirst)
+                    {
+                        strDelSource += " OR ";
+                        strDelDest += " AND ";
+                    }
+                    strDelSource += string.Format("COMPONENTCODE = {0}", ComponentCode);
+                    strDelDest += string.Format("COMPONENTCODE != {0}", ComponentCode);
+
+                    bFirst = false;
+                }
+                strDelSource += ")";
+                strDelDest += ")";
+
+                if (!EstimateDB.DeleteAction(strDelSource, false)) return false;
+                if (!EstimateDB.DeleteAction(strDelDest, false)) return false;
+
+                if (!EstimateBDB.DeleteAction(strDelSource, false)) return false;
+                if (!EstimateBDB.DeleteAction(strDelDest, false)) return false;
+
+                if (!EstimateDDB.DeleteAction(strDelSource, false)) return false;
+                if (!EstimateDDB.DeleteAction(strDelDest, false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return false;
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetList.cs	(revision 51)
@@ -195,23 +195,13 @@
         /// <param name="e"></param>
         private void FrmConstructionBaseInfoList_Load(object sender, EventArgs e)
         {
-            // ���݃v���Z�X�e�[�u���ʒu�擾
-            int NowPoint = ClsExcute.GetNowProcessPoint();
+            // �R���{�{�b�N�X�Z�b�g
+            SetcmbDepartment();
+            SetcmbPersons();
 
-            // �ۑ��p�����[�^������ꍇ
-            if (ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter.Count > 0)
-            {
-                if(!ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter[0])       // �N���t���O
-                {
-                    this.Close();
-                    return;
-                }
-            }
+            // �R���{�{�b�N�X�����\��
+            InitCombBox();
 
-            // �R���{�{�b�N�X�Z�b�g
-            SetcmbDepartment();                         // ����
-            SetcmbPersons();                            // �S���ҁi�c�ƁE�H���j
-            
             // �����\��
             // �O���b�h�̍s��0�ɖ߂�
             dgvMaster.Rows.Clear();
@@ -283,18 +273,18 @@
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�ύX
+        #region �����R���{�{�b�N�X�ύX
         /// <summary>
-        /// �S���ҕύX
+        /// �����R���{�{�b�N�X�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbConstructionPerson_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
 
-            // �S���ґI���������I����ݒ肷��
-            SetPerosonToDepartment();
+            // �S���҃R���{�{�b�N�X�ύX
+            SetcmbPersons();
 
             // �f�[�^�\��
             DataDisplay();
@@ -301,18 +291,18 @@
         }
         #endregion
 
-        #region �����R���{�{�b�N�X�ύX
+        #region �S���҃R���{�{�b�N�X�ύX
         /// <summary>
-        /// �����R���{�{�b�N�X�ύX
+        /// �S���҃R���{�{�b�N�X�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
 
-            // �S���҃R���{�{�b�N�X�ύX
-            SetcmbPersons();
+            // �S���ґI���������I����ݒ肷��
+            SetPerosonToDepartment();
 
             // �f�[�^�\��
             DataDisplay();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetList.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetList.designer.cs	(revision 51)
@@ -28,14 +28,14 @@
         /// </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 dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnDataSelect = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
@@ -226,7 +226,7 @@
             this.cmbConstructionPerson.Name = "cmbConstructionPerson";
             this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
             this.cmbConstructionPerson.TabIndex = 47;
-            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbConstructionPerson_SelectedIndexChanged);
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
             // 
             // cmbDepartment
             // 
@@ -238,7 +238,7 @@
             this.cmbDepartment.Name = "cmbDepartment";
             this.cmbDepartment.Size = new System.Drawing.Size(200, 23);
             this.cmbDepartment.TabIndex = 46;
-            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_SelectedIndexChanged);
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
             // 
             // label2
             // 
@@ -273,18 +273,18 @@
             this.dgvMaster.AllowUserToDeleteRows = false;
             this.dgvMaster.AllowUserToResizeColumns = false;
             this.dgvMaster.AllowUserToResizeRows = false;
-            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            dataGridViewCellStyle17.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle17;
             this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle18.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle18.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle18.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle18.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle18.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle18;
             this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column1,
@@ -308,8 +308,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle19;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "№";
             this.Column1.Name = "Column1";
@@ -320,8 +320,8 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle20;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "工事コード";
             this.Column2.Name = "Column2";
@@ -332,8 +332,8 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle21;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "営業期";
             this.Column3.Name = "Column3";
@@ -344,8 +344,8 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle22;
             this.Column4.Frozen = true;
             this.Column4.HeaderText = "工　事　名　称";
             this.Column4.Name = "Column4";
@@ -356,8 +356,8 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle23;
             this.Column5.Frozen = true;
             this.Column5.HeaderText = "営業担当者";
             this.Column5.Name = "Column5";
@@ -368,8 +368,8 @@
             // 
             // Column6
             // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle24;
             this.Column6.Frozen = true;
             this.Column6.HeaderText = "工事担当者";
             this.Column6.Name = "Column6";
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmCopyTargetListAuxiliary.cs	(revision 51)
@@ -40,6 +40,34 @@
         #region �v���p�e�B
         #endregion
 
+        #region �R�s�[��V�K�f�[�^�\������
+        /// <summary>
+        /// �R�s�[��V�K�f�[�^�\������
+        /// </summary>
+        private void SetNewBaseDataDisplay(int ConstructionCode)
+        {
+            try
+            {
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // ���ݐݒ�l�N���A
+                ClsExcute.ClearSaveParameter(NowPoint);
+                // ��ʏ��ޔ�
+                ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter.Add(false);
+
+                // ���N���v���Z�X�Z�b�g
+                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo);
+                // �V�K�H���ԍ��Z�b�g
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ConstructionCode);
+                // �R�s�[�쐬�f�[�^�t���O�Z�b�g
+                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region �R�s�[��ʋN��
         /// <summary>
         /// �R�s�[��ʋN��
@@ -62,19 +90,9 @@
                 // �V�K�f�[�^�쐬��
                 if (bNowConstruction)
                 {
-                    int NowPoint = ClsExcute.GetNowProcessPoint();
-                    // ���ݐݒ�l�N���A
-                    ClsExcute.ClearSaveParameter(NowPoint);
-                    // ��ʏ��ޔ�
-                    ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter.Add(false);
+                    // �V�K�f�[�^�\���ݒ�
+                    SetNewBaseDataDisplay(ConstructionCode);
 
-                    // ���N���v���Z�X�Z�b�g
-                    NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo);
-                    // �V�K�H���ԍ��Z�b�g
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ConstructionCode);
-                    // �R�s�[�쐬�f�[�^�t���O�Z�b�g
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
-
                     // �I�������t���OOff
                     m_EndProcessFlg = false;
 
@@ -313,22 +331,22 @@
                 bool allSW = false;
                 switch (m_ExecuteBaseNo)
                 {
-                    case (int)FrmMenuTabNameEnum.Tenders:
+                    case (int)FrmMenu.TabNameEnum.Tenders:
                         // ���D�Č��ꗗ���\��
                         paraSw = true;
                         paraList.Add((int)CommonDefine.BaseInfoEstimateType.Didding);
                         break;
-                    case (int)FrmMenuTabNameEnum.BudgetUpProjects:
+                    case (int)FrmMenu.TabNameEnum.BudgetUpProjects:
                         // �\�Z���Č��ꗗ���\��
                         paraSw = true;
                         paraList.Add((int)CommonDefine.BaseInfoEstimateType.GetBudget);
                         break;
-                    case (int)FrmMenuTabNameEnum.SalesInProjects:
+                    case (int)FrmMenu.TabNameEnum.SalesInProjects:
                         // �H���Č��ꗗ���\��
                         paraSw = true;
                         paraList.Add((int)CommonDefine.BaseInfoEstimateType.Normal);
                         break;
-                    case (int)FrmMenuTabNameEnum.ConstructionProjects:
+                    case (int)FrmMenu.TabNameEnum.ConstructionProjects:
                         // �󒍏󋵈ꗗ�\��
                         paraSw = false;
                         paraList.Add(CommonDefine.ProjectsStatus.First(x => x.Value.Equals("��ʕ�C�H��")).Key);
@@ -340,12 +358,12 @@
                         paraList.Add(CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�{�H����")).Key);
                         paraList.Add(CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�{�H�J�n")).Key);
                         break;
-                    case (int)FrmMenuTabNameEnum.NonOrders:
+                    case (int)FrmMenu.TabNameEnum.NonOrders:
                         // ��󒍈ꗗ
                         paraSw = false;
                         paraList.Add(CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key);
                         break;
-                    case (int)FrmMenuTabNameEnum.CompletionOfConstruction:
+                    case (int)FrmMenu.TabNameEnum.CompletionOfConstruction:
                         // �����H���ꗗ
                         paraSw = false;
                         paraList.Add(CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�{�H����")).Key);
@@ -445,24 +463,24 @@
                 ArrayList arData = new ArrayList();
 
                 // �H����{���擾
-                if (cbiDB.ExecuteReader(strSQL, ref arData))
+                if (!cbiDB.ExecuteReader(strSQL, ref arData)) goto DspBlankRow;
+
+                // �f�[�^�\��
+                int ino = 1;
+                foreach (object[] objwrk in arData)
                 {
-                    // �f�[�^�\��
-                    int ino = 1;
-                    foreach (object[] objwrk in arData)
-                    {
-                        dgvMaster.Rows.Add((ino++)
-                                            , CommonMotions.cnvStringCodeFromInt(CommonMotions.cnvInt(objwrk[(int)DataOrder.ConstrCode]), "-", 8)
-                                            , CommonMotions.cnvInt(objwrk[(int)DataOrder.ConstrPeriod])
-                                            , CommonMotions.cnvString(objwrk[(int)DataOrder.ConstrName])
-                                            , CommonMotions.cnvString(objwrk[(int)DataOrder.SalesPersonName])
-                                            , CommonMotions.cnvString(objwrk[(int)DataOrder.ConstrPersonName])
-                                            , CommonDefine.ProjectsStatus[CommonMotions.cnvInt(objwrk[(int)DataOrder.StatusFlg])]
-                                            );
+                    dgvMaster.Rows.Add((ino++)
+                                        , CommonMotions.cnvStringCodeFromInt(CommonMotions.cnvInt(objwrk[(int)DataOrder.ConstrCode]), "-", 8)
+                                        , CommonMotions.cnvInt(objwrk[(int)DataOrder.ConstrPeriod])
+                                        , CommonMotions.cnvString(objwrk[(int)DataOrder.ConstrName])
+                                        , CommonMotions.cnvString(objwrk[(int)DataOrder.SalesPersonName])
+                                        , CommonMotions.cnvString(objwrk[(int)DataOrder.ConstrPersonName])
+                                        , CommonDefine.ProjectsStatus[CommonMotions.cnvInt(objwrk[(int)DataOrder.StatusFlg])]
+                                        );
 
-                    }
                 }
 
+            DspBlankRow:
                 // �f�[�^�������Ȃ�΃\�[�g�ł���
                 if (CommonDefine.s_MaxInitLineCount < dgvMaster.RowCount)
                 {
@@ -488,6 +506,195 @@
         }
         #endregion
 
+        #region �R���{�{�b�N�X�����\��
+        /// <summary>
+        /// �R���{�{�b�N�X�����\��
+        /// </summary>
+        private void InitCombBox()
+        {
+            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;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // �����R���{��\��
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // �����ݒ�Ώۂ��R���{�{�b�N�X�f�[�^�ɂ���΃Z�b�g����
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X�̔�\������
+        /// <summary>
+        /// �����R���{�{�b�N�X�̔�\������
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // �����R���{��\��
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // �\���ʒu�̃Z�b�g
+                Point loc1 = radioButton1.Location;
+                Point loc2 = radioButton2.Location;
+                loc1.X = label2.Location.X;
+                loc2.X = label2.Location.X;
+                radioButton1.Location = loc1;
+                radioButton2.Location = loc2;
+
+                Point loc3 = label3.Location;
+                loc3.X = loc1.X + radioButton1.Width + 10;
+                label3.Location = loc3;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �S�R���{�{�b�N�X�\����ON/OFF����
+        /// <summary>
+        /// �S�R���{�{�b�N�X�\����ON/OFF����
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // �����E�S���҃R���{��\��
+                radioButton1.Visible = bDsp;
+                radioButton2.Visible = bDsp;
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region �����R���{�{�b�N�X���Z�b�g����
         /// <summary>
         /// �����R���{�{�b�N�X�֕������Z�b�g����
@@ -495,25 +702,62 @@
         private bool SetcmbDepartment()
         {
             IOMDepartment depDB = new IOMDepartment();
-            List<DepartmentMaster> workList = new List<DepartmentMaster>();
             bool bSave = m_initDataLoad;
             m_initDataLoad = true;
             try
             {
+
                 cmbDepartment.DataSource = null;
                 cmbDepartment.Items.Clear();
                 cmbDepartment.Text = "";
 
+                string strSQL = string.Empty;
+                // �����}�X�^����������
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // ������
+                        // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // �Q�ƕ����}�X�^���擾����
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
                 // �����}�X�^�Ǎ�
-                string strSQL = " Where DeleteFlg = 0 Order By DisplayOrder ASC";
-                if (!depDB.SelectAction(strSQL, ref workList)) return false;
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
 
                 List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
                 ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
 
-                foreach (DepartmentMaster work in workList)
+                foreach (object[] work in arList)
                 {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.DepartmentCode, work.DepartmentString);
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
 
                     ConstructionDataList.Add(keyval);
                 }
@@ -521,6 +765,20 @@
                 // �R���{�{�b�N�X�����\��
                 ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
 
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ������
+                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
+                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // �����������҈ȊO
+                        if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                            cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
                 return true;
             }
             catch (Exception ex)
@@ -536,7 +794,7 @@
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�Z�b�g
+        #region �S���҃R���{�{�b�N�X���Z�b�g����
         /// <summary>
         /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
         /// </summary>
@@ -543,7 +801,9 @@
         private bool SetcmbPersons()
         {
             IOMPersonInCharge picDB = new IOMPersonInCharge();
-            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>(); ;
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
             try
             {
                 cmbConstructionPerson.DataSource = null;
@@ -573,11 +833,15 @@
                 // �R���{�{�b�N�X�����\��
                 ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
 
-                // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
-                    CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
                 }
 
                 return true;
@@ -590,6 +854,7 @@
             finally
             {
                 picDB.close(); picDB = null;
+                m_initDataLoad = bSave;
             }
         }
         #endregion
@@ -620,6 +885,8 @@
                     bool bSave = m_initDataLoad;
                     m_initDataLoad = true;
                     cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // �S���҃R���{�{�b�N�X�ύX
+                    cmbConstructionPerson.SelectedValue = PersonCode;
                     m_initDataLoad = bSave;
                 }
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.Designer.cs	(revision 51)
@@ -0,0 +1,606 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmNewOrContinueCopy
+    {
+        /// <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()
+        {
+            this.components = new System.ComponentModel.Container();
+            this.btnExecProc1 = new System.Windows.Forms.Button();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.label18 = new System.Windows.Forms.Label();
+            this.label17 = new System.Windows.Forms.Label();
+            this.radioButton4 = new System.Windows.Forms.RadioButton();
+            this.label16 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.radioButton1 = new System.Windows.Forms.RadioButton();
+            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.label1 = new System.Windows.Forms.Label();
+            this.radioButton3 = new System.Windows.Forms.RadioButton();
+            this.label15 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.label10 = new System.Windows.Forms.Label();
+            this.label13 = new System.Windows.Forms.Label();
+            this.label12 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label11 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label14 = new System.Windows.Forms.Label();
+            this.lblNextMessage = new System.Windows.Forms.Label();
+            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
+            this.groupBox3 = new System.Windows.Forms.GroupBox();
+            this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
+            this.cmbSalesPerson = new System.Windows.Forms.ComboBox();
+            this.label20 = new System.Windows.Forms.Label();
+            this.label22 = new System.Windows.Forms.Label();
+            this.cmbConstructionPeriod = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.panel1.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            this.groupBox1.SuspendLayout();
+            this.groupBox3.SuspendLayout();
+            this.tableLayoutPanel3.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // btnExecProc1
+            // 
+            this.btnExecProc1.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc1.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc1.Location = new System.Drawing.Point(519, 5);
+            this.btnExecProc1.Name = "btnExecProc1";
+            this.btnExecProc1.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc1.TabIndex = 0;
+            this.btnExecProc1.Text = "実　行";
+            this.btnExecProc1.UseVisualStyleBackColor = false;
+            this.btnExecProc1.Click += new System.EventHandler(this.btnExecProc1_Click);
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(675, 5);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(140, 40);
+            this.btnCancel.TabIndex = 3;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // panel1
+            // 
+            this.panel1.BackColor = System.Drawing.Color.Silver;
+            this.panel1.Controls.Add(this.btnCancel);
+            this.panel1.Controls.Add(this.btnExecProc1);
+            this.panel1.Location = new System.Drawing.Point(-3, 600);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(833, 50);
+            this.panel1.TabIndex = 3;
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox2.Controls.Add(this.label18);
+            this.groupBox2.Controls.Add(this.label17);
+            this.groupBox2.Controls.Add(this.radioButton4);
+            this.groupBox2.Controls.Add(this.label16);
+            this.groupBox2.Controls.Add(this.label5);
+            this.groupBox2.Controls.Add(this.label8);
+            this.groupBox2.Controls.Add(this.label6);
+            this.groupBox2.Controls.Add(this.radioButton1);
+            this.groupBox2.Controls.Add(this.radioButton2);
+            this.groupBox2.Controls.Add(this.label1);
+            this.groupBox2.Controls.Add(this.radioButton3);
+            this.groupBox2.Controls.Add(this.label15);
+            this.groupBox2.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.groupBox2.Location = new System.Drawing.Point(12, 140);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(800, 320);
+            this.groupBox2.TabIndex = 7;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = "コピー種別・工事番号";
+            // 
+            // label18
+            // 
+            this.label18.AutoSize = true;
+            this.label18.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label18.ForeColor = System.Drawing.Color.Red;
+            this.label18.Location = new System.Drawing.Point(44, 273);
+            this.label18.Name = "label18";
+            this.label18.Size = new System.Drawing.Size(574, 38);
+            this.label18.TabIndex = 30;
+            this.label18.Text = "既存工事をコピーして作成　　　【別工事として新規に作成されます】\r\n※作成中の工事を新規の工事として移行する場合に使用";
+            // 
+            // label17
+            // 
+            this.label17.BackColor = System.Drawing.Color.White;
+            this.label17.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label17.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.label17.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label17.Location = new System.Drawing.Point(597, 249);
+            this.label17.Name = "label17";
+            this.label17.Size = new System.Drawing.Size(174, 24);
+            this.label17.TabIndex = 29;
+            this.label17.Text = "22229999-01";
+            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label17.Visible = false;
+            // 
+            // radioButton4
+            // 
+            this.radioButton4.AutoSize = true;
+            this.radioButton4.Location = new System.Drawing.Point(28, 250);
+            this.radioButton4.Name = "radioButton4";
+            this.radioButton4.Size = new System.Drawing.Size(552, 23);
+            this.radioButton4.TabIndex = 28;
+            this.radioButton4.Text = "工事情報・見積データをコピー【新規工事として作成】";
+            this.radioButton4.UseVisualStyleBackColor = true;
+            this.radioButton4.CheckedChanged += new System.EventHandler(this.radioButton1_CheckedChanged);
+            // 
+            // label16
+            // 
+            this.label16.BackColor = System.Drawing.Color.White;
+            this.label16.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label16.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.label16.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label16.Location = new System.Drawing.Point(597, 172);
+            this.label16.Name = "label16";
+            this.label16.Size = new System.Drawing.Size(174, 24);
+            this.label16.TabIndex = 21;
+            this.label16.Text = "22229999-01";
+            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label16.Visible = false;
+            // 
+            // label5
+            // 
+            this.label5.BackColor = System.Drawing.Color.White;
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.Location = new System.Drawing.Point(597, 95);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(174, 24);
+            this.label5.TabIndex = 20;
+            this.label5.Text = "22229999-01";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label5.Visible = false;
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label8.ForeColor = System.Drawing.Color.Red;
+            this.label8.Location = new System.Drawing.Point(44, 119);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(573, 38);
+            this.label8.TabIndex = 24;
+            this.label8.Text = "類似工事の場合に見積データのみを引用して作成\r\n※工事情報は初期化されます　【別工事として新規に作成されます】";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label6.ForeColor = System.Drawing.Color.Red;
+            this.label6.Location = new System.Drawing.Point(44, 42);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(590, 38);
+            this.label6.TabIndex = 25;
+            this.label6.Text = "既存工事をコピーして作成　　　【同じ工事として新規に作成されます】\r\n※工事内容の増減・変更に伴う見積変更の場合に使用";
+            // 
+            // radioButton1
+            // 
+            this.radioButton1.AutoSize = true;
+            this.radioButton1.Checked = true;
+            this.radioButton1.Location = new System.Drawing.Point(28, 20);
+            this.radioButton1.Name = "radioButton1";
+            this.radioButton1.Size = new System.Drawing.Size(552, 23);
+            this.radioButton1.TabIndex = 23;
+            this.radioButton1.TabStop = true;
+            this.radioButton1.Text = "工事情報・見積データをコピー【同一工事として作成】";
+            this.radioButton1.UseVisualStyleBackColor = true;
+            this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton1_CheckedChanged);
+            // 
+            // radioButton2
+            // 
+            this.radioButton2.AutoSize = true;
+            this.radioButton2.Location = new System.Drawing.Point(28, 96);
+            this.radioButton2.Name = "radioButton2";
+            this.radioButton2.Size = new System.Drawing.Size(237, 23);
+            this.radioButton2.TabIndex = 22;
+            this.radioButton2.Text = "見積データのみコピー";
+            this.radioButton2.UseVisualStyleBackColor = true;
+            this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton1_CheckedChanged);
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.Location = new System.Drawing.Point(597, 19);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(174, 24);
+            this.label1.TabIndex = 19;
+            this.label1.Text = "22229999-01";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // radioButton3
+            // 
+            this.radioButton3.AutoSize = true;
+            this.radioButton3.Location = new System.Drawing.Point(28, 173);
+            this.radioButton3.Name = "radioButton3";
+            this.radioButton3.Size = new System.Drawing.Size(216, 23);
+            this.radioButton3.TabIndex = 26;
+            this.radioButton3.Text = "工事情報のみコピー";
+            this.radioButton3.UseVisualStyleBackColor = true;
+            this.radioButton3.CheckedChanged += new System.EventHandler(this.radioButton1_CheckedChanged);
+            // 
+            // label15
+            // 
+            this.label15.AutoSize = true;
+            this.label15.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label15.ForeColor = System.Drawing.Color.Red;
+            this.label15.Location = new System.Drawing.Point(44, 196);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(574, 38);
+            this.label15.TabIndex = 27;
+            this.label15.Text = "既存工事をコピーして作成　　　【別工事として新規に作成されます】\r\n※見積データはコピーされません";
+            // 
+            // label9
+            // 
+            this.label9.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label9.AutoSize = true;
+            this.label9.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label9.ForeColor = System.Drawing.Color.Red;
+            this.label9.Location = new System.Drawing.Point(267, 6);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(366, 19);
+            this.label9.TabIndex = 16;
+            this.label9.Text = "※営業期は任意で変更してください。";
+            // 
+            // label7
+            // 
+            this.label7.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label7.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.label7.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label7.ForeColor = System.Drawing.Color.Black;
+            this.label7.Location = new System.Drawing.Point(3, 1);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(138, 30);
+            this.label7.TabIndex = 16;
+            this.label7.Text = "営業期";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.BackColor = System.Drawing.Color.Maroon;
+            this.groupBox1.Controls.Add(this.label10);
+            this.groupBox1.Controls.Add(this.label13);
+            this.groupBox1.Controls.Add(this.label12);
+            this.groupBox1.Controls.Add(this.label2);
+            this.groupBox1.Controls.Add(this.label11);
+            this.groupBox1.Controls.Add(this.label3);
+            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.label14);
+            this.groupBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.groupBox1.ForeColor = System.Drawing.Color.White;
+            this.groupBox1.Location = new System.Drawing.Point(12, 6);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(800, 130);
+            this.groupBox1.TabIndex = 6;
+            this.groupBox1.TabStop = false;
+            this.groupBox1.Text = "コピー元データ";
+            // 
+            // label10
+            // 
+            this.label10.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label10.BackColor = System.Drawing.Color.White;
+            this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label10.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label10.ForeColor = System.Drawing.Color.Black;
+            this.label10.Location = new System.Drawing.Point(170, 46);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(596, 24);
+            this.label10.TabIndex = 27;
+            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label13
+            // 
+            this.label13.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label13.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label13.ForeColor = System.Drawing.Color.Black;
+            this.label13.Location = new System.Drawing.Point(26, 20);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(138, 24);
+            this.label13.TabIndex = 23;
+            this.label13.Text = "工事番号";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label12
+            // 
+            this.label12.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label12.BackColor = System.Drawing.Color.White;
+            this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label12.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label12.ForeColor = System.Drawing.Color.Black;
+            this.label12.Location = new System.Drawing.Point(170, 98);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(240, 24);
+            this.label12.TabIndex = 28;
+            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label2
+            // 
+            this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(26, 46);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(138, 24);
+            this.label2.TabIndex = 24;
+            this.label2.Text = "工事名称";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label11
+            // 
+            this.label11.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label11.BackColor = System.Drawing.Color.White;
+            this.label11.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label11.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(170, 72);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(240, 24);
+            this.label11.TabIndex = 29;
+            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label3
+            // 
+            this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(26, 72);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(138, 24);
+            this.label3.TabIndex = 25;
+            this.label3.Text = "営業担当者";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(26, 98);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(138, 24);
+            this.label4.TabIndex = 26;
+            this.label4.Text = "工事担当者";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label14
+            // 
+            this.label14.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label14.BackColor = System.Drawing.Color.White;
+            this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label14.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.label14.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label14.ForeColor = System.Drawing.Color.Black;
+            this.label14.Location = new System.Drawing.Point(170, 20);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(180, 24);
+            this.label14.TabIndex = 22;
+            this.label14.Text = "22229999-01";
+            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblNextMessage
+            // 
+            this.lblNextMessage.BackColor = System.Drawing.Color.White;
+            this.lblNextMessage.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblNextMessage.Location = new System.Drawing.Point(26, 26);
+            this.lblNextMessage.Name = "lblNextMessage";
+            this.lblNextMessage.Size = new System.Drawing.Size(748, 96);
+            this.lblNextMessage.TabIndex = 21;
+            this.lblNextMessage.Text = "工事情報は次画面で入力してください。";
+            this.lblNextMessage.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // groupBox3
+            // 
+            this.groupBox3.BackColor = System.Drawing.Color.LightGreen;
+            this.groupBox3.Controls.Add(this.tableLayoutPanel3);
+            this.groupBox3.Controls.Add(this.lblNextMessage);
+            this.groupBox3.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.groupBox3.Location = new System.Drawing.Point(12, 466);
+            this.groupBox3.Name = "groupBox3";
+            this.groupBox3.Size = new System.Drawing.Size(800, 130);
+            this.groupBox3.TabIndex = 18;
+            this.groupBox3.TabStop = false;
+            this.groupBox3.Text = "営業期・営業担当者・工事担当者";
+            // 
+            // tableLayoutPanel3
+            // 
+            this.tableLayoutPanel3.ColumnCount = 3;
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 144F));
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 120F));
+            this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 484F));
+            this.tableLayoutPanel3.Controls.Add(this.cmbConstructionPerson, 1, 2);
+            this.tableLayoutPanel3.Controls.Add(this.cmbSalesPerson, 1, 1);
+            this.tableLayoutPanel3.Controls.Add(this.label20, 0, 1);
+            this.tableLayoutPanel3.Controls.Add(this.label9, 2, 0);
+            this.tableLayoutPanel3.Controls.Add(this.label22, 0, 2);
+            this.tableLayoutPanel3.Controls.Add(this.label7, 0, 0);
+            this.tableLayoutPanel3.Controls.Add(this.cmbConstructionPeriod, 1, 0);
+            this.tableLayoutPanel3.Location = new System.Drawing.Point(26, 26);
+            this.tableLayoutPanel3.Name = "tableLayoutPanel3";
+            this.tableLayoutPanel3.RowCount = 3;
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 32F));
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 32F));
+            this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 32F));
+            this.tableLayoutPanel3.Size = new System.Drawing.Size(748, 96);
+            this.tableLayoutPanel3.TabIndex = 23;
+            // 
+            // cmbConstructionPerson
+            // 
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.tableLayoutPanel3.SetColumnSpan(this.cmbConstructionPerson, 2);
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(147, 67);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(300, 27);
+            this.cmbConstructionPerson.TabIndex = 22;
+            // 
+            // cmbSalesPerson
+            // 
+            this.cmbSalesPerson.BackColor = System.Drawing.Color.White;
+            this.tableLayoutPanel3.SetColumnSpan(this.cmbSalesPerson, 2);
+            this.cmbSalesPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbSalesPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbSalesPerson.FormattingEnabled = true;
+            this.cmbSalesPerson.Location = new System.Drawing.Point(147, 35);
+            this.cmbSalesPerson.Name = "cmbSalesPerson";
+            this.cmbSalesPerson.Size = new System.Drawing.Size(300, 27);
+            this.cmbSalesPerson.TabIndex = 21;
+            // 
+            // label20
+            // 
+            this.label20.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label20.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.label20.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label20.ForeColor = System.Drawing.Color.Black;
+            this.label20.Location = new System.Drawing.Point(3, 33);
+            this.label20.Name = "label20";
+            this.label20.Size = new System.Drawing.Size(138, 30);
+            this.label20.TabIndex = 18;
+            this.label20.Text = "営業担当者";
+            this.label20.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label22
+            // 
+            this.label22.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label22.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.label22.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label22.ForeColor = System.Drawing.Color.Black;
+            this.label22.Location = new System.Drawing.Point(3, 65);
+            this.label22.Name = "label22";
+            this.label22.Size = new System.Drawing.Size(138, 30);
+            this.label22.TabIndex = 20;
+            this.label22.Text = "工事担当者";
+            this.label22.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbConstructionPeriod
+            // 
+            this.cmbConstructionPeriod.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPeriod.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPeriod.FormattingEnabled = true;
+            this.cmbConstructionPeriod.Location = new System.Drawing.Point(147, 3);
+            this.cmbConstructionPeriod.Name = "cmbConstructionPeriod";
+            this.cmbConstructionPeriod.Size = new System.Drawing.Size(114, 27);
+            this.cmbConstructionPeriod.TabIndex = 17;
+            // 
+            // FrmNewOrContinueCopy
+            // 
+            this.AcceptButton = this.btnCancel;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.ClientSize = new System.Drawing.Size(824, 647);
+            this.Controls.Add(this.groupBox3);
+            this.Controls.Add(this.groupBox2);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.panel1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmNewOrContinueCopy";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "実　行　確　認";
+            this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.FrmNewOrContinueCopy_FormClosed);
+            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            this.panel1.ResumeLayout(false);
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox2.PerformLayout();
+            this.groupBox1.ResumeLayout(false);
+            this.groupBox3.ResumeLayout(false);
+            this.tableLayoutPanel3.ResumeLayout(false);
+            this.tableLayoutPanel3.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnExecProc1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private CustomControls.ComboBoxEX cmbConstructionPeriod;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label lblNextMessage;
+        private System.Windows.Forms.ToolTip toolTip1;
+        private System.Windows.Forms.GroupBox groupBox3;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+        private System.Windows.Forms.Label label20;
+        private System.Windows.Forms.Label label22;
+        private System.Windows.Forms.ComboBox cmbSalesPerson;
+        private System.Windows.Forms.ComboBox cmbConstructionPerson;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.RadioButton radioButton1;
+        private System.Windows.Forms.RadioButton radioButton2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.RadioButton radioButton3;
+        private System.Windows.Forms.Label label15;
+        private System.Windows.Forms.Label label16;
+        private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.Label label12;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label14;
+        private System.Windows.Forms.Label label18;
+        private System.Windows.Forms.Label label17;
+        private System.Windows.Forms.RadioButton radioButton4;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.cs	(revision 51)
@@ -0,0 +1,1173 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmNewOrContinueCopy : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示コントロール定義
+        /// </summary>
+        private enum Dispcount
+        {
+            ConstructionCode = 0,
+            ConstructionName,
+            SalesPerson,
+            ConstructionPerson,
+            ConstructionPeriod,
+            radioButton1,
+            ConstructionCode1,
+            radioButton2,
+            ConstructionCode2,
+            radioButton3,
+            ConstructionCode3,
+            radioButton4,
+            ConstructionCode4,
+        }
+        /// <summary>
+        /// 工事名称
+        /// </summary>
+        private const int s_ConstructionNameLength = 120;
+        /// <summary>
+        /// 見積提出期限（日）
+        /// </summary>
+        private static int s_EstimatesSubmitDeadline = 7;
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+        /// <summary>
+        /// コンロールオブジェクト
+        /// </summary>
+        private Control[] m_dispControl;
+        /// <summary>
+        /// 新規工事番号取得
+        /// </summary>
+        private bool m_NewConstruction = false;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        /// <summary>
+        /// 新規工事番号取得
+        /// </summary>
+        public bool NewConstruction
+        {
+            get { return m_NewConstruction; }
+        }
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+        #endregion
+
+        #region フォームクローズ
+        private void FrmNewOrContinueCopy_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            if (m_EndButton == DialogResult.None) m_EndButton = DialogResult.Cancel;
+
+        }
+        #endregion
+        
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmNewOrContinueCopy()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // コントロールのセット
+            SetDisplayObject();
+
+            // 営業期セット
+            SetcmbConstructionPeriod();
+
+            // 担当者セット
+            SetcmbPersons();
+
+            // 初期表示
+            InitDataLoad();
+        }
+        #endregion
+        
+        #region キャンセルボタン
+        /// <summary>
+        /// キャンセルボタン追加
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.Cancel;
+            this.Close();
+        }
+        #endregion
+
+        #region 実行ボタン
+        /// <summary>
+        /// 実行ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnExecProc1_Click(object sender, EventArgs e)
+        {
+            // データ存在チェック
+            if (!DispFeildCheck()) return;
+
+            // データコピー
+            if (!CopyTableData())
+            {
+                MessageBox.Show("データコピーに失敗しました。", "コピーエラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+
+            m_EndButton = DialogResult.Yes;
+            this.Close();
+        }
+        #endregion
+        
+        #region ラジオボタン
+        /// <summary>
+        /// チェックボタンの変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void radioButton1_CheckedChanged(object sender, EventArgs e)
+        {
+            if (radioButton1.Checked)
+            {
+                tableLayoutPanel3.Visible = true;
+                lblNextMessage.Visible = false;
+                // 工事番号の表示
+                m_dispControl[(int)Dispcount.ConstructionCode1].Visible = true;
+                m_dispControl[(int)Dispcount.ConstructionCode2].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode3].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode4].Visible = false;
+            }
+            else if (radioButton2.Checked)
+            {
+                tableLayoutPanel3.Visible = false;
+                lblNextMessage.Visible = true;
+                // 工事番号の表示
+                m_dispControl[(int)Dispcount.ConstructionCode1].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode2].Visible = true;
+                m_dispControl[(int)Dispcount.ConstructionCode3].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode4].Visible = false;
+            }
+            else if (radioButton3.Checked)
+            {
+                tableLayoutPanel3.Visible = false;
+                lblNextMessage.Visible = true;
+                // 工事番号の表示
+                m_dispControl[(int)Dispcount.ConstructionCode1].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode2].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode3].Visible = true;
+                m_dispControl[(int)Dispcount.ConstructionCode4].Visible = false;
+            }
+            else if (radioButton4.Checked)
+            {
+                tableLayoutPanel3.Visible = false;
+                lblNextMessage.Visible = true;
+                // 工事番号の表示
+                m_dispControl[(int)Dispcount.ConstructionCode1].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode2].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode3].Visible = false;
+                m_dispControl[(int)Dispcount.ConstructionCode4].Visible = true;
+            }
+            // 工事番号の表示
+            SetConstructionCode();
+        }
+
+        #endregion
+
+        #region 画面クリア
+        /// <summary>
+        /// 画面クリア
+        /// </summary>
+        private void ClearDisplay()
+        {
+            try
+            {
+                foreach (Control wrk in m_dispControl)
+                {
+                    if (CommonMotions.chkObjectIsNull(wrk)) continue;
+                    if (!wrk.GetType().Equals(typeof(CheckBox))) continue;
+                    wrk.Text = "";
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region オブジェクトコントロールセット
+        /// <summary>
+        /// 表示オブジェクトの取得
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            int CtrlCnt = Enum.GetNames(typeof(Dispcount)).Length;
+            m_dispControl = new Control[CtrlCnt];
+
+            m_dispControl[(int)Dispcount.ConstructionCode] = label14;
+            m_dispControl[(int)Dispcount.ConstructionName] = label10;
+            m_dispControl[(int)Dispcount.SalesPerson] = label11;
+            m_dispControl[(int)Dispcount.ConstructionPerson] = label12;
+            m_dispControl[(int)Dispcount.ConstructionPeriod] = cmbConstructionPeriod;
+            m_dispControl[(int)Dispcount.radioButton1] = radioButton1;
+            m_dispControl[(int)Dispcount.radioButton2] = radioButton2;
+            m_dispControl[(int)Dispcount.radioButton3] = radioButton3;
+            m_dispControl[(int)Dispcount.radioButton4] = radioButton4;
+            m_dispControl[(int)Dispcount.ConstructionCode1] = label1;
+            m_dispControl[(int)Dispcount.ConstructionCode2] = label5;
+            m_dispControl[(int)Dispcount.ConstructionCode3] = label16;
+            m_dispControl[(int)Dispcount.ConstructionCode4] = label17;
+        }
+        #endregion
+
+        #region 初期関連
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // クリア
+                ClearDisplay();
+
+                if (!DisplayData())
+                {
+                    m_EndButton = DialogResult.Cancel;
+                    this.Close();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 担当者名取得
+        /// <summary>
+        /// 担当者名を取得する
+        /// </summary>
+        /// <param name="PersonCode"></param>
+        /// <returns></returns>
+        private string GetPersonName(int PersonCode)
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            try
+            {
+                string strRet = string.Empty;
+
+                string strPerson = picDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster picRec = new PersonInChargeMaster();
+                if (picDB.SelectAction(strPerson, ref picRec)) strRet =picRec.PersonName;
+
+                return strRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+            }
+
+        }
+        #endregion
+
+        #region データチェック
+        /// <summary>
+        /// データ表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            IOEstimateData edDB = new IOEstimateData();
+            try
+            {
+                bool bRet = true;
+                bool BaseFlg = true;
+                bool EstiFlg = true;
+
+                // 工事基本情報取得
+                string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
+                ConstructionBaseInfo cbRec = new ConstructionBaseInfo();
+                if (!cbDB.SelectAction(strSQL, ref cbRec)) BaseFlg = false;
+
+                // 積算見積データ取得
+                strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode);
+                EstimateData edRec = new EstimateData();
+                if (!edDB.SelectAction(strSQL, ref edRec)) EstiFlg = false;
+
+                if (radioButton1.Checked)
+                {   // 両方コピー
+                    if (BaseFlg && EstiFlg)
+                    {
+                        bRet = true;
+                    }
+                    else if (!BaseFlg)
+                    {
+                        MessageBox.Show("工事基本情報がありません。", "コピーエラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        bRet = false;
+                    }
+                    else if (!EstiFlg)
+                    {
+                        MessageBox.Show("積算見積データがありません。", "コピーエラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        bRet = false;
+                    }
+                    else
+                    {
+                        MessageBox.Show("工事基本情報・積算見積データがありません。", "コピーエラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        bRet = false;
+                    }
+                }
+                else if (radioButton2.Checked)
+                {   // 積算データコピー
+                    if (EstiFlg)
+                    {
+                        bRet = true;
+                    }
+                    else
+                    {
+                        MessageBox.Show("積算見積データがありません。", "コピーエラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        bRet = false;
+                    }
+                }
+                else if (radioButton3.Checked)
+                {   // 工事基本情報コピー
+                    if (BaseFlg)
+                    {
+                        bRet = true;
+                    }
+                    else
+                    {
+                        MessageBox.Show("工事基本情報がありません。", "コピーエラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        bRet = false;
+                    }
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+                edDB.close(); edDB = null;
+            }
+        }
+        #endregion
+
+        #region データ表示
+        /// <summary>
+        /// データ表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DisplayData()
+        {
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            IOConstructionBaseInfoDetail cbdDB = new IOConstructionBaseInfoDetail();
+            IOEstimateData edDB = new IOEstimateData();
+            try
+            {
+                bool bRet = true;
+
+                // 元工事番号
+                m_dispControl[(int)Dispcount.ConstructionCode].Text = CommonMotions.cnvStringCodeFromInt(m_ConstructionCode, "-", 8);
+
+                // 工事基本情報取得
+                string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
+                ConstructionBaseInfo cbRec = new ConstructionBaseInfo();
+                if (!cbDB.SelectAction(strSQL, ref cbRec)) return false;
+
+                // 積算見積データ取得（見積データが無くてもコピーを行う 2016/07/19）
+                //strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode);
+                //EstimateData edRec = new EstimateData();
+                //if (!edDB.SelectAction(strSQL, ref edRec)) return false;
+
+                // 工事名称取得
+                strSQL = cbdDB.CreatePrimarykeyString(m_ConstructionCode, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                ConstructionBaseInfoDetail cbdRec = new ConstructionBaseInfoDetail();
+                if (!cbdDB.SelectAction(strSQL, ref cbdRec)) return false;
+                m_dispControl[(int)Dispcount.ConstructionName].Text = cbdRec.DetailString;
+                toolTip1.SetToolTip(m_dispControl[(int)Dispcount.ConstructionName], cbdRec.DetailString);
+
+                // 担当者表示
+                m_dispControl[(int)Dispcount.SalesPerson].Text = GetPersonName(cbRec.SalesPersonCode);
+                toolTip1.SetToolTip(m_dispControl[(int)Dispcount.SalesPerson], m_dispControl[(int)Dispcount.SalesPerson].Text);
+                cmbSalesPerson.SelectedValue = cbRec.SalesPersonCode;
+
+                m_dispControl[(int)Dispcount.ConstructionPerson].Text = GetPersonName(cbRec.ConstructionPersonCode);
+                toolTip1.SetToolTip(m_dispControl[(int)Dispcount.ConstructionPerson], m_dispControl[(int)Dispcount.ConstructionPerson].Text);
+                cmbConstructionPerson.SelectedValue = cbRec.ConstructionPersonCode;
+
+                // 工事番号表示
+                SetConstructionCode();
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+                cbdDB.close(); cbdDB = null;
+                edDB.close(); edDB = null;
+            }
+        }
+        #endregion
+
+        #region 工事情報・見積データコピー時の工事番号表示(radiobutton1)
+        /// <summary>
+        /// 工事情報・見積データコピー時の工事番号表示(radiobutton1)
+        /// </summary>
+        /// <param name="cbDB"></param>
+        private bool DispChildDataCode(IOConstructionBaseInfo cbDB)
+        {
+            try
+            {
+                int ConstructionCode = 0;
+
+                // 工事枝番のカウントアップ分工事番号取得
+                ConstructionCode = cbDB.CreateNextBranchCounstructionCode(m_ConstructionCode);
+
+                // 工事番号表示
+                m_dispControl[(int)Dispcount.ConstructionCode1].Text = CommonMotions.cnvStringCodeFromInt(ConstructionCode, "-", 8);
+
+                // 作成限界を超えた場合はエラーにする
+                if (ConstructionCode < 0)
+                {
+                    MessageBox.Show("新規工事番号が取得できません。", "継続作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                else if ((ConstructionCode - m_ConstructionCode) > 99)
+                {
+                    MessageBox.Show("変更作成の上限数を超えました、\nこれ以上は作成できません、\n新規工事として作成してください。",
+                                    "継続作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 工事番号表示
+        /// <summary>
+        /// 工事番号の表示
+        /// </summary>
+        private void SetConstructionCode()
+        {
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            try
+            {
+                btnExecProc1.Enabled = true;
+
+                // 工事番号クリア
+                m_dispControl[(int)Dispcount.ConstructionCode1].Text = string.Empty;
+                m_dispControl[(int)Dispcount.ConstructionCode2].Text = string.Empty;
+                m_dispControl[(int)Dispcount.ConstructionCode3].Text = string.Empty;
+                m_dispControl[(int)Dispcount.ConstructionCode4].Text = string.Empty;
+
+                // ----- 工事情報・見積データコピー
+                if (radioButton1.Checked)
+                {
+                    // ----- 継続工事番号の表示
+                    if (!DispChildDataCode(cbDB)) btnExecProc1.Enabled = false;
+
+                    // ----- ここで抜ける（以下の処理は新規工事番号取得）
+                    return;
+                }
+
+                // 現在データを取得する
+                string strExistsData = cbDB.CreatePrimarykeyString(m_ConstructionCode);
+                ConstructionBaseInfo BaseRec = new ConstructionBaseInfo();
+                if (!cbDB.SelectAction(strExistsData, ref BaseRec)) return;
+
+                // ----- 見積データのみコピー・工事情報のみコピー
+                int PeriodValue = 0;
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)CommonDefine.SystemConstructionNoBase.BusinessPeriod)
+                    PeriodValue = BaseRec.ConstructionPeriod;
+                else
+                    PeriodValue = BaseRec.ConstructionYear;
+
+                // 新規工事番号の表示
+                int ConstructionCode = cbDB.CreateNewCounstructionCode(PeriodValue);
+                // 作成限界を超えた場合はエラーにする
+                if (ConstructionCode < 0)
+                {
+                    MessageBox.Show("新規工事番号が取得できません。", "継続作成エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                if (radioButton2.Checked)
+                    m_dispControl[(int)Dispcount.ConstructionCode2].Text = CommonMotions.cnvStringCodeFromInt(ConstructionCode, "-", 8);
+                else if (radioButton3.Checked)
+                    m_dispControl[(int)Dispcount.ConstructionCode3].Text = CommonMotions.cnvStringCodeFromInt(ConstructionCode, "-", 8);
+                else if (radioButton4.Checked)
+                    m_dispControl[(int)Dispcount.ConstructionCode4].Text = CommonMotions.cnvStringCodeFromInt(ConstructionCode, "-", 8);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+        }
+
+        #endregion
+
+        #region 営業期コンボボックス
+        /// <summary>
+        /// 営業期コンボボックスへ文字をセットする
+        /// </summary>
+        private bool SetcmbConstructionPeriod()
+        {
+            try
+            {
+                cmbConstructionPeriod.Items.Clear();
+                cmbConstructionPeriod.Text = "";
+
+                if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)CommonDefine.SystemConstructionNoBase.BusinessPeriod)
+                {
+                    // 期数セット（-2年～+2年）
+                    int NowPeriod = CommonMotions.SystemMasterData.BusinessPeriod;
+                    if (NowPeriod > 2) cmbConstructionPeriod.Items.Add((NowPeriod - 2).ToString());
+                    if (NowPeriod > 1) cmbConstructionPeriod.Items.Add((NowPeriod - 1).ToString());
+                    cmbConstructionPeriod.Items.Add(NowPeriod.ToString());
+                    cmbConstructionPeriod.Items.Add((NowPeriod + 1).ToString());
+                    cmbConstructionPeriod.Items.Add((NowPeriod + 2).ToString());
+
+                    // 今季セット
+                    if (cmbConstructionPeriod.Items.Count == 5)
+                        cmbConstructionPeriod.SelectedIndex = 2;
+                    else if (cmbConstructionPeriod.Items.Count == 4)
+                        cmbConstructionPeriod.SelectedIndex = 1;
+                    else if (cmbConstructionPeriod.Items.Count == 3)
+                        cmbConstructionPeriod.SelectedIndex = 0;
+                }
+                else
+                {
+                    label7.Text = "営業年度";
+                    int NowYear = CommonMotions.SystemMasterData.ConstructionYear;
+
+                    cmbConstructionPeriod.Items.Add((NowYear - 2).ToString());
+                    cmbConstructionPeriod.Items.Add((NowYear - 1).ToString());
+                    cmbConstructionPeriod.Items.Add((NowYear).ToString());
+                    cmbConstructionPeriod.Items.Add((NowYear + 1).ToString());
+                    cmbConstructionPeriod.Items.Add((NowYear + 2).ToString());
+
+                    // 今季セット
+                    cmbConstructionPeriod.SelectedIndex = 2;
+
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックス
+        /// <summary>
+        /// 担当者コンボボックスへ文字をセットする
+        /// </summary>
+        private bool SetcmbPersons()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>(); ;
+            try
+            {
+                cmbSalesPerson.DataSource = null;
+                cmbSalesPerson.Items.Clear();
+                cmbSalesPerson.Text = "";
+
+                // 担当者マスタを検索する
+                string strSQL = " Where DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC";
+
+                // 担当者マスタ読込
+                if (!picDB.SelectAction(strSQL, ref workList)) return false;
+
+                List<KeyValuePair<int, string>> SalesDataList = new List<KeyValuePair<int, string>>();
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                SalesDataList.Add(new KeyValuePair<int, string>(0, ""));
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
+
+                    SalesDataList.Add(keyval);
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbSalesPerson, SalesDataList);
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                picDB.close();
+                picDB = null;
+            }
+        }
+        #endregion
+
+        #region 工事情報・積算見積コピー
+        /// <summary>
+        /// 工事基本情報・積算見積のコピー
+        /// </summary>
+        /// <returns></returns>
+        private bool CopyTableData()
+        {
+            IOConstructionBaseInfo DB1 = new IOConstructionBaseInfo();                  // 工事基本情報
+            IOConstructionBaseInfoDetail DB2 = new IOConstructionBaseInfoDetail();      // 工事基本情報明細
+            IOEstimateData DB3 = new IOEstimateData();                                  // 積算見積データ  
+            IOEstimateDataBody DB4 = new IOEstimateDataBody();                          // 積算見積ボディ
+            IOEstimateDataDetail DB5 = new IOEstimateDataDetail();                      // 積算見積明細
+            IOConstructionProgressDate DB6 = new IOConstructionProgressDate();          // 案件進捗日付データ
+            try
+            {
+                int iToCode = 0;
+
+                // コピー先工事番号取得
+                if (radioButton1.Checked)
+                    iToCode = CommonMotions.cnvIntFromStringCode(m_dispControl[(int)Dispcount.ConstructionCode1].Text, "-");
+                else if (radioButton2.Checked)
+                    iToCode = CommonMotions.cnvIntFromStringCode(m_dispControl[(int)Dispcount.ConstructionCode2].Text, "-");
+                else if (radioButton3.Checked)
+                    iToCode = CommonMotions.cnvIntFromStringCode(m_dispControl[(int)Dispcount.ConstructionCode3].Text, "-");
+                else if (radioButton4.Checked)
+                    iToCode = CommonMotions.cnvIntFromStringCode(m_dispControl[(int)Dispcount.ConstructionCode4].Text, "-");
+
+                if (iToCode == 0)
+                {
+                    MessageBox.Show("新規工事番号が取得できません。", "コピー処理エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                // コピー処理
+                DB1.connect(); DB1.beginTran();
+                DB2.connect(); DB2.beginTran();
+                DB3.connect(); DB3.beginTran();
+                DB4.connect(); DB4.beginTran();
+                DB5.connect(); DB5.beginTran();
+                DB6.connect(); DB6.beginTran();
+
+                // デフォルトは新規工事にしておく
+                m_NewConstruction = true;
+
+                // ----- 工事基本情報・積算見積データコピー(枝番カウントアップ)
+                if (radioButton1.Checked)
+                {
+                    // 積算見積情報コピー
+                    if (!RecordCopyTypeB(m_ConstructionCode, iToCode, DB3, DB4, DB5))
+                    {
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+
+                    if (!RecordCopyTypeA(m_ConstructionCode, iToCode, DB1, DB2))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                    // その２工事基本情報データ作成
+                    if (!InitSetBaseInfo(iToCode, DB1))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                    // その３工事基本情報明細データ作成
+                    if (!InitSetBaseInfoDetail(m_ConstructionCode, iToCode, DB2))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+
+                    // 継続案件の場合は新規工事フラグを落とす
+                    m_NewConstruction = false;
+                }
+                // ----- 積算見積データコピー
+                else if (radioButton2.Checked)
+                {
+                    // 積算見積情報コピー
+                    if (!RecordCopyTypeB(m_ConstructionCode, iToCode, DB3, DB4, DB5))
+                    {
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+
+                }
+                // ----- 工事基本情報コピー
+                else if (radioButton3.Checked)
+                {
+                    if (!RecordCopyTypeA(m_ConstructionCode, iToCode, DB1, DB2))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                    // その２工事基本情報データ作成
+                    if (!InitSetBaseInfo(iToCode, DB1))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                    // その３工事基本情報明細データ作成
+                    if (!InitSetBaseInfoDetail(m_ConstructionCode, iToCode, DB2))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                }
+                // ----- 工事基本情報・積算見積データコピー(新規工事)
+                else if (radioButton4.Checked)
+                {
+                    // 積算見積情報コピー
+                    if (!RecordCopyTypeB(m_ConstructionCode, iToCode, DB3, DB4, DB5))
+                    {
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+
+                    if (!RecordCopyTypeA(m_ConstructionCode, iToCode, DB1, DB2))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                    // その２工事基本情報データ作成
+                    if (!InitSetBaseInfo(iToCode, DB1))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                    // その３工事基本情報明細データ作成
+                    if (!InitSetBaseInfoDetail(m_ConstructionCode, iToCode, DB2))
+                    {
+                        DB1.rollback();
+                        DB2.rollback();
+                        DB3.rollback();
+                        DB4.rollback();
+                        DB5.rollback();
+                        return false;
+                    }
+                }
+
+                // 案件進捗日付データ登録
+                if (!ProgressDate(DB6, iToCode))
+                {
+                    DB1.rollback();
+                    DB2.rollback();
+                    DB3.rollback();
+                    DB4.rollback();
+                    DB5.rollback();
+                    DB6.rollback();
+                    return false;
+                }
+
+                // 新規工事番号セット
+                m_ConstructionCode = iToCode;
+
+                DB1.commit();
+                DB2.commit();
+                DB3.commit();
+                DB4.commit();
+                DB5.commit();
+                DB6.commit();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                DB1.close(); DB1 = null;
+                DB2.close(); DB2 = null;
+                DB3.close(); DB3 = null;
+                DB4.close(); DB4 = null;
+                DB5.close(); DB5 = null;
+                DB6.close(); DB6 = null;
+            }
+        }
+        #endregion
+
+        #region その２工事基本情報データ作成
+        /// <summary>
+        /// 工事基本情報設定
+        /// </summary>
+        /// <param name="cbRec"></param>
+        private bool InitSetBaseInfo(int ToCode, IOConstructionBaseInfo cbDB)
+        {
+            try
+            {
+                // 工事基本情報の設定
+                string strSQL = cbDB.CreatePrimarykeyString(ToCode);
+                ConstructionBaseInfo cbRec = new ConstructionBaseInfo();
+                if (!cbDB.SelectAction(strSQL, ref cbRec, false)) return false;
+
+                // 営業期・工事年度を更新する
+                int iPeriod = 0;
+                if (tableLayoutPanel3.Visible)
+                {
+                    iPeriod = CommonMotions.cnvInt(cmbConstructionPeriod.Text);
+                    if (CommonMotions.SystemMasterData.ConstructionNoBase == (int)CommonDefine.SystemConstructionNoBase.BusinessPeriod)
+                        cbRec.ConstructionPeriod = iPeriod;                                                 // 工事期
+                    else
+                        cbRec.ConstructionYear = iPeriod;	                                                // 工事年度
+                }
+
+                cbRec.ConstructionStatusFlg = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("依頼受け中")).Key;  // 工事進捗状態
+                cbRec.RequestedDate	= DateTime.Now;                                                 // 依頼受け日
+                cbRec.EstimatesSubmitDeadline = DateTime.Now.AddDays(s_EstimatesSubmitDeadline);	// 見積提出期限
+                cbRec.EstimatesSubmittedDate = DateTime.MinValue;	                                // 見積提出日
+                cbRec.EstimatesExpirationDate = DateTime.MinValue;	                                // 見積有効期限
+                cbRec.ProvisionalOrderDate = DateTime.MinValue;                                     // 仮受注日
+                cbRec.OrderDate = DateTime.MinValue;                                                // 受注日
+                cbRec.TransferConstructionDate = DateTime.MinValue;                                 // 部署引継日
+                cbRec.ConstructionStartingDate = DateTime.MinValue;                                 // 施工開始日
+                cbRec.ConstructionCompletionDate = DateTime.MinValue;                               // 施工完了日
+                cbRec.BillingStartDate = DateTime.MinValue;	                                        // 請求準備開始日
+                cbRec.BillingDate = DateTime.MinValue;	                                            // 請求日
+
+                // 工事情報のみコピー・新規工事作成は工事の情報以外はクリアする
+                if (radioButton3.Checked || radioButton4.Checked)
+                {
+                    cbRec.TyingFlg = (int)CommonDefine.BaseInfoTyingFlg.Standard;                   // 紐付データフラグ
+                    cbRec.OrderStartingDate = DateTime.MinValue;	                                // 開始予定日
+                    cbRec.OrderCompletionDate = DateTime.MinValue;	                                // 完了予定日
+                    cbRec.PreparationStartDate = DateTime.MinValue;                                 // 施工準備開始日
+                    cbRec.NonOrderDate = DateTime.MinValue;                                         // 非受注日
+                    cbRec.OrdersDecisionPrice = 0;                                                  // 税抜受注決定金額
+                    cbRec.OrdersDecisionPriceInTax = 0;                                             // 税込受注決定金額
+                    cbRec.ConstructionPersonCode = 0;                                               // 工事担当者コード
+                    cbRec.ConstrSubPersonCode = 0;	                                                // 工事副担当者コード
+                    cbRec.ConstructionInstructor = 0;                                               // 工事指導員コード
+                    cbRec.TransferConstruction = 0;                                                 // 移管先コード
+                    cbRec.TransferConstructionDate = DateTime.MinValue;                             // 工事移管日
+                    cbRec.ConstructionPeriodStart = DateTime.MinValue;                              // 契約工期開始
+                    cbRec.ConstructionPeriodEnd = DateTime.MinValue;                                // 契約工期完了
+                    cbRec.ConstructionPeriodStart2 = DateTime.MinValue;                             // 契約工期開始（延長時）
+                    cbRec.ConstructionPeriodEnd2 = DateTime.MinValue;                               // 契約工期完了（延長時）
+                    cbRec.StartDate = DateTime.MinValue;	                                        // 工事開始日
+                    cbRec.EndDate = DateTime.MinValue;                                              // 工事終了日
+                    cbRec.PurchaseOrderMailingDate = DateTime.MinValue;                             // 注文書郵送日
+                    cbRec.PurchaseOrderReturnDate = DateTime.MinValue;                              // 注文書返送日
+                    cbRec.PurchaseOrderReturnCheckDate = DateTime.MinValue;                         // 注文書返送確認日
+                    cbRec.ConsumptionTaxFlg = 1;                                                    // 消費税フラグ
+                    //cbRec.PrimeContractorFlg = 1;	                                                // 元請フラグ
+                    //cbRec.SalesCostFlg = 1;	                                                    // 営業経費発生フラグ
+                    //cbRec.EstimateType = 1;                                                       // 見積種別
+                    cbRec.BillingSplitFlg = 1;                                                      // 請求回数フラグ
+                    cbRec.BillingSendDate = DateTime.MinValue;                                      // 請求書郵送/手渡し日
+                }
+                else if (radioButton1.Checked)
+                {
+                    // 選択データが通常以外（増減工事の場合は紐付きフラグを子データにする）
+                    if (cbRec.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                    {
+                        cbRec.TyingFlg = (int)CommonDefine.BaseInfoTyingFlg.Tying;
+                    }
+                }
+
+                // 営業担当
+                if (cmbSalesPerson.Text.Length != 0)
+                {
+                    cbRec.SalesPersonCode = CommonMotions.cnvInt(cmbSalesPerson.SelectedValue.ToString());
+                }
+                // 工事担当
+                if (cmbConstructionPerson.Text.Length != 0)
+                {
+                    cbRec.ConstructionPersonCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue.ToString());
+                }
+
+                // 更新処理
+                if (!cbDB.UpdateAction(strSQL, cbRec, false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region その３工事基本情報明細データ作成
+        /// <summary>
+        /// 工事基本情報設定
+        /// </summary>
+        /// <param name="cbRec"></param>
+        private bool InitSetBaseInfoDetail(int FromCode, int ToCode, IOConstructionBaseInfoDetail cbidDB)
+        {
+            try
+            {
+                // 工事基本情報明細の設定
+                string strSQL = cbidDB.CreatePrimarykeyString(ToCode, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                ConstructionBaseInfoDetail cbidRec = new ConstructionBaseInfoDetail();
+                if (!cbidDB.SelectAction(strSQL, ref cbidRec, false)) return false;
+
+                // 工事名を更新する
+                if (cbidRec.DetailString.Length < s_ConstructionNameLength - 2)
+                {
+                    // コピー元がコピーデータの場合に最後が数字かをチェック
+                    int CodeLowerwork = (FromCode % 100);
+                    if (CodeLowerwork != 1)
+                    {
+                        int subcnt = 1;
+                        if (CodeLowerwork > 9) subcnt = 2;
+                        string strwrok = cbidRec.DetailString.Substring(cbidRec.DetailString.Length - subcnt);
+                        // 最後が数字の場合はそれを除く
+                        if (CommonMotions.chkNumeric(strwrok))
+                        {
+                            cbidRec.DetailString = cbidRec.DetailString.Substring(0, cbidRec.DetailString.Length - subcnt);
+                        }
+                    }
+
+                    int CodeLower = (ToCode % 100);
+                    cbidRec.DetailString = cbidRec.DetailString + CodeLower.ToString();
+                }
+
+                // 更新処理
+                if (!cbidDB.UpdateAction(strSQL, cbidRec, false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 工事基本情報一括レコードコピー処理（コピータイプＡ）
+        /// <summary>
+        /// 工事基本情報レコードコピー処理（コピータイプＡ）
+        /// </summary>
+        /// <param name="FromCode"></param>
+        /// <param name="ToCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RecordCopyTypeA(int FromCode, int ToCode, IOConstructionBaseInfo DB1, IOConstructionBaseInfoDetail DB2)
+        {
+            try
+            {
+                // まず削除
+                string strSQL = DB1.CreatePrimarykeyString(ToCode);
+                DB1.DeleteAction(strSQL, false);
+                DB2.DeleteAction(strSQL, false);
+
+                if (!DB1.RecordCopyAction(FromCode, ToCode, false)) return false;
+                if (!DB2.RecordCopyAction(FromCode, ToCode, false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(2), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 積算見積情報一括レコードコピー処理（コピータイプＢ）
+        /// <summary>
+        /// 積算見積情報レコードコピー処理（コピータイプＢ
+        /// ）
+        /// </summary>
+        /// <param name="FromCode"></param>
+        /// <param name="ToCode"></param>
+        /// <param name="bConnect"></param>
+        /// <returns></returns>
+        public bool RecordCopyTypeB(int FromCode, int ToCode, IOEstimateData DB1, IOEstimateDataBody DB2, IOEstimateDataDetail DB3)
+        {
+            try
+            {
+                // まず削除
+                string strSQL = DB1.CreatePrimarykeyString(ToCode);
+                DB1.DeleteAction(strSQL, false);
+                DB2.DeleteAction(strSQL, false);
+                DB3.DeleteAction(strSQL, false);
+
+                if (!DB1.RecordCopyAction(FromCode, ToCode, false)) return false;
+                if (!DB2.RecordCopyAction(FromCode, ToCode, false)) return false;
+                if (!DB3.RecordCopyAction(FromCode, ToCode, false)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(2), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 案件進捗日付データ登録
+        /// <summary>
+        /// 案件進捗日付データ登録
+        /// </summary>
+        /// <param name="cpdDB"></param>
+        /// <returns></returns>
+        public bool ProgressDate(IOConstructionProgressDate cpdDB, int ConstructionCode)
+        {
+            try
+            {
+                // まず削除
+                string strWhere = cpdDB.CreatePrimarykeyString(ConstructionCode);
+                cpdDB.DeleteAction(strWhere, false);
+
+                // データセット
+                ConstructionProgressDate Rec = new ConstructionProgressDate();
+                Rec.ConstructionCode = ConstructionCode;
+                Rec.ConstructionStatusFlg = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("依頼受け中")).Key; ;
+                Rec.PreviousStatusFlg = 0;
+                Rec.ChangeDate = DateTime.Now;
+                Rec.ChangePersonCode = CommonMotions.LoginUserData.PersonCode;
+
+                // 検索文字列作成
+                strWhere = cpdDB.CreatePrimarykeyString(Rec.ConstructionCode, Rec.ConstructionStatusFlg);
+
+                List<ConstructionProgressDate> workList = new List<ConstructionProgressDate>();
+                // データ登録
+                if (!cpdDB.InsertAction(Rec, false))
+                {
+                    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
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CopyTargetList/FrmNewOrContinueCopy.resx	(revision 51)
@@ -0,0 +1,126 @@
+﻿<?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="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>50</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CreateConstructionList/CreateConstructionList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CreateConstructionList/CreateConstructionList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/CreateConstructionList/CreateConstructionList.cs	(revision 51)
@@ -101,13 +101,17 @@
                 strSQL += ", A.ConstructionStatusFlg";
                 strSQL += " From ConstructionBaseInfo A";
 
-                strSQL += ", (Select SB.ConstructionCode, SB.DetailString";
-                strSQL += " From ConstructionBaseInfo SA, ConstructionBaseInfoDetail SB";
-                strSQL += " Where (SA.ConstructionCode (+) = SB.ConstructionCode And SB.DETAILNO = ";
+                //strSQL += ", (Select SB.ConstructionCode, SB.DetailString";
+                strSQL += "LEFT OUTER JOIN (Select SB.ConstructionCode, SB.DetailString";
+                //strSQL += " From ConstructionBaseInfo SA, ConstructionBaseInfoDetail SB";
+                //strSQL += " Where (SA.ConstructionCode (+) = SB.ConstructionCode And SB.DETAILNO = ";
+                strSQL += " From ConstructionBaseInfo SA RIGHT OUTER JOIN ConstructionBaseInfoDetail SB";
+                strSQL += " ON (SA.ConstructionCode = SB.ConstructionCode And SB.DETAILNO = ";
                 strSQL += ((int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName).ToString() + ")";
                 strSQL += ") B";
 
-                strSQL += " Where A.ConstructionCode = B.ConstructionCode (+)";
+                //strSQL += " Where A.ConstructionCode = B.ConstructionCode (+)";
+                strSQL += " ON A.ConstructionCode = B.ConstructionCode";
 
 
                 // 起動対象により選択できるデータを変える
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.cs	(revision 51)
@@ -236,9 +236,9 @@
         private enum ReadData
         {
             /// <summary>
-            /// �w��f�[�^�Ǎ�
+            /// �擪�f�[�^�Ǎ�
             /// </summary>
-            Normal = 0,
+            First = 0,
             /// <summary>
             /// �w��f�[�^���O�̃f�[�^
             /// </summary>
@@ -247,9 +247,20 @@
             /// �w��f�[�^����̃f�[�^
             /// </summary>
             Next,
+            /// <summary>
+            /// �ŏI�f�[�^
+            /// </summary>
+            Final,
         }
         #endregion
+
+        #region ���Ж���
+        /// <summary>
+        /// ���Ж���
+        /// </summary>
+        private const string s_MyCompanyName = "���@�@��";
         #endregion
+        #endregion
 
         #region �ϐ�
         /// <summary>
@@ -303,6 +314,11 @@
         private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
 
         /// <summary>
+        /// �Y���H����{���׏��
+        /// </summary>
+        private ConstructionBaseInfoDetail m_ConstructionBaseInfoDetail = new ConstructionBaseInfoDetail();
+
+        /// <summary>
         /// ���x���R���g���[���ێ��z��
         /// </summary>
         private Control[] m_DspControl;
@@ -461,7 +477,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void FrmConstructionBudget_FormClosing(object sender, FormClosingEventArgs e)
+        private void FrmDRConstruction_FormClosing(object sender, FormClosingEventArgs e)
         {
             try
             {
@@ -506,7 +522,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void FrmConstructionBudget_KeyDown(object sender, KeyEventArgs e)
+        private void FrmDRConstruction_KeyDown(object sender, KeyEventArgs e)
         {
 
         }
@@ -518,7 +534,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void FrmConstructionBudget_Load(object sender, EventArgs e)
+        private void FrmDRConstruction_Load(object sender, EventArgs e)
         {
             try
             {
@@ -545,6 +561,12 @@
                 // �\���E���F�\������
                 InitApprovalDisplay();
 
+                // �Q�Ǝ��͕ύX�ł��Ȃ�
+                if (m_EditLock)
+                {
+                    SeeModeLock();
+                }
+
                 // *-----* �����ړ��{�^���ݒ� *-----*
                 CreateProcessContextMenu(m_SubForm);
                 // *-----* �����ړ��{�^���ݒ� *-----*
@@ -558,7 +580,7 @@
                     // ���F�ΏۃR�[�h���擾����
                     int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H�����񏳔F")).Key;
                     // �Č��ɑ΂��Đ\��������Ă��邩���m�F����
-                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode);
+                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode, CommonDefine.s_Default_OrderNo);
                     // ���O�C���҂����F�҂����m�F����
                     bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
                 }
@@ -586,7 +608,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void FrmConstructionBudget_SizeChanged(object sender, EventArgs e)
+        private void FrmDRConstruction_SizeChanged(object sender, EventArgs e)
         {
             if (this.WindowState == FormWindowState.Minimized)
             {
@@ -633,6 +655,9 @@
         {
             try
             {
+                // �Q�Ǝ��͏������Ȃ�
+                if (m_EditLock) return;
+
                 if (ActiveControl.Name.Equals(btnEnd.Name)) return;
 
                 DataGridView dgv = (DataGridView)sender;
@@ -642,10 +667,12 @@
                 if (m_DgvArray[(int)DataGridDefine.Detail] != dgv) return;
 
                 // �����ȊO�͏������Ȃ�
+                double dwork = 0;
                 switch (e.ColumnIndex)
                 {
                     case (int)DispGridColumn1.NextdayHeadCount:
                         // �����\��l��
+                        dwork = CommonMotions.cnvDouble(dgvRow.Cells[(int)DispGridColumn1.NextdayHeadCount].Value);
                         break;
                     case (int)DispGridColumn1.TotalHeadCount:
                         // �݌v�l��
@@ -656,7 +683,10 @@
                         double Total = GetTotalHeadCount(false,
                                                         CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn1.JobCategoryCode].Value),
                                                         CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn1.CompanyCode].Value));
-                        dgvRow.Cells[(int)DispGridColumn1.TotalHeadCount].Value = (ToDay + Total).ToString("#,0.0");
+                        if (ToDay == 0) dgvRow.Cells[(int)DispGridColumn1.TodayHeadCount].Value = ToDay.ToString("#,#.#");
+                        else dgvRow.Cells[(int)DispGridColumn1.TodayHeadCount].Value = ToDay.ToString("#,0.0");
+                        if ((ToDay + Total) == 0) dgvRow.Cells[(int)DispGridColumn1.TotalHeadCount].Value = (ToDay + Total).ToString("#,#.#");
+                        else dgvRow.Cells[(int)DispGridColumn1.TotalHeadCount].Value = (ToDay + Total).ToString("#,0.0");
                         break;
                     default:
                         return;
@@ -685,6 +715,9 @@
         {
             try
             {
+                // �Q�Ǝ��͏������Ȃ�
+                if (m_EditLock) return;
+
                 // �f�[�^�O���b�h��Active�łȂ���Ώ������Ȃ�
                 if (ActiveControl == null) return;
                 if (!ActiveControl.GetType().Equals(typeof(DataGridViewEX))) return;
@@ -805,6 +838,9 @@
         /// <param name="e"></param>
         private void dgvAllDisplay_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
         {
+            // �Q�Ǝ��͏������Ȃ�
+            if (m_EditLock) return;
+
             DataGridView dgv = (DataGridView)sender;
 
             if (m_DgvArray[(int)DataGridDefine.Detail] != dgv) return;
@@ -835,7 +871,7 @@
         /// <param name="e"></param>
         private void btnLineDel_Click(object sender, EventArgs e)
         {
-            // ���Ў{�H�E�w���i�s���폜����
+            // �s���폜����
             DelLineData();
         }
         #endregion
@@ -853,6 +889,8 @@
 
             m_CloseingProcessOn = true;
 
+            CommonMotions.EntryEndMessage("�H������f�[�^");
+
             // �I��
             this.Close();
         }
@@ -872,6 +910,8 @@
             // �T�u�t�H�[���N���ȊO�͏I������ON
             m_CloseingProcessOn = true;
 
+            CommonMotions.RemoveEndMessage("�H������f�[�^");
+
             // �I��
             this.Close();
         }
@@ -889,8 +929,14 @@
         /// <param name="e"></param>
         private void dgvAllDisplay_Enter(object sender, EventArgs e)
         {
+            // �Q�Ǝ��͏������Ȃ�
+            if (m_EditLock) return;
+
             DataGridView dgv = (DataGridView)sender;
-            
+
+            // �s�ҏW�{�^���\������
+            DisplayLineEditButton(sender);
+
             // �t�H�[�J�X�O���b�h���擾����
             if (dgv == m_DgvArray[(int)DataGridDefine.Detail]) FocusGridNo = (int)DataGridDefine.Detail;
             if (dgv == m_DgvArray[(int)DataGridDefine.Vehicles]) FocusGridNo = (int)DataGridDefine.Vehicles;
@@ -912,6 +958,44 @@
         }
         #endregion
 
+        #region �擪�̓���f�[�^�\��
+        /// <summary>
+        /// �擪�̓���f�[�^�\��
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnFirst_Click(object sender, EventArgs e)
+        {
+            // �f�[�^�ύX�L���̓f�[�^�o�^
+            if (m_bChengeAns)
+            {
+                if (!DataEntryProcess()) return;
+            }
+
+            // �ŏ��̃f�[�^���擾����
+            GetPrevNextData((int)ReadData.First);
+        }
+        #endregion
+
+        #region �ŏI�̓���f�[�^�\��
+        /// <summary>
+        /// �ŏI�̓���f�[�^�\��
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnFinal_Click(object sender, EventArgs e)
+        {
+            // �f�[�^�ύX�L���̓f�[�^�o�^
+            if (m_bChengeAns)
+            {
+                if (!DataEntryProcess()) return;
+            }
+
+            // �ŏI�̃f�[�^���擾����
+            GetPrevNextData((int)ReadData.Final);
+        }
+        #endregion
+
         #region 1�O�̓���f�[�^�\��
         /// <summary>
         /// 1�O�̓���f�[�^�\��
@@ -983,6 +1067,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H�����񏳔F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1029,6 +1116,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H�����񏳔F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1062,6 +1152,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H�����񏳔F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval, false))
@@ -1109,6 +1201,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H�����񏳔F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Pending, false))
@@ -1156,6 +1250,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H�����񏳔F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.NotApproval, false))
@@ -1236,19 +1332,56 @@
         }
         #endregion
 
-        #region �쐬���ύX����
+        #region �V�C�ύX
         /// <summary>
-        /// �쐬���ύX����
+        /// �V�C�ύX
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void dTPCreateDate_ValueChanged(object sender, EventArgs e)
+        private void textBox_TextChanged(object sender, EventArgs e)
         {
+            // �ύX�t���OON
+            m_bChengeAns = true;
+        }
+        #endregion
+
+        DateTime dtCreateDateAfter = DateTime.MinValue;
+        #region ���t�ύX�O����
+        /// <summary>
+        /// ���t�ύX�O����
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dTPCreateDate_Enter(object sender, EventArgs e)
+        {
+            dtCreateDateAfter = dTPCreateDate.Value;
+        }
+        #endregion
+
+        #region ���t�ύX
+        /// <summary>
+        /// ���t�ύX
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dTPCreateDate_CloseUp(object sender, EventArgs e)
+        {
+            // ���ݒl�ޔ�
+            DateTime dtWork = dTPCreateDate.Value;
+            
             // �f�[�^�ύX�L���̓f�[�^�o�^
             if (m_bChengeAns)
             {
-                if (!DataEntryProcess()) return;
+                // �ύX�O�l�Z�b�g
+                if (dtCreateDateAfter != DateTime.MinValue) dTPCreateDate.Value = dtCreateDateAfter;
+                // �f�[�^�o�^
+                if (!DataEntryProcess())
+                {
+                    return;
+                }
             }
+            // �ݒ�l���ޔ�l�ƈႤ�ꍇ�͒l��߂�
+            if (dTPCreateDate.Value != dtWork) dTPCreateDate.Value = dtWork;
 
             // �w����̃f�[�^���擾����
             InitDataLoad();
@@ -1255,6 +1388,12 @@
         }
         #endregion
 
+        #region �݌v�l���\���{�^��
+        /// <summary>
+        /// �݌v�l���\���{�^��
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
         private void btnWorkingList_Click(object sender, EventArgs e)
         {
             try
@@ -1272,5 +1411,32 @@
                 logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region �������{�^������
+        /// <summary>
+        /// �������{�^������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnPrint_Click(object sender, EventArgs e)
+        {
+            // �������
+            PrintOutDR();
+        }
+        #endregion
+
+        #region ����L�����Z���{�^������
+        /// <summary>
+        /// ����L�����Z���{�^������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            //�L�����Z���̃t���b�O�𗧂Ă�
+            m_Canceled = true;
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstruction.designer.cs	(revision 51)
@@ -66,7 +66,7 @@
             this.btnOnHold = new System.Windows.Forms.Button();
             this.dTPCreateDate = new System.Windows.Forms.DateTimePicker();
             this.label47 = new System.Windows.Forms.Label();
-            this.textBox2 = new System.Windows.Forms.TextBox();
+            this.textBox = new System.Windows.Forms.TextBox();
             this.label3 = new System.Windows.Forms.Label();
             this.label2 = new System.Windows.Forms.Label();
             this.label4 = new System.Windows.Forms.Label();
@@ -160,6 +160,11 @@
             this.btnOtherProc = new System.Windows.Forms.Button();
             this.panel2 = new System.Windows.Forms.Panel();
             this.btnWorkingList = new System.Windows.Forms.Button();
+            this.btnPrint = new System.Windows.Forms.Button();
+            this.PrintProgress = new System.Windows.Forms.ProgressBar();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnFirst = new System.Windows.Forms.Button();
+            this.btnFinal = new System.Windows.Forms.Button();
             this.panel1.SuspendLayout();
             this.pnlApproval.SuspendLayout();
             this.pnlApprovalButton.SuspendLayout();
@@ -183,7 +188,7 @@
             this.label1.Name = "label1";
             this.label1.Size = new System.Drawing.Size(500, 20);
             this.label1.TabIndex = 6;
-            this.label1.Text = "工　事　(朝　礼)　日　報　入　力";
+            this.label1.Text = "工　事　日　報　入　力";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // btnDataDelete
@@ -192,7 +197,7 @@
             this.btnDataDelete.BackColor = System.Drawing.Color.Red;
             this.btnDataDelete.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataDelete.ForeColor = System.Drawing.Color.White;
-            this.btnDataDelete.Location = new System.Drawing.Point(1086, 656);
+            this.btnDataDelete.Location = new System.Drawing.Point(1086, 658);
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 13;
@@ -206,7 +211,7 @@
             this.btnDataEntry.BackColor = System.Drawing.Color.Green;
             this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataEntry.ForeColor = System.Drawing.Color.White;
-            this.btnDataEntry.Location = new System.Drawing.Point(960, 656);
+            this.btnDataEntry.Location = new System.Drawing.Point(960, 658);
             this.btnDataEntry.Name = "btnDataEntry";
             this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
             this.btnDataEntry.TabIndex = 12;
@@ -220,7 +225,7 @@
             this.btnEnd.BackColor = System.Drawing.Color.Blue;
             this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnEnd.ForeColor = System.Drawing.Color.White;
-            this.btnEnd.Location = new System.Drawing.Point(1212, 656);
+            this.btnEnd.Location = new System.Drawing.Point(1212, 658);
             this.btnEnd.Name = "btnEnd";
             this.btnEnd.Size = new System.Drawing.Size(120, 30);
             this.btnEnd.TabIndex = 14;
@@ -237,7 +242,7 @@
             this.panel1.Controls.Add(this.pnlApprovalButton);
             this.panel1.Controls.Add(this.dTPCreateDate);
             this.panel1.Controls.Add(this.label47);
-            this.panel1.Controls.Add(this.textBox2);
+            this.panel1.Controls.Add(this.textBox);
             this.panel1.Controls.Add(this.label3);
             this.panel1.Controls.Add(this.label2);
             this.panel1.Controls.Add(this.label4);
@@ -370,7 +375,8 @@
             this.dTPCreateDate.Size = new System.Drawing.Size(170, 26);
             this.dTPCreateDate.TabIndex = 116;
             this.dTPCreateDate.TabStop = false;
-            this.dTPCreateDate.ValueChanged += new System.EventHandler(this.dTPCreateDate_ValueChanged);
+            this.dTPCreateDate.CloseUp += new System.EventHandler(this.dTPCreateDate_CloseUp);
+            this.dTPCreateDate.Enter += new System.EventHandler(this.dTPCreateDate_Enter);
             // 
             // label47
             // 
@@ -384,15 +390,16 @@
             this.label47.TabIndex = 115;
             this.label47.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
             // 
-            // textBox2
+            // textBox
             // 
-            this.textBox2.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.textBox2.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.textBox2.Location = new System.Drawing.Point(1174, 6);
-            this.textBox2.Name = "textBox2";
-            this.textBox2.Size = new System.Drawing.Size(142, 26);
-            this.textBox2.TabIndex = 1;
-            this.textBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.textBox.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.textBox.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.textBox.Location = new System.Drawing.Point(1174, 6);
+            this.textBox.Name = "textBox";
+            this.textBox.Size = new System.Drawing.Size(142, 26);
+            this.textBox.TabIndex = 1;
+            this.textBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.textBox.TextChanged += new System.EventHandler(this.textBox_TextChanged);
             // 
             // label3
             // 
@@ -539,12 +546,13 @@
             this.btnLineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnLineDel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
             this.btnLineDel.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnLineDel.Location = new System.Drawing.Point(812, 656);
+            this.btnLineDel.Location = new System.Drawing.Point(831, 658);
             this.btnLineDel.Name = "btnLineDel";
-            this.btnLineDel.Size = new System.Drawing.Size(130, 30);
+            this.btnLineDel.Size = new System.Drawing.Size(120, 30);
             this.btnLineDel.TabIndex = 20;
             this.btnLineDel.Text = "行　削　除";
             this.btnLineDel.UseVisualStyleBackColor = false;
+            this.btnLineDel.Visible = false;
             this.btnLineDel.Click += new System.EventHandler(this.btnLineDel_Click);
             // 
             // btnLineAdd
@@ -552,12 +560,13 @@
             this.btnLineAdd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnLineAdd.BackColor = System.Drawing.Color.PaleGreen;
             this.btnLineAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnLineAdd.Location = new System.Drawing.Point(674, 656);
+            this.btnLineAdd.Location = new System.Drawing.Point(711, 658);
             this.btnLineAdd.Name = "btnLineAdd";
-            this.btnLineAdd.Size = new System.Drawing.Size(130, 30);
+            this.btnLineAdd.Size = new System.Drawing.Size(120, 30);
             this.btnLineAdd.TabIndex = 19;
             this.btnLineAdd.Text = "行　追　加";
             this.btnLineAdd.UseVisualStyleBackColor = false;
+            this.btnLineAdd.Visible = false;
             this.btnLineAdd.Click += new System.EventHandler(this.btnLineAdd_Click);
             // 
             // pnlBase
@@ -732,7 +741,6 @@
             this.dataGridViewEX4.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
             this.dataGridViewEX4.Size = new System.Drawing.Size(1290, 243);
             this.dataGridViewEX4.TabIndex = 67;
-            this.dataGridViewEX4.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellDoubleClick);
             this.dataGridViewEX4.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellEnter);
             this.dataGridViewEX4.CellPainting += new System.Windows.Forms.DataGridViewCellPaintingEventHandler(this.dataGridViewEX4_CellPainting);
             this.dataGridViewEX4.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellValidated);
@@ -1424,7 +1432,7 @@
             this.lblCellTotal.BackColor = System.Drawing.Color.WhiteSmoke;
             this.lblCellTotal.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.lblCellTotal.ForeColor = System.Drawing.Color.Black;
-            this.lblCellTotal.Location = new System.Drawing.Point(100, 27188);
+            this.lblCellTotal.Location = new System.Drawing.Point(100, 32562);
             this.lblCellTotal.Name = "lblCellTotal";
             this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
             this.lblCellTotal.TabIndex = 36;
@@ -1582,13 +1590,13 @@
             // 
             this.btnNext.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.btnNext.BackColor = System.Drawing.Color.SeaGreen;
-            this.btnNext.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnNext.Location = new System.Drawing.Point(400, 656);
+            this.btnNext.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnNext.Location = new System.Drawing.Point(440, 658);
             this.btnNext.Name = "btnNext";
-            this.btnNext.Size = new System.Drawing.Size(160, 30);
+            this.btnNext.Size = new System.Drawing.Size(130, 30);
             this.btnNext.TabIndex = 38;
             this.btnNext.TabStop = false;
-            this.btnNext.Text = "次の日報へ >>";
+            this.btnNext.Text = "次日報＞";
             this.btnNext.UseVisualStyleBackColor = false;
             this.btnNext.Click += new System.EventHandler(this.btnNext_Click);
             // 
@@ -1596,13 +1604,13 @@
             // 
             this.btnProv.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.btnProv.BackColor = System.Drawing.Color.SeaGreen;
-            this.btnProv.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnProv.Location = new System.Drawing.Point(232, 656);
+            this.btnProv.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnProv.Location = new System.Drawing.Point(310, 658);
             this.btnProv.Name = "btnProv";
-            this.btnProv.Size = new System.Drawing.Size(160, 30);
+            this.btnProv.Size = new System.Drawing.Size(130, 30);
             this.btnProv.TabIndex = 39;
             this.btnProv.TabStop = false;
-            this.btnProv.Text = "<< 前の日報へ";
+            this.btnProv.Text = "＜前日報";
             this.btnProv.UseVisualStyleBackColor = false;
             this.btnProv.Click += new System.EventHandler(this.btnProv_Click);
             // 
@@ -1610,9 +1618,9 @@
             // 
             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(8, 656);
+            this.btnOtherProc.Location = new System.Drawing.Point(8, 658);
             this.btnOtherProc.Name = "btnOtherProc";
-            this.btnOtherProc.Size = new System.Drawing.Size(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(150, 30);
             this.btnOtherProc.TabIndex = 96;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
@@ -1643,6 +1651,72 @@
             this.btnWorkingList.UseVisualStyleBackColor = false;
             this.btnWorkingList.Click += new System.EventHandler(this.btnWorkingList_Click);
             // 
+            // btnPrint
+            // 
+            this.btnPrint.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnPrint.BackColor = System.Drawing.Color.DarkOliveGreen;
+            this.btnPrint.ForeColor = System.Drawing.Color.White;
+            this.btnPrint.Location = new System.Drawing.Point(7, 5);
+            this.btnPrint.Name = "btnPrint";
+            this.btnPrint.Size = new System.Drawing.Size(200, 30);
+            this.btnPrint.TabIndex = 98;
+            this.btnPrint.TabStop = false;
+            this.btnPrint.Text = "日報印刷";
+            this.btnPrint.UseVisualStyleBackColor = false;
+            this.btnPrint.Click += new System.EventHandler(this.btnPrint_Click);
+            // 
+            // PrintProgress
+            // 
+            this.PrintProgress.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.PrintProgress.Location = new System.Drawing.Point(33, 620);
+            this.PrintProgress.Name = "PrintProgress";
+            this.PrintProgress.Size = new System.Drawing.Size(1278, 36);
+            this.PrintProgress.TabIndex = 99;
+            this.PrintProgress.Visible = false;
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(7, 5);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(200, 30);
+            this.btnCancel.TabIndex = 100;
+            this.btnCancel.TabStop = false;
+            this.btnCancel.Text = "印刷中止";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // btnFirst
+            // 
+            this.btnFirst.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnFirst.BackColor = System.Drawing.Color.LimeGreen;
+            this.btnFirst.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnFirst.Location = new System.Drawing.Point(180, 658);
+            this.btnFirst.Name = "btnFirst";
+            this.btnFirst.Size = new System.Drawing.Size(130, 30);
+            this.btnFirst.TabIndex = 101;
+            this.btnFirst.TabStop = false;
+            this.btnFirst.Text = "≪先頭日報へ";
+            this.btnFirst.UseVisualStyleBackColor = false;
+            this.btnFirst.Click += new System.EventHandler(this.btnFirst_Click);
+            // 
+            // btnFinal
+            // 
+            this.btnFinal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnFinal.BackColor = System.Drawing.Color.LimeGreen;
+            this.btnFinal.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnFinal.Location = new System.Drawing.Point(570, 658);
+            this.btnFinal.Name = "btnFinal";
+            this.btnFinal.Size = new System.Drawing.Size(130, 30);
+            this.btnFinal.TabIndex = 102;
+            this.btnFinal.TabStop = false;
+            this.btnFinal.Text = "最終日報へ≫";
+            this.btnFinal.UseVisualStyleBackColor = false;
+            this.btnFinal.Click += new System.EventHandler(this.btnFinal_Click);
+            // 
             // FrmDRConstruction
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -1649,6 +1723,9 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1344, 692);
+            this.Controls.Add(this.btnFinal);
+            this.Controls.Add(this.btnFirst);
+            this.Controls.Add(this.PrintProgress);
             this.Controls.Add(this.panel2);
             this.Controls.Add(this.btnOtherProc);
             this.Controls.Add(this.btnProv);
@@ -1661,6 +1738,8 @@
             this.Controls.Add(this.btnDataEntry);
             this.Controls.Add(this.btnEnd);
             this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnPrint);
+            this.Controls.Add(this.btnCancel);
             this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
             this.KeyPreview = true;
@@ -1667,10 +1746,10 @@
             this.Name = "FrmDRConstruction";
             this.ShowIcon = false;
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
-            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmConstructionBudget_FormClosing);
-            this.Load += new System.EventHandler(this.FrmConstructionBudget_Load);
-            this.SizeChanged += new System.EventHandler(this.FrmConstructionBudget_SizeChanged);
-            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionBudget_KeyDown);
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmDRConstruction_FormClosing);
+            this.Load += new System.EventHandler(this.FrmDRConstruction_Load);
+            this.SizeChanged += new System.EventHandler(this.FrmDRConstruction_SizeChanged);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmDRConstruction_KeyDown);
             this.panel1.ResumeLayout(false);
             this.panel1.PerformLayout();
             this.pnlApproval.ResumeLayout(false);
@@ -1710,7 +1789,7 @@
         private System.Windows.Forms.Label label4;
         private DataGridViewEX dgvAllDisplay;
         private System.Windows.Forms.Label label3;
-        private System.Windows.Forms.TextBox textBox2;
+        private System.Windows.Forms.TextBox textBox;
         private System.Windows.Forms.Label label2;
         private DataGridViewEX dataGridViewEX1;
         private System.Windows.Forms.Label lblGrid1Total3;
@@ -1798,5 +1877,10 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
         private System.Windows.Forms.Panel panel2;
         private System.Windows.Forms.Button btnWorkingList;
+        private System.Windows.Forms.Button btnPrint;
+        private System.Windows.Forms.ProgressBar PrintProgress;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnFirst;
+        private System.Windows.Forms.Button btnFinal;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstructionAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstructionAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/FrmDRConstructionAuxiliary.cs	(revision 51)
@@ -45,12 +45,16 @@
         /// <returns></returns>
         private bool GetBaseInfoData()
         {
-            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            IOConstructionBaseInfoDetail DetailDB = new IOConstructionBaseInfoDetail();
             try
             {
-                string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
-                if (!cbDB.SelectAction(strSQL, ref m_ConstructionBaseInfo)) return false;
+                string strSQL = BaseDB.CreatePrimarykeyString(m_ConstructionCode);
+                if (!BaseDB.SelectAction(strSQL, ref m_ConstructionBaseInfo)) return false;
 
+                strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                if (!DetailDB.SelectAction(strSQL, ref m_ConstructionBaseInfoDetail)) return false;
+                
                 return true;
             }
             catch (Exception ex)
@@ -60,7 +64,7 @@
             }
             finally
             {
-                cbDB.close(); cbDB = null;
+                BaseDB.close(); BaseDB = null;
             }
         }
         #endregion
@@ -84,7 +88,7 @@
                 // 作成日
                 m_DspControl[(int)DspCtrlName.CreateDate] = dTPCreateDate;
                 // 天気
-                m_DspControl[(int)DspCtrlName.Weather] = textBox2;
+                m_DspControl[(int)DspCtrlName.Weather] = textBox;
                 // 工期
                 m_DspControl[(int)DspCtrlName.BetweenTimes] = label15;
                 // 着工日
@@ -712,9 +716,6 @@
                 SetConstructionTime();
 
                 // 担当者取得
-                //int Person = DailyDataRec.PersonCode;
-                //if (Person == 0) Person = CommonMotions.LoginUserData.PersonCode;
-                //int Person = CommonMotions.LoginUserData.PersonCode;
                 int Person = m_ConstructionBaseInfo.ConstructionPersonCode;
                 strSQL = PersonDB.CreatePrimarykeyString(Person);
                 PersonInChargeMaster PersonRec = new PersonInChargeMaster();
@@ -721,12 +722,6 @@
                 PersonDB.SelectAction(strSQL, ref PersonRec);
                 m_DspControl[(int)DspCtrlName.CreatorName].Text = PersonRec.PersonName;
 
-                // 工事種別のセット
-                //strSQL = TypeDB.CreatePrimarykeyString(m_ConstructionBaseInfo.ConstructionType);
-                //ConstructionTypeMaster TypeRec = new ConstructionTypeMaster();
-                //TypeDB.SelectAction(strSQL, ref TypeRec);
-                //m_DspControl[(int)DspCtrlName.ConstructionType].Text = TypeRec.NameString;
-
                 return true;
             }
             catch (Exception ex)
@@ -885,7 +880,11 @@
                     dgv.Rows.Add(s_MinRowCountGrid[(int)DataGridDefine.Detail]);
                     // 合計表示
                     lblGrid1Total1.Text = "0.0";
-                    lblGrid1Total2.Text = GetTotalHeadCount().ToString("#,0.0");
+                    double work = GetTotalHeadCount();
+                    if (work==0)
+                        lblGrid1Total2.Text = work.ToString("#,#.#");
+                    else
+                        lblGrid1Total2.Text = work.ToString("#,0.0");
                     lblGrid1Total3.Text = "0.0";
                     return;
                 }
@@ -897,6 +896,7 @@
                 double Total3 = 0;
                 int iCompany = 0;
                 string strCompany = string.Empty;
+                string[] sFormat = new string[3];
                 foreach (object[] RecData in arList)
                 {
                     Total1 += CommonMotions.cnvDouble(RecData[4]);
@@ -905,22 +905,25 @@
                     iCompany = CommonMotions.cnvInt(RecData[2]);
                     if (iCompany == -1)
                     {
-                        strCompany = "自　　社";
+                        strCompany = s_MyCompanyName;
                     }
                     else
                     {
                         strCompany = CommonMotions.cnvString(RecData[3]);
                     }
+                    if (CommonMotions.cnvDouble(RecData[4]) == 0) sFormat[0] = "#,#.#"; else sFormat[0] = "#,0.0";
+                    if (CommonMotions.cnvDouble(RecData[5]) == 0) sFormat[1] = "#,#.#"; else sFormat[1] = "#,0.0";
+                    if (CommonMotions.cnvDouble(RecData[8]) == 0) sFormat[2] = "#,#.#"; else sFormat[2] = "#,0.0";
                     dgv.Rows.Add((ino++),
                                     CommonMotions.cnvInt(RecData[0]),
                                     CommonMotions.cnvString(RecData[1]),
                                     iCompany,
                                     strCompany,
-                                    CommonMotions.cnvDouble(RecData[4]).ToString("#,0.0"),
-                                    CommonMotions.cnvDouble(RecData[5]).ToString("#,0.0"),
+                                    CommonMotions.cnvDouble(RecData[4]).ToString(sFormat[0]),
+                                    CommonMotions.cnvDouble(RecData[5]).ToString(sFormat[1]),
                                     CommonMotions.cnvString(RecData[6]),
                                     CommonMotions.cnvString(RecData[7]),
-                                    CommonMotions.cnvDouble(RecData[8]).ToString("#,0.0"));
+                                    CommonMotions.cnvDouble(RecData[8]).ToString(sFormat[2]));
 
                     int CurRowCnt = dgv.RowCount - 1;
                     dgv.Rows[CurRowCnt].Cells[(int)DispGridColumn1.JobCategoryName].ToolTipText = CommonMotions.cnvString(RecData[1]);
@@ -1223,7 +1226,7 @@
                     dgv.Rows[RowCnt].Cells[(int)DispGridColumn5.PatrolTime].Value = RecData.PatrolTime.ToShortTimeString();
                     dgv.Rows[RowCnt].Cells[(int)DispGridColumn5.ContentsText].Value = RecData.ContentsText;
 
-                    dgv.Rows[RowCnt].Cells[(int)DispGridColumn4.ContentsText].ToolTipText = RecData.ContentsText;
+                    dgv.Rows[RowCnt].Cells[(int)DispGridColumn5.ContentsText].ToolTipText = RecData.ContentsText;
                 }
             }
             catch (Exception ex)
@@ -2649,6 +2652,9 @@
         {
             try
             {
+                // 天気
+                m_DspControl[(int)DspCtrlName.Weather].Enabled = false;
+
                 foreach (DataGridView dgv in m_DgvArray)
                 {
                     dgv.ReadOnly = true;
@@ -2655,6 +2661,9 @@
                 }
                 
                 // 最後にボタンの処理を行う
+                btnApproval.Enabled = false;
+                btnPetition.Enabled = false;
+                
                 btnDataEntry.Visible = false;
                 btnDataDelete.Visible = false;
                 btnLineAdd.Visible = false;
@@ -2668,25 +2677,71 @@
         }
         #endregion
 
-        #region 指定日より前（後）のデータを取得して処理日付を変える
+        #region 指定日より先頭・前・後のデータ日付を取得する
         /// <summary>
-        /// 指定日より前（後）のデータを取得して処理日付を変える
+        /// 指定日より先頭・前・後のデータ日付を取得する
         /// </summary>
-        private void GetPrevNextData(int ReadPoint = 0)
+        private DateTime GetFPNDataDate(int ReadPoint)
         {
+            DateTime dtRet = DateTime.Now;
+            IODailyDataConstruction DailyDB = new IODailyDataConstruction();
             try
             {
-                int DaysPoint = 0;
+                string strSQL = string.Empty;
+
                 switch (ReadPoint)
                 {
+                    case (int)ReadData.First:
+                        strSQL = "SELECT MIN(DAILYDATADATE) FROM DAILYDATACONSTRUCTION";
+                        strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                        break;
                     case (int)ReadData.Previous:
-                        DaysPoint = -1;
+                        strSQL = "SELECT MAX(DAILYDATADATE) FROM DAILYDATACONSTRUCTION";
+                        strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                        //strSQL += string.Format(" AND TRUNC(DAILYDATADATE) < TO_DATE('{0}','YYYY/MM/DD')", dTPCreateDate.Value.ToShortDateString());
+                        strSQL += string.Format(" AND DATE(DAILYDATADATE) < STR_TO_DATE('{0}','%Y/%m/%d')", dTPCreateDate.Value.ToShortDateString());
                         break;
                     case (int)ReadData.Next:
-                        DaysPoint = 1;
+                        strSQL = "SELECT MIN(DAILYDATADATE) FROM DAILYDATACONSTRUCTION";
+                        strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                        //strSQL += string.Format(" AND TRUNC(DAILYDATADATE) > TO_DATE('{0}','YYYY/MM/DD')", dTPCreateDate.Value.ToShortDateString());
+                        strSQL += string.Format(" AND DATE(DAILYDATADATE) > STR_TO_DATE('{0}','%Y/%m/%d')", dTPCreateDate.Value.ToShortDateString());
                         break;
+                    case (int)ReadData.Final:
+                        strSQL = "SELECT MAX(DAILYDATADATE) FROM DAILYDATACONSTRUCTION";
+                        strSQL += string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                        break;
                 }
-                DateTime dtWork = GetTargetToday().AddDays(DaysPoint);
+                ArrayList arList = new ArrayList();
+                if (DailyDB.ExecuteReader(strSQL, ref arList))
+                {
+                    object[] objRec = (object[])arList[0];
+                    dtRet = CommonMotions.cnvDate(objRec[0]);
+                }
+
+                return dtRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return dtRet;
+            }
+            finally
+            {
+                DailyDB.close(); DailyDB = null;
+            }
+        }
+        #endregion
+
+        #region 指定日より前（後）のデータを取得して処理日付を変える
+        /// <summary>
+        /// 指定日より前（後）のデータを取得して処理日付を変える
+        /// </summary>
+        private void GetPrevNextData(int ReadPoint = 0)
+        {
+            try
+            {
+                DateTime dtWork = GetFPNDataDate(ReadPoint);
                 // 未来の日報は入力できない
                 if (dtWork > DateTime.Now) return;
 
@@ -2851,7 +2906,7 @@
                 btnPetition.Size = new Size(250, btnPetition.Size.Height);
 
                 // ----- 工事コード・承認機能番号取得（申請レコードがなお場合は未申請）
-                if (!ClsApprovalPermission.CheckPetition(m_ConstructionCode, iApprovalCode)) return;
+                if (!ClsApprovalPermission.CheckPetition(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo)) return;
 
                 // ----- 申請済の場合
                 // 申請ボタンの表示
@@ -2864,7 +2919,7 @@
                 btnApproval.Visible = true;
 
                 // ----- 承認済の場合
-                if (ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode))
+                if (ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo))
                 {
                     btnApproval.Text = CommonDefine.ApprovalButtonString[1];
                     btnApproval.ForeColor = Color.Black;
@@ -2899,10 +2954,10 @@
                 int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("工事日報承認")).Key;
                 // 担当部署取得
-                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode);
+                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認データ取得
-                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode);
+                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認経路マスタ取得
                 int MasterCount = ClsApprovalPermission.GetApprovalMasterCount(iApprovalCode, DepartmentCode);
@@ -2966,7 +3021,7 @@
             IODailyDataDetail DetailDB = new IODailyDataDetail();
             try
             {
-                if (!TotalFlg && JobCode == 0 && CompanyCode == 0) return 0;
+                if (!TotalFlg && (JobCode == 0 || CompanyCode == 0)) return 0;
 
                 string strSQL = "SELECT SUM(TODAYHEADCOUNT) FROM DAILYDATADETAIL";
                 strSQL += string.Format(" WHERE PersonCode = {0}", m_PersonCode);
@@ -2973,6 +3028,7 @@
                 strSQL += string.Format(" AND ConstructionCode = {0}", m_ConstructionCode);
                 if (JobCode != 0) strSQL += string.Format(" AND JobCategoryCode = {0}", JobCode);
                 if (CompanyCode != 0) strSQL += string.Format(" AND CompanyCode = {0}", CompanyCode);
+                //strSQL += string.Format(" AND TO_CHAR(DailyDataDate, 'YYYY/MM/DD') < '{0}'", GetTargetToday().ToShortDateString());
                 strSQL += string.Format(" AND DATE_FORMAT(DailyDataDate, '%Y/%m/%d') < '{0}'", GetTargetToday().ToShortDateString());
 
                 ArrayList arList = new ArrayList();
@@ -3014,9 +3070,9 @@
         }
         #endregion
 
-        #region 該当日報データ明細の累計人員数を更新日より後を更新する
+        #region 該当日報データ明細の累計人員数を更新日より以降更新する
         /// <summary>
-        /// 
+        /// 該当日報データ明細の累計人員数を更新日より以降更新する
         /// </summary>
         /// <param name="JobCode"></param>
         /// <param name="CompanyCode"></param>
@@ -3028,6 +3084,7 @@
                 DateTime StartDate = GetTargetToday();
 
                 // 動作SQL作成
+                //string strSQL = "SELECT TO_CHAR(DailyDataDate, 'YYYY/MM/DD') FROM DAILYDATADETAIL";
                 string strSQL = "SELECT DATE_FORMAT(DailyDataDate, '%Y/%m/%d') FROM DAILYDATADETAIL";
 
                 // 検索条件SQL作成
@@ -3038,6 +3095,7 @@
                 strWhere += string.Format(" AND CompanyCode = {0}", CompanyCode);
 
                 // 日付指定SQL作成
+                //string strDate = string.Format(" AND '{0}' < TO_CHAR(DailyDataDate, 'YYYY/MM/DD')", GetTargetToday().ToShortDateString());
                 string strDate = string.Format(" AND '{0}' < DATE_FORMAT(DailyDataDate, '%Y/%m/%d')", GetTargetToday().ToShortDateString());
                 // 検索文字列結合
                 strSQL += strWhere + strDate;
@@ -3052,8 +3110,10 @@
                 foreach (object[] wrkobj in TargetList)
                 {
                     strUPDATE = strTemplate;
+                    //strUPDATE += string.Format(" AND TO_CHAR(DailyDataDate, 'YYYY/MM/DD') <= '{0}')", CommonMotions.cnvString(wrkobj[0]));
                     strUPDATE += string.Format(" AND DATE_FORMAT(DailyDataDate, '%Y/%m/%d') <= '{0}')", CommonMotions.cnvString(wrkobj[0]));
                     strUPDATE += strWhere;
+                    //strUPDATE += string.Format(" AND TO_CHAR(DailyDataDate, 'YYYY/MM/DD') = '{0}'", CommonMotions.cnvString(wrkobj[0]));
                     strUPDATE += string.Format(" AND DATE_FORMAT(DailyDataDate, '%Y/%m/%d') = '{0}'", CommonMotions.cnvString(wrkobj[0]));
 
                     if (!DetailDB.ExecuteNonQuery(strUPDATE, false)) return false;
@@ -3121,5 +3181,166 @@
             }
         }
         #endregion
+
+        #region 行編集ボタン表示制御
+        /// <summary>
+        /// 行編集ボタン表示制御
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DisplayLineEditButton(object sender)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                if (dgv == m_DgvArray[(int)DataGridDefine.Detail])
+                {
+                    btnLineAdd.Visible = true;
+                    btnLineDel.Visible = true;
+                }
+                else if (dgv == m_DgvArray[(int)DataGridDefine.Vehicles])
+                {
+                    btnLineAdd.Visible = true;
+                    btnLineDel.Visible = true;
+                }
+                else if (dgv == m_DgvArray[(int)DataGridDefine.Materials])
+                {
+                    btnLineAdd.Visible = true;
+                    btnLineDel.Visible = true;
+                }
+                else if (dgv == m_DgvArray[(int)DataGridDefine.Subcontractors])
+                {
+                    btnLineAdd.Visible = true;
+                    btnLineDel.Visible = true;
+                }
+                else if (dgv == m_DgvArray[(int)DataGridDefine.Field])
+                {
+                    btnLineAdd.Visible = false;
+                    btnLineDel.Visible = false;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        // -------------------- 印刷処理
+        #region 印刷時ボタン制御
+        /// <summary>
+        /// 印刷時ボタン制御
+        /// </summary>
+        /// <param name="bprint"></param>
+        private void PrintButtonVisbleControl(bool bprint)
+        {
+            panel2.Visible = !bprint;
+            
+            panel1.Enabled = !bprint;
+            pnlBase.Enabled = !bprint;
+
+            btnOtherProc.Visible = !bprint;
+            btnFirst.Visible = !bprint;
+            btnFinal.Visible = !bprint;
+            btnProv.Visible = !bprint;
+            btnNext.Visible = !bprint;
+
+            btnLineAdd.Visible = !bprint;
+            btnLineDel.Visible = !bprint;
+
+            btnDataEntry.Visible = !bprint;
+            btnDataDelete.Visible = !bprint;
+            btnEnd.Visible = !bprint;
+
+            if (bprint)
+            {
+                btnPrint.Visible = false;
+                btnCancel.Visible = true;
+            }
+            else
+            {
+                btnPrint.Visible = true;
+                btnCancel.Visible = false;
+            }
+        }
+        #endregion
+
+        #region 印刷処理
+        /// <summary>
+        /// 印刷処理
+        /// </summary>
+        private void PrintOutDR()
+        {
+            FrmSaveFilePath frm = new FrmSaveFilePath();
+            FrmPrintConfirmation frmPrint = new FrmPrintConfirmation();
+            try
+            {
+                // 工事番号のセット
+                frmPrint.ConstructionCode = m_ConstructionCode;
+                // 処理番号セット
+                frmPrint.ExecuteProcNo = (int)ClsExcute.ProcessExecuteNo.DRConstruction;
+
+                // ウィンドウ表示
+                frmPrint.ShowDialog();
+
+                // 終了状態
+                m_PrintresRet = frmPrint.EndButton;
+
+                // 印刷範囲
+                m_PrintRange = frmPrint.PrintRange;
+                // 印刷開始日
+                m_PrintStartDate = frmPrint.StartDate;
+                // 印刷終了日
+                m_PrintCompDate = frmPrint.CompDate;
+
+                // キャンセルは処理しない
+                if (m_PrintresRet == DialogResult.Cancel) return;
+
+                // EXCEL保存時選択
+                if (m_PrintresRet == DialogResult.No)
+                {
+                    // 保存先を選択する
+                    frm.SaveType = (int)CommonDefine.SaveFileType.ExcelFile;
+
+                    //frm.ShowInTaskbar = false;
+
+                    frm.ShowDialog();
+                    if (frm.EndButton == DialogResult.Cancel) return;
+                    m_SelectSaveExcel = frm.SelectPath;
+                }
+
+
+                // 印刷プロセス数取得
+                m_ProcessCount = GetProcessCount() + 2;       // 枚数＋ＥＸＣＥＬオブジェクト取得(2)
+                PrintProgress.Visible = true;
+                PrintProgress.Minimum = 0;
+                PrintProgress.Maximum = m_ProcessCount;
+                PrintProgress.Value = 0;
+
+                m_Canceled = false;
+                // ボタンの変更
+                PrintButtonVisbleControl(true);
+
+                //印刷を別スレッドで実行する
+                m_ProgressCount = 0;
+                workerThread = new System.Threading.Thread(new System.Threading.ThreadStart(PrintMain));
+                workerThread.IsBackground = true;
+                workerThread.Start();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Close(); frm = null;
+                frmPrint.Close(); frmPrint = null;
+            }
+        }
+        #endregion
+
+        // -------------------- 印刷処理
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/PrintCommon.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/PrintCommon.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/PrintCommon.cs	(revision 51)
@@ -0,0 +1,282 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Collections;
+using System.Windows.Forms;
+using System.Diagnostics;
+using Microsoft.VisualBasic;
+using System.Globalization;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    /// <summary>
+    /// 印刷処理共通変数
+    /// </summary>
+    partial class FrmDRConstruction
+    {
+        #region スレッド使用定義
+        //コントロールの値を変更するためのデリゲート
+        private delegate void SetProgressValueDelegate(int num);
+        //バックグラウンド処理が終わった時にコントロールの値を変更するためのデリゲート
+        private delegate void ThreadCompletedDelegate();
+        //処理がキャンセルされた時にコントロールの値を変更するためのデリゲート
+        private delegate void ThreadCanceledDelegate();
+
+        //別処理をするためのスレッド
+        private System.Threading.Thread workerThread;
+
+        //デリゲートの作成
+        SetProgressValueDelegate m_progressDlg = null;
+        ThreadCompletedDelegate m_completeDlg = null;
+        ThreadCanceledDelegate m_canceledDlg = null;
+        #endregion
+
+        #region 定数
+        #region 注文書最終行文字フォーマット
+        /// <summary>
+        /// 注文書最終行文字フォーマット
+        /// </summary>
+        private const string s_LastRowString = "※別紙{0}付け提出見積もりによる";
+        #endregion
+
+        #region シート名称
+        /// <summary>
+        /// シート名称
+        /// </summary>
+        private static readonly string s_SheetName = "工事日報";
+        #endregion
+
+        #region Excelファイル名
+        /// <summary>
+        /// Excelファイル名
+        /// </summary>
+        private string s_ExcelBookName = "日報";
+        #endregion
+
+        #region 図形関連
+        /// <summary>
+        /// 図形置き場シート
+        /// </summary>
+        private const string s_shapeSheetName = "図形シート";
+        /// <summary>
+        /// 図形名称
+        /// </summary>
+        private const string s_shapeName = "SealStamp1";                                    // 判子オブジェクト名
+        /// <summary>
+        /// 図形サイズ【縦・横】（図形名称順）
+        /// </summary>
+        private static float[,] s_ShapeSize = new float[1, 2] { { 25.51f, 25.51f } };       // 判子サイズ
+        /// <summary>
+        /// 判子フォントサイズ
+        /// </summary>
+        private static float[] s_EstimateSeal1FontSize = { 16f, 8f, 8f, 8f, 6f };
+        
+        /// <summary>
+        /// 次頁以降の判子イメージ移動位置
+        /// </summary>
+        private static float s_NextImageY = 1171.00f;
+        /// <summary>
+        /// 判子位置(Key:X Value:Y)
+        /// </summary>
+        private static float[,] s_CoverSealPoint = new float[5, 2] { {503.77f, 20.02f},         // 社長
+                                                                        {539.77f, 20.02f},      // 専務
+                                                                        {575.77f, 20.02f},      // 常務
+                                                                        {611.77f, 20.02f},      // 部長
+                                                                        {647.77f, 20.02f} };    // 担当者
+        #endregion
+
+        #region 明細フォーマットの行数
+        /// <summary>
+        /// 明細の全体行数
+        /// </summary>
+        private int s_NumberOfRowInDetail = 71;
+
+        /// <summary>
+        /// 明細データ開始行
+        /// </summary>
+        private const int s_FixDetailStartLine = 7;
+        /// <summary>
+        /// 明細データ行数
+        /// </summary>
+        private const int s_FixDetailListRow = 20;
+
+        /// <summary>
+        /// 車両データ開始行
+        /// </summary>
+        private const int s_FixVehiclesStartLine = 31;
+        /// <summary>
+        /// 車両データ行数
+        /// </summary>
+        private const int s_FixVehiclesListRow = 5;
+
+        /// <summary>
+        /// 資材データ開始行
+        /// </summary>
+        private const int s_FixMaterialsStartLine = 39;
+        /// <summary>
+        /// 資材データ行数
+        /// </summary>
+        private const int s_FixMaterialsListRow= 5;
+
+        /// <summary>
+        /// 業社打ち合わせデータ開始行
+        /// </summary>
+        private const int s_FixSubcontrStartLine = 47;
+        /// <summary>
+        /// 業社打ち合わせデータ行数
+        /// </summary>
+        private const int s_FixSubcontrListRow = 10;
+
+        /// <summary>
+        /// 現場巡回データ開始行
+        /// </summary>
+        private const int s_FixFeildStartLine = 60;
+        
+        #endregion
+
+        #endregion
+
+        #region 変数
+
+        /// <summary>
+        /// エクセル印刷クラスオブジェクト
+        /// </summary>
+        private UsedExcel m_UsedExcel = null;
+
+        /// <summary>
+        /// キャンセルボタンがクリックされたかを示すフラグ
+        /// </summary>
+        private volatile bool m_Canceled = false;
+
+        /// <summary>
+        /// 印刷処理プロセス数カウント（下記と混同注意）
+        /// </summary>
+        private int m_ProcessCount = 0;
+
+        /// <summary>
+        /// プログレスカウント
+        /// </summary>
+        private int m_ProgressCount = 0;
+
+        /// <summary>
+        /// 保存時Excelパス
+        /// </summary>
+        private string m_SelectSaveExcel = "";
+        /// <summary>
+        /// 実行ダイアログ選択値
+        /// </summary>
+        private DialogResult m_PrintresRet = DialogResult.Cancel;
+
+        /// <summary>
+        /// 印刷範囲
+        /// </summary>
+        private int m_PrintRange = 0;
+
+        /// <summary>
+        /// 印刷開始日
+        /// </summary>
+        private DateTime m_PrintStartDate = DateTime.MinValue;
+
+        /// <summary>
+        /// 印刷終了日
+        /// </summary>
+        private DateTime m_PrintCompDate = DateTime.MinValue;
+
+        /// <summary>
+        /// 終了コード
+        /// </summary>
+        private CommonDefine.RetunAnswer m_rtAns = CommonDefine.RetunAnswer.Answer0;
+        #endregion
+
+        #region プログレスバーの値を変更する
+        /// <summary>
+        /// プログレスバーの値を変更する
+        /// </summary>
+        /// <param name="num"></param>
+        private void SetProgressValue(int num)
+        {
+            // ProgressBarの値を変更する
+            PrintProgress.Value = num;
+            PrintProgress.Update();
+        }
+        #endregion
+
+        #region 処理が完了した時にプログレスバーの値を変更する
+        /// <summary>
+        /// 処理が完了した時にプログレスバーの値を変更する
+        /// </summary>
+        private void ThreadCompleted()
+        {
+            try
+            {
+                // コントロールの変更
+                PrintProgress.Visible = false;
+                //groupBox2.Invalidate();
+
+                // ボタンの変更
+                PrintButtonVisbleControl(false);
+
+                // 印刷
+                if (m_rtAns == CommonDefine.RetunAnswer.Answer0)
+                {
+                    if (m_PrintresRet == DialogResult.No)
+                    {
+                        MessageBox.Show("保存が終了しました。", "終　了", MessageBoxButtons.OK, MessageBoxIcon.Information);
+                    }
+                    return;
+                }
+
+                // エラーメッセージセット
+                string strMessage = "";
+                switch ((int)m_rtAns)
+                {
+                    case (int)CommonDefine.RetunAnswer.Answer1:
+                        strMessage = "システムエラー";
+                        break;
+                    case (int)CommonDefine.RetunAnswer.Answer3:
+                        strMessage = "日報データ読み込みエラー";
+                        break;
+                    case (int)CommonDefine.RetunAnswer.Answer5:
+                        strMessage = "エクセル操作エラー";
+                        break;
+                }
+                MessageBox.Show(strMessage, "印刷エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                m_rtAns = CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+        #endregion
+
+        #region 処理がキャンセルされた時にプログレスバーの値を変更する
+        /// <summary>
+        /// 処理がキャンセルされた時にプログレスバーの値を変更する
+        /// </summary>
+        private void ThreadCanceled()
+        {
+            // コントロールの変更
+            PrintProgress.Visible = false;
+            //groupBox2.Invalidate();
+
+            // ボタンの変更
+            PrintButtonVisbleControl(false);
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/PrintFormat.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/PrintFormat.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/PrintFormat.cs	(revision 51)
@@ -0,0 +1,937 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Collections;
+using System.Windows.Forms;
+using System.Diagnostics;
+using Microsoft.VisualBasic;
+using System.Globalization;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmDRConstruction
+    {
+        #region 印刷メイン
+        /// <summary>
+        /// 印刷処理
+        /// </summary>
+        public void PrintMain()
+        {
+            //デリゲートの作成
+            m_progressDlg = new SetProgressValueDelegate(SetProgressValue);
+            m_completeDlg = new ThreadCompletedDelegate(ThreadCompleted);
+            m_canceledDlg = new ThreadCanceledDelegate(ThreadCanceled);
+
+            try
+            {
+                // 印刷クラス
+                m_UsedExcel = new UsedExcel();
+                m_ProgressCount = 0;
+
+                // コントロールの表示を変更する
+                this.Invoke(m_progressDlg, new object[] { ++m_ProgressCount });
+
+                //エクセルブックオープン
+                if (!m_UsedExcel.ExcelBookOpen(System.Environment.CurrentDirectory + CommonDefine.s_ExcelOriginalFileName))
+                {
+                    m_rtAns = CommonDefine.RetunAnswer.Answer5;
+                    return;
+                }
+
+                // コントロールの表示を変更する
+                this.Invoke(m_progressDlg, new object[] { ++m_ProgressCount });
+
+                // ページ印刷
+                CommonDefine.RetunAnswer rtAns = PrintPage();
+                if (rtAns != CommonDefine.RetunAnswer.Answer0)
+                {
+                    m_rtAns = rtAns;
+                    return;
+                }
+
+                // 中断処理
+                if (m_Canceled) return;
+
+                List<string> strParaList = new List<string>();
+                strParaList.Add(m_ConstructionBaseInfoDetail.DetailString);
+
+                // 印刷・Excel保存処理
+                if (m_PrintresRet == DialogResult.Yes)
+                {
+                    // +++++++++++++++++++++++++ 印刷 +++++++++++++++++++++++++
+                    m_UsedExcel.ExcelSheetPrint();
+                }
+                else if (m_PrintresRet == DialogResult.No)
+                {
+                    // +++++++++++++++++++++++++ 保存 +++++++++++++++++++++++++
+                    string FilePath = @m_SelectSaveExcel;
+                    // エクセル保存
+                    if (CommonMotions.ChkDirPath(FilePath, true))
+                    {
+                        string wrkFile = "5-1.";
+                        foreach (string ww in strParaList)
+                        {
+                            wrkFile += ww;
+                        }
+                        for (int ix = 0; ix < m_UsedExcel.ExcelBadCharcter.Length; ix++)
+                        {
+
+                            wrkFile = wrkFile.Replace(m_UsedExcel.ExcelBadCharcter[ix], "");
+                        }
+                        // ファイル名作成
+                        FilePath += @"\" + @wrkFile + @s_ExcelBookName;
+
+                        m_UsedExcel.SaveSwitch = true;
+                        m_UsedExcel.ExcelSaveBook(FilePath);
+                    }
+                }
+
+                m_rtAns = CommonDefine.RetunAnswer.Answer0;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                m_rtAns = CommonDefine.RetunAnswer.Answer1;
+            }
+            finally
+            {
+                // 完了したときにコントロールの値を変更する
+                this.Invoke(m_completeDlg);
+
+                // エクセル開放
+                if (m_UsedExcel != null)
+                {
+                    m_UsedExcel.ExcelBookClose();
+                }
+                m_UsedExcel = null;
+
+                //デリゲートの廃棄
+                m_progressDlg = null;
+                m_completeDlg = null;
+                m_canceledDlg = null;
+
+                // ガーベージコレクト
+                GC.Collect();
+            }
+        }
+        #endregion
+
+        #region ページ印刷
+        /// <summary>
+        /// ページ印刷
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer PrintPage()
+        {
+            IODailyDataConstruction DailyDB = new IODailyDataConstruction();
+            try
+            {
+                // 工事日報データ取得
+                string strSQL = string.Format(" WHERE CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                strSQL += string.Format(" AND PERSONCODE = {0}", m_PersonCode);
+                // 印刷範囲が指定されていた場合は日付指定
+                if (m_PrintRange == (int)FrmPrintConfirmation.PrintSelFlg.Range)
+                {
+                    //strSQL += string.Format(" AND (TO_DATE('{0}', 'YYYY/MM/DD') <= TRUNC(DailyDataDate)", m_PrintStartDate.ToShortDateString());
+                    //strSQL += string.Format(" AND TRUNC(DailyDataDate) <= TO_DATE('{0}', 'YYYY/MM/DD'))", m_PrintCompDate.ToShortDateString());
+                    strSQL += string.Format(" AND (STR_TO_DATE('{0}', '%Y/%m/%d') <= DATE(DailyDataDate)", m_PrintStartDate.ToShortDateString());
+                    strSQL += string.Format(" AND DATE(DailyDataDate) <= STR_TO_DATE('{0}', '%Y/%m/%d'))", m_PrintCompDate.ToShortDateString());
+                }
+                strSQL += " ORDER BY DAILYDATADATE";
+                List<DailyDataConstruction> DailyList = new List<DailyDataConstruction>();
+                if (!DailyDB.SelectAction(strSQL, ref DailyList)) return CommonDefine.RetunAnswer.Answer3;
+                if (DailyList.Count == 0) return CommonDefine.RetunAnswer.Answer3;
+
+                ArrayList DetailList = new ArrayList();
+                ArrayList VehiclesList = new ArrayList();
+                ArrayList MaterialsList = new ArrayList();
+                ArrayList SubcontrList = new ArrayList();
+                ArrayList FieldList = new ArrayList();
+
+                string strPageName = string.Empty;
+                foreach (DailyDataConstruction DailyRec in DailyList)
+                {
+                    // 対象日文字列作成
+                    string strTargetDate = DailyRec.DailyDataDate.ToShortDateString();
+                    // 工事日報シートの取得
+                    m_UsedExcel.ExcelSheetGet(s_SheetName, true, strTargetDate.Replace("/", "-"));
+
+                    // データリストクリア
+                    DetailList.Clear();
+                    VehiclesList.Clear();
+                    MaterialsList.Clear();
+                    SubcontrList.Clear();
+                    FieldList.Clear();
+
+                    // テーブルよりデータを取得する
+                    GetDetailList(DailyDB, DailyRec, ref DetailList);
+                    GetVehiclesList(DailyDB, DailyRec, ref VehiclesList);
+                    GetMaterialsList(DailyDB, DailyRec, ref MaterialsList);
+                    GetSubcontrList(DailyDB, DailyRec, ref SubcontrList);
+                    GetFieldList(DailyDB, DailyRec, ref FieldList);
+                    
+                    // 必要ページ数を計算する
+                    int PageCnt = GetToDayPageCnt(DetailList, VehiclesList, MaterialsList, SubcontrList);
+                    // 複数ページ必要時はシート内でコピー
+                    if (PageCnt > 1)
+                    {
+                        // ソース位置作成
+                        string SrcRow = string.Format("1:{0}", s_NumberOfRowInDetail);
+                        // コピー先位置作成
+                        string DestRow = string.Format("{0}:{1}", (s_NumberOfRowInDetail + 1), (s_NumberOfRowInDetail * PageCnt));
+                        // 印刷領域作成
+                        string PrintArea = string.Format("$A$1:$AE${0}", (s_NumberOfRowInDetail * PageCnt));
+
+                        // シートの取得
+                        m_UsedExcel.ExcelSheetGet(s_SheetName, false);
+                        // 明細フォーマットのコピー
+                        m_UsedExcel.ExcelCopyRow(SrcRow, DestRow, PrintArea, PageCnt);
+                    }
+
+                    // ----- ページ編集
+                    // ブロック１編集
+                    CommonDefine.RetunAnswer RARet = SetBlock1Data(DailyRec, PageCnt);
+                    if (RARet != CommonDefine.RetunAnswer.Answer0) return RARet;
+
+                    // 中断処理
+                    if (m_Canceled)
+                    {
+                        //キャンセルされたときにコントロールの値を変更する
+                        this.Invoke(m_canceledDlg);
+                        return CommonDefine.RetunAnswer.Answer0;
+                    }
+
+                    // ブロック２編集
+                    RARet = SetBlock2Data(DetailList);
+                    if (RARet != CommonDefine.RetunAnswer.Answer0) return RARet;
+
+                    // 中断処理
+                    if (m_Canceled)
+                    {
+                        //キャンセルされたときにコントロールの値を変更する
+                        this.Invoke(m_canceledDlg);
+                        return CommonDefine.RetunAnswer.Answer0;
+                    }
+
+                    // ブロック３編集
+                    RARet = SetBlock3Data(VehiclesList);
+                    if (RARet != CommonDefine.RetunAnswer.Answer0) return RARet;
+
+                    // 中断処理
+                    if (m_Canceled)
+                    {
+                        //キャンセルされたときにコントロールの値を変更する
+                        this.Invoke(m_canceledDlg);
+                        return CommonDefine.RetunAnswer.Answer0;
+                    }
+
+                    // ブロック４編集
+                    RARet = SetBlock4Data(MaterialsList);
+                    if (RARet != CommonDefine.RetunAnswer.Answer0) return RARet;
+
+                    // 中断処理
+                    if (m_Canceled)
+                    {
+                        //キャンセルされたときにコントロールの値を変更する
+                        this.Invoke(m_canceledDlg);
+                        return CommonDefine.RetunAnswer.Answer0;
+                    }
+
+                    // ブロック５編集
+                    RARet = SetBlock5Data(SubcontrList);
+                    if (RARet != CommonDefine.RetunAnswer.Answer0) return RARet;
+
+                    // 中断処理
+                    if (m_Canceled)
+                    {
+                        //キャンセルされたときにコントロールの値を変更する
+                        this.Invoke(m_canceledDlg);
+                        return CommonDefine.RetunAnswer.Answer0;
+                    }
+
+                    // ブロック６編集
+                    RARet = SetBlock6Data(FieldList);
+                    if (RARet != CommonDefine.RetunAnswer.Answer0) return RARet;
+
+                    // 中断処理
+                    if (m_Canceled)
+                    {
+                        //キャンセルされたときにコントロールの値を変更する
+                        this.Invoke(m_canceledDlg);
+                        return CommonDefine.RetunAnswer.Answer0;
+                    }
+
+                    // コントロールの表示を変更する
+                    this.Invoke(m_progressDlg, new object[] { ++m_ProgressCount });
+                }
+
+                // コントロールの表示を変更する
+                this.Invoke(m_progressDlg, new object[] { m_ProcessCount });
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+            finally
+            {
+                DailyDB.close(); DailyDB = null;
+            }
+        }
+        #endregion
+
+        #region 取得データ量より必要ページ数を返す
+        /// <summary>
+        /// 取得データ量より必要ページ数を返す
+        /// </summary>
+        /// <returns></returns>
+        private int GetToDayPageCnt(ArrayList DetailList, ArrayList VehiclesList, ArrayList MaterialsLis, ArrayList SubcontrList)
+        {
+            try
+            {
+                int PageCnt = 0;
+
+                // 明細データページ数
+                int workCnt = DetailList.Count / s_FixDetailListRow;
+                if ((DetailList.Count % s_FixDetailListRow) != 0) workCnt++;
+                if (PageCnt < workCnt) PageCnt = workCnt;
+
+                // 車両データページ数
+                workCnt = VehiclesList.Count / s_FixVehiclesListRow;
+                if ((VehiclesList.Count % s_FixVehiclesListRow) != 0) workCnt++;
+                if (PageCnt < workCnt) PageCnt = workCnt;
+
+                // 資材データページ数
+                workCnt = MaterialsLis.Count / s_FixMaterialsListRow;
+                if ((MaterialsLis.Count % s_FixMaterialsListRow) != 0) workCnt++;
+                if (PageCnt < workCnt) PageCnt = workCnt;
+
+                // 業社打ち合わせデータページ数
+                workCnt = SubcontrList.Count / s_FixSubcontrListRow;
+                if ((SubcontrList.Count % s_FixSubcontrListRow) != 0) workCnt++;
+                if (PageCnt < workCnt) PageCnt = workCnt;
+
+                return PageCnt;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region 日報明細データを取得する
+        /// <summary>
+        /// 日報明細データを取得する
+        /// </summary>
+        /// <param name="DetailDB"></param>
+        /// <param name="DetailList"></param>
+        private void GetDetailList(IODailyDataConstruction DailyDB, DailyDataConstruction DailyRec, ref ArrayList DetailList)
+        {
+            try
+            {
+                string strSQL = "SELECT C.JOBCATEGORYNAME, B.COMPANYNAME, A.TODAYHEADCOUNT, A.TOTALHEADCOUNT,A.TODAYWORK, A.NEXTDAYWORK, A.NEXTDAYHEADCOUNT, A.COMPANYCODE";
+                strSQL += " FROM DAILYDATADETAIL A";
+                strSQL += " LEFT JOIN SUBCONTRACTORMASTER B ON B.COMPANYCODE = A.COMPANYCODE";
+                strSQL += " LEFT JOIN SUBCONTRACTORJOBCATEGORY C ON C.JOBCATEGORYCODE = A.JOBCATEGORYCODE";
+                strSQL += string.Format(" WHERE A.PersonCode = {0}",m_PersonCode);
+                //strSQL += string.Format(" AND A.DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.ConstructionCode = {0}",m_ConstructionCode);
+                strSQL += " ORDER BY A.SEQNO";
+                DailyDB.ExecuteReader(strSQL, ref DetailList);
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 日報車両データを取得する
+        /// <summary>
+        /// 日報車両データを取得する
+        /// </summary>
+        /// <param name="DetailDB"></param>
+        /// <param name="VehiclesList"></param>
+        private void GetVehiclesList(IODailyDataConstruction DailyDB, DailyDataConstruction DailyRec, ref ArrayList VehiclesList)
+        {
+            try
+            {
+                //string strSQL = "SELECT A.MODEL, A.PERFORMANCE, A.OWNER, A.DRIVER, TO_CHAR(A.STARTWORKINGTIME, 'HH24:MI:SS'), TO_CHAR(A.ENDWORKINGTIME, 'HH24:MI:SS')";
+                string strSQL = "SELECT A.MODEL, A.PERFORMANCE, A.OWNER, A.DRIVER, DATE_FORMAT(A.STARTWORKINGTIME, '%H:%i:%'), DATE_FORMAT(A.ENDWORKINGTIME, '%H:%i:%')";
+                strSQL += " FROM DAILYDATAVEHICLES A";
+                strSQL += string.Format(" WHERE A.PersonCode = {0}", m_PersonCode);
+                //strSQL += string.Format(" AND A.DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.ConstructionCode = {0}", m_ConstructionCode);
+                strSQL += " ORDER BY A.SEQNO";
+                DailyDB.ExecuteReader(strSQL, ref VehiclesList);
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 日報資材データを取得する
+        /// <summary>
+        /// 日報資材データを取得する
+        /// </summary>
+        /// <param name="DetailDB"></param>
+        /// <param name="MaterialsList"></param>
+        private void GetMaterialsList(IODailyDataConstruction DailyDB, DailyDataConstruction DailyRec, ref ArrayList MaterialsList)
+        {
+            try
+            {
+                string strSQL = "SELECT A.MATERIALS, A.QUANTITY, A.PRODUCTION, A.DELIVERY, A.QUALITYCONTROL";
+                strSQL += " FROM DAILYDATAMATERIALS A";
+                strSQL += string.Format(" WHERE A.PersonCode = {0}", m_PersonCode);
+                //strSQL += string.Format(" AND A.DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.ConstructionCode = {0}", m_ConstructionCode);
+                strSQL += " ORDER BY A.SEQNO";
+                DailyDB.ExecuteReader(strSQL, ref MaterialsList);
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 日報業者打合せデータを取得する
+        /// <summary>
+        /// 日報業者打合せデータを取得する
+        /// </summary>
+        /// <param name="DetailDB"></param>
+        /// <param name="SubcontrList"></param>
+        private void GetSubcontrList(IODailyDataConstruction DailyDB, DailyDataConstruction DailyRec, ref ArrayList SubcontrList)
+        {
+            try
+            {
+                string strSQL = "SELECT A.ATTENDEE, A.CONTENTSTEXT";
+                strSQL += " FROM DAILYDATASUBCONTRACTORS A";
+                strSQL += string.Format(" WHERE A.PersonCode = {0}", m_PersonCode);
+                //strSQL += string.Format(" AND A.DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.ConstructionCode = {0}", m_ConstructionCode);
+                strSQL += " ORDER BY A.SEQNO";
+                DailyDB.ExecuteReader(strSQL, ref SubcontrList);
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 日報現場巡回データを取得する
+        /// <summary>
+        /// 日報現場巡回データを取得する
+        /// </summary>
+        /// <param name="DetailDB"></param>
+        /// <param name="FieldList"></param>
+        private void GetFieldList(IODailyDataConstruction DailyDB, DailyDataConstruction DailyRec, ref ArrayList FieldList)
+        {
+            try
+            {
+                string strSQL = "SELECT A.SEQNO, A.PATROLTIME, A.CONTENTSTEXT";
+                strSQL += " FROM DAILYDATAFIELD A";
+                strSQL += string.Format(" WHERE A.PersonCode = {0}", m_PersonCode);
+                //strSQL += string.Format(" AND A.DailyDataDate = TO_DATE('{0}','YYYY/MM/DD')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.DailyDataDate = STR_TO_DATE('{0}','%Y/%m/%d')", DailyRec.DailyDataDate.ToShortDateString());
+                strSQL += string.Format(" AND A.ConstructionCode = {0}", m_ConstructionCode);
+                strSQL += " ORDER BY A.SEQNO";
+                DailyDB.ExecuteReader(strSQL, ref FieldList);
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 印鑑表示
+        /// <summary>
+        ///  印鑑表示
+        /// </summary>
+        private void ExcelPrintCoverSeal(DailyDataConstruction DailyRec, int PageCnt)
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            IOProcessApproval paDB = new IOProcessApproval();
+            try
+            {
+                // 印刷テーブル作成
+                int[] PorsonTable = new int[5] { 0, 0, 0, 0, 0 };
+                string[] PrintNameTable = new string[PorsonTable.Length];
+                string[] PersonNameTable = new string[PorsonTable.Length];
+
+                // 承認データから担当者名を読込む
+                string strSQLSeal = "SELECT B.PERSONCODE, B.DISPLAYSTRING, B.SEALPRINTNAME";
+                strSQLSeal += " FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B, SECURITYMASTER C";
+                strSQLSeal += string.Format(" Where A.ConstructionCode = {0}", ConstructionCode.ToString());
+                strSQLSeal += string.Format(" And A.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.DRConstructionApproval);
+                strSQLSeal += string.Format(" AND A.ORDERNO = {0}", CommonDefine.s_Default_OrderNo);
+                strSQLSeal += " AND A.SEQNO != 1";
+                strSQLSeal += " AND B.PERSONCODE = A.PERSONCODE";
+                strSQLSeal += " AND C.SECCODE = B.SECCODE";
+                strSQLSeal += " Order By C.SECRANK ASC, B.DISPLAYORDER ASC";
+
+                ArrayList arList = new ArrayList();
+                if (!paDB.ExecuteReader(strSQLSeal, ref arList)) return;
+
+                // 承認データより担当者その他を取得する
+                int PrintCnt = 0;
+                foreach (object[] curRec in arList)
+                {
+                    // 枠分まで
+                    if (PrintCnt > PorsonTable.Length) break;
+
+                    ProcessApproval parec = new ProcessApproval();
+                    PorsonTable[PrintCnt] = CommonMotions.cnvInt(curRec[0]);
+                    PrintNameTable[PrintCnt] = CommonMotions.cnvString(curRec[1]);
+                    PersonNameTable[PrintCnt] = CommonMotions.cnvString(curRec[2]);
+
+                    PrintCnt++;
+                }
+
+                // 担当者をセットする
+                int SetCnt = (PorsonTable.Length - 1);
+                PersonInChargeMaster SalesRec = new PersonInChargeMaster();
+                string strSales = picDB.CreatePrimarykeyString(DailyRec.PersonCode);
+                picDB.SelectAction(strSales, ref SalesRec);
+                PorsonTable[SetCnt] = DailyRec.PersonCode;
+                PrintNameTable[SetCnt] = string.Empty;
+                PersonNameTable[SetCnt] = SalesRec.SealPrintName;
+
+                // テーブル内に同じコードが無いか後から調べる
+                for (int i = PorsonTable.Length - 1; i >= 0; i--)
+                {
+                    for (int ii = i - 1; ii >= 0; ii--)
+                    {
+                        if (PorsonTable[i] == PorsonTable[ii])
+                        {
+                            PorsonTable[i] = 0;
+                            PrintNameTable[i] = "";
+                            break;
+                        }
+                    }
+                }
+
+                // 印鑑を描画する
+                OfficeShapeDefine shapedef = new OfficeShapeDefine();
+                shapedef.ShapeSheetName = s_shapeSheetName;     // 図形シート名称
+                shapedef.ShapeName = s_shapeName;               // 図形名称
+                shapedef.ShapeWidth = s_ShapeSize[0, 0];        // 図形描画サイズ Width
+                shapedef.ShapeHeight = s_ShapeSize[0, 1];       // 図形描画サイズ Height
+
+                int PrintPos = 21;   // Vは21
+                for (int i = 0; i < PorsonTable.Length; i++, PrintPos += 2)
+                {
+                    if (PorsonTable[i] == 0) continue;
+
+                    shapedef.ShapeDrowPointX = s_CoverSealPoint[i, 0] + (s_NextImageY * PageCnt);   // 図形描画位置 X
+                    shapedef.ShapeDrowPointY = s_CoverSealPoint[i, 1] + (s_NextImageY * PageCnt);   // 図形描画位置 Y
+                    shapedef.DrowText = PersonNameTable[i];                      // 描画文字列
+                    int ifontSize = PersonNameTable[i].Length - 1;
+                    if (ifontSize > 4) ifontSize = 4;
+                    shapedef.FontSize = s_EstimateSeal1FontSize[ifontSize];     // フォントサイズ
+                    // 図形描画
+                    m_UsedExcel.ExcelCopyShape(shapedef);
+
+                    // タイトル印字
+                    string strChar = CommonMotions.cnvNumberToAlphaCharacter(PrintPos);
+                    int RowPoint = 1 + (s_NumberOfRowInDetail * i);
+                    if (PrintPos > 25) strChar = "A" + strChar;
+                    if (PrintNameTable[i].Length != 0)
+                    {
+                        m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString(strChar, RowPoint), PrintNameTable[i]);
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                paDB.close(); paDB = null;
+                picDB.close(); picDB = null;
+            }
+        }
+        #endregion
+
+        #region ブロック１データセット（ヘッダー部作成）
+        /// <summary>
+        /// ブロック１データセット（ヘッダー部作成）
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer SetBlock1Data(DailyDataConstruction DailyRec, int PageCnt)
+        {
+            try
+            {
+                // 日付セット
+                string strJapanDate = CommonMotions.cnvJapaneseCalendar(DailyRec.DailyDataDate);
+                string Wareki = CommonMotions.GetNameOfAnEra(DailyRec.DailyDataDate);
+                for (int i = 0; i < PageCnt; i++)
+                {
+                    int RowCnt = 2 + (s_NumberOfRowInDetail * i);
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("M", RowCnt), Wareki);                                // 和暦
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("N", RowCnt),
+                                                strJapanDate.Substring(0, strJapanDate.IndexOf("年")).Replace(Wareki, ""));      // 年
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("P", RowCnt),
+                                                DailyRec.DailyDataDate.Month.ToString("00"));                                   // 月
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("R", RowCnt),
+                                                DailyRec.DailyDataDate.Day.ToString("00"));                                     // 日
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("T", RowCnt),
+                                                CommonDefine.DayOfTheWeekString[(int)DailyRec.DailyDataDate.DayOfWeek]);        // 曜日
+
+                    RowCnt = 3 + (s_NumberOfRowInDetail * i);
+                    // 工事名称セット
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("C", RowCnt),
+                                                m_ConstructionBaseInfoDetail.DetailString);
+                    // 天気
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("P", RowCnt),
+                                                DailyRec.Weather);
+
+                    // 判子印字
+                    ExcelPrintCoverSeal(DailyRec, i);
+                }
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+            finally
+            {
+            }
+        }
+        #endregion
+
+        #region ブロック２データセット（日報明細）
+        /// <summary>
+        /// ブロック２データセット（日報明細）
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer SetBlock2Data(ArrayList DetailList)
+        {
+            try
+            {
+                int PageCnt = 0;
+                int LineCnt = s_FixDetailStartLine;
+                int RowCnt = 1;
+                int NoCnt = 1;
+                double Total1 = 0;
+                double Total2 = 0;
+                double Total3 = 0;
+                foreach(object[] objRec in DetailList)
+                {
+                    if (RowCnt > s_FixDetailListRow)
+                    {
+                        // 当日人員
+                        m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", LineCnt), Total1.ToString("#,0.0"));
+                        // 累計人員
+                        m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("E", LineCnt), Total2.ToString("#,0.0"));
+                        // 翌日予定人員	
+                        m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("AD", LineCnt), Total3.ToString("#,0.0"));
+
+                        PageCnt++;
+                        LineCnt = s_FixDetailStartLine + (PageCnt * s_NumberOfRowInDetail);
+                        RowCnt = 1;
+                    }
+
+                    // №
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("A", LineCnt), NoCnt.ToString());
+                    // 職　種
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("B", LineCnt), CommonMotions.cnvString(objRec[0]));
+                    // 業者名
+                    if (CommonMotions.cnvString(objRec[1]).Length == 0 && CommonMotions.cnvInt(objRec[7]) == -1)
+                        m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("C", LineCnt), s_MyCompanyName);
+                    else
+                        m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("C", LineCnt), CommonMotions.cnvString(objRec[1]));
+                    // 当日人員
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", LineCnt), CommonMotions.cnvDouble(objRec[2]).ToString("#,0.0"));
+                    Total1 += CommonMotions.cnvDouble(objRec[2]);
+                    // 累計人員
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("E", LineCnt), CommonMotions.cnvDouble(objRec[3]).ToString("#,0.0"));
+                    Total2 += CommonMotions.cnvDouble(objRec[3]);
+                    // 当日作業内容
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("F", LineCnt), CommonMotions.cnvString(objRec[4]));
+                    // 翌日作業内容
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("R", LineCnt), CommonMotions.cnvString(objRec[5]));
+                    // 翌日予定人員	
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("AD", LineCnt), CommonMotions.cnvDouble(objRec[6]).ToString("#,0.0"));
+                    Total3 += CommonMotions.cnvDouble(objRec[6]);
+
+                    RowCnt++;
+                    LineCnt++;
+                    NoCnt++;
+                }
+                // 合計印刷
+                if (Total1 != 0)
+                {
+                    LineCnt = (s_FixDetailStartLine + s_FixDetailListRow) + (PageCnt * s_NumberOfRowInDetail);
+
+                    // 当日人員
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", LineCnt), Total1.ToString("#,0.0"));
+                    // 累計人員
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("E", LineCnt), Total2.ToString("#,0.0"));
+                    // 翌日予定人員	
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("AD", LineCnt), Total3.ToString("#,0.0"));
+                }
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+        #endregion
+
+        #region ブロック３データセット（車両）
+        /// <summary>
+        /// ブロック３データセット（車両）
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer SetBlock3Data(ArrayList VehiclesList)
+        {
+            try
+            {
+                int PageCnt = 0;
+                int LineCnt = s_FixVehiclesStartLine;
+                int RowCnt = 1;
+                int NoCnt = 1;
+                foreach (object[] objRec in VehiclesList)
+                {
+                    if (RowCnt > s_FixVehiclesListRow)
+                    {
+                        PageCnt++;
+                        LineCnt = s_FixVehiclesStartLine + (PageCnt * s_NumberOfRowInDetail);
+                        RowCnt = 1;
+                    }
+
+                    // №
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("A", LineCnt), NoCnt.ToString());
+                    // 機　　種
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("B", LineCnt), CommonMotions.cnvString(objRec[0]));
+                    // 性能
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", LineCnt), CommonMotions.cnvString(objRec[1]));
+                    // 所有会社
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("F", LineCnt), CommonMotions.cnvString(objRec[2]));
+                    // 当日運転者
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("M", LineCnt), CommonMotions.cnvString(objRec[3]));
+                    // 作業時間開始
+                    DateTime StartTime = CommonMotions.cnvDate(objRec[4]);
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("S", LineCnt), StartTime.ToShortTimeString());
+                    // 作業時間終了
+                    DateTime EndTime = CommonMotions.cnvDate(objRec[5]);
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("Z", LineCnt), EndTime.ToShortTimeString());
+
+                    RowCnt++;
+                    LineCnt++;
+                    NoCnt++;
+                }
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+        #endregion
+
+        #region ブロック４データセット（資材）
+        /// <summary>
+        /// ブロック４データセット（資材）
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer SetBlock4Data(ArrayList MaterialsList)
+        {
+            try
+            {
+                int PageCnt = 0;
+                int LineCnt = s_FixMaterialsStartLine;
+                int RowCnt = 1;
+                int NoCnt = 1;
+                foreach (object[] objRec in MaterialsList)
+                {
+                    if (RowCnt > s_FixMaterialsListRow)
+                    {
+                        PageCnt++;
+                        LineCnt = s_FixMaterialsStartLine + (PageCnt * s_NumberOfRowInDetail);
+                        RowCnt = 1;
+                    }
+
+                    // №
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("A", LineCnt), NoCnt.ToString());
+                    // 資材名
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("B", LineCnt), CommonMotions.cnvString(objRec[0]));
+                    // 数量
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", LineCnt), CommonMotions.cnvInt(objRec[1]).ToString("#,0"));
+                    // 製作会社
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("F", LineCnt), CommonMotions.cnvString(objRec[2]));
+                    // 納品業者
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("M", LineCnt), CommonMotions.cnvString(objRec[3]));
+                    // 品質管理次項												
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("S", LineCnt), CommonMotions.cnvString(objRec[4]));
+
+                    RowCnt++;
+                    LineCnt++;
+                    NoCnt++;
+                }
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+        #endregion
+
+        #region ブロック５データセット（業者打合せ）
+        /// <summary>
+        /// ブロック５データセット（業者打合せ）
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer SetBlock5Data(ArrayList SubcontrList)
+        {
+            try
+            {
+                int PageCnt = 0;
+                int LineCnt = s_FixSubcontrStartLine;
+                int RowCnt = 1;
+                int NoCnt = 1;
+                foreach (object[] objRec in SubcontrList)
+                {
+                    if (RowCnt > s_FixSubcontrListRow)
+                    {
+                        PageCnt++;
+                        LineCnt = s_FixSubcontrStartLine + (PageCnt * s_NumberOfRowInDetail);
+                        RowCnt = 1;
+                    }
+
+                    // №
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("A", LineCnt), NoCnt.ToString());
+                    // 出席者
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("B", LineCnt), CommonMotions.cnvString(objRec[0]));
+                    // 内容及び指示事項
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", LineCnt), CommonMotions.cnvString(objRec[1]));
+
+                    RowCnt++;
+                    LineCnt++;
+                    NoCnt++;
+                }
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+
+        #endregion
+
+        #region ブロック６データセット（現場巡回）
+        /// <summary>
+        /// ブロック６データセット（現場巡回）
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer SetBlock6Data(ArrayList FieldList)
+        {
+            try
+            {
+                int LineCnt = 0;
+                int RowCnt = s_FixFeildStartLine;
+                int SeqNo = 0;
+                foreach (object[] objRec in FieldList)
+                {
+
+                    SeqNo = CommonMotions.cnvInt(objRec[0]);
+                    LineCnt = RowCnt + (SeqNo - 1);
+                    // 時間帯
+                    DateTime FieldTime = CommonMotions.cnvDate(objRec[1]);
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("C", LineCnt), FieldTime.ToShortTimeString());
+                    // 巡回状況
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", LineCnt), CommonMotions.cnvString(objRec[2]));
+                }
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+
+        #endregion
+
+        #region 印刷ページを取得するために工事日報データの対象件数を取得する
+        /// <summary>
+        /// 印刷ページを取得するために工事日報データの対象件数を取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetProcessCount()
+        {
+            IODailyDataConstruction DailyDB = new IODailyDataConstruction();
+            try
+            {
+                ArrayList arData = new ArrayList();
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, A.DAILYDATADATE FROM DailyDataConstruction A";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                strSQL += " ORDER BY A.CONSTRUCTIONCODE, A.DAILYDATADATE";
+
+                // SQL実行
+                if (!DailyDB.ExecuteReader(strSQL, ref arData)) return arData.Count;
+
+                return arData.Count;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+            finally
+            {
+                DailyDB.close(); DailyDB = null;
+            }
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRConstruction/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmDRConstruction
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.DRConstruction;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] m_SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -114,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -202,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -235,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -279,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -296,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -312,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -323,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -340,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -356,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -367,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -384,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -400,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -411,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -428,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -444,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -455,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -472,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -488,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -499,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -516,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -531,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -542,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -559,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -575,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -586,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -603,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -619,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -652,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -696,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -712,7 +858,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -947,11 +1093,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1120,6 +1267,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRList.cs	(revision 51)
@@ -47,6 +47,10 @@
             CreateDate,
         }
 
+        /// <summary>
+        /// �����^�C�g���s
+        /// </summary>
+        private const string s_GridColumnTitle = "�H�@���@�I�@���@��";
         #endregion
 
         #region �ϐ�
@@ -202,15 +206,19 @@
         /// <param name="e"></param>
         private void FrmDRList_Load(object sender, EventArgs e)
         {
-            // �\�������ݒ�
-            InitDisplayFormat();
+            // �R���{�{�b�N�X�Z�b�g
+            SetcmbDepartment();
+            SetcmbPersons();
 
+            // �R���{�{�b�N�X�����\��
+            InitCombBox();
+
+            // ��������
+            InitSetting();
+
             // �����\��
             InitDataLoad();
 
-            // �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
-            SetInitCmbBoxSelect();
-
             m_initDataLoad = false;
         }
         #endregion
@@ -285,10 +293,8 @@
         {
             if (m_initDataLoad) return;
 
-            // �S���҃R���{�{�b�N�X�X�V
-            m_initDataLoad = true;
-            SetPersonCombbox();
-            m_initDataLoad = false;
+            // �S���҃R���{�{�b�N�X�ύX
+            SetcmbPersons();
 
             // �f�[�^�\��
             DataDisplay();
@@ -305,9 +311,25 @@
         {
             if (m_initDataLoad) return;
 
+            // �S���ґI���������I����ݒ肷��
+            SetPerosonToDepartment();
+
             // �f�[�^�\��
             DataDisplay();
         }
         #endregion
+
+        #region �Z�������`��
+        /// <summary>
+        /// �Z�������`��
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
+        {
+            // �����`��
+            CellConnective(sender, e);
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRList.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRList.designer.cs	(revision 51)
@@ -39,7 +39,7 @@
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.groupBox1 = new System.Windows.Forms.GroupBox();
-            this.cmbPerson = new System.Windows.Forms.ComboBox();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
             this.label3 = new System.Windows.Forms.Label();
             this.cmbDepartment = new System.Windows.Forms.ComboBox();
             this.label2 = new System.Windows.Forms.Label();
@@ -88,6 +88,7 @@
             this.btnDataEntry.TabIndex = 7;
             this.btnDataEntry.Text = "新規に日報作成する";
             this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Visible = false;
             this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
             // 
             // btnEnd
@@ -119,7 +120,7 @@
             // groupBox1
             // 
             this.groupBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
-            this.groupBox1.Controls.Add(this.cmbPerson);
+            this.groupBox1.Controls.Add(this.cmbConstructionPerson);
             this.groupBox1.Controls.Add(this.label3);
             this.groupBox1.Controls.Add(this.cmbDepartment);
             this.groupBox1.Controls.Add(this.label2);
@@ -134,18 +135,18 @@
             this.groupBox1.TabIndex = 0;
             this.groupBox1.TabStop = false;
             // 
-            // cmbPerson
+            // cmbConstructionPerson
             // 
-            this.cmbPerson.BackColor = System.Drawing.Color.White;
-            this.cmbPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbPerson.FormattingEnabled = true;
-            this.cmbPerson.Location = new System.Drawing.Point(760, 17);
-            this.cmbPerson.Name = "cmbPerson";
-            this.cmbPerson.Size = new System.Drawing.Size(200, 23);
-            this.cmbPerson.TabIndex = 45;
-            this.cmbPerson.Visible = false;
-            this.cmbPerson.SelectedIndexChanged += new System.EventHandler(this.cmbPerson_SelectedIndexChanged);
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(760, 17);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
+            this.cmbConstructionPerson.TabIndex = 45;
+            this.cmbConstructionPerson.Visible = false;
+            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbPerson_SelectedIndexChanged);
             // 
             // label3
             // 
@@ -307,6 +308,7 @@
             this.dgvMaster.Size = new System.Drawing.Size(1220, 490);
             this.dgvMaster.TabIndex = 6;
             this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            this.dgvMaster.CellPainting += new System.Windows.Forms.DataGridViewCellPaintingEventHandler(this.dgvMaster_CellPainting);
             // 
             // Column6
             // 
@@ -425,7 +427,7 @@
         private CustomControls.DataGridViewEX dgvMaster;
         private System.Windows.Forms.ComboBox cmbDepartment;
         private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.ComboBox cmbPerson;
+        private System.Windows.Forms.ComboBox cmbConstructionPerson;
         private System.Windows.Forms.Label label3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRList/FrmDRListAuxiliary.cs	(revision 51)
@@ -39,54 +39,25 @@
         #region �v���p�e�B
         #endregion
 
-        #region �������̕\���`����ݒ肷��
+        #region �����\���ݒ�
         /// <summary>
-        /// �������̕\���`����ݒ肷��
+        /// �����\���ݒ�
         /// </summary>
-        private void InitDisplayFormat()
+        private void InitSetting()
         {
             try
             {
-                cmbDepartment.Visible = true;
-                cmbPerson.Visible = true;
-                label2.Visible = true;
-                label3.Visible = true;
-
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                switch (m_ExecuteFlg)
                 {
-                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                    case (int)ClsExcute.ProcessExecuteNo.DRConstruction:
+                        label1.Text = "�H�@���@���@��@��@��";
+                        btnDataEntry.Text = "�V�K�ɓ���쐬����";
+                        break;
+                    case (int)ClsExcute.ProcessExecuteNo.Proceedings:
+                        label1.Text = "�Ł@���@��@���@�c�@���@�^�@��@��";
+                        btnDataEntry.Text = "�V�K�ɋc���^�쐬����";
+                        break;
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                {
-                    // �ō��@���Ǘ��ҁi���ׂđΏہj
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                {
-                    // �����@���Ǘ��ҁi�@�\�����j
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // �@���Ǘ��ҁi�������̂݁j
-                    cmbDepartment.Visible = false;
-                    label2.Visible = false;
-
-                    cmbPerson.Location = cmbDepartment.Location;
-                    label3.Location = label2.Location;
-                    
-                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
-                    
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi���f�[�^�̂݁j
-                    cmbDepartment.Visible = false;
-                    cmbPerson.Visible = false;
-                    label2.Visible = false;
-                    label3.Visible = false;
-
-                    cmbPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
-                }
             }
             catch (Exception ex)
             {
@@ -95,51 +66,6 @@
         }
         #endregion
 
-        #region �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
-        /// <summary>
-        /// �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
-        /// </summary>
-        private void SetInitCmbBoxSelect()
-        {
-            try
-            {
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                {
-                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                {
-                    // �ō��@���Ǘ��ҁi���ׂđΏہj
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                {
-                    // �����@���Ǘ��ҁi�@�\�����j
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // �@���Ǘ��ҁi�������̂݁j
-                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
-                    // �S���҃R���{�{�b�N�X�X�V
-                    SetPersonCombbox();
-                    // �f�[�^�\��
-                    DataDisplay();
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi���f�[�^�̂݁j
-                    cmbPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
-                    // �f�[�^�\��
-                    DataDisplay();
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region ���v���Z�X�N��
         /// <summary>
         /// ����ꗗ���N������v���Z�X�I������
@@ -162,7 +88,7 @@
                 int depCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
                 ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(depCode);
                 // �S����
-                int personCode = CommonMotions.cnvInt(cmbPerson.SelectedValue);
+                int personCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
                 ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(personCode);
 
                 // ----- �N�����Z�b�g
@@ -216,6 +142,102 @@
         {
             try
             {
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    CreateOldSecuritySQL(ref strSQL);
+                }
+                else
+                {
+                    CreateNewSecuritySQL(ref strSQL);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �L�[�l�擾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                // �f�[�^�A�N�Z�X�Ɍ����ɂ�萧��������
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ���ׂđΏہi����SQL���j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // �ꕔ�����L
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+
+                    strSQL += " And (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1";
+                    strSQL += string.Format(" Where A1.DepartmentCode IN (SELECT A2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A2 WHERE A2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSQL += " And (A.ConstructionPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3";
+                    strSQL += string.Format(" Where A3.DepartmentCode IN (SELECT A4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A4 WHERE A4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.CONSTRSUBPERSONCODE IN (Select A5.PersonCode From PersonInChargeMaster A5";
+                    strSQL += string.Format(" Where A5.DepartmentCode IN (SELECT A6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A6 WHERE A6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.ConstructionInstructor IN (Select A7.PersonCode From PersonInChargeMaster A7";
+                    strSQL += string.Format(" Where A7.DepartmentCode IN (SELECT A8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A8 WHERE A8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And A.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg = {0}", iStatus2);                                            // �������p���͈��p�����̂��̂͌�����
+                    strSQL += string.Format(" And A.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ��ʎg�p��
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+
+                    strSQL += string.Format(" And (A.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSQL += string.Format(" And (A.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateOldSecuritySQL(ref string strSQL)
+        {
+            try
+            {
                 // �����������҂̓f�[�^�Q�Əo���鏈��������
                 if (ClsSecurityPermission.PermitGeneralAffairsDevision(m_ExecuteFlg)) return;
 
@@ -238,10 +260,10 @@
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
                 {
                     // �@���Ǘ��ҁi�������̂݁j
-                    strSQL += string.Format(" AND (A.SalesPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" OR A.ConstructionPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" OR A.ConstrSubPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" OR A.ConstructionInstructor IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" AND (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1 Where A1.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.ConstructionPersonCode IN (Select A2.PersonCode From PersonInChargeMaster A2 Where A2.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.ConstrSubPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3 Where A3.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.ConstructionInstructor IN (Select A4.PersonCode From PersonInChargeMaster A4 Where A4.DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
                     strSQL += string.Format(" AND A.ConstructionStatusFlg != {0}", iStatus1);
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
@@ -262,11 +284,11 @@
         }
         #endregion
 
-        #region �f�[�^�擾SQL�쐬
+        #region �H������f�[�^�擾SQL�쐬
         /// <summary>
-        /// �\���p�f�[�^�擾SQL�쐬
+        /// �H������f�[�^�擾SQL�쐬
         /// </summary>
-        private void CreateInitSQL(ref string strSQL)
+        private void CreateInitSQL1(ref string strSQL)
         {
             string strSub1 = "";
             string strSub2 = "";
@@ -277,7 +299,7 @@
                 // ----- ���������擾
                 // �S����
                 int PersonCode = -1;
-                if (cmbPerson.Visible) PersonCode = CommonMotions.cnvInt(cmbPerson.SelectedValue);
+                if (cmbConstructionPerson.Visible) PersonCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
                 //  ����
                 int DepartmentCode = -1;
                 if (cmbDepartment.Visible) DepartmentCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
@@ -287,8 +309,8 @@
                 CreateSecuritySQL(ref strSecurity);
 
                 // ������͑ΏۍH��
-                strSub1 = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING, C.PERSONCODE, C.PERSONNAME, '', D.DEPARTMENTCODE, D.DEPARTMENTSTRING, D.DISPLAYORDER, C.DISPLAYORDER";
-                strSub1 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C, DEPARTMENTMASTER D";
+                strSub1 = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING, C.PERSONCODE, C.PERSONNAME, '', D.DEPARTMENTCODE, D.DEPARTMENTSTRING, D.DISPLAYORDER, C.DISPLAYORDER, E.COMPLATEFLG";
+                strSub1 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C, DEPARTMENTMASTER D, CONSTRUCTIONLEDGER E";
                 strSub1 += " WHERE NOT EXISTS (SELECT * FROM DAILYDATACONSTRUCTION Z WHERE Z.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND Z.PERSONCODE = A.CONSTRUCTIONPERSONCODE)";
                 strSub1 += string.Format(" And A.TyingFlg != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
                 
@@ -296,11 +318,11 @@
                 strSub1 += string.Format(" AND ((A.CONSTRUCTIONSTATUSFLG < {0})", iCode);
                 // ����������A7���Ԃ͓�����͉\�ɂ���
                 strSub1 += string.Format(" OR (A.CONSTRUCTIONSTATUSFLG = {0}", iCode);
-                strSub1 += string.Format(" AND DATE_FORMAT('{0}','%Y/%m/%d') <= A.BILLINGDATE))", DateTime.Now.AddDays(-7).ToShortDateString());
+                //strSub1 += string.Format(" AND TO_DATE('{0}','YYYY/MM/DD') <= A.BILLINGDATE))", DateTime.Now.AddDays(-7).ToShortDateString());
+                strSub1 += string.Format(" AND STRTO_DATE('{0}','%Y/%m/%d') <= A.BILLINGDATE))", DateTime.Now.AddDays(-7).ToShortDateString());
                 
                 // �S���ґI��������ꍇ
                 if (PersonCode > 0)
-                    //strSub1 += string.Format(" AND (A.SalesPersonCode = {0} OR A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0})", PersonCode);
                     strSub1 += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0} OR A.ConstrSubPersonCode = {0})", PersonCode);
                 
                 strSub1 += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
@@ -311,15 +333,15 @@
 
                 strSub1 += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
                 strSub1 += " AND C.DEPARTMENTCODE = D.DEPARTMENTCODE";
-
+                strSub1 += " AND E.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
                 // ���͂��ꂽ�H�����񂪂���H��
+                //strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(TO_CHAR(C.DAILYDATADATE,'YYYY/MM/DD'))";
                 strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(DATE_FORMAT(C.DAILYDATADATE,'%Y/%m/%d'))";
-                strSub2 += " , E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER";
-                strSub2 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, DAILYDATACONSTRUCTION C, PERSONINCHARGEMASTER D, DEPARTMENTMASTER E";
+                strSub2 += " , E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER, F.COMPLATEFLG";
+                strSub2 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, DAILYDATACONSTRUCTION C, PERSONINCHARGEMASTER D, DEPARTMENTMASTER E, CONSTRUCTIONLEDGER F";
                 strSub2 += string.Format(" WHERE A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
                 // �S���ґI��������ꍇ
                 if (PersonCode > 0)
-                    //strSub2 += string.Format(" AND (A.SalesPersonCode = {0} OR A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0})", PersonCode);
                     strSub2 += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0} OR A.ConstrSubPersonCode = {0})", PersonCode);
 
                 strSub2 += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
@@ -329,11 +351,12 @@
                 if (DepartmentCode > 0)
                     strSub2 += string.Format(" AND D.DEPARTMENTCODE = {0}", DepartmentCode);
                 strSub2 += " AND D.DEPARTMENTCODE = E.DEPARTMENTCODE";
+                strSub2 += " AND F.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
 
                 strSQL = strSub1 + strSecurity + strSub2 + strSecurity;
-                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.DETAILSTRING, D.PERSONCODE, D.PERSONNAME, E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER)";
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.DETAILSTRING, D.PERSONCODE, D.PERSONNAME, E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER, F.COMPLATEFLG)";
                 // Order by �t��
-                strSQL += " ORDER BY 8 ASC, 9 ASC, 6 ASC, 7 ASC, 3 ASC";
+                strSQL += " ORDER BY 10 ASC, 8 ASC, 9 ASC, 6 ASC, 7 ASC, 3 ASC";
 
             }
             catch (Exception ex)
@@ -343,6 +366,113 @@
         }
         #endregion
 
+        #region �ł����킹�c���^�f�[�^�擾SQL�쐬
+        /// <summary>
+        /// �ł����킹�c���^�f�[�^�擾SQL�쐬
+        /// </summary>
+        private void CreateInitSQL2(ref string strSQL)
+        {
+            string strSub1 = "";
+            string strSub2 = "";
+            try
+            {
+                int iCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("��������")).Key;
+
+                // ----- ���������擾
+                // �S����
+                int PersonCode = -1;
+                if (cmbConstructionPerson.Visible) PersonCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+                //  ����
+                int DepartmentCode = -1;
+                if (cmbDepartment.Visible) DepartmentCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+
+                // SQL�ɃA�N�Z�X������������
+                string strSecurity = string.Empty;
+                CreateSecuritySQL(ref strSecurity);
+
+                // ������͑ΏۍH��
+                strSub1 = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING, C.PERSONCODE, C.PERSONNAME, '', D.DEPARTMENTCODE, D.DEPARTMENTSTRING, D.DISPLAYORDER, C.DISPLAYORDER, E.COMPLATEFLG";
+                strSub1 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C, DEPARTMENTMASTER D, CONSTRUCTIONLEDGER E";
+                strSub1 += " WHERE NOT EXISTS (SELECT * FROM PROCEEDINGSDATA Z WHERE Z.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND Z.PERSONCODE = A.CONSTRUCTIONPERSONCODE)";
+                strSub1 += string.Format(" And A.TyingFlg != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
+
+                // ���������ȍ~�͑ΏۊO
+                strSub1 += string.Format(" AND ((A.CONSTRUCTIONSTATUSFLG < {0})", iCode);
+                // ����������A7���Ԃ͓�����͉\�ɂ���
+                strSub1 += string.Format(" OR (A.CONSTRUCTIONSTATUSFLG = {0}", iCode);
+                //strSub1 += string.Format(" AND TO_DATE('{0}','YYYY/MM/DD') <= A.BILLINGDATE))", DateTime.Now.AddDays(-7).ToShortDateString());
+                strSub1 += string.Format(" AND STR_TO_DATE('{0}','%Y/%m/%d') <= A.BILLINGDATE))", DateTime.Now.AddDays(-7).ToShortDateString());
+
+                // �S���ґI��������ꍇ
+                if (PersonCode > 0)
+                    strSub1 += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0} OR A.ConstrSubPersonCode = {0})", PersonCode);
+
+                strSub1 += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSub1 += " AND A.CONSTRUCTIONPERSONCODE = C.PERSONCODE";
+                // �����I�������鎞
+                if (DepartmentCode > 0)
+                    strSub1 += string.Format(" AND C.DEPARTMENTCODE = {0}", DepartmentCode);
+
+                strSub1 += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                strSub1 += " AND C.DEPARTMENTCODE = D.DEPARTMENTCODE";
+                strSub1 += " AND E.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                // ���͂��ꂽ�H�����񂪂���H��
+                //strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(TO_CHAR(C.PROCEEDINGSDATADATE,'YYYY/MM/DD'))";
+                strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(DATE_FORMAT(C.PROCEEDINGSDATADATE,'%Y/%m/%d'))";
+                strSub2 += " , E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER, F.COMPLATEFLG";
+                strSub2 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PROCEEDINGSDATA C, PERSONINCHARGEMASTER D, DEPARTMENTMASTER E, CONSTRUCTIONLEDGER F";
+                strSub2 += string.Format(" WHERE A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                // �S���ґI��������ꍇ
+                if (PersonCode > 0)
+                    strSub2 += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0} OR A.ConstrSubPersonCode = {0})", PersonCode);
+
+                strSub2 += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSub2 += " AND A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+                strSub2 += " AND C.PERSONCODE = D.PERSONCODE";
+                // �����I�������鎞
+                if (DepartmentCode > 0)
+                    strSub2 += string.Format(" AND D.DEPARTMENTCODE = {0}", DepartmentCode);
+                strSub2 += " AND D.DEPARTMENTCODE = E.DEPARTMENTCODE";
+                strSub2 += " AND F.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+
+                strSQL = strSub1 + strSecurity + strSub2 + strSecurity;
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.DETAILSTRING, D.PERSONCODE, D.PERSONNAME, E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER, F.COMPLATEFLG)";
+                // Order by �t��
+                strSQL += " ORDER BY 10 ASC, 8 ASC, 9 ASC, 6 ASC, 7 ASC, 3 ASC";
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}�F{2}", ex.Message, strSQL, strSub1);
+            }
+        }
+        #endregion
+
+        #region �f�[�^�擾SQL�쐬
+        /// <summary>
+        /// �f�[�^�擾SQL�쐬
+        /// </summary>
+        private void CreateInitSQL(ref string strSQL)
+        {
+            try
+            {
+                switch (m_ExecuteFlg)
+                {
+                    case (int)ClsExcute.ProcessExecuteNo.DRConstruction:
+                        CreateInitSQL1(ref strSQL);
+                        break;
+                    case (int)ClsExcute.ProcessExecuteNo.Proceedings:
+                        CreateInitSQL2(ref strSQL);
+                        break;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
         #region �捞�f�[�^�����񋓌^
         /// <summary>
         /// �捞�f�[�^�����񋓌^
@@ -358,6 +488,7 @@
             DepartmentName,
             DepartmentDisplayorder,
             PersonDisplayorder,
+            LedgerComplate,
         }
         #endregion
 
@@ -383,6 +514,7 @@
                     int PersonCode = 0;
                     string DepString = "";
                     string PersonStr = "";
+                    int CompFlg = (int)CommonDefine.ComplateTitleNo.Operateing;
                     // �f�[�^�\��
                     foreach (object[] objwrk in arData)
                     {
@@ -389,6 +521,7 @@
                         DepString = "";
                         PersonStr = "";
 
+                        // �����̃O���[�s���O
                         if (DepCode != CommonMotions.cnvInt(objwrk[(int)GetData.DepartmentCode]))
                         {
                             DepCode = CommonMotions.cnvInt(objwrk[(int)GetData.DepartmentCode]);
@@ -396,12 +529,21 @@
                             if (!init) dgvMaster.Rows.Add(1);
                             init = false;
                         }
+                        // �S���҂̃O���[�s���O
                         if (PersonCode != CommonMotions.cnvInt(objwrk[(int)GetData.PersonCode]))
                         {
                             PersonCode = CommonMotions.cnvInt(objwrk[(int)GetData.PersonCode]);
                             PersonStr = CommonMotions.cnvString(objwrk[(int)GetData.PersonName]);
                         }
-                        
+                        // ������͏I��
+                        if (CompFlg != CommonMotions.cnvInt(objwrk[(int)GetData.LedgerComplate]))
+                        {
+                            CompFlg = CommonMotions.cnvInt(objwrk[(int)GetData.LedgerComplate]);
+                            dgvMaster.Rows.Add(2);
+                            dgvMaster.Rows[dgvMaster.Rows.Count - 1].Cells[(int)DispColumn.ConstructionName].Value = s_GridColumnTitle;
+                        }
+
+
                         dgvMaster.Rows.Add(CommonMotions.cnvInt(objwrk[(int)GetData.DepartmentCode])
                                             , DepString
                                             , CommonMotions.cnvInt(objwrk[(int)GetData.PersonCode])
@@ -450,8 +592,6 @@
             {
                 // �R���{�{�b�N�X�Z�b�g
                 SetPeriod();
-                SetDepartmentCombbox();
-                SetPersonCombbox();
 
                 // ----- �ޔ������f�[�^���������ꍇ�̓Z�b�g����
                 int NowPoint = ClsExcute.GetNowProcessPoint();
@@ -462,7 +602,7 @@
                     // �S������
                     cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[1];
                     // �S����
-                    cmbPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
+                    cmbConstructionPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
                 }
                 // �O���b�h�̍s��0�ɖ߂�
                 dgvMaster.Rows.Clear();
@@ -519,38 +659,314 @@
         }
         #endregion
 
-        #region �S�������R���{�{�b�N�X�Z�b�g
+        #region �����R���{���S���҃R�[�h���擾����
         /// <summary>
-        /// �S�������R���{�{�b�N�X�֕������Z�b�g����
+        /// �����R���{���S���҃R�[�h���擾����
         /// </summary>
-        private bool SetDepartmentCombbox()
+        /// <returns></returns>
+        private int GetDepartmentCode()
         {
-            IOMDepartment dmDB = new IOMDepartment();
+            try
+            {
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbDepartment.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{���S���҃R�[�h���擾����
+        /// <summary>
+        /// �S���҃R���{���S���҃R�[�h���擾����
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstructionPersonCode()
+        {
+            try
+            {
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbConstructionPerson.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region �R���{�{�b�N�X�����\��
+        /// <summary>
+        /// �R���{�{�b�N�X�����\��
+        /// </summary>
+        private void InitCombBox()
+        {
+            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;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // �����R���{��\��
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // �����ݒ�Ώۂ��R���{�{�b�N�X�f�[�^�ɂ���΃Z�b�g����
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X�̔�\������
+        /// <summary>
+        /// �����R���{�{�b�N�X�̔�\������
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // �����R���{��\��
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // �\���ʒu�̃Z�b�g
+                Point loc3 = label3.Location;
+                loc3.X = label2.Location.X + 10;
+                label3.Location = loc3;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �S�R���{�{�b�N�X�\����ON/OFF����
+        /// <summary>
+        /// �S�R���{�{�b�N�X�\����ON/OFF����
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // �����E�S���҃R���{��\��
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X���Z�b�g����
+        /// <summary>
+        /// �����R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private bool SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
             bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
             try
             {
-                m_initDataLoad = true;
 
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
                 // �����}�X�^����������
-                string strSQL = " Where DeleteFlg = 0 ORDER BY DisplayOrder ASC";
-                List<DepartmentMaster> dmList = new List<DepartmentMaster>();
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // ������
+                        // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // �Q�ƕ����}�X�^���擾����
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
                 // �����}�X�^�Ǎ�
-                if (!dmDB.SelectAction(strSQL, ref dmList)) return false;
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
 
-                List<KeyValuePair<int, string>> DataList1 = new List<KeyValuePair<int, string>>();
-                DataList1.Add(new KeyValuePair<int, string>(0, ""));
-                // �f�[�^�\��
-                foreach (DepartmentMaster wrk in dmList)
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
                 {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.DepartmentCode, wrk.DepartmentString);
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
 
-                    DataList1.Add(keyval);
+                    ConstructionDataList.Add(keyval);
                 }
 
                 // �R���{�{�b�N�X�����\��
-                ComboBoxAction.InitDataSetCombBox(cmbDepartment, DataList1);
-                cmbDepartment.SelectedIndex = -1;
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
 
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ������
+                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
+                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // �����������҈ȊO
+                        if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                            cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
                 return true;
             }
             catch (Exception ex)
@@ -560,51 +976,62 @@
             }
             finally
             {
-                dmDB.close(); dmDB = null;
+                depDB.close(); depDB = null;
                 m_initDataLoad = bSave;
             }
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�Z�b�g
+        #region �S���҃R���{�{�b�N�X���Z�b�g����
         /// <summary>
         /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
         /// </summary>
-        private bool SetPersonCombbox()
+        private bool SetcmbPersons()
         {
             IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
             bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
             try
             {
-                m_initDataLoad = true;
+                cmbConstructionPerson.DataSource = null;
+                cmbConstructionPerson.Items.Clear();
+                cmbConstructionPerson.Text = "";
 
-                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>(); ;
+                string strSQL = string.Empty;
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0)
+                    strSQL = " WHERE DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC";
+                else
+                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC", DepartmentCode);
 
-                // �S���҃}�X�^����������
-                string strSQL = " Where DeleteFlg = 0";
-                int DepCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
-                if (DepCode > 0)
-                {
-                    strSQL += string.Format(" And DepartmentCode = {0}", DepCode);
-                }
-                strSQL += " Order By EmployeeClassFlg ASC, DisplayOrder ASC";
                 // �S���҃}�X�^�Ǎ�
                 if (!picDB.SelectAction(strSQL, ref workList)) return false;
 
-                List<KeyValuePair<int, string>> DataList2 = new List<KeyValuePair<int, string>>();
-                DataList2.Add(new KeyValuePair<int, string>(0, ""));
-                // �f�[�^�\��
-                foreach (PersonInChargeMaster wrk in workList)
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
                 {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.PersonCode, wrk.PersonName);
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
 
-                    DataList2.Add(keyval);
+                    ConstructionDataList.Add(keyval);
                 }
 
                 // �R���{�{�b�N�X�����\��
-                ComboBoxAction.InitDataSetCombBox(cmbPerson, DataList2);
-                cmbPerson.SelectedIndex = -1;
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
 
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+
                 return true;
             }
             catch (Exception ex)
@@ -620,5 +1047,141 @@
         }
         #endregion
 
+        #region �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// <summary>
+        /// �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // �R���{�{�b�N�X���I��S���҂��擾����
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // �����R���{�{�b�N�X�֕����R�[�h�Z�b�g
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_initDataLoad;
+                    m_initDataLoad = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // �S���҃R���{�{�b�N�X�ύX
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_initDataLoad = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
+        #region �Z���̌����`�揈��
+        /// <summary>
+        /// �Z���̌����`�揈��
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void CellConnective(object sender, DataGridViewCellPaintingEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                // �w�b�_�[�͏������Ȃ�
+                if (e.RowIndex < 0) return;
+
+                // �����s�ȊO�͏������Ȃ�
+                if (CommonMotions.chkObjectIsNull(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.ConstructionName].Value)) return;
+                string strConstructionName = CommonMotions.cnvString(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.ConstructionName].Value);
+                if (!strConstructionName.Equals(s_GridColumnTitle)) return;
+
+                switch (e.ColumnIndex)
+                {
+                    case (int)DispColumn.DepartmentName:
+                    case (int)DispColumn.PersonCode:
+                    case (int)DispColumn.PersonName:
+                    case (int)DispColumn.ConstructionCode:
+                    case (int)DispColumn.ConstructionName:
+                        break;
+                    default:
+                        return;
+                }
+
+                // ���̎擾
+                string strValue = CommonMotions.cnvString(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.ConstructionName].Value);
+
+                // �Z���̋�`���擾
+                Rectangle rect = e.CellBounds;
+                // �J�n�ʒu�E���̏C�����s��
+
+                rect.X = dgv.GetCellDisplayRectangle((int)DispColumn.DepartmentName, e.RowIndex, false).X;
+                rect.Width = 0;
+                for (int i = (int)DispColumn.DepartmentName; i <= (int)DispColumn.ConstructionName; i++)
+                {
+                    rect.Width += dgv.Columns[i].Width;
+                }
+
+                // ��`�̈ʒu��␳
+                rect.X -= 1;
+                rect.Y -= 1;
+
+                // �w�i�A�g���A�Z���̒l��`��
+                using (SolidBrush brush = new SolidBrush(e.CellStyle.BackColor))
+                {
+                    // �w�i�̕`��
+                    e.Graphics.FillRectangle(brush, rect);
+
+                    using (Pen pen = new Pen(dgv.GridColor))
+                    {
+                        // �g���̕`��
+                        e.Graphics.DrawRectangle(pen, rect);
+                    }
+                }
+
+                // �`�敶���擾
+                TextFormatFlags txtFlg = TextFormatFlags.HorizontalCenter | TextFormatFlags.VerticalCenter;
+
+                // �e�L�X�g�̈ʒu�𒲐�
+                rect.Y += 2;
+
+                Color DrowForeColor = e.CellStyle.ForeColor;
+                Font DrowFont = e.CellStyle.Font;
+                // �s�F��ς���
+                for (int i = (int)DispColumn.DepartmentName; i <= (int)DispColumn.ConstructionName; i++)
+                {
+                    dgv.Rows[e.RowIndex].Cells[i].Style.BackColor = Color.Black;
+                    dgv.Rows[e.RowIndex].Cells[i].Style.ForeColor = Color.White;
+                }
+
+                // �Z���ɕ\������e�L�X�g��`��
+                TextRenderer.DrawText(e.Graphics, strValue, DrowFont, rect, DrowForeColor, txtFlg);
+
+                // �C�x���g�n���h�����ŏ������s�������Ƃ�ʒm
+                e.Handled = true;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRTransport/FrmDRTransport.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRTransport/FrmDRTransport.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRTransport/FrmDRTransport.Designer.cs	(revision 51)
@@ -107,6 +107,7 @@
             this.label17 = new System.Windows.Forms.Label();
             this.label12 = new System.Windows.Forms.Label();
             this.panel1 = new System.Windows.Forms.Panel();
+            this.comboBox1 = new System.Windows.Forms.ComboBox();
             this.pnlCheck4 = new System.Windows.Forms.Panel();
             this.checkBox4_01 = new System.Windows.Forms.CheckBox();
             this.pnlCheck3 = new System.Windows.Forms.Panel();
@@ -152,7 +153,6 @@
             this.lblDay02 = new System.Windows.Forms.Label();
             this.lblDay01 = new System.Windows.Forms.Label();
             this.lblDay30 = new System.Windows.Forms.Label();
-            this.comboBox1 = new System.Windows.Forms.ComboBox();
             this.pnlTransport.SuspendLayout();
             this.panel1.SuspendLayout();
             this.pnlCheck4.SuspendLayout();
@@ -172,7 +172,7 @@
             this.label1.Name = "label1";
             this.label1.Size = new System.Drawing.Size(500, 20);
             this.label1.TabIndex = 7;
-            this.label1.Text = "購　入　品　及　び　交　通　費　入　力";
+            this.label1.Text = "交　通　費　入　力";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // btnLineDel
@@ -247,7 +247,7 @@
             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(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 101;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
@@ -258,7 +258,7 @@
             this.pnlTransport.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.pnlTransport.BackColor = System.Drawing.Color.Azure;
+            this.pnlTransport.BackColor = System.Drawing.Color.DarkCyan;
             this.pnlTransport.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.pnlTransport.Controls.Add(this.label11);
             this.pnlTransport.Controls.Add(this.label10);
@@ -1266,6 +1266,15 @@
             this.panel1.Size = new System.Drawing.Size(1320, 298);
             this.panel1.TabIndex = 1;
             // 
+            // comboBox1
+            // 
+            this.comboBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBox1.FormattingEnabled = true;
+            this.comboBox1.Location = new System.Drawing.Point(681, 1);
+            this.comboBox1.Name = "comboBox1";
+            this.comboBox1.Size = new System.Drawing.Size(260, 27);
+            this.comboBox1.TabIndex = 49;
+            // 
             // pnlCheck4
             // 
             this.pnlCheck4.BackColor = System.Drawing.Color.White;
@@ -1781,17 +1790,8 @@
             this.lblDay30.Text = "30";
             this.lblDay30.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // comboBox1
+            // FrmDRTransport
             // 
-            this.comboBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.comboBox1.FormattingEnabled = true;
-            this.comboBox1.Location = new System.Drawing.Point(681, 1);
-            this.comboBox1.Name = "comboBox1";
-            this.comboBox1.Size = new System.Drawing.Size(260, 27);
-            this.comboBox1.TabIndex = 49;
-            // 
-            // FrmTransportDR
-            // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
@@ -1807,7 +1807,7 @@
             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.Name = "FrmTransportDR";
+            this.Name = "FrmDRTransport";
             this.ShowIcon = false;
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmTAndPCosts_FormClosing);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.Designer.cs	(revision 51)
@@ -28,10 +28,11 @@
         /// </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 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();
             this.label1 = new System.Windows.Forms.Label();
             this.btnLineDel = new System.Windows.Forms.Button();
             this.btnLineAdd = new System.Windows.Forms.Button();
@@ -46,16 +47,39 @@
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.panel3 = new System.Windows.Forms.Panel();
+            this.label2 = new System.Windows.Forms.Label();
+            this.cmbDepartment = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.label14 = new System.Windows.Forms.Label();
+            this.cmbConstructionPerson = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.label15 = new System.Windows.Forms.Label();
+            this.label13 = new System.Windows.Forms.Label();
+            this.label12 = new System.Windows.Forms.Label();
+            this.label10 = new System.Windows.Forms.Label();
+            this.label11 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.comboBox1 = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
             this.label6 = new System.Windows.Forms.Label();
-            this.label2 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
             this.label3 = new System.Windows.Forms.Label();
-            this.label4 = new System.Windows.Forms.Label();
-            this.groupBox1 = new System.Windows.Forms.GroupBox();
-            this.textBox1 = new System.Windows.Forms.TextBox();
-            this.label5 = new System.Windows.Forms.Label();
+            this.pnlApproval = new System.Windows.Forms.Panel();
+            this.lblApprovalCount = new System.Windows.Forms.Label();
+            this.btnPetition = new System.Windows.Forms.Button();
+            this.btnApproval = new System.Windows.Forms.Button();
+            this.pnlApprovalButton = new System.Windows.Forms.Panel();
+            this.btnOnApproval = new System.Windows.Forms.Button();
+            this.btnNotApproval = new System.Windows.Forms.Button();
+            this.btnOnHold = new System.Windows.Forms.Button();
             this.pnlWork.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).BeginInit();
-            this.groupBox1.SuspendLayout();
+            this.panel3.SuspendLayout();
+            this.pnlApproval.SuspendLayout();
+            this.pnlApprovalButton.SuspendLayout();
             this.SuspendLayout();
             // 
             // label1
@@ -65,11 +89,11 @@
             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(390, 9);
+            this.label1.Location = new System.Drawing.Point(422, 9);
             this.label1.Name = "label1";
             this.label1.Size = new System.Drawing.Size(500, 20);
             this.label1.TabIndex = 7;
-            this.label1.Text = "作　業　日　報";
+            this.label1.Text = "出　勤　日　報";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // btnLineDel
@@ -77,7 +101,7 @@
             this.btnLineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnLineDel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
             this.btnLineDel.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnLineDel.Location = new System.Drawing.Point(751, 656);
+            this.btnLineDel.Location = new System.Drawing.Point(815, 635);
             this.btnLineDel.Name = "btnLineDel";
             this.btnLineDel.Size = new System.Drawing.Size(130, 30);
             this.btnLineDel.TabIndex = 100;
@@ -90,7 +114,7 @@
             this.btnLineAdd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnLineAdd.BackColor = System.Drawing.Color.PaleGreen;
             this.btnLineAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnLineAdd.Location = new System.Drawing.Point(613, 656);
+            this.btnLineAdd.Location = new System.Drawing.Point(677, 635);
             this.btnLineAdd.Name = "btnLineAdd";
             this.btnLineAdd.Size = new System.Drawing.Size(130, 30);
             this.btnLineAdd.TabIndex = 99;
@@ -104,7 +128,7 @@
             this.btnDataDelete.BackColor = System.Drawing.Color.Red;
             this.btnDataDelete.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataDelete.ForeColor = System.Drawing.Color.White;
-            this.btnDataDelete.Location = new System.Drawing.Point(1025, 656);
+            this.btnDataDelete.Location = new System.Drawing.Point(1089, 635);
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 97;
@@ -117,7 +141,7 @@
             this.btnDataEntry.BackColor = System.Drawing.Color.Green;
             this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataEntry.ForeColor = System.Drawing.Color.White;
-            this.btnDataEntry.Location = new System.Drawing.Point(899, 656);
+            this.btnDataEntry.Location = new System.Drawing.Point(963, 635);
             this.btnDataEntry.Name = "btnDataEntry";
             this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
             this.btnDataEntry.TabIndex = 96;
@@ -130,7 +154,7 @@
             this.btnEnd.BackColor = System.Drawing.Color.Blue;
             this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnEnd.ForeColor = System.Drawing.Color.White;
-            this.btnEnd.Location = new System.Drawing.Point(1151, 656);
+            this.btnEnd.Location = new System.Drawing.Point(1215, 635);
             this.btnEnd.Name = "btnEnd";
             this.btnEnd.Size = new System.Drawing.Size(120, 30);
             this.btnEnd.TabIndex = 98;
@@ -142,9 +166,9 @@
             // 
             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.Location = new System.Drawing.Point(7, 635);
             this.btnOtherProc.Name = "btnOtherProc";
-            this.btnOtherProc.Size = new System.Drawing.Size(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 101;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の日報入力へ";
@@ -152,15 +176,14 @@
             // 
             // pnlWork
             // 
-            this.pnlWork.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
+            this.pnlWork.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
             this.pnlWork.BackColor = System.Drawing.Color.WhiteSmoke;
             this.pnlWork.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.pnlWork.Controls.Add(this.dgvAllDisplay);
-            this.pnlWork.Location = new System.Drawing.Point(5, 100);
+            this.pnlWork.Location = new System.Drawing.Point(5, 122);
             this.pnlWork.Name = "pnlWork";
-            this.pnlWork.Size = new System.Drawing.Size(1270, 540);
+            this.pnlWork.Size = new System.Drawing.Size(1334, 500);
             this.pnlWork.TabIndex = 102;
             // 
             // dgvAllDisplay
@@ -173,14 +196,15 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvAllDisplay.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvAllDisplay.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            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;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvAllDisplay.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle6;
+            this.dgvAllDisplay.ColumnHeadersHeight = 24;
             this.dgvAllDisplay.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvAllDisplay.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column1,
@@ -187,8 +211,10 @@
             this.Column4,
             this.Column3,
             this.Column5,
-            this.Column2});
-            this.dgvAllDisplay.Location = new System.Drawing.Point(8, 8);
+            this.Column2,
+            this.Column7,
+            this.Column6});
+            this.dgvAllDisplay.Location = new System.Drawing.Point(5, 8);
             this.dgvAllDisplay.Name = "dgvAllDisplay";
             this.dgvAllDisplay.RowHeadersVisible = false;
             this.dgvAllDisplay.RowHeadersWidth = 20;
@@ -195,15 +221,15 @@
             this.dgvAllDisplay.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvAllDisplay.RowTemplate.DefaultCellStyle.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.dgvAllDisplay.RowTemplate.DefaultCellStyle.ForeColor = System.Drawing.Color.Black;
-            this.dgvAllDisplay.RowTemplate.Height = 20;
+            this.dgvAllDisplay.RowTemplate.Height = 24;
             this.dgvAllDisplay.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvAllDisplay.Size = new System.Drawing.Size(1250, 505);
+            this.dgvAllDisplay.Size = new System.Drawing.Size(1320, 482);
             this.dgvAllDisplay.TabIndex = 36;
             // 
             // Column1
             // 
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle7;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "日付";
             this.Column1.Name = "Column1";
@@ -210,6 +236,7 @@
             this.Column1.ReadOnly = true;
             this.Column1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column1.Width = 70;
             // 
             // Column4
             // 
@@ -224,8 +251,8 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle8;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "曜日";
             this.Column3.Name = "Column3";
@@ -232,6 +259,7 @@
             this.Column3.ReadOnly = true;
             this.Column3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Width = 80;
             // 
             // Column5
             // 
@@ -246,8 +274,8 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle9;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "現　　場　　名　　称";
             this.Column2.Name = "Column2";
@@ -254,31 +282,255 @@
             this.Column2.ReadOnly = true;
             this.Column2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column2.Width = 1030;
+            this.Column2.Width = 650;
             // 
+            // Column7
+            // 
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle10;
+            this.Column7.Frozen = true;
+            this.Column7.HeaderText = "残業時間";
+            this.Column7.Name = "Column7";
+            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column6
+            // 
+            this.Column6.Frozen = true;
+            this.Column6.HeaderText = "備　考";
+            this.Column6.Name = "Column6";
+            this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column6.Width = 400;
+            // 
+            // panel3
+            // 
+            this.panel3.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.panel3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
+            this.panel3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.panel3.Controls.Add(this.label2);
+            this.panel3.Controls.Add(this.cmbDepartment);
+            this.panel3.Controls.Add(this.label14);
+            this.panel3.Controls.Add(this.cmbConstructionPerson);
+            this.panel3.Controls.Add(this.label15);
+            this.panel3.Controls.Add(this.label13);
+            this.panel3.Controls.Add(this.label12);
+            this.panel3.Controls.Add(this.label10);
+            this.panel3.Controls.Add(this.label11);
+            this.panel3.Controls.Add(this.label9);
+            this.panel3.Controls.Add(this.label8);
+            this.panel3.Controls.Add(this.label7);
+            this.panel3.Controls.Add(this.label5);
+            this.panel3.Controls.Add(this.comboBox1);
+            this.panel3.Controls.Add(this.label6);
+            this.panel3.Controls.Add(this.label4);
+            this.panel3.Controls.Add(this.label3);
+            this.panel3.Controls.Add(this.pnlApproval);
+            this.panel3.Controls.Add(this.pnlApprovalButton);
+            this.panel3.Location = new System.Drawing.Point(6, 40);
+            this.panel3.Name = "panel3";
+            this.panel3.Size = new System.Drawing.Size(1325, 74);
+            this.panel3.TabIndex = 104;
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.LemonChiffon;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(692, 39);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(54, 27);
+            this.label2.TabIndex = 127;
+            this.label2.Text = "時間";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbDepartment
+            // 
+            this.cmbDepartment.BackColor = System.Drawing.Color.White;
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold);
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(437, 4);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(260, 29);
+            this.cmbDepartment.TabIndex = 123;
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
+            // 
+            // label14
+            // 
+            this.label14.BackColor = System.Drawing.Color.SandyBrown;
+            this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label14.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label14.ForeColor = System.Drawing.Color.Black;
+            this.label14.Location = new System.Drawing.Point(309, 5);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(120, 27);
+            this.label14.TabIndex = 126;
+            this.label14.Text = "担当部署";
+            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbConstructionPerson
+            // 
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(841, 4);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 29);
+            this.cmbConstructionPerson.TabIndex = 124;
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
+            // 
+            // label15
+            // 
+            this.label15.BackColor = System.Drawing.Color.SandyBrown;
+            this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label15.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label15.ForeColor = System.Drawing.Color.Black;
+            this.label15.Location = new System.Drawing.Point(713, 5);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(120, 27);
+            this.label15.TabIndex = 125;
+            this.label15.Text = "担　当　者";
+            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label13
+            // 
+            this.label13.BackColor = System.Drawing.Color.White;
+            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label13.Font = new System.Drawing.Font("Century", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label13.Location = new System.Drawing.Point(632, 39);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(60, 27);
+            this.label13.TabIndex = 122;
+            this.label13.Text = "999";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label12
+            // 
+            this.label12.BackColor = System.Drawing.Color.LemonChiffon;
+            this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label12.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label12.ForeColor = System.Drawing.Color.Black;
+            this.label12.Location = new System.Drawing.Point(469, 39);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(27, 27);
+            this.label12.TabIndex = 121;
+            this.label12.Text = "日";
+            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label10
+            // 
+            this.label10.BackColor = System.Drawing.Color.LemonChiffon;
+            this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label10.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label10.ForeColor = System.Drawing.Color.Black;
+            this.label10.Location = new System.Drawing.Point(272, 39);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(27, 27);
+            this.label10.TabIndex = 120;
+            this.label10.Text = "日";
+            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label11
+            // 
+            this.label11.BackColor = System.Drawing.Color.Transparent;
+            this.label11.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(200, 39);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(32, 27);
+            this.label11.TabIndex = 120;
+            this.label11.Text = "～";
+            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label9
+            // 
+            this.label9.BackColor = System.Drawing.Color.LemonChiffon;
+            this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label9.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label9.ForeColor = System.Drawing.Color.Black;
+            this.label9.Location = new System.Drawing.Point(173, 39);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(27, 27);
+            this.label9.TabIndex = 120;
+            this.label9.Text = "日";
+            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label8
+            // 
+            this.label8.BackColor = System.Drawing.Color.White;
+            this.label8.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label8.Font = new System.Drawing.Font("Century", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label8.Location = new System.Drawing.Point(232, 39);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(40, 27);
+            this.label8.TabIndex = 119;
+            this.label8.Text = "99";
+            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label7
+            // 
+            this.label7.BackColor = System.Drawing.Color.White;
+            this.label7.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label7.Font = new System.Drawing.Font("Century", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label7.Location = new System.Drawing.Point(133, 39);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(40, 27);
+            this.label7.TabIndex = 119;
+            this.label7.Text = "99";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label5
+            // 
+            this.label5.BackColor = System.Drawing.Color.LemonChiffon;
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(512, 39);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(120, 27);
+            this.label5.TabIndex = 117;
+            this.label5.Text = "残業時間";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // comboBox1
+            // 
+            this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBox1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.comboBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBox1.FormattingEnabled = true;
+            this.comboBox1.Location = new System.Drawing.Point(133, 4);
+            this.comboBox1.Name = "comboBox1";
+            this.comboBox1.Size = new System.Drawing.Size(160, 29);
+            this.comboBox1.TabIndex = 114;
+            // 
             // label6
             // 
-            this.label6.BackColor = System.Drawing.Color.LemonChiffon;
+            this.label6.BackColor = System.Drawing.Color.SandyBrown;
             this.label6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label6.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label6.ForeColor = System.Drawing.Color.Black;
-            this.label6.Location = new System.Drawing.Point(6, 16);
+            this.label6.Location = new System.Drawing.Point(5, 5);
             this.label6.Name = "label6";
             this.label6.Size = new System.Drawing.Size(120, 27);
-            this.label6.TabIndex = 43;
-            this.label6.Text = "作業年月";
+            this.label6.TabIndex = 111;
+            this.label6.Text = "対象年月";
             this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // label2
+            // label4
             // 
-            this.label2.BackColor = System.Drawing.Color.White;
-            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label2.ForeColor = System.Drawing.Color.Black;
-            this.label2.Location = new System.Drawing.Point(134, 17);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(160, 25);
-            this.label2.TabIndex = 44;
-            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label4.BackColor = System.Drawing.Color.White;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("Century", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label4.Location = new System.Drawing.Point(429, 39);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(40, 27);
+            this.label4.TabIndex = 113;
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // label3
             // 
@@ -286,67 +538,121 @@
             this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.label3.ForeColor = System.Drawing.Color.Black;
-            this.label3.Location = new System.Drawing.Point(318, 16);
+            this.label3.Location = new System.Drawing.Point(309, 39);
             this.label3.Name = "label3";
             this.label3.Size = new System.Drawing.Size(120, 27);
-            this.label3.TabIndex = 45;
+            this.label3.TabIndex = 112;
             this.label3.Text = "出勤日数";
             this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // label4
+            // pnlApproval
             // 
-            this.label4.BackColor = System.Drawing.Color.White;
-            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label4.Location = new System.Drawing.Point(446, 17);
-            this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(80, 25);
-            this.label4.TabIndex = 46;
-            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.pnlApproval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.pnlApproval.BackColor = System.Drawing.Color.White;
+            this.pnlApproval.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.pnlApproval.Controls.Add(this.lblApprovalCount);
+            this.pnlApproval.Controls.Add(this.btnPetition);
+            this.pnlApproval.Controls.Add(this.btnApproval);
+            this.pnlApproval.Location = new System.Drawing.Point(1056, 0);
+            this.pnlApproval.Name = "pnlApproval";
+            this.pnlApproval.Size = new System.Drawing.Size(262, 34);
+            this.pnlApproval.TabIndex = 109;
+            this.pnlApproval.Visible = false;
             // 
-            // groupBox1
+            // lblApprovalCount
             // 
-            this.groupBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
-            this.groupBox1.Controls.Add(this.textBox1);
-            this.groupBox1.Controls.Add(this.label5);
-            this.groupBox1.Controls.Add(this.label6);
-            this.groupBox1.Controls.Add(this.label4);
-            this.groupBox1.Controls.Add(this.label2);
-            this.groupBox1.Controls.Add(this.label3);
-            this.groupBox1.ForeColor = System.Drawing.Color.White;
-            this.groupBox1.Location = new System.Drawing.Point(5, 40);
-            this.groupBox1.Name = "groupBox1";
-            this.groupBox1.Size = new System.Drawing.Size(1270, 50);
-            this.groupBox1.TabIndex = 103;
-            this.groupBox1.TabStop = false;
+            this.lblApprovalCount.BackColor = System.Drawing.Color.Black;
+            this.lblApprovalCount.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblApprovalCount.ForeColor = System.Drawing.Color.White;
+            this.lblApprovalCount.Location = new System.Drawing.Point(205, 3);
+            this.lblApprovalCount.Name = "lblApprovalCount";
+            this.lblApprovalCount.Size = new System.Drawing.Size(50, 24);
+            this.lblApprovalCount.TabIndex = 1;
+            this.lblApprovalCount.Text = "4/5";
+            this.lblApprovalCount.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // textBox1
+            // btnPetition
             // 
-            this.textBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.textBox1.Location = new System.Drawing.Point(678, 16);
-            this.textBox1.Name = "textBox1";
-            this.textBox1.Size = new System.Drawing.Size(89, 26);
-            this.textBox1.TabIndex = 48;
+            this.btnPetition.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnPetition.BackColor = System.Drawing.Color.White;
+            this.btnPetition.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnPetition.ForeColor = System.Drawing.Color.Red;
+            this.btnPetition.Location = new System.Drawing.Point(3, 3);
+            this.btnPetition.Name = "btnPetition";
+            this.btnPetition.Size = new System.Drawing.Size(100, 24);
+            this.btnPetition.TabIndex = 12;
+            this.btnPetition.Text = "未申請";
+            this.btnPetition.UseVisualStyleBackColor = false;
             // 
-            // label5
+            // btnApproval
             // 
-            this.label5.BackColor = System.Drawing.Color.Orange;
-            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label5.ForeColor = System.Drawing.Color.Black;
-            this.label5.Location = new System.Drawing.Point(550, 16);
-            this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(120, 27);
-            this.label5.TabIndex = 47;
-            this.label5.Text = "残業時間";
-            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.btnApproval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnApproval.BackColor = System.Drawing.Color.White;
+            this.btnApproval.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnApproval.ForeColor = System.Drawing.Color.Red;
+            this.btnApproval.Location = new System.Drawing.Point(104, 3);
+            this.btnApproval.Name = "btnApproval";
+            this.btnApproval.Size = new System.Drawing.Size(100, 24);
+            this.btnApproval.TabIndex = 12;
+            this.btnApproval.Text = "未承認";
+            this.btnApproval.UseVisualStyleBackColor = false;
             // 
+            // pnlApprovalButton
+            // 
+            this.pnlApprovalButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.pnlApprovalButton.AutoSize = true;
+            this.pnlApprovalButton.BackColor = System.Drawing.Color.White;
+            this.pnlApprovalButton.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.pnlApprovalButton.Controls.Add(this.btnOnApproval);
+            this.pnlApprovalButton.Controls.Add(this.btnNotApproval);
+            this.pnlApprovalButton.Controls.Add(this.btnOnHold);
+            this.pnlApprovalButton.Location = new System.Drawing.Point(1056, 0);
+            this.pnlApprovalButton.Name = "pnlApprovalButton";
+            this.pnlApprovalButton.Size = new System.Drawing.Size(262, 34);
+            this.pnlApprovalButton.TabIndex = 110;
+            this.pnlApprovalButton.Visible = false;
+            // 
+            // btnOnApproval
+            // 
+            this.btnOnApproval.BackColor = System.Drawing.Color.MediumSpringGreen;
+            this.btnOnApproval.Location = new System.Drawing.Point(5, 3);
+            this.btnOnApproval.Name = "btnOnApproval";
+            this.btnOnApproval.Size = new System.Drawing.Size(83, 24);
+            this.btnOnApproval.TabIndex = 34;
+            this.btnOnApproval.TabStop = false;
+            this.btnOnApproval.Text = "承認";
+            this.btnOnApproval.UseVisualStyleBackColor = false;
+            // 
+            // btnNotApproval
+            // 
+            this.btnNotApproval.BackColor = System.Drawing.Color.Red;
+            this.btnNotApproval.Location = new System.Drawing.Point(171, 3);
+            this.btnNotApproval.Name = "btnNotApproval";
+            this.btnNotApproval.Size = new System.Drawing.Size(83, 24);
+            this.btnNotApproval.TabIndex = 35;
+            this.btnNotApproval.TabStop = false;
+            this.btnNotApproval.Text = "不承認";
+            this.btnNotApproval.UseVisualStyleBackColor = false;
+            // 
+            // btnOnHold
+            // 
+            this.btnOnHold.BackColor = System.Drawing.Color.Yellow;
+            this.btnOnHold.Location = new System.Drawing.Point(88, 3);
+            this.btnOnHold.Name = "btnOnHold";
+            this.btnOnHold.Size = new System.Drawing.Size(83, 24);
+            this.btnOnHold.TabIndex = 36;
+            this.btnOnHold.TabStop = false;
+            this.btnOnHold.Text = "保留";
+            this.btnOnHold.UseVisualStyleBackColor = false;
+            // 
             // FrmDRWork
             // 
             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(1280, 692);
-            this.Controls.Add(this.groupBox1);
+            this.ClientSize = new System.Drawing.Size(1344, 677);
+            this.Controls.Add(this.panel3);
             this.Controls.Add(this.pnlWork);
             this.Controls.Add(this.btnOtherProc);
             this.Controls.Add(this.btnLineDel);
@@ -361,12 +667,14 @@
             this.Name = "FrmDRWork";
             this.ShowIcon = false;
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
-            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmTAndPCosts_FormClosing);
-            this.Load += new System.EventHandler(this.FrmTAndPCosts_Load);
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmDRWork_FormClosing);
+            this.Load += new System.EventHandler(this.FrmDRWork_Load);
             this.pnlWork.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).EndInit();
-            this.groupBox1.ResumeLayout(false);
-            this.groupBox1.PerformLayout();
+            this.panel3.ResumeLayout(false);
+            this.panel3.PerformLayout();
+            this.pnlApproval.ResumeLayout(false);
+            this.pnlApprovalButton.ResumeLayout(false);
             this.ResumeLayout(false);
 
         }
@@ -382,17 +690,38 @@
         private System.Windows.Forms.Button btnOtherProc;
         private System.Windows.Forms.Panel pnlWork;
         private CustomControls.DataGridViewEX dgvAllDisplay;
+        private System.Windows.Forms.Panel panel3;
+        private System.Windows.Forms.Panel pnlApproval;
+        private System.Windows.Forms.Label lblApprovalCount;
+        private System.Windows.Forms.Button btnPetition;
+        private System.Windows.Forms.Button btnApproval;
+        private System.Windows.Forms.Panel pnlApprovalButton;
+        private System.Windows.Forms.Button btnOnApproval;
+        private System.Windows.Forms.Button btnNotApproval;
+        private System.Windows.Forms.Button btnOnHold;
+        private System.Windows.Forms.Label label5;
+        private CustomControls.ComboBoxEX comboBox1;
         private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label12;
+        private System.Windows.Forms.Label label13;
+        private CustomControls.ComboBoxEX cmbDepartment;
+        private System.Windows.Forms.Label label14;
+        private CustomControls.ComboBoxEX cmbConstructionPerson;
+        private System.Windows.Forms.Label label15;
         private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.Label label3;
-        private System.Windows.Forms.Label label4;
-        private System.Windows.Forms.GroupBox groupBox1;
-        private System.Windows.Forms.TextBox textBox1;
-        private System.Windows.Forms.Label label5;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.cs	(revision 51)
@@ -36,7 +36,7 @@
         /// <summary>
         /// グリッドカラム
         /// </summary>
-        private enum DispGridColumn
+        private enum GridColumn
         {
             DispDay = 0,
             Day,
@@ -43,6 +43,8 @@
             WeekString,
             ConstructionCode,
             ConstructionName,
+            OverTimes,
+            Comment,
         }
         #endregion
 
@@ -53,13 +55,29 @@
         private enum DspCtrlName
         {
             /// <summary>
-            /// 作業年月
+            /// 部署名
             /// </summary>
-            ConstructionYear = 0,
+            DepartmentName = 0,
             /// <summary>
+            /// 担当者名
+            /// </summary>
+            PersonName,
+            /// <summary>
+            /// 日報年月
+            /// </summary>
+            ConstructionYear,
+            /// <summary>
+            /// 日報開始日
+            /// </summary>
+            ConstructionDayFrom,
+            /// <summary>
+            /// 日報終了日
+            /// </summary>
+            ConstructionDayTo,
+            /// <summary>
             /// 出勤日数
             /// </summary>
-            attendancesDays,
+            WorkingDays,
             /// <summary>
             /// 残業時間
             /// </summary>
@@ -75,6 +93,11 @@
 
         #region 変数
         /// <summary>
+        /// 初期表示フラグ
+        /// </summary>
+        private bool m_bInitFlg = true;
+
+        /// <summary>
         /// フィールド値変化フラグ
         /// </summary>
         private bool m_bChengeAns = false;
@@ -99,16 +122,6 @@
         /// </summary>
         private bool m_EditLock = false;
 
-        /// <summary>
-        /// グリッドサイズ
-        /// </summary>
-        private int m_GridWidth = 0;
-        /// <summary>
-        /// ウィンドウサイズ保持領域
-        /// </summary>
-        private int m_WindowWidth = 0;
-        private int m_WindowHeight = 0;
-
         #endregion
 
         #region プロパティ
@@ -157,11 +170,30 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void FrmTAndPCosts_Load(object sender, EventArgs e)
+        private void FrmDRWork_Load(object sender, EventArgs e)
         {
             try
             {
+                // 表示オブジェクトの取得
+                SetDisplayObject();
+
+                // 対象年度のセット
+                SetActionMonthly();
+
+                // 部署のセット
+                SetcmbDepartment();
+
+                // 担当者のセット
+                SetcombBoxPerson();
+
+                // コンボボックス初期表示
+                InitCombBox();
+
+                // 初期表示
                 InitDataLoad();
+
+                // 初期表示フラグOFF
+                m_bInitFlg = false;
             }
             catch (System.Exception ex)
             {
@@ -188,7 +220,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void FrmTAndPCosts_FormClosing(object sender, FormClosingEventArgs e)
+        private void FrmDRWork_FormClosing(object sender, FormClosingEventArgs e)
         {
             try
             {
@@ -240,5 +272,54 @@
         }
         #endregion
 
+        #region 営業期コンボボックス変更
+        /// <summary>
+        /// 営業期変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void numUDConstPro_ValueChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlg) return;
+            // データ表示
+            InitDispData();
+        }
+        #endregion
+
+        #region 部署コンボボックス変更
+        /// <summary>
+        /// 部署コンボボックス変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlg) return;
+
+            // 担当者コンボボックス変更
+            //SetcombBoxPerson();
+
+            // データ表示
+            InitDispData();
+        }
+        #endregion
+
+        #region 担当者コンボボックス変更
+        /// <summary>
+        /// 担当者変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
+        {
+            if (m_bInitFlg) return;
+
+            // 担当者選択時部署選択を設定する
+            SetPerosonToDepartment();
+
+            // データ表示
+            InitDispData();
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWork.resx	(revision 51)
@@ -132,4 +132,10 @@
   <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="Column7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
 </root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWorkAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWorkAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWorkAuxiliary.cs	(revision 51)
@@ -18,26 +18,6 @@
 {
     partial class FrmDRWork
     {
-        #region 初期設定
-        /// <summary>
-        /// 初期設定
-        /// </summary>
-        private void InitSettingLoad()
-        {
-            try
-            {
-                // 初期サイズ保持
-                m_GridWidth = dgvAllDisplay.Width;
-                m_WindowWidth = this.Width;
-                m_WindowHeight = this.Height;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region 画面サイズ変更時のセルサイズ変更
         /// <summary>
         /// 画面サイズ変更時のセルサイズ変更
@@ -48,30 +28,6 @@
             {
                 DataGridView dgv = dgvAllDisplay;
 
-                //int CellWidth1 = m_CellSize[(int)DispGridColumn.ItemName];
-                //int CellWidth2 = m_CellSize[(int)DispGridColumn.TextName];
-                //int CellWidth3 = m_CellSize[(int)DispGridColumn.SubContractorName];
-                //// 最大化の場合
-                //if (!bNormal)
-                //{
-                //    int allWidth = 0;
-                //    for (int i = 0; i < dgv.ColumnCount;i++ )
-                //    {
-                //        allWidth += m_CellSize[i];
-                //    }
-                //    // セルの合計サイズが大きい場合は処理しない
-                //    if (allWidth > dgv.Width) return;
-
-                //    int idifference = (dgv.Width - (allWidth + dgv.RowHeadersWidth)) / 3;
-                //    CellWidth1 += idifference;
-                //    CellWidth2 += idifference;
-                //    CellWidth3 += idifference;
-                //}
-
-                //dgv.Columns[(int)DispGridColumn.ItemName].Width = CellWidth1;
-                //dgv.Columns[(int)DispGridColumn.TextName].Width = CellWidth2;
-                //dgv.Columns[(int)DispGridColumn.SubContractorName].Width = CellWidth3;
-
             }
             catch (Exception ex)
             {
@@ -91,13 +47,23 @@
                 // 表示ラベルオブジェクト取得
                 int ArrayCount = Enum.GetNames(typeof(DspCtrlName)).Length;
                 m_DspControl = new Control[ArrayCount];
-                // ヘッダー情報
-                // 作業年月
-                m_DspControl[(int)DspCtrlName.ConstructionYear] = label2;
+
+                // ----- ヘッダー情報
+                // 担当者名
+                m_DspControl[(int)DspCtrlName.DepartmentName] = cmbDepartment;
+                // 担当者名
+                m_DspControl[(int)DspCtrlName.PersonName] = cmbConstructionPerson;
+                // 日報年月
+                m_DspControl[(int)DspCtrlName.ConstructionYear] = comboBox1;
+                // 日報開始日
+                m_DspControl[(int)DspCtrlName.ConstructionDayFrom] = label7;
+                // 日報終了日
+                m_DspControl[(int)DspCtrlName.ConstructionDayTo] = label8;
                 // 出勤日数
-                m_DspControl[(int)DspCtrlName.attendancesDays] = label4;
+                m_DspControl[(int)DspCtrlName.WorkingDays] = label4;
                 // 残業時間
-                m_DspControl[(int)DspCtrlName.Overtime] = textBox1;
+                m_DspControl[(int)DspCtrlName.Overtime] = label13;
+
             }
             catch (Exception ex)
             {
@@ -130,10 +96,11 @@
         {
             try
             {
-                // 対象月
-                string strYear = CommonMotions.cnvJapaneseCalendar(m_ReportDate);
-                m_DspControl[(int)DspCtrlName.ConstructionYear].Text = strYear.Substring(0, strYear.IndexOf("月") + 1);
+                // 対象年度のセット
+                SetActionMonthly();
 
+                // 対象月の開始～終了日のセット
+
                 return true;
             }
             catch (Exception ex)
@@ -156,12 +123,6 @@
         {
             try
             {
-                // 初期設定
-                InitSettingLoad();
-                
-                // 表示オブジェクトの取得
-                SetDisplayObject();
-
                 // 表示クリア
                 ClearDisplay();
 
@@ -168,8 +129,8 @@
                 // ヘッダー表示
                 if (!DispHeader()) return;
 
-                // 固定文字の表示
-                FixDispData();
+                // データ表示
+                InitDispData();
                 
             }
             catch (Exception ex)
@@ -189,39 +150,72 @@
         /// 固定表示の設定
         /// </summary>
         /// <returns></returns>
-        private void FixDispData()
+        private void InitDispData()
         {
             IOMHolidayCalender calDB = new IOMHolidayCalender();
             try
             {
+                // 選択年月を取得する
+                string strSelDate = CommonMotions.cnvString(comboBox1.SelectedValue);
+                DateTime WorktDate = CommonMotions.cnvDate((strSelDate + "/1"));
+
                 // 月の最終日を求める
-                int monthlyLastDay = DateTime.DaysInMonth(m_ReportDate.Year, m_ReportDate.Month);
+                int monthlyLastDay = DateTime.DaysInMonth(WorktDate.Year, WorktDate.Month);
 
+                // 開始日・終了日のセット
+                m_DspControl[(int)DspCtrlName.ConstructionDayFrom].Text = "1";
+                m_DspControl[(int)DspCtrlName.ConstructionDayTo].Text = monthlyLastDay.ToString("00");
+
                 DataGridView dgv = dgvAllDisplay;
                 
                 dgv.Rows.Clear();
+
+                string strSQL = "SELECT AX.DT, DATE_FORMAT(C.HOLIDAY,'%Y/%m/%d'), D.CONSTRUCTIONCODE, E.DETAILSTRING, D.OVERTIMEHOURS, D.WORKINGCOMMENT FROM";
+                strSQL += " (SELECT DATE_FORMAT((st+ROWNUM-1), '%Y/%m/%d') DT";
+                strSQL += " FROM SYS.ALL_CATALOG A,";
+                strSQL += string.Format(" (SELECT STR_TO_DATE('{0}','%Y%m%d') st,", (WorktDate.Year.ToString() + WorktDate.Month.ToString("00") + "01"));
+                strSQL += string.Format(" STR_TO_DATE('{0}','%Y%m%d') ed FROM DUAL) B", (WorktDate.Year.ToString() + WorktDate.Month.ToString("00") + monthlyLastDay.ToString("00")));
+                strSQL += " WHERE ROWNUM <= (ed - st + 1)) AX";
+                strSQL += " LEFT JOIN HOLIDAYCALENDERMASTER C ON C.HOLIDAY = AX.DT";
+                strSQL += " LEFT JOIN ATTENDANCEDATA D ON D.ATTENDANCEDATE = AX.DT";
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFODETAIL E ON E.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND E.DETAILNO = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL += " ORDER BY AX.DT, D.SEQNO";
+
+                ArrayList arList = new ArrayList();
+                if (!calDB.ExecuteReader(strSQL, ref arList)) return;
+                DateTime DispDate = DateTime.Now;
+                string strHoliday = string.Empty;
+                string strConstrName = string.Empty;
+                int AttendamceCnt = 0;
                 // 日付の表示
-                for (int iday = 1; iday <= monthlyLastDay; iday++)
+                foreach (object[] CurRec in arList)
                 {
-                    int AddRow = dgv.Rows.Add(1);
+                    DispDate = CommonMotions.cnvDate(CurRec[0]);
+                    strHoliday = string.Empty;
+                    strHoliday = CommonMotions.cnvString(CurRec[1]);
+                    strConstrName = CommonMotions.cnvString(CurRec[3]);
 
-                    // 日付
-                    dgv.Rows[AddRow].Cells[(int)DispGridColumn.DispDay].Value = string.Format("{0}日", iday);
-                    dgv.Rows[AddRow].Cells[(int)DispGridColumn.Day].Value = iday;
-                    // 曜日
-                    DateTime dtwork = m_ReportDate.AddDays(iday - 1);
-                    dgv.Rows[AddRow].Cells[(int)DispGridColumn.WeekString].Value = dtwork.ToString("dddd");
+                    int AddRow = dgv.Rows.Add(string.Format("{0}日", DispDate.Day.ToString()),
+                                                DispDate.Day,
+                                                DispDate.ToString("dddd"),
+                                                CommonMotions.cnvInt(CurRec[2]),
+                                                strConstrName,
+                                                CommonMotions.cnvDouble(CurRec[4]).ToString("#.#"),
+                                                CommonMotions.cnvString(CurRec[5])
+                                                );
 
                     // 休日のチェック
-                    string strSQL = calDB.CreatePrimarykeyString(dtwork);
-                    HolidayCalenderMaster calRec = new HolidayCalenderMaster();
-                    if (calDB.SelectAction(strSQL, ref calRec))
+                    if (strHoliday.Length != 0)
                     {
-                        dgv.Rows[AddRow].Cells[(int)DispGridColumn.DispDay].Style.ForeColor = Color.Red;
-                        dgv.Rows[AddRow].Cells[(int)DispGridColumn.WeekString].Style.ForeColor = Color.Red;
+                        dgv.Rows[AddRow].Cells[(int)GridColumn.DispDay].Style.ForeColor = Color.Red;
+                        dgv.Rows[AddRow].Cells[(int)GridColumn.WeekString].Style.ForeColor = Color.Red;
+                        continue;
                     }
+                    if (strConstrName.Length != 0) AttendamceCnt++;
                 }
-
+                // 出勤日数
+                m_DspControl[(int)DspCtrlName.WorkingDays].Text = AttendamceCnt.ToString("#");
             }
             catch (Exception ex)
             {
@@ -272,7 +266,7 @@
                 DataGridViewRow CurRow = dgv.CurrentRow;
 
                 // 対象日付取得
-                int TargetDay = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.Day].Value);
+                int TargetDay = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.Day].Value);
 
                 int InsertCnt = CurRow.Index + 1;
                 // 選択行が不正ならば処理しない
@@ -282,7 +276,7 @@
                 DataGridViewAction.CreateNewLine(dgv, ref InsertCnt);
 
                 // 日付セット
-                dgv.Rows[InsertCnt].Cells[(int)DispGridColumn.Day].Value = TargetDay;
+                dgv.Rows[InsertCnt].Cells[(int)GridColumn.Day].Value = TargetDay;
 
                 // データ変更フラグON
                 m_bChengeAns = true;
@@ -316,7 +310,7 @@
                 if (RemoveCnt == 0) return;
 
                 // 日付が1日だけの場合は削除できない
-                int CurDay = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.Day].Value);
+                int CurDay = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.Day].Value);
                 
                 if (MessageBox.Show("カレント行を削除します、よろしいですか？", "行削除確認"
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
@@ -323,8 +317,8 @@
 
 
                 int sameCount = 0;
-                if ((RemoveCnt >= 0) && CurDay == CommonMotions.cnvInt(dgv.Rows[(RemoveCnt - 1)].Cells[(int)DispGridColumn.Day].Value)) sameCount++;
-                if ((RemoveCnt <= (dgv.RowCount - 1)) && CurDay == CommonMotions.cnvInt(dgv.Rows[(RemoveCnt + 1)].Cells[(int)DispGridColumn.Day].Value)) sameCount++;
+                if ((RemoveCnt >= 0) && CurDay == CommonMotions.cnvInt(dgv.Rows[(RemoveCnt - 1)].Cells[(int)GridColumn.Day].Value)) sameCount++;
+                if ((RemoveCnt <= (dgv.RowCount - 1)) && CurDay == CommonMotions.cnvInt(dgv.Rows[(RemoveCnt + 1)].Cells[(int)GridColumn.Day].Value)) sameCount++;
 
                 // 日付が1日だけの場合は行削除できない
                 if (sameCount == 0)
@@ -332,9 +326,9 @@
                     foreach (DataGridViewCell wrkcell in CurRow.Cells)
                     {
                         // 日付はクリアしない
-                        if (wrkcell.ColumnIndex == (int)DispGridColumn.DispDay) continue;
-                        if (wrkcell.ColumnIndex == (int)DispGridColumn.Day) continue;
-                        if (wrkcell.ColumnIndex == (int)DispGridColumn.WeekString) continue;
+                        if (wrkcell.ColumnIndex == (int)GridColumn.DispDay) continue;
+                        if (wrkcell.ColumnIndex == (int)GridColumn.Day) continue;
+                        if (wrkcell.ColumnIndex == (int)GridColumn.WeekString) continue;
                         // クリア
                         wrkcell.Value = "";
                     }
@@ -342,16 +336,16 @@
                 else
                 {
                     // 日付表示行は表示日付を下の行に移す
-                    Color DayColor = dgv.Rows[RemoveCnt].Cells[(int)DispGridColumn.DispDay].Style.ForeColor;
-                    Color WeekColor = dgv.Rows[RemoveCnt].Cells[(int)DispGridColumn.WeekString].Style.ForeColor;
-                    string strDispDay = CommonMotions.cnvString(dgv.Rows[RemoveCnt].Cells[(int)DispGridColumn.DispDay].Value);
-                    string strWeek = CommonMotions.cnvString(dgv.Rows[RemoveCnt].Cells[(int)DispGridColumn.WeekString].Value);
+                    Color DayColor = dgv.Rows[RemoveCnt].Cells[(int)GridColumn.DispDay].Style.ForeColor;
+                    Color WeekColor = dgv.Rows[RemoveCnt].Cells[(int)GridColumn.WeekString].Style.ForeColor;
+                    string strDispDay = CommonMotions.cnvString(dgv.Rows[RemoveCnt].Cells[(int)GridColumn.DispDay].Value);
+                    string strWeek = CommonMotions.cnvString(dgv.Rows[RemoveCnt].Cells[(int)GridColumn.WeekString].Value);
                     if (strDispDay.Length != 0)
                     {
-                        dgv.Rows[RemoveCnt + 1].Cells[(int)DispGridColumn.DispDay].Value = strDispDay;
-                        dgv.Rows[RemoveCnt + 1].Cells[(int)DispGridColumn.WeekString].Value = strWeek;
-                        dgv.Rows[RemoveCnt + 1].Cells[(int)DispGridColumn.DispDay].Style.ForeColor = DayColor;
-                        dgv.Rows[RemoveCnt + 1].Cells[(int)DispGridColumn.WeekString].Style.ForeColor = WeekColor;
+                        dgv.Rows[RemoveCnt + 1].Cells[(int)GridColumn.DispDay].Value = strDispDay;
+                        dgv.Rows[RemoveCnt + 1].Cells[(int)GridColumn.WeekString].Value = strWeek;
+                        dgv.Rows[RemoveCnt + 1].Cells[(int)GridColumn.DispDay].Style.ForeColor = DayColor;
+                        dgv.Rows[RemoveCnt + 1].Cells[(int)GridColumn.WeekString].Style.ForeColor = WeekColor;
                     }
 
                     // 行削除
@@ -372,5 +366,493 @@
             }
         }
         #endregion
+
+        #region 対象年度のセット
+        /// <summary>
+        /// 対象年度のセット
+        /// </summary>
+        private void SetActionMonthly()
+        {
+            IOCostDataOfPerson CostDB = new IOCostDataOfPerson();
+            try
+            {
+                // 存在月を出勤データより取得する
+                string strSQL = "SELECT DATE_FORMAT(ATTENDANCEDATE,'%Y/%m'), COUNT(*) FROM ATTENDANCEDATA GROUP BY DATE_FORMAT(ATTENDANCEDATE,'%Y/%m') ORDER BY 1";
+                ArrayList arList = new ArrayList();
+                CostDB.ExecuteReader(strSQL, ref arList);
+
+                List<KeyValuePair<string, string>> DataList = new List<KeyValuePair<string, string>>();
+                foreach (object[] wrkobj in arList)
+                {
+                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(wrkobj[0].ToString(), (wrkobj[0].ToString().Replace("/", "年") + "月"));
+                    DataList.Add(keyval);
+                }
+
+                // 当月を作成する
+                string ToMonth = string.Format("{0}/{1}", DateTime.Now.Year, DateTime.Now.Month.ToString("00"));
+                // 当月を追加するかの判断
+                if (arList.Count == 0 || !DataList[DataList.Count - 1].Key.Equals(ToMonth))
+                {
+                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(ToMonth, (ToMonth.ToString().Replace("/", "年") + "月"));
+                    DataList.Add(keyval);
+                }
+                // 来月の追加判定(25日過ぎは来月の追加をする)
+                if (DateTime.Now.Day > 25)
+                {
+                    DateTime dtNext = DateTime.Now.AddMonths(1);
+                    string NextMonth = string.Format("{0}/{1}", dtNext.Year, dtNext.Month.ToString("00"));
+                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(NextMonth, (NextMonth.ToString().Replace("/", "年") + "月"));
+                    DataList.Add(keyval);
+                }
+
+                ComboBoxAction.InitDataSetCombBox(comboBox1, DataList);
+                comboBox1.SelectedValue = ToMonth;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                CostDB.close(); CostDB = null;
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示
+        /// <summary>
+        /// コンボボックス初期表示
+        /// </summary>
+        private void InitCombBox()
+        {
+            try
+            {
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // 全部署
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // 複数部署
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // 自部署のみ
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // 自担当者のみ
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // 部署・担当者コンボ表示
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // 部署コンボ非表示
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // 初期設定対象がコンボボックスデータにあればセットする
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                        break;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                        break;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 担当者コンボより担当者コードを取得する
+        /// <summary>
+        /// 担当者コンボより担当者コードを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstructionPersonCode()
+        {
+            try
+            {
+                // 表示されていない場合はログインユーザーを返す
+                if (!cmbConstructionPerson.Visible)
+                {
+                    return CommonMotions.LoginUserData.PersonCode;
+                }
+
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region 対象月をコンボボックスより取得する
+        /// <summary>
+        /// 対象月をコンボボックスより取得する
+        /// </summary>
+        /// <returns></returns>
+        private string GetTargetMonth()
+        {
+            try
+            {
+                return CommonMotions.cnvString(comboBox1.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}", ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスの非表示処理
+        /// <summary>
+        /// 部署コンボボックスの非表示処理
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // 部署コンボ非表示
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // 表示位置のセット
+                Point loc3 = label3.Location;
+                loc3.X = label2.Location.X + 10;
+                label3.Location = loc3;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 全コンボボックス表示をON/OFFする
+        /// <summary>
+        /// 全コンボボックス表示をON/OFFする
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // 部署・担当者コンボ非表示
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスをセットする
+        /// <summary>
+        /// 部署コンボボックスへ文字をセットする
+        /// </summary>
+        private bool SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_bInitFlg;
+            m_bInitFlg = true;
+            try
+            {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
+                // 部署マスタを検索する
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // 新セキュリティデータ対応済みかを確認する
+                //if (CommonMotions.LoginUserData.SecCode == 0)
+                //{
+                //    // システム権限によってデータアクセスに制限がある
+                //    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                //        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                //    {
+                //        // 所属長
+                //        // 一般使用者（自分のみアクセス可能）
+                //        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                //    }
+                //}
+                //else
+                //{
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // 参照部署マスタより取得する
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                //}
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
+                // 部署マスタ読込
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                //// 新セキュリティデータ対応済みかを確認する
+                //if (CommonMotions.LoginUserData.SecCode == 0)
+                //{
+                //    // 所属長
+                //    // 一般使用者（自分のみアクセス可能）
+                //    if (CommonMotions.LoginUserData.SecurityManagement != CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                //    {
+                //        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                //    }
+                //}
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                m_bInitFlg = bSave;
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスに対象があるかをチェックする
+        /// <summary>
+        /// 部署コンボボックスに対象があるかをチェックする
+        /// </summary>
+        /// <param name="Department"></param>
+        /// <returns></returns>
+        private bool SearchDepartmentCombBoxItem(int Department)
+        {
+            try
+            {
+                bool bRet = false;
+
+                // 対象がコンボボックスデータにあればセットする
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == Department)
+                    {
+                        bRet = true;
+                        break;
+                    }
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスデータセット
+        /// <summary>
+        /// 担当者コンボボックスへ文字をセットする
+        /// </summary>
+        private void SetcombBoxPerson()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            try
+            {
+                // 担当者マスタを検索する
+                //string strSQL = string.Format(" WHERE EMPLOYEECLASSFLG = {0} AND DELETEFLG = 0", (int)CommonDefine.EmployeeClassFlg.Regular);
+                string strSQL = " WHERE DELETEFLG = 0";
+
+                // 所　属　長
+                int Superior = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key;
+                // 一般ユーザー
+                int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;
+                if (CommonMotions.LoginUserData.SecurityManagement == Superior)
+                {
+                    // 所属長（所属内のみ）
+                    strSQL += string.Format(" AND DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == User)
+                {
+                    // 一般ユーザーは担当者を選択できない
+                    return;
+                }
+                else
+                {
+                    if (CommonMotions.cnvInt(cmbDepartment.SelectedValue) != 0)
+                        strSQL += string.Format(" AND DEPARTMENTCODE = {0}", CommonMotions.cnvInt(cmbDepartment.SelectedValue));
+                }
+
+                // 担当者マスタ読込
+                strSQL += " ORDER BY EMPLOYEECLASSFLG ASC, DISPLAYORDER ASC";
+                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>(); ;
+                if (!picDB.SelectAction(strSQL, ref workList)) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                // データ表示
+                foreach (PersonInChargeMaster wrk in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.PersonCode, wrk.PersonName);
+                    DataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, DataList);
+
+                //// 新セキュリティデータ対応済みかを確認する
+                //if (CommonMotions.LoginUserData.SecCode == 0)
+                //{
+                //    // 一般ユーザーで総務部所属者ではない場合、ログイン者のコードをセットする
+                //    if (CommonMotions.LoginUserData.SecurityManagement != CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                //        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                //    {
+                //        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                //    }
+                //}
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスに対象があるかをチェックする
+        /// <summary>
+        /// 担当者コンボボックスに対象があるかをチェックする
+        /// </summary>
+        /// <param name="PersonCode"></param>
+        /// <returns></returns>
+        private bool SearchPersonCombBoxItem(int PersonCode)
+        {
+            try
+            {
+                bool bRet = false;
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == PersonCode)
+                    {
+                        bRet = true;
+                        break;
+                    }
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスセット時部署をセットする
+        /// <summary>
+        /// 担当者コンボボックスセット時部署をセットする
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // コンボボックスより選択担当者を取得する
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // 部署コンボボックスへ部署コードセット
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_bInitFlg;
+                    m_bInitFlg = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcombBoxPerson();    // 担当者コンボボックス変更
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_bInitFlg = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/FrmDailyReport.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/FrmDailyReport.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/FrmDailyReport.designer.cs	(revision 51)
@@ -595,7 +595,7 @@
             this.btnOtherProc.BackColor = System.Drawing.Color.SpringGreen;
             this.btnOtherProc.Location = new System.Drawing.Point(8, 656);
             this.btnOtherProc.Name = "btnOtherProc";
-            this.btnOtherProc.Size = new System.Drawing.Size(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 96;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/FrmDailyReportAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/FrmDailyReportAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/FrmDailyReportAuxiliary.cs	(revision 51)
@@ -871,12 +871,13 @@
                 strSQL += ", A.TODAYWORK";
                 strSQL += ", A.NEXTDAYWORK";
                 strSQL += ", A.NEXTDAYHEADCOUNT";
-                strSQL += " FROM DAILYDATADETAIL A";
-                strSQL += " RIGHT OUTER JOIN SUBCONTRACTORJOBCATEGORY B";
-                strSQL += " ON A.JOBCATEGORYCODE = B.JOBCATEGORYCODE";
-                strSQL += " RIGHT OUTER JOIN SUBCONTRACTORMASTER C";
-                strSQL += " ON A.COMPANYCODE = C.COMPANYCODE";
+                //strSQL += " FROM DAILYDATADETAIL A, SUBCONTRACTORJOBCATEGORY B, SUBCONTRACTORMASTER C";
+                strSQL += " FROM DAILYDATADETAIL As";
                 strSQL += DetailDB.CreatePrimarykeyString(m_PersonCode, GetTargetToday(), m_ConstructionCode, 0);
+                //strSQL += " AND A.JOBCATEGORYCODE = B.JOBCATEGORYCODE(+)";
+                //strSQL += " AND A.COMPANYCODE = C.COMPANYCODE(+)";
+                strSQL += " LEFT JOIN SUBCONTRACTORJOBCATEGORY B ON (A.JOBCATEGORYCODE = B.JOBCATEGORYCODE)";
+                strSQL += " LEFT JOIN SUBCONTRACTORMASTER C ON (A.COMPANYCODE = C.COMPANYCODE)";
                 strSQL += " ORDER BY A.SEQNO";
                 ArrayList arList = new ArrayList();
                 if (!DetailDB.ExecuteReader(strSQL, ref arList) || arList.Count == 0)
@@ -2932,6 +2933,7 @@
                 strSQL += string.Format(" AND ConstructionCode = {0}", m_ConstructionCode);
                 if (JobCode != 0) strSQL += string.Format(" AND JobCategoryCode = {0}", JobCode);
                 if (CompanyCode != 0) strSQL += string.Format(" AND CompanyCode = {0}", CompanyCode);
+                //strSQL += string.Format(" AND TO_CHAR(DailyDataDate, 'YYYY/MM/DD') < '{0}'", GetTargetToday().ToShortDateString());
                 strSQL += string.Format(" AND DATE_FORMAT(DailyDataDate, '%Y/%m/%d') < '{0}'", GetTargetToday().ToShortDateString());
 
                 ArrayList arList = new ArrayList();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReport/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmDailyReport
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.DailyReport;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] m_SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -114,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -201,7 +197,7 @@
                     if (Handle.SubFormHandle == null) continue;
 
                     // 画面クローズ
-                    Handle.SubFormHandle.Close();
+                    Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -235,7 +231,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -279,6 +275,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -296,11 +293,22 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -312,6 +320,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -323,6 +335,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -340,11 +353,22 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -356,6 +380,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -367,6 +395,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -384,11 +413,22 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -400,6 +440,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -411,6 +455,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -428,11 +473,22 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -444,6 +500,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -455,6 +515,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -472,11 +533,22 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -488,6 +560,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -499,6 +575,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -516,11 +593,21 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -531,6 +618,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -542,6 +633,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -559,11 +651,22 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -575,6 +678,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -586,6 +693,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -603,11 +711,22 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -619,6 +738,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -652,6 +775,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -696,6 +820,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -712,7 +838,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -947,11 +1073,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1120,6 +1247,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportList.cs	(revision 51)
@@ -196,15 +196,16 @@
         /// <param name="e"></param>
         private void FrmDailyReportList_Load(object sender, EventArgs e)
         {
-            // �\�������ݒ�
-            InitDisplayFormat();
+            // �R���{�{�b�N�X�Z�b�g
+            SetcmbDepartment();
+            SetcmbPersons();
 
+            // �R���{�{�b�N�X�����\��
+            InitCombBox();
+
             // �����\��
             InitDataLoad();
 
-            // �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
-            SetInitCmbBoxSelect();
-
             m_initDataLoad = false;
         }
         #endregion
@@ -279,10 +280,8 @@
         {
             if (m_initDataLoad) return;
 
-            // �S���҃R���{�{�b�N�X�X�V
-            m_initDataLoad = true;
-            SetPersonCombbox();
-            m_initDataLoad = false;
+            // �S���ґI���������I����ݒ肷��
+            SetPerosonToDepartment();
 
             // �f�[�^�\��
             DataDisplay();
@@ -299,6 +298,9 @@
         {
             if (m_initDataLoad) return;
 
+            // �S���҃R���{�{�b�N�X�ύX
+            SetcmbPersons();
+
             // �f�[�^�\��
             DataDisplay();
         }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportList.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportList.designer.cs	(revision 51)
@@ -28,17 +28,17 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = 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 dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = 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();
             this.btnDataSelect = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.groupBox1 = new System.Windows.Forms.GroupBox();
-            this.cmbPerson = new System.Windows.Forms.ComboBox();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
             this.label3 = new System.Windows.Forms.Label();
             this.cmbDepartment = new System.Windows.Forms.ComboBox();
             this.label2 = new System.Windows.Forms.Label();
@@ -105,7 +105,7 @@
             // groupBox1
             // 
             this.groupBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
-            this.groupBox1.Controls.Add(this.cmbPerson);
+            this.groupBox1.Controls.Add(this.cmbConstructionPerson);
             this.groupBox1.Controls.Add(this.label3);
             this.groupBox1.Controls.Add(this.cmbDepartment);
             this.groupBox1.Controls.Add(this.label2);
@@ -120,18 +120,18 @@
             this.groupBox1.TabIndex = 0;
             this.groupBox1.TabStop = false;
             // 
-            // cmbPerson
+            // cmbConstructionPerson
             // 
-            this.cmbPerson.BackColor = System.Drawing.Color.White;
-            this.cmbPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbPerson.FormattingEnabled = true;
-            this.cmbPerson.Location = new System.Drawing.Point(760, 17);
-            this.cmbPerson.Name = "cmbPerson";
-            this.cmbPerson.Size = new System.Drawing.Size(200, 23);
-            this.cmbPerson.TabIndex = 45;
-            this.cmbPerson.Visible = false;
-            this.cmbPerson.SelectedIndexChanged += new System.EventHandler(this.cmbPerson_SelectedIndexChanged);
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(760, 17);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
+            this.cmbConstructionPerson.TabIndex = 45;
+            this.cmbConstructionPerson.Visible = false;
+            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbPerson_SelectedIndexChanged);
             // 
             // label3
             // 
@@ -251,18 +251,18 @@
             this.dgvMaster.AllowUserToDeleteRows = false;
             this.dgvMaster.AllowUserToResizeColumns = false;
             this.dgvMaster.AllowUserToResizeRows = false;
-            dataGridViewCellStyle7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
             this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle8.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, 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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
             this.dgvMaster.ColumnHeadersHeight = 24;
             this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
@@ -273,14 +273,14 @@
             this.Column1,
             this.Column2,
             this.Column3});
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle12.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle12.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
-            dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle12;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle6.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle6;
             this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
             this.dgvMaster.Location = new System.Drawing.Point(20, 10);
             this.dgvMaster.MultiSelect = false;
@@ -304,8 +304,8 @@
             // 
             // Column7
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle9;
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle3;
             this.Column7.Frozen = true;
             this.Column7.HeaderText = "部　署";
             this.Column7.Name = "Column7";
@@ -324,8 +324,8 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle10;
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle4;
             this.Column4.Frozen = true;
             this.Column4.HeaderText = "担当者";
             this.Column4.Name = "Column4";
@@ -353,8 +353,8 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle11;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle5;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "更新日付";
             this.Column3.Name = "Column3";
@@ -409,7 +409,7 @@
         private CustomControls.DataGridViewEX dgvMaster;
         private System.Windows.Forms.ComboBox cmbDepartment;
         private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.ComboBox cmbPerson;
+        private System.Windows.Forms.ComboBox cmbConstructionPerson;
         private System.Windows.Forms.Label label3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmDailyReportListAuxiliary.cs	(revision 51)
@@ -41,107 +41,6 @@
 
         #endregion
 
-        #region �������̕\���`����ݒ肷��
-        /// <summary>
-        /// �������̕\���`����ݒ肷��
-        /// </summary>
-        private void InitDisplayFormat()
-        {
-            try
-            {
-                cmbDepartment.Visible = true;
-                cmbPerson.Visible = true;
-                label2.Visible = true;
-                label3.Visible = true;
-
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                {
-                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                {
-                    // �ō��@���Ǘ��ҁi���ׂđΏہj
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                {
-                    // �����@���Ǘ��ҁi�@�\�����j
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // �@���Ǘ��ҁi�������̂݁j
-                    cmbDepartment.Visible = false;
-                    label2.Visible = false;
-
-                    cmbPerson.Location = cmbDepartment.Location;
-                    label3.Location = label2.Location;
-                    
-                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
-                    
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi���f�[�^�̂݁j
-                    cmbDepartment.Visible = false;
-                    cmbPerson.Visible = false;
-                    label2.Visible = false;
-                    label3.Visible = false;
-
-                    cmbPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
-        /// <summary>
-        /// �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
-        /// </summary>
-        private void SetInitCmbBoxSelect()
-        {
-            try
-            {
-                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
-                {
-                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                {
-                    // �ō��@���Ǘ��ҁi���ׂđΏہj
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                {
-                    // �����@���Ǘ��ҁi�@�\�����j
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // �@���Ǘ��ҁi�������̂݁j
-                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
-                    // �S���҃R���{�{�b�N�X�X�V
-                    SetPersonCombbox();
-                    // �f�[�^�\��
-                    DataDisplay();
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // ��ʎg�p�ҁi���f�[�^�̂݁j
-                    cmbPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
-                    // �f�[�^�\��
-                    DataDisplay();
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region ���v���Z�X�N��
         /// <summary>
         /// ����ꗗ���N������v���Z�X�I������
@@ -164,7 +63,7 @@
                 int depCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
                 ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(depCode);
                 // �S����
-                int personCode = CommonMotions.cnvInt(cmbPerson.SelectedValue);
+                int personCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
                 ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(personCode);
 
                 // ----- �N�����Z�b�g
@@ -215,6 +114,32 @@
         {
             try
             {
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    CreateOldSecuritySQL(ref strSQL);
+                }
+                else
+                {
+                    CreateNewSecuritySQL(ref strSQL);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateOldSecuritySQL(ref string strSQL)
+        {
+            try
+            {
                 // �����������҂̓f�[�^�Q�Əo���鏈��������
                 if (ClsSecurityPermission.PermitGeneralAffairsDevision(m_ExecuteFlg)) return;
 
@@ -237,10 +162,10 @@
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
                 {
                     // �@���Ǘ��ҁi�������̂݁j
-                    strSQL += string.Format(" AND (A.SalesPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" OR A.ConstructionPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" OR A.CONSTRSUBPERSONCODE IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL += string.Format(" OR A.ConstructionInstructor IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" AND (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1 Where A1.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.ConstructionPersonCode IN (Select A2.PersonCode From PersonInChargeMaster A2 Where A2.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.CONSTRSUBPERSONCODE IN (Select A3.PersonCode From PersonInChargeMaster A3 Where A3.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.ConstructionInstructor IN (Select A4.PersonCode From PersonInChargeMaster A4 Where A4.DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
                     strSQL += string.Format(" AND A.ConstructionStatusFlg != {0}", iStatus1);
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
@@ -261,6 +186,76 @@
         }
         #endregion
 
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �L�[�l�擾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                // �f�[�^�A�N�Z�X�Ɍ����ɂ�萧��������
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ���ׂđΏہi����SQL���j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // �ꕔ�����L
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+
+                    strSQL += " And (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1";
+                    strSQL += string.Format(" Where A1.DepartmentCode IN (SELECT A2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A2 WHERE A2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSQL += " And (A.ConstructionPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3";
+                    strSQL += string.Format(" Where A3.DepartmentCode IN (SELECT A4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A4 WHERE A4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.CONSTRSUBPERSONCODE IN (Select A5.PersonCode From PersonInChargeMaster A5";
+                    strSQL += string.Format(" Where A5.DepartmentCode IN (SELECT A6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A6 WHERE A6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.ConstructionInstructor IN (Select A7.PersonCode From PersonInChargeMaster A7";
+                    strSQL += string.Format(" Where A7.DepartmentCode IN (SELECT A8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A8 WHERE A8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And A.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg = {0}", iStatus2);                                            // �������p���͈��p�����̂��̂͌�����
+                    strSQL += string.Format(" And A.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ��ʎg�p��
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+
+                    strSQL += string.Format(" And (A.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSQL += string.Format(" And (A.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
         #region �f�[�^�擾SQL�쐬
         /// <summary>
         /// �\���p�f�[�^�擾SQL�쐬
@@ -276,7 +271,7 @@
                 // ----- ���������擾
                 // �S����
                 int PersonCode = -1;
-                if (cmbPerson.Visible) PersonCode = CommonMotions.cnvInt(cmbPerson.SelectedValue);
+                if (cmbConstructionPerson.Visible) PersonCode = CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
                 //  ����
                 int DepartmentCode = -1;
                 if (cmbDepartment.Visible) DepartmentCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
@@ -303,6 +298,7 @@
                 strSub1 += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
                 strSub1 += " AND C.DEPARTMENTCODE = D.DEPARTMENTCODE";
 
+                //strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(TO_CHAR(C.DAILYDATADATE,'YYYY/MM/DD'))";
                 strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(DATE_FORMAT(C.DAILYDATADATE,'%Y/%m/%d'))";
                 strSub2 += " , E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER";
                 strSub2 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, DAILYDATA C, PERSONINCHARGEMASTER D, DEPARTMENTMASTER E";
@@ -440,8 +436,6 @@
             {
                 // �R���{�{�b�N�X�Z�b�g
                 SetPeriod();
-                SetDepartmentCombbox();
-                SetPersonCombbox();
 
                 // ----- �ޔ������f�[�^���������ꍇ�̓Z�b�g����
                 int NowPoint = ClsExcute.GetNowProcessPoint();
@@ -452,7 +446,7 @@
                     // �S������
                     cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[1];
                     // �S����
-                    cmbPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
+                    cmbConstructionPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
                 }
                 // �O���b�h�̍s��0�ɖ߂�
                 dgvMaster.Rows.Clear();
@@ -478,6 +472,50 @@
         }
         #endregion
 
+        #region �����R���{���S���҃R�[�h���擾����
+        /// <summary>
+        /// �����R���{���S���҃R�[�h���擾����
+        /// </summary>
+        /// <returns></returns>
+        private int GetDepartmentCode()
+        {
+            try
+            {
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbDepartment.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{���S���҃R�[�h���擾����
+        /// <summary>
+        /// �S���҃R���{���S���҃R�[�h���擾����
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstructionPersonCode()
+        {
+            try
+            {
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbConstructionPerson.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
         #region �c�Ɗ��̃Z�b�g
         /// <summary>
         /// �c�Ɗ��̃Z�b�g
@@ -508,37 +546,270 @@
         }
         #endregion
 
-        #region �S�������R���{�{�b�N�X�Z�b�g
+        #region �R���{�{�b�N�X�����\��
         /// <summary>
-        /// �S�������R���{�{�b�N�X�֕������Z�b�g����
+        /// �R���{�{�b�N�X�����\��
         /// </summary>
-        private bool SetDepartmentCombbox()
+        private void InitCombBox()
         {
-            IOMDepartment dmDB = new IOMDepartment();
             try
             {
-                m_initDataLoad = true;
+                // �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;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // �����R���{��\��
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // �����ݒ�Ώۂ��R���{�{�b�N�X�f�[�^�ɂ���΃Z�b�g����
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X�̔�\������
+        /// <summary>
+        /// �����R���{�{�b�N�X�̔�\������
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // �����R���{��\��
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // �\���ʒu�̃Z�b�g
+                Point loc3 = label3.Location;
+                loc3.X = label2.Location.X + 10;
+                label3.Location = loc3;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �S�R���{�{�b�N�X�\����ON/OFF����
+        /// <summary>
+        /// �S�R���{�{�b�N�X�\����ON/OFF����
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // �����E�S���҃R���{��\��
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X���Z�b�g����
+        /// <summary>
+        /// �����R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private bool SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
                 // �����}�X�^����������
-                string strSQL = " Where DeleteFlg = 0 ORDER BY DisplayOrder ASC";
-                List<DepartmentMaster> dmList = new List<DepartmentMaster>();
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // ������
+                        // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // �Q�ƕ����}�X�^���擾����
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
                 // �����}�X�^�Ǎ�
-                if (!dmDB.SelectAction(strSQL, ref dmList)) return false;
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
 
-                List<KeyValuePair<int, string>> DataList1 = new List<KeyValuePair<int, string>>();
-                DataList1.Add(new KeyValuePair<int, string>(0, ""));
-                // �f�[�^�\��
-                foreach (DepartmentMaster wrk in dmList)
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
                 {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.DepartmentCode, wrk.DepartmentString);
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
 
-                    DataList1.Add(keyval);
+                    ConstructionDataList.Add(keyval);
                 }
 
                 // �R���{�{�b�N�X�����\��
-                ComboBoxAction.InitDataSetCombBox(cmbDepartment, DataList1);
-                cmbDepartment.SelectedIndex = -1;
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
 
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ������
+                    // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
+                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // �����������҈ȊO
+                        if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                            cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
                 return true;
             }
             catch (Exception ex)
@@ -548,50 +819,62 @@
             }
             finally
             {
-                dmDB.close(); dmDB = null;
-                m_initDataLoad = false;
+                depDB.close(); depDB = null;
+                m_initDataLoad = bSave;
             }
         }
         #endregion
 
-        #region �S���҃R���{�{�b�N�X�Z�b�g
+        #region �S���҃R���{�{�b�N�X���Z�b�g����
         /// <summary>
         /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
         /// </summary>
-        private bool SetPersonCombbox()
+        private bool SetcmbPersons()
         {
             IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
             try
             {
-                m_initDataLoad = true;
+                cmbConstructionPerson.DataSource = null;
+                cmbConstructionPerson.Items.Clear();
+                cmbConstructionPerson.Text = "";
 
-                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>(); ;
+                string strSQL = string.Empty;
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0)
+                    strSQL = " WHERE DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC";
+                else
+                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC", DepartmentCode);
 
-                // �S���҃}�X�^����������
-                string strSQL = " Where DeleteFlg = 0";
-                int DepCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
-                if (DepCode > 0)
-                {
-                    strSQL += string.Format(" And DepartmentCode = {0}", DepCode);
-                }
-                strSQL += " Order By EmployeeClassFlg ASC, DisplayOrder ASC";
                 // �S���҃}�X�^�Ǎ�
                 if (!picDB.SelectAction(strSQL, ref workList)) return false;
 
-                List<KeyValuePair<int, string>> DataList2 = new List<KeyValuePair<int, string>>();
-                DataList2.Add(new KeyValuePair<int, string>(0, ""));
-                // �f�[�^�\��
-                foreach (PersonInChargeMaster wrk in workList)
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
                 {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.PersonCode, wrk.PersonName);
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
 
-                    DataList2.Add(keyval);
+                    ConstructionDataList.Add(keyval);
                 }
 
                 // �R���{�{�b�N�X�����\��
-                ComboBoxAction.InitDataSetCombBox(cmbPerson, DataList2);
-                cmbPerson.SelectedIndex = -1;
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
 
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+
                 return true;
             }
             catch (Exception ex)
@@ -602,10 +885,54 @@
             finally
             {
                 picDB.close(); picDB = null;
-                m_initDataLoad = false;
+                m_initDataLoad = bSave;
             }
         }
         #endregion
 
+        #region �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// <summary>
+        /// �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // �R���{�{�b�N�X���I��S���҂��擾����
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // �����R���{�{�b�N�X�֕����R�[�h�Z�b�g
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_initDataLoad;
+                    m_initDataLoad = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // �S���҃R���{�{�b�N�X�ύX
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_initDataLoad = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmFrmDailyReportListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmFrmDailyReportListAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DailyReportList/FrmFrmDailyReportListAuxiliary.cs	(revision 51)
@@ -0,0 +1,610 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*---------------------------- ����ꗗ��� ----------------------------------*
+//  2016/07/08  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmDailyReportList
+    {
+        #region �萔
+        #endregion
+
+        #region �ϐ�
+
+        #endregion
+
+        #region �v���p�e�B
+
+        #endregion
+
+        #region �������̕\���`����ݒ肷��
+        /// <summary>
+        /// �������̕\���`����ݒ肷��
+        /// </summary>
+        private void InitDisplayFormat()
+        {
+            try
+            {
+                cmbDepartment.Visible = true;
+                cmbPerson.Visible = true;
+                label2.Visible = true;
+                label3.Visible = true;
+
+                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                {
+                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                {
+                    // �ō��@���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
+                {
+                    // �����@���Ǘ��ҁi�@�\�����j
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // �@���Ǘ��ҁi�������̂݁j
+                    cmbDepartment.Visible = false;
+                    label2.Visible = false;
+
+                    cmbPerson.Location = cmbDepartment.Location;
+                    label3.Location = label2.Location;
+                    
+                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // ��ʎg�p�ҁi���f�[�^�̂݁j
+                    cmbDepartment.Visible = false;
+                    cmbPerson.Visible = false;
+                    label2.Visible = false;
+                    label3.Visible = false;
+
+                    cmbPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
+        /// <summary>
+        /// �������ɃR���{�{�b�N�X�փf�[�^���Z�b�g����
+        /// </summary>
+        private void SetInitCmbBoxSelect()
+        {
+            try
+            {
+                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                {
+                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                {
+                    // �ō��@���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
+                {
+                    // �����@���Ǘ��ҁi�@�\�����j
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // �@���Ǘ��ҁi�������̂݁j
+                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    // �S���҃R���{�{�b�N�X�X�V
+                    SetPersonCombbox();
+                    // �f�[�^�\��
+                    DataDisplay();
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // ��ʎg�p�ҁi���f�[�^�̂݁j
+                    cmbPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    // �f�[�^�\��
+                    DataDisplay();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ���v���Z�X�N��
+        /// <summary>
+        /// ����ꗗ���N������v���Z�X�I������
+        /// </summary>
+        /// <param name="para_ConstructionCode"></param>
+        private void SubProcessExecute(bool bCreate = false)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+                DataGridViewRow dgvRow = dgv.CurrentRow;
+
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // ���ݐݒ�l�N���A
+                ClsExcute.ClearSaveParameter(NowPoint);
+                // ----- ��ʏ��ޔ�
+                // �����N
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(numUDConstPro.Value));
+                // �S������
+                int depCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(depCode);
+                // �S����
+                int personCode = CommonMotions.cnvInt(cmbPerson.SelectedValue);
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(personCode);
+
+                // ----- �N�����Z�b�g
+                // ���N���v���Z�X�Z�b�g
+                NowPoint = ClsExcute.NextProcess(m_ProcessNo);
+
+                // �I���H���ԍ��Z�b�g
+                int ConstructionCode = CommonMotions.cnvInt(dgvRow.Cells[(int)DispColumn.ConstructionCode].Value);
+                if (ConstructionCode == 0) return;
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ConstructionCode);
+
+                // �I���s�S���҃Z�b�g
+                int PersonCode = CommonMotions.cnvInt(dgvRow.Cells[(int)DispColumn.PersonCode].Value);
+                if (PersonCode == 0) return;
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(PersonCode);
+
+                // �I���s�쐬���Z�b�g
+                string CreateDate = CommonMotions.cnvString(dgvRow.Cells[(int)DispColumn.CreateDate].Value);
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CreateDate);
+
+                // �\�[�g���
+                if (dgvMaster.SortedColumn != null)
+                {
+                    ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add((int)dgvMaster.SortedColumn.Index);
+                    ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add((int)dgvMaster.SortOrder);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // �N���[�Y������OFF�ɂ���B
+                m_CloseingProcessOff = true;
+                // ��ʃN���[�Y
+                this.Close();
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �����������҂̓f�[�^�Q�Əo���鏈��������
+                if (ClsSecurityPermission.PermitGeneralAffairsDevision(m_ExecuteFlg)) return;
+
+                // �Č����
+                int iStatus1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
+
+                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                {
+                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                {
+                    // �ō��@���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
+                {
+                    // �����@���Ǘ��ҁi�@�\�����j
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // �@���Ǘ��ҁi�������̂݁j
+                    strSQL += string.Format(" AND (A.SalesPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.ConstructionPersonCode IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" OR A.ConstructionInstructor IN (Select PersonCode From PersonInChargeMaster Where DepartmentCode = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" AND A.ConstructionStatusFlg != {0}", iStatus1);
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // ��ʎg�p�ҁi���f�[�^�̂݁j
+
+                    strSQL += string.Format(" AND (A.SalesPersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                    strSQL += string.Format(" OR A.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+                    strSQL += string.Format(" OR A.ConstructionInstructor = {0})", CommonMotions.LoginUserData.PersonCode);
+                    strSQL += string.Format(" AND A.ConstructionStatusFlg != {0}", iStatus1);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region �f�[�^�擾SQL�쐬
+        /// <summary>
+        /// �\���p�f�[�^�擾SQL�쐬
+        /// </summary>
+        private void CreateInitSQL(ref string strSQL)
+        {
+            string strSub1 = "";
+            string strSub2 = "";
+            try
+            {
+                int iCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("��������")).Key;
+
+                // ----- ���������擾
+                // �S����
+                int PersonCode = -1;
+                if (cmbPerson.Visible) PersonCode = CommonMotions.cnvInt(cmbPerson.SelectedValue);
+                //  ����
+                int DepartmentCode = -1;
+                if (cmbDepartment.Visible) DepartmentCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+
+                // SQL�ɃA�N�Z�X������������
+                string strSecurity = string.Empty;
+                CreateSecuritySQL(ref strSecurity);
+
+                strSub1 = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING, C.PERSONCODE, C.PERSONNAME, '', D.DEPARTMENTCODE, D.DEPARTMENTSTRING, D.DISPLAYORDER, C.DISPLAYORDER";
+                strSub1 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C, DEPARTMENTMASTER D";
+                strSub1 += " WHERE NOT EXISTS (SELECT * FROM DAILYDATA Z WHERE Z.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                strSub1 += string.Format(" AND A.CONSTRUCTIONSTATUSFLG < {0}", iCode);
+                // �S���ґI��������ꍇ
+                if (PersonCode > 0)
+                    //strSub1 += string.Format(" AND (A.SalesPersonCode = {0} OR A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0})", PersonCode);
+                    strSub1 += string.Format(" AND (A.ConstructionPersonCode = {0})", PersonCode);
+                
+                strSub1 += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSub1 += " AND A.CONSTRUCTIONPERSONCODE = C.PERSONCODE";
+                // �����I�������鎞
+                if (DepartmentCode > 0)
+                    strSub1 += string.Format(" AND C.DEPARTMENTCODE = {0}", DepartmentCode);
+
+                strSub1 += string.Format(" AND A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                strSub1 += " AND C.DEPARTMENTCODE = D.DEPARTMENTCODE";
+
+                //strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(TO_CHAR(C.DAILYDATADATE,'YYYY/MM/DD'))";
+                strSub2 = " UNION (SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING , D.PERSONCODE, D.PERSONNAME, MAX(DATE_FORMAT(C.DAILYDATADATE,'%Y/%m/%d'))";
+                strSub2 += " , E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER";
+                strSub2 += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, DAILYDATA C, PERSONINCHARGEMASTER D, DEPARTMENTMASTER E";
+                strSub2 += string.Format(" WHERE A.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                // �S���ґI��������ꍇ
+                if (PersonCode > 0)
+                    //strSub2 += string.Format(" AND (A.SalesPersonCode = {0} OR A.ConstructionPersonCode = {0} OR A.ConstructionInstructor = {0})", PersonCode);
+                    strSub2 += string.Format(" AND (A.ConstructionPersonCode = {0})", PersonCode);
+
+                strSub2 += string.Format(" AND (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSub2 += " AND A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
+                strSub2 += " AND C.PERSONCODE = D.PERSONCODE";
+                // �����I�������鎞
+                if (DepartmentCode > 0)
+                    strSub2 += string.Format(" AND D.DEPARTMENTCODE = {0}", DepartmentCode);
+                strSub2 += " AND D.DEPARTMENTCODE = E.DEPARTMENTCODE";
+
+                strSQL = strSub1 + strSecurity + strSub2 + strSecurity;
+                strSQL += " GROUP BY A.CONSTRUCTIONCODE, B.DETAILSTRING, D.PERSONCODE, D.PERSONNAME, E.DEPARTMENTCODE, E.DEPARTMENTSTRING, E.DISPLAYORDER, D.DISPLAYORDER)";
+                // Order by �t��
+                strSQL += " ORDER BY 8 ASC, 9 ASC, 6 ASC, 7 ASC, 3 ASC";
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}�F{2}", ex.Message, strSQL, strSub1);
+            }
+        }
+        #endregion
+
+        #region �捞�f�[�^�����񋓌^
+        /// <summary>
+        /// �捞�f�[�^�����񋓌^
+        /// </summary>
+        private enum GetData
+        {
+            ConstructionCode = 0,
+            ConstructionName,
+            PersonCode,
+            PersonName,
+            DailydataDate,
+            DepartmentCode,
+            DepartmentName,
+            DepartmentDisplayorder,
+            PersonDisplayorder,
+        }
+        #endregion
+
+        #region �f�[�^�\������
+        /// <summary>
+        /// �ꗗ�f�[�^�\������
+        /// </summary>
+        private void DataDisplay()
+        {
+            IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
+            try
+            {
+                dgvMaster.Rows.Clear();
+                string strSQL = "";
+                // SQL�쐬
+                CreateInitSQL(ref strSQL);
+                ArrayList arData = new ArrayList();
+                bool init = true;
+                // �H����{���擾
+                if (cbiDB.ExecuteReader(strSQL, ref arData))
+                {
+                    int DepCode = 0;
+                    int PersonCode = 0;
+                    string DepString = "";
+                    string PersonStr = "";
+                    // �f�[�^�\��
+                    foreach (object[] objwrk in arData)
+                    {
+                        DepString = "";
+                        PersonStr = "";
+
+                        if (DepCode != CommonMotions.cnvInt(objwrk[(int)GetData.DepartmentCode]))
+                        {
+                            DepCode = CommonMotions.cnvInt(objwrk[(int)GetData.DepartmentCode]);
+                            DepString = CommonMotions.cnvString(objwrk[(int)GetData.DepartmentName]);
+                            if (!init) dgvMaster.Rows.Add(1);
+                            init = false;
+                        }
+                        if (PersonCode != CommonMotions.cnvInt(objwrk[(int)GetData.PersonCode]))
+                        {
+                            PersonCode = CommonMotions.cnvInt(objwrk[(int)GetData.PersonCode]);
+                            PersonStr = CommonMotions.cnvString(objwrk[(int)GetData.PersonName]);
+                        }
+                        
+                        dgvMaster.Rows.Add(CommonMotions.cnvInt(objwrk[(int)GetData.DepartmentCode])
+                                            , DepString
+                                            , CommonMotions.cnvInt(objwrk[(int)GetData.PersonCode])
+                                            , PersonStr
+                                            , CommonMotions.cnvInt(objwrk[(int)GetData.ConstructionCode])
+                                            , CommonMotions.cnvString(objwrk[(int)GetData.ConstructionName])
+                                            , CommonMotions.cnvString(objwrk[(int)GetData.DailydataDate])
+                                            );
+
+                    }
+                }
+                // �f�[�^�������Ȃ�΃\�[�g�ł���
+                if (CommonDefine.s_MaxInitLineCount < dgvMaster.RowCount)
+                {
+                    foreach (DataGridViewColumn wrkCol in dgvMaster.Columns)
+                        wrkCol.SortMode = DataGridViewColumnSortMode.Automatic;
+                }
+                else
+                {
+                    // �b��Ń\�[�g������
+                    foreach (DataGridViewColumn wrkCol in dgvMaster.Columns)
+                        wrkCol.SortMode = DataGridViewColumnSortMode.Automatic;
+                    // �Ǎ����f�[�^�J�E���g�擾
+                    m_initDataCount = arData.Count;
+                    dgvMaster.RowCount += (CommonDefine.s_MaxInitLineCount - m_initDataCount);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                cbiDB.close(); cbiDB = null;
+            }
+        }
+        #endregion
+
+        #region �������f�[�^�擾
+        /// <summary>
+        /// �������f�[�^�擾
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // �R���{�{�b�N�X�Z�b�g
+                SetPeriod();
+                SetDepartmentCombbox();
+                SetPersonCombbox();
+
+                // ----- �ޔ������f�[�^���������ꍇ�̓Z�b�g����
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 0)
+                {
+                    // �N�x
+                    numUDConstPro.Value = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[0];
+                    // �S������
+                    cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[1];
+                    // �S����
+                    cmbPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
+                }
+                // �O���b�h�̍s��0�ɖ߂�
+                dgvMaster.Rows.Clear();
+
+                // �f�[�^�\��
+                DataDisplay();
+
+                // �\�[�g���
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 4)
+                {
+                    // �J�����擾
+                    DataGridViewColumn wrksortcolumn = dgvMaster.Columns[ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[3]];
+                    // �\�[�g�I�[�_�[�擾
+                    ListSortDirection sortDirection = ((SortOrder)ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[4]) == SortOrder.Ascending ?
+                                                                        ListSortDirection.Ascending : ListSortDirection.Descending;
+                    dgvMaster.Sort(wrksortcolumn, sortDirection);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �c�Ɗ��̃Z�b�g
+        /// <summary>
+        /// �c�Ɗ��̃Z�b�g
+        /// </summary>
+        private void SetPeriod()
+        {
+            try
+            {
+                m_initDataLoad = true;
+                // �����N�x�Z�b�g
+                // �f�[�^�ɂ��鎖�Ɗ��ƌ��݂̎��ƃZ�b�g
+                int minval = 0;
+                int maxval = 0;
+                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                numUDConstPro.Minimum = minval;
+                numUDConstPro.Maximum = maxval;
+                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                m_initDataLoad = false;
+            }
+
+        }
+        #endregion
+
+        #region �S�������R���{�{�b�N�X�Z�b�g
+        /// <summary>
+        /// �S�������R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private bool SetDepartmentCombbox()
+        {
+            IOMDepartment dmDB = new IOMDepartment();
+            try
+            {
+                m_initDataLoad = true;
+
+                // �����}�X�^����������
+                string strSQL = " Where DeleteFlg = 0 ORDER BY DisplayOrder ASC";
+                List<DepartmentMaster> dmList = new List<DepartmentMaster>();
+                // �����}�X�^�Ǎ�
+                if (!dmDB.SelectAction(strSQL, ref dmList)) return false;
+
+                List<KeyValuePair<int, string>> DataList1 = new List<KeyValuePair<int, string>>();
+                DataList1.Add(new KeyValuePair<int, string>(0, ""));
+                // �f�[�^�\��
+                foreach (DepartmentMaster wrk in dmList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.DepartmentCode, wrk.DepartmentString);
+
+                    DataList1.Add(keyval);
+                }
+
+                // �R���{�{�b�N�X�����\��
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, DataList1);
+                cmbDepartment.SelectedIndex = -1;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                dmDB.close(); dmDB = null;
+                m_initDataLoad = false;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{�{�b�N�X�Z�b�g
+        /// <summary>
+        /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private bool SetPersonCombbox()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            try
+            {
+                m_initDataLoad = true;
+
+                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>(); ;
+
+                // �S���҃}�X�^����������
+                string strSQL = " Where DeleteFlg = 0";
+                int DepCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+                if (DepCode > 0)
+                {
+                    strSQL += string.Format(" And DepartmentCode = {0}", DepCode);
+                }
+                strSQL += " Order By EmployeeClassFlg ASC, DisplayOrder ASC";
+                // �S���҃}�X�^�Ǎ�
+                if (!picDB.SelectAction(strSQL, ref workList)) return false;
+
+                List<KeyValuePair<int, string>> DataList2 = new List<KeyValuePair<int, string>>();
+                DataList2.Add(new KeyValuePair<int, string>(0, ""));
+                // �f�[�^�\��
+                foreach (PersonInChargeMaster wrk in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.PersonCode, wrk.PersonName);
+
+                    DataList2.Add(keyval);
+                }
+
+                // �R���{�{�b�N�X�����\��
+                ComboBoxAction.InitDataSetCombBox(cmbPerson, DataList2);
+                cmbPerson.SelectedIndex = -1;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                m_initDataLoad = false;
+            }
+        }
+        #endregion
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.cs	(revision 51)
@@ -290,11 +290,6 @@
         /// <param name="e"></param>
         private void btnEnd_Click(object sender, EventArgs e)
         {
-            // �O�v���Z�X�ɖ߂�
-            ClsExcute.BackProcess();
-
-            m_CloseingProcessOff = true;
-            
             this.Close();
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssList.designer.cs	(revision 51)
@@ -45,6 +45,10 @@
             this.label1 = new System.Windows.Forms.Label();
             this.groupBox1 = new System.Windows.Forms.GroupBox();
             this.pnlPayroll = new System.Windows.Forms.Panel();
+            this.lblEndDate = new System.Windows.Forms.Label();
+            this.lblStartDate = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
             this.lblTotalCalcValue2 = new System.Windows.Forms.Label();
             this.label23 = new System.Windows.Forms.Label();
             this.label11 = new System.Windows.Forms.Label();
@@ -88,10 +92,6 @@
             this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.label3 = new System.Windows.Forms.Label();
-            this.label8 = new System.Windows.Forms.Label();
-            this.lblStartDate = new System.Windows.Forms.Label();
-            this.lblEndDate = new System.Windows.Forms.Label();
             this.groupBox1.SuspendLayout();
             this.pnlPayroll.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
@@ -175,11 +175,61 @@
             this.pnlPayroll.Controls.Add(this.label15);
             this.pnlPayroll.Controls.Add(this.lblCalcValue1);
             this.pnlPayroll.Controls.Add(this.label9);
-            this.pnlPayroll.Location = new System.Drawing.Point(5, 36);
+            this.pnlPayroll.Location = new System.Drawing.Point(6, 36);
             this.pnlPayroll.Name = "pnlPayroll";
             this.pnlPayroll.Size = new System.Drawing.Size(1320, 84);
             this.pnlPayroll.TabIndex = 46;
             // 
+            // lblEndDate
+            // 
+            this.lblEndDate.BackColor = System.Drawing.Color.White;
+            this.lblEndDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblEndDate.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblEndDate.ForeColor = System.Drawing.Color.Black;
+            this.lblEndDate.Location = new System.Drawing.Point(1104, 28);
+            this.lblEndDate.Name = "lblEndDate";
+            this.lblEndDate.Size = new System.Drawing.Size(140, 25);
+            this.lblEndDate.TabIndex = 54;
+            this.lblEndDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblStartDate
+            // 
+            this.lblStartDate.BackColor = System.Drawing.Color.White;
+            this.lblStartDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblStartDate.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblStartDate.ForeColor = System.Drawing.Color.Black;
+            this.lblStartDate.Location = new System.Drawing.Point(1104, 3);
+            this.lblStartDate.Name = "lblStartDate";
+            this.lblStartDate.Size = new System.Drawing.Size(140, 25);
+            this.lblStartDate.TabIndex = 54;
+            this.lblStartDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label8
+            // 
+            this.label8.BackColor = System.Drawing.Color.Ivory;
+            this.label8.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label8.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label8.ForeColor = System.Drawing.Color.Black;
+            this.label8.Location = new System.Drawing.Point(994, 28);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(110, 25);
+            this.label8.TabIndex = 53;
+            this.label8.Text = "給与計算終了日";
+            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            this.label3.BackColor = System.Drawing.Color.Ivory;
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(994, 3);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(110, 25);
+            this.label3.TabIndex = 53;
+            this.label3.Text = "給与計算開始日";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // lblTotalCalcValue2
             // 
             this.lblTotalCalcValue2.BackColor = System.Drawing.Color.White;
@@ -762,56 +812,6 @@
             this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column12.Width = 140;
             // 
-            // label3
-            // 
-            this.label3.BackColor = System.Drawing.Color.Ivory;
-            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label3.ForeColor = System.Drawing.Color.Black;
-            this.label3.Location = new System.Drawing.Point(994, 3);
-            this.label3.Name = "label3";
-            this.label3.Size = new System.Drawing.Size(110, 25);
-            this.label3.TabIndex = 53;
-            this.label3.Text = "給与計算開始日";
-            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label8
-            // 
-            this.label8.BackColor = System.Drawing.Color.Ivory;
-            this.label8.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label8.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label8.ForeColor = System.Drawing.Color.Black;
-            this.label8.Location = new System.Drawing.Point(994, 28);
-            this.label8.Name = "label8";
-            this.label8.Size = new System.Drawing.Size(110, 25);
-            this.label8.TabIndex = 53;
-            this.label8.Text = "給与計算終了日";
-            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblStartDate
-            // 
-            this.lblStartDate.BackColor = System.Drawing.Color.White;
-            this.lblStartDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblStartDate.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblStartDate.ForeColor = System.Drawing.Color.Black;
-            this.lblStartDate.Location = new System.Drawing.Point(1104, 3);
-            this.lblStartDate.Name = "lblStartDate";
-            this.lblStartDate.Size = new System.Drawing.Size(140, 25);
-            this.lblStartDate.TabIndex = 54;
-            this.lblStartDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblEndDate
-            // 
-            this.lblEndDate.BackColor = System.Drawing.Color.White;
-            this.lblEndDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblEndDate.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblEndDate.ForeColor = System.Drawing.Color.Black;
-            this.lblEndDate.Location = new System.Drawing.Point(1104, 28);
-            this.lblEndDate.Name = "lblEndDate";
-            this.lblEndDate.Size = new System.Drawing.Size(140, 25);
-            this.lblEndDate.TabIndex = 54;
-            this.lblEndDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
             // FrmDepExpenssList
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DepExpenssList/FrmDepExpenssListAuxiliary.cs	(revision 51)
@@ -78,7 +78,7 @@
 
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedgerList;
                 // �t�H�[��������΍őO�ʂ�
-                FrmConstructionLedgerList frm = (FrmConstructionLedgerList)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                FrmLedgerStatus frm = (FrmLedgerStatus)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
                 // �\���S���҂������Ȃ�Ώ������Ȃ�
                 if (frm != null)
                 {
@@ -103,7 +103,7 @@
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
 
                 // �H���ڍב䒠�ꗗ�\��
-                frm = new FrmConstructionLedgerList();
+                frm = new FrmLedgerStatus();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
 
@@ -161,7 +161,7 @@
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedgerList;
-                FrmConstructionLedgerList frm = (FrmConstructionLedgerList)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                FrmLedgerStatus frm = (FrmLedgerStatus)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
 
                 // �n���h���N���A
                 if (ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle != null)
@@ -214,6 +214,7 @@
 
                     // ��ʃN���[�Y
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
 
                 }
@@ -230,12 +231,107 @@
         /// ����SQL�̃Z�L�����e�B���蕔�����쐬����
         /// </summary>
         /// <param name="strSQL"></param>
-        private void CreateSecuritySQL(ref List<string> strSecurity)
+        private void CreateSecuritySQL(ref string strSecurity)
         {
-            string strSQL1 = string.Empty;
-            string strSQL2 = string.Empty;
             try
             {
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    CreateOldSecuritySQL(ref strSecurity);
+                }
+                else
+                {
+                    CreateNewSecuritySQL(ref strSecurity);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewSecuritySQL(ref string strSecurity)
+        {
+            try
+            {
+                // �L�[�l�擾
+                // �L�[�l�擾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                // �f�[�^�A�N�Z�X�Ɍ����ɂ�萧��������
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ���ׂđΏہi����SQL���j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // �ꕔ�����L
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+
+                    strSecurity += " And (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1";
+                    strSecurity += string.Format(" Where A1.DepartmentCode IN (SELECT A2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A2 WHERE A2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or (A.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSecurity += " And (A.ConstructionPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3";
+                    strSecurity += string.Format(" Where A3.DepartmentCode IN (SELECT A4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A4 WHERE A4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += " Or A.CONSTRSUBPERSONCODE IN (Select A5.PersonCode From PersonInChargeMaster A5";
+                    strSecurity += string.Format(" Where A5.DepartmentCode IN (SELECT A6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A6 WHERE A6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += " Or A.ConstructionInstructor IN (Select A7.PersonCode From PersonInChargeMaster A7";
+                    strSecurity += string.Format(" Where A7.DepartmentCode IN (SELECT A8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A8 WHERE A8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or (A.ConstructionStatusFlg >= {0} And A.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSecurity += string.Format(" Or (A.ConstructionStatusFlg = {0}", iStatus2);                                            // �������p���͈��p�����̂��̂͌�����
+                    strSecurity += string.Format(" And A.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ��ʎg�p��
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+
+                    strSecurity += string.Format(" And (A.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or (A.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSecurity += string.Format(" And (A.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or A.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSecurity += string.Format(" Or A.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSecurity);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateOldSecuritySQL(ref string strSecurity)
+        {
+            try
+            {
                 // �����������҂̓f�[�^�Q�Əo���鏈��������
                 if (ClsSecurityPermission.PermitGeneralAffairsDevision(m_ExecuteFlg)) return;
 
@@ -255,28 +351,24 @@
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
                 {
                     // �@���Ǘ��ҁi�������̂݁j
-                    strSQL1 = string.Format(" AND C.DepartmentCode = {0}", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL2 = string.Format(" AND (A.CREATORCODE = C.PERSONCODE AND C.DEPARTMENTCODE = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSecurity.Add(strSQL1);
-                    strSecurity.Add(strSQL2);
+                    strSecurity += string.Format(" AND C.DepartmentCode = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    strSecurity += string.Format(" AND (A.CREATORCODE = C.PERSONCODE AND C.DEPARTMENTCODE = {0})", CommonMotions.LoginUserData.DepartmentCode);
                 }
                 else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
                 {
                     // ��ʎg�p�ҁi���f�[�^�̂݁j
                     //strSQL1 = string.Format(" AND C.PERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
-                    strSQL1 = string.Format(" AND (A.CONSTRUCTIONPERSONCODE = {0} OR A.CONSTRUCTIONINSTRUCTOR = {0})"
+                    strSecurity += string.Format(" AND (A.CONSTRUCTIONPERSONCODE = {0} OR A.CONSTRUCTIONINSTRUCTOR = {0})"
                                                                         , CommonMotions.LoginUserData.PersonCode);
                     //strSQL2 = string.Format(" AND (A.CREATORCODE = C.PERSONCODE AND C.DEPARTMENTCODE = {0})", CommonMotions.LoginUserData.DepartmentCode);
-                    strSQL2 = " AND A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
-                    strSQL2 += string.Format(" AND (D.CONSTRUCTIONPERSONCODE = {0} OR D.CONSTRUCTIONINSTRUCTOR = {0} OR D.CONSTRSUBPERSONCODE = {0})"
+                    strSecurity += " AND A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
+                    strSecurity += string.Format(" AND (D.CONSTRUCTIONPERSONCODE = {0} OR D.CONSTRUCTIONINSTRUCTOR = {0} OR D.CONSTRSUBPERSONCODE = {0})"
                                                                         , CommonMotions.LoginUserData.PersonCode);
-                    strSecurity.Add(strSQL1);
-                    strSecurity.Add(strSQL2);
                 }
             }
             catch (Exception ex)
             {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}�F{2}", ex.Message, strSQL1, strSQL2);
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSecurity);
             }
         }
         #endregion
@@ -303,6 +395,7 @@
                 int[] wrkArray = new int[TotalColCnt];
                 Array.Clear(wrkArray, 0, wrkArray.Length);
 
+                // �󒍋��z�ȍ~���Z�b�g����
                 for (int i = (int)DBGetData.OrdersDecisionprice; i <= (int)DBGetData.NetProfit; i++)
                 {
                     wrkArray[i] = CommonMotions.cnvInt(objwrk[i]);
@@ -885,8 +978,7 @@
                 strSQL += " LEFT JOIN CONSTRUCTIONLEDGERDETAIL E2 ON E2.CONSTRUCTIONCODE = E.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND E2.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Instructor);
 
-                strSQL += " WHERE P.DELETEFLG = 0";
-                strSQL += string.Format(" AND P.LEDGERFLG = {0}", (int)CommonDefine.PersonLedgerDivNo.CalcTarget);
+                strSQL += string.Format(" WHERE P.LEDGERFLG = {0}", (int)CommonDefine.PersonLedgerDivNo.CalcTarget);
                 // �H���䒠�f�[�^�̕����������Ώ�
                 strSQL += " AND P.DEPARTMENTCODE IN";
                 strSQL += " (SELECT DEPARTMENTCODE FROM (SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*) CNT";
@@ -982,6 +1074,8 @@
                 // �S���Җ��o��f�[�^���ǂ��̍H���ɂ��������Ă��Ȃ��o����擾����
                 string strSQL = "SELECT PERSONCODE, DATATYPE, SUM(ENTRYPRICE) FROM COSTDATAOFPERSON";
                 strSQL += string.Format(" WHERE PERSONCODE = {0}", PersonCode);
+                //strSQL += string.Format(" AND ('{0}' <= TO_CHAR(ACTIONDATE,'YYYY/MM/DD')", dtStart.ToShortDateString());
+                //strSQL += string.Format(" AND TO_CHAR(ACTIONDATE,'YYYY/MM/DD') <= '{0}')", dtEnd.ToShortDateString());
                 strSQL += string.Format(" AND ('{0}' <= DATE_FORMAT(ACTIONDATE,'%Y/%m/%d')", dtStart.ToShortDateString());
                 strSQL += string.Format(" AND DATE_FORMAT(ACTIONDATE,'%Y/%m/%d') <= '{0}')", dtEnd.ToShortDateString());
                 strSQL += " AND CONSTRUCTIONCODE = 0";
@@ -1028,13 +1122,17 @@
                 int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
 
                 // �H���ڍב䒠�f�[�^���⏕�U�����擾����
-                string strSQL = "SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
-                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                //string strSQL = "SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
+                string strSQL = "SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(B.PAYMENTAMOUNT)";
+                //strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P LEFT JOIN CONSTRUCTIONLEDGEREXCUTE B";
+                strSQL += " ON B.CONSTRUCTIONCODE = P.CONSTRUCTIONCODE AND B.GROUPCOUNT = P.GROUPCOUNT AND B.LINECOUNT = P.LINECOUNT";
+                strSQL += " , CONSTRUCTIONBASEINFO A";
                 strSQL += string.Format(" WHERE P.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Instructor);
                 
-                strSQL += " AND P.COMPANYCODE IN (SELECT PERSONCODE FROM PERSONINCHARGEMASTER WHERE DELETEFLG = 0";
-                if (DepartmentCode != 0) strSQL += string.Format(" AND DEPARTMENTCODE = {0}", DepartmentCode);
-                if (PersonCode != 0) strSQL += string.Format(" AND PERSONCODE = {0}", PersonCode);
+                strSQL += " AND P.COMPANYCODE IN (SELECT P1.PERSONCODE FROM PERSONINCHARGEMASTER P1 WHERE P1.DELETEFLG = 0";
+                if (DepartmentCode != 0) strSQL += string.Format(" AND P1.DEPARTMENTCODE = {0}", DepartmentCode);
+                if (PersonCode != 0) strSQL += string.Format(" AND P1.PERSONCODE = {0}", PersonCode);
 
                 strSQL += " )";
                 
@@ -1044,13 +1142,17 @@
                 strSQL += " GROUP BY A.CONSTRUCTIONPERIOD, P.GROUPCOUNT";
 
                 strSQL += " UNION";
-                strSQL += " SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
-                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                //strSQL += " SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(P.EXECUTIONAMOUNT)";
+                strSQL += " SELECT A.CONSTRUCTIONPERIOD, P.GROUPCOUNT, SUM(B.PAYMENTAMOUNT)";
+                //strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P, CONSTRUCTIONBASEINFO A";
+                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL P LEFT JOIN CONSTRUCTIONLEDGEREXCUTE B";
+                strSQL += " ON B.CONSTRUCTIONCODE = P.CONSTRUCTIONCODE AND B.GROUPCOUNT = P.GROUPCOUNT AND B.LINECOUNT = P.LINECOUNT";
+                strSQL += " , CONSTRUCTIONBASEINFO A";
                 strSQL += string.Format(" WHERE P.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Assistant);
 
-                strSQL += " AND P.COMPANYCODE IN (SELECT PERSONCODE FROM PERSONINCHARGEMASTER WHERE DELETEFLG = 0";
-                if (DepartmentCode != 0) strSQL += string.Format(" AND DEPARTMENTCODE = {0}", DepartmentCode);
-                if (PersonCode != 0) strSQL += string.Format(" AND PERSONCODE = {0}", PersonCode);
+                strSQL += " AND P.COMPANYCODE IN (SELECT P1.PERSONCODE FROM PERSONINCHARGEMASTER P1 WHERE P1.DELETEFLG = 0";
+                if (DepartmentCode != 0) strSQL += string.Format(" AND P1.DEPARTMENTCODE = {0}", DepartmentCode);
+                if (PersonCode != 0) strSQL += string.Format(" AND P1.PERSONCODE = {0}", PersonCode);
 
                 strSQL += " )";
                 strSQL += " AND P.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
@@ -1101,13 +1203,13 @@
                 int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
 
                 // �U�����^���z�擾
-                //string strSQL = "SELECT SUM(E.PAYMENTAMOUNT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, CONSTRUCTIONLEDGERDETAIL C, PERSONINCHARGEMASTER D, CONSTRUCTIONLEDGEREXCUTE E";
                 string strSQL = "SELECT SUM(C.EXECUTIONAMOUNT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, CONSTRUCTIONLEDGERDETAIL C, PERSONINCHARGEMASTER D";
                 // �U�����ł͖���
                 strSQL += " WHERE P.CONSTRUCTIONCODE IN (SELECT A.CONSTRUCTIONCODE FROM CONSTRUCTIONLEDGERDETAIL A";
-                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                //strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND (A.SALARYFLG = {1} OR A.SALARYFLG = {2}))"
                                         , (int)FrmConstructionLedger.DataGroup.Payroll
-                                        , (int)CommonDefine.SalaryOperateKind.Oparateing
+                                        //, (int)CommonDefine.SalaryOperateKind.Oparateing
                                         , (int)CommonDefine.SalaryDevision.All
                                         , (int)CommonDefine.SalaryDevision.DaysInput);
 
@@ -1116,10 +1218,7 @@
                 strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG != {0}", NotOrder);
                 strSQL += " AND C.CONSTRUCTIONCODE = P.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND C.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.Payroll);
-                strSQL += string.Format(" AND C.OPERATINGFLG = {0}", (int)CommonDefine.SalaryOperateKind.Oparateing);
-                //strSQL += " AND E.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
-                //strSQL += " AND E.GROUPCOUNT = C.GROUPCOUNT";
-                //strSQL += " AND E.LINECOUNT = C.LINECOUNT";
+                //strSQL += string.Format(" AND C.OPERATINGFLG = {0}", (int)CommonDefine.SalaryOperateKind.Oparateing);
                 strSQL += " AND D.PERSONCODE = B.CONSTRUCTIONPERSONCODE";
                 if (DepartmentCode != 0) strSQL += string.Format(" AND D.DEPARTMENTCODE = {0}", DepartmentCode);
                 if (PersonCode != 0) strSQL += string.Format(" AND D.PERSONCODE = {0}", PersonCode);
@@ -1133,9 +1232,10 @@
                 strSQL = "SELECT SUM(P.NETPROFIT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER D";
                 // �U���ςݕ������v
                 strSQL += " WHERE P.CONSTRUCTIONCODE IN (SELECT A.CONSTRUCTIONCODE  FROM CONSTRUCTIONLEDGERDETAIL A";
-                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                //strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND (A.SALARYFLG = {1} OR A.SALARYFLG = {2}))"
                                         , (int)FrmConstructionLedger.DataGroup.Payroll
-                                        , (int)CommonDefine.SalaryOperateKind.Oparateing
+                                        //, (int)CommonDefine.SalaryOperateKind.Oparateing
                                         , (int)CommonDefine.SalaryDevision.All
                                         , (int)CommonDefine.SalaryDevision.DaysInput);
                 
@@ -1154,9 +1254,10 @@
                 strSQL = "SELECT SUM(P.NETPROFIT) FROM CONSTRUCTIONLEDGER P, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER D";
                 // �U���ςݕ������v
                 strSQL += " WHERE P.CONSTRUCTIONCODE NOT IN (SELECT A.CONSTRUCTIONCODE  FROM CONSTRUCTIONLEDGERDETAIL A";
-                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                //strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND A.OPERATINGFLG = {1} AND (A.SALARYFLG = {2} OR A.SALARYFLG = {3}))"
+                strSQL += string.Format(" WHERE A.GROUPCOUNT = {0} AND (A.SALARYFLG = {1} OR A.SALARYFLG = {2}))"
                                         , (int)FrmConstructionLedger.DataGroup.Payroll
-                                        , (int)CommonDefine.SalaryOperateKind.Oparateing
+                                        //, (int)CommonDefine.SalaryOperateKind.Oparateing
                                         , (int)CommonDefine.SalaryDevision.All
                                         , (int)CommonDefine.SalaryDevision.DaysInput);
 
@@ -1231,7 +1332,8 @@
 
                 // �\���^�C�v�̎擾
                 int DispType = 0;
-                if (CommonMotions.cnvInt(cmbDepartment.SelectedValue) == 0) DispType = (int)DispDataTypeCode.AllTotal;
+                int DepCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+                if (DepCode == 0) DispType = (int)DispDataTypeCode.AllTotal;
                 else DispType = (int)DispDataTypeCode.Department;
                 
                 // SQL�쐬
@@ -1384,7 +1486,7 @@
             try
             {
                 // SQL�ɃA�N�Z�X������������
-                List<string> strSecurity = new List<string>();
+                string strSecurity = string.Empty;
                 CreateSecuritySQL(ref strSecurity);
 
                 int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
@@ -1428,7 +1530,7 @@
             try
             {
                 // SQL�ɃA�N�Z�X������������
-                List<string> strSecurity = new List<string>();
+                string strSecurity = string.Empty;
                 CreateSecuritySQL(ref strSecurity);
 
                 int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�� �� ��")).Key;
@@ -1436,52 +1538,70 @@
                 // ----- �r�p�k�쐬
                 // ���ݏڍב䒠�f�[�^����
                 strSQL = "SELECT";
-                
-                strSQL += " Person.PERSONCODE";
-                strSQL += ", Person.PERSONNAME";
-                strSQL += ", Person.DISPLAYORDER";
-                strSQL += ", SUM(Data.ORDERSDECISIONPRICE)";
-                strSQL += ", SUM(Data.COMPANYEXPENSES)";
-                strSQL += ", SUM(Data.DEPARTMENTEXPENSES)";
-                strSQL += ", SUM(Data.SALESEXPENSES)";
-                strSQL += ", SUM(Data.TOTALPAYMENT)";
-                strSQL += ", SUM(Data.GROSSPROFIT)";
-                strSQL += ", SUM(Data.NETPROFIT)";
-                strSQL += ", Person.EMPLOYEECLASSFLG";
 
-                strSQL += " FROM DEPARTMENTMASTER Main, PERSONINCHARGEMASTER Person";
+                strSQL += " C.PERSONCODE";
+                strSQL += " ,C.PERSONNAME";
+                strSQL += " ,C.DISPLAYORDER";
+                strSQL += " ,SUM(A.ORDERSDECISIONPRICE)";
+                strSQL += " ,SUM(A.COMPANYEXPENSES)";
+                strSQL += " ,SUM(A.DEPARTMENTEXPENSES)";
+                strSQL += " ,SUM(A.SALESEXPENSES)";
+                strSQL += " ,SUM(A.TOTALPAYMENT)";
+                strSQL += " ,SUM(A.GROSSPROFIT)";
+                strSQL += " ,SUM(A.NETPROFIT)";
+                strSQL += " ,C.EMPLOYEECLASSFLG";
+                strSQL += " FROM CONSTRUCTIONLEDGER A, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER C";
+                strSQL += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG != {0}", NotOrder);
+                strSQL += string.Format(" AND B.TyingFlg != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                strSQL += " AND B.CONSTRUCTIONPERSONCODE = C.PERSONCODE";
+                strSQL += string.Format(" AND C.DEPARTMENTCODE = {0}", DepCode);
+                strSQL += " GROUP BY C.DISPLAYORDER, C.PERSONCODE, C.PERSONNAME, C.EMPLOYEECLASSFLG";
+                strSQL += " ORDER BY 11, 3 ASC";
+
+                //strSQL += " Person.PERSONCODE";
+                //strSQL += ", Person.PERSONNAME";
+                //strSQL += ", Person.DISPLAYORDER";
+                //strSQL += ", SUM(Data.ORDERSDECISIONPRICE)";
+                //strSQL += ", SUM(Data.COMPANYEXPENSES)";
+                //strSQL += ", SUM(Data.DEPARTMENTEXPENSES)";
+                //strSQL += ", SUM(Data.SALESEXPENSES)";
+                //strSQL += ", SUM(Data.TOTALPAYMENT)";
+                //strSQL += ", SUM(Data.GROSSPROFIT)";
+                //strSQL += ", SUM(Data.NETPROFIT)";
+                //strSQL += ", Person.EMPLOYEECLASSFLG";
+
+                //strSQL += " FROM DEPARTMENTMASTER Main, PERSONINCHARGEMASTER Person";
                 
-                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO Base";
-                strSQL += " ON (Base.CONSTRUCTIONPERSONCODE = Person.PERSONCODE)";
-                //strSQL += " OR Base.CONSTRSUBPERSONCODE = Person.PERSONCODE";
-                //strSQL += " OR Base.CONSTRUCTIONINSTRUCTOR = Person.PERSONCODE)";
+                //strSQL += " LEFT JOIN CONSTRUCTIONBASEINFO Base";
+                //strSQL += " ON (Base.CONSTRUCTIONPERSONCODE = Person.PERSONCODE)";
                 
-                strSQL += " LEFT JOIN CONSTRUCTIONLEDGER Data";
-                strSQL += " ON Data.CONSTRUCTIONCODE = Base.CONSTRUCTIONCODE";
-                strSQL += string.Format(" AND Base.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
-                strSQL += string.Format(" AND Base.CONSTRUCTIONSTATUSFLG != {0}", NotOrder);
-                strSQL += string.Format(" AND Base.TyingFlg != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                //strSQL += " LEFT JOIN CONSTRUCTIONLEDGER Data";
+                //strSQL += " ON Data.CONSTRUCTIONCODE = Base.CONSTRUCTIONCODE";
+                //strSQL += string.Format(" AND Base.CONSTRUCTIONPERIOD = {0}", numUDConstPro.Value);
+                //strSQL += string.Format(" AND Base.CONSTRUCTIONSTATUSFLG != {0}", NotOrder);
+                //strSQL += string.Format(" AND Base.TyingFlg != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
 
-                strSQL += " WHERE Main.DELETEFLG = 0";
-                strSQL += string.Format(" AND Main.DEPARTMENTCODE = {0}", DepCode);
-                strSQL += " AND Person.DEPARTMENTCODE = Main.DEPARTMENTCODE";
-                //strSQL += " AND Person.PERSONCODE = Base.CONSTRUCTIONPERSONCODE";
-                strSQL += " AND Person.DELETEFLG = 0";
-                // 16�����胊�t�H�[���͌_��Ј����ǉ�����
-                if (numUDConstPro.Value <= 16 && DepCode != 9)
-                {
-                    strSQL += string.Format(" AND Person.EMPLOYEECLASSFLG = {0}", (int)CommonDefine.EmployeeClassFlg.Regular);
-                }
-                strSQL += " GROUP BY Person.DISPLAYORDER, Person.PERSONCODE, Person.PERSONNAME, Person.EMPLOYEECLASSFLG";
-                // 16�����胊�t�H�[���͌_��Ј����\�[�g�����֒ǉ�����
-                if (numUDConstPro.Value <= 16 && DepCode != 9)
-                {
-                    strSQL += " ORDER BY 3 ASC";
-                }
-                else
-                {
-                    strSQL += " ORDER BY 11, 3 ASC";
-                }
+                //strSQL += " WHERE Main.DELETEFLG = 0";
+                //strSQL += string.Format(" AND Main.DEPARTMENTCODE = {0}", DepCode);
+                //strSQL += " AND Person.DEPARTMENTCODE = Main.DEPARTMENTCODE";
+                ////strSQL += " AND Person.DELETEFLG = 0";
+                //// 16�����胊�t�H�[���͌_��Ј����ǉ�����
+                ////if (numUDConstPro.Value <= 16 && DepCode != 9)
+                ////{
+                ////    strSQL += string.Format(" AND Person.EMPLOYEECLASSFLG = {0}", (int)CommonDefine.EmployeeClassFlg.Regular);
+                ////}
+                //strSQL += " GROUP BY Person.DISPLAYORDER, Person.PERSONCODE, Person.PERSONNAME, Person.EMPLOYEECLASSFLG";
+                //// 16�����胊�t�H�[���͌_��Ј����\�[�g�����֒ǉ�����
+                ////if (numUDConstPro.Value <= 16 && DepCode != 9)
+                ////{
+                ////    strSQL += " ORDER BY 3 ASC";
+                ////}
+                ////else
+                ////{
+                //    strSQL += " ORDER BY 11, 3 ASC";
+                ////}
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.cs	(revision 51)
@@ -385,6 +385,11 @@
         /// </summary>
         private int m_GridLastLine = 0;
 
+        /// <summary>
+        /// �Q�ƃt���O
+        /// </summary>
+        private bool m_EditLock = false;
+
         // *-----* ���ʏ����ݒ� *-----*
         /// <summary>
         /// �T�u�t�H�[���t���O
@@ -416,6 +421,15 @@
             set { m_DataChangeFlg = value; }
         }
 
+        /// <summary>
+        /// �Q�ƃt���O
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
         // *-----* ���ʏ����ݒ� *-----*
         /// <summary>
         /// �T�u�t�H�[���N���t���O
@@ -554,6 +568,8 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.EntryEndMessage("�ώZ�\�Z���f�[�^");
+
             // �I��
             this.Close();
         }
@@ -576,6 +592,8 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.RemoveEndMessage("�ώZ�\�Z���f�[�^");
+
             // �I��
             this.Close();
         }
@@ -620,6 +638,14 @@
                 // �\���E���F�\������
                 InitApprovalDisplay();
 
+                // �Q�Ǝ��͕ύX�ł��Ȃ�
+                if (m_EditLock)
+                {
+                    BudgetInputReadOnly();
+                    btnApproval.Enabled = false;
+                    btnPetition.Enabled = false;
+                }
+
                 // *-----* �����ړ��{�^���ݒ� *-----*
                 CreateProcessContextMenu(m_SubForm);
                 // *-----* �����ړ��{�^���ݒ� *-----*
@@ -633,7 +659,7 @@
                     // ���F�ΏۃR�[�h���擾����
                     int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ�\�Z�����F")).Key;
                     // �Č��ɑ΂��Đ\��������Ă��邩���m�F����
-                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode);
+                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode, CommonDefine.s_Default_OrderNo);
                     // ���O�C���҂����F�҂����m�F����
                     bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
                     // �\�����Ń��O�C���҂����F�҂̏ꍇ�͏��F�{�^����\������
@@ -944,7 +970,7 @@
             // �����z�ȊO�͏������Ȃ�
             if (e.ColumnIndex != (int)DispGridColumn.NegotiationPrice) return;
 
-            // ���͂���������ȊO�̓t���O�𗧂ĂȂ�
+            // ���͂��������ʒu�ȊO�̓t���O�𗧂ĂȂ�
             if (m_BeforeColumnCount == e.ColumnIndex && m_BeforeRowCount == e.RowIndex)
             {
                 // �ύX�t���OON
@@ -970,13 +996,30 @@
             // �C���f�b�N�X�O�͏������Ȃ�
             if (e.RowIndex < 0) return;
             
+            // �Ǎ���p�Z���͏������Ȃ�
+            if (dgv.CurrentCell.ReadOnly) return;
+
+            //IME�̃��[�h��ύX����
+            switch (e.ColumnIndex)
+            {
+                case (int)DispGridColumn.NegotiationPrice:
+                    dgv.ImeMode = ImeMode.Disable;
+                    break;
+                case (int)DispGridColumn.Notes:                              // ���l
+                    dgv.ImeMode = ImeMode.On;
+                    break;
+                default:
+                    dgv.ImeMode = ImeMode.Disable;
+                    break;
+            }
+
             // �����z�ȊO�͏������Ȃ�
             if (e.ColumnIndex != (int)DispGridColumn.NegotiationPrice) return;
-            
+
             // �ҏW�ʒu�擾
             m_BeforeColumnCount = e.ColumnIndex;
             m_BeforeRowCount = e.RowIndex;
-            
+
             // �Z�����e�I��
             dgv.BeginEdit(true);
         }
@@ -1176,6 +1219,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ�\�Z�����F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1221,6 +1267,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ�\�Z�����F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1254,6 +1303,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ�\�Z�����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval, false))
@@ -1301,6 +1352,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ�\�Z�����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Pending, false))
@@ -1348,6 +1401,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ�\�Z�����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.NotApproval, false))
@@ -1376,5 +1431,22 @@
             }
         }
         #endregion
+
+        #region �\����z���͏���
+        /// <summary>
+        /// �\����z���͏���
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void txtPriceValue_KeyPress(object sender, KeyPressEventArgs e)
+        {
+            if (('0' <= e.KeyChar && e.KeyChar <= '9') || e.KeyChar <= ',')
+            {
+                return;
+            }
+            //�����ꂽ�L�[�� 0�`9�łȂ��ꍇ�́A�C�x���g���L�����Z������
+            e.Handled = true;
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.designer.cs	(revision 51)
@@ -31,12 +31,12 @@
         private void InitializeComponent()
         {
             this.components = new System.ComponentModel.Container();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
             this.label1 = new System.Windows.Forms.Label();
             this.btnDataDelete = new System.Windows.Forms.Button();
             this.btnDataEntry = new System.Windows.Forms.Button();
@@ -52,7 +52,7 @@
             this.btnOnApproval = new System.Windows.Forms.Button();
             this.btnNotApproval = new System.Windows.Forms.Button();
             this.btnOnHold = new System.Windows.Forms.Button();
-            this.textBox2 = new System.Windows.Forms.TextBox();
+            this.txtPriceValue = new System.Windows.Forms.TextBox();
             this.panel3 = new System.Windows.Forms.Panel();
             this.radioButton2 = new System.Windows.Forms.RadioButton();
             this.radioButton1 = new System.Windows.Forms.RadioButton();
@@ -165,7 +165,7 @@
             this.panel1.Controls.Add(this.label7);
             this.panel1.Controls.Add(this.pnlApproval);
             this.panel1.Controls.Add(this.pnlApprovalButton);
-            this.panel1.Controls.Add(this.textBox2);
+            this.panel1.Controls.Add(this.txtPriceValue);
             this.panel1.Controls.Add(this.panel3);
             this.panel1.Controls.Add(this.textBox1);
             this.panel1.Controls.Add(this.label8);
@@ -316,13 +316,15 @@
             this.btnOnHold.UseVisualStyleBackColor = false;
             this.btnOnHold.Click += new System.EventHandler(this.btnOnHold_Click);
             // 
-            // textBox2
+            // txtPriceValue
             // 
-            this.textBox2.Location = new System.Drawing.Point(127, 104);
-            this.textBox2.Name = "textBox2";
-            this.textBox2.Size = new System.Drawing.Size(240, 23);
-            this.textBox2.TabIndex = 0;
-            this.textBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            this.txtPriceValue.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtPriceValue.Location = new System.Drawing.Point(127, 104);
+            this.txtPriceValue.Name = "txtPriceValue";
+            this.txtPriceValue.Size = new System.Drawing.Size(240, 23);
+            this.txtPriceValue.TabIndex = 0;
+            this.txtPriceValue.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            this.txtPriceValue.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtPriceValue_KeyPress);
             // 
             // panel3
             // 
@@ -583,14 +585,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvAllDisplay.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvAllDisplay.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            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;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvAllDisplay.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
             this.dgvAllDisplay.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvAllDisplay.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column1,
@@ -624,8 +626,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle8;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "№";
             this.Column1.Name = "Column1";
@@ -681,8 +683,8 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle9;
             this.Column5.Frozen = true;
             this.Column5.HeaderText = "項　　目・協力会社";
             this.Column5.Name = "Column5";
@@ -692,8 +694,8 @@
             // 
             // Column6
             // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle10;
             this.Column6.Frozen = true;
             this.Column6.HeaderText = "内　　　　　容";
             this.Column6.Name = "Column6";
@@ -703,9 +705,9 @@
             // 
             // Column7
             // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle5.NullValue = null;
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle11.NullValue = null;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle11;
             this.Column7.HeaderText = "見積時金額";
             this.Column7.Name = "Column7";
             this.Column7.ReadOnly = true;
@@ -715,8 +717,8 @@
             // 
             // Column8
             // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle12;
             this.Column8.HeaderText = "交渉時金額";
             this.Column8.Name = "Column8";
             this.Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
@@ -769,7 +771,7 @@
             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(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 95;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
@@ -851,7 +853,7 @@
         private System.Windows.Forms.RadioButton radioButton2;
         private System.Windows.Forms.RadioButton radioButton1;
         private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.TextBox textBox2;
+        private System.Windows.Forms.TextBox txtPriceValue;
         private System.Windows.Forms.Label label3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudget.resx	(revision 51)
@@ -123,6 +123,9 @@
   <metadata name="lblCellTotal.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="lblCellTotal.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="Column14.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs	(revision 51)
@@ -35,14 +35,30 @@
                 m_WindowWidth = this.Width;
                 m_WindowHeight = this.Height;
 
+                bool bDspFlag = false;
                 // 最高管理者以外は共通費計算画面を表示しない
-                // システム権限によってデータアクセスに制限がある
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement
-                    || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // 公共工事だけ共通費を計する
-                    if (m_PublicConstruction) btnCommonTemporary.Visible = true;
+                    // システム権限によってデータアクセスに制限がある
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                    {
+                        // 公共工事だけ共通費を計する
+                        if (m_PublicConstruction) bDspFlag = true;
+                    }
                 }
+                else
+                {
+                    int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;   // 経営者アクセス
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                        || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[SRank].Key)
+                    {
+                        // 公共工事だけ共通費を計する
+                        if (m_PublicConstruction) bDspFlag = true;
+                    }
+                }
+                btnCommonTemporary.Visible = bDspFlag;
             }
             catch (Exception ex)
             {
@@ -105,7 +121,7 @@
             m_dispLabelControl[(int)DispControl.ConstructionName] = lblLabel02;
             m_dispLabelControl[(int)DispControl.ConstructionType] = lblLabel03;
             m_dispLabelControl[(int)DispControl.SubmittedDate] = lblLabel04;
-            m_dispLabelControl[(int)DispControl.PredeterminedPrice] = textBox2;
+            m_dispLabelControl[(int)DispControl.PredeterminedPrice] = txtPriceValue;
             m_dispLabelControl[(int)DispControl.ConstructionTime] = textBox1;
             m_dispLabelControl[(int)DispControl.IntegratedPerson] = lblLabel05;
             m_dispLabelControl[(int)DispControl.OrdersName] = lblLabel06;
@@ -210,10 +226,10 @@
                 int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算予算書承認")).Key;
                 // 担当部署取得
-                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode);
+                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認データ取得
-                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode);
+                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認経路マスタ取得
                 int MasterCount = ClsApprovalPermission.GetApprovalMasterCount(iApprovalCode, DepartmentCode);
@@ -253,7 +269,7 @@
                 // ----- 工事コード・承認機能番号取得
                 int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算予算書承認")).Key;
-                if (!ClsApprovalPermission.CheckPetition(iConstructionCode, iApprovalCode)) return;
+                if (!ClsApprovalPermission.CheckPetition(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo)) return;
 
                 // ----- 申請済の場合
                 // 申請ボタンの表示
@@ -266,7 +282,7 @@
                 btnApproval.Visible = true;
 
                 // ----- 承認済の場合
-                if (ClsApprovalPermission.CheckApproval(iConstructionCode, iApprovalCode))
+                if (ClsApprovalPermission.CheckApproval(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo))
                 {
                     btnApproval.Text = CommonDefine.ApprovalButtonString[1];
                     btnApproval.ForeColor = Color.Black;
@@ -302,7 +318,7 @@
                 // データ編集に関するボタンを非表示にする
                 btnDataEntry.Visible = false;                       // 登録ボタン
                 btnDataDelete.Visible = false;                      // 削除ボタン
-                //btnCommonTemporary.Visible = false;                 // 共通費算出
+                //btnCommonTemporary.Visible = false;               // 共通費算出
                 btnSubContractor.Visible = false;                   // 協力会社変更
             }
             catch (Exception ex)
@@ -393,7 +409,7 @@
                 // 初期値は民間工事
                 m_PublicConstruction = false;
 
-                // 積算見積明細に入力用の大項目があれば公共工事をする
+                // 積算見積明細に入力用の大項目があれば公共工事とする
                 List<EstimateDataDetail> DetailList = new List<EstimateDataDetail>();
                 string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
                 strSQL += " And (";
@@ -1632,7 +1648,6 @@
         {
             try
             {
-                // 起動番号の取得
                 int ExecNo = -1;
                 bool bDataExist = false;
                 for (int i = 0; i < ClsCommonCosts.s_ConstructionType.GetLength(0); i++)
@@ -1671,8 +1686,28 @@
                 // 該当データが無い場合は処理しない
                 if (ExecNo < 0) return;
 
-                int SecMana = CommonMotions.LoginUserData.SecurityManagement;
-                if (SecMana == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key || SecMana == CommonDefine.AdminSecurityManagement)
+                bool SelProc = false;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    int SecMana = CommonMotions.LoginUserData.SecurityManagement;
+                    if (SecMana == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key
+                        || SecMana == CommonDefine.AdminSecurityManagement) 
+                    {
+                        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)
                 {   // 最高管理者のみ画面表示
                     // 共通費算出画面を表示する
                     DisplayCostCalculation(ExecNo);
@@ -1780,7 +1815,7 @@
                 dgvAllDisplay.Rows[iLineCnt].Cells[(int)DispGridColumn.EstimatePrice].ReadOnly = false;
                 
                 // 小計
-                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.FieldManage] + s_TotaFixlName;
+                string strDspName = GroupTitle[(int)GroupName_EstimateBudget.FieldManagePileUp] + s_TotaFixlName;
                 CreateTotalLine(strDspName, 0, 0, (int)TitleDivision.Group, (int)GroupName_EstimateBudget.FieldManagePileUp);
 
             }
@@ -2987,8 +3022,6 @@
                         CalcGroupTotal(CommonMotions.cnvInt(dgv.Rows[iLineCnt].Cells[(int)DispGridColumn.GroupCount].Value));
                         continue;
                     }
-                    // データ定義
-                    EstimateBudgetDetail work = new EstimateBudgetDetail();
 
                     // 空白行は処理しない
                     if (BlankLine(wrkRow.Index)) continue;
@@ -3003,14 +3036,20 @@
                     if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1) continue;
 
                     // グリッドデータのグループで金額を取得する
+                    string Notes = string.Empty;
                     int GetData = GetSaveDataToNegotiationPrice(CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value),
                                                                 CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.ComponentCode].Value),
                                                                 CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.SubContractorCode].Value),
                                                                 CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.FirstString].Value),
-                                                                CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.SecondString].Value));
+                                                                CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.SecondString].Value),
+                                                                ref Notes);
 
                     // 交渉金額復元
-                    if (GetData != -1) wrkRow.Cells[(int)DispGridColumn.NegotiationPrice].Value = GetData.ToString("#,0");
+                    if (GetData != -1)
+                    {
+                        wrkRow.Cells[(int)DispGridColumn.NegotiationPrice].Value = GetData.ToString("#,0");
+                        wrkRow.Cells[(int)DispGridColumn.Notes].Value = Notes;
+                    }
                 }
             }
             catch (System.Exception ex)
@@ -3028,7 +3067,7 @@
         /// <param name="para3">項目・協力会社</param>
         /// <param name="para4">内容</param>
         /// <returns></returns>
-        private int GetSaveDataToNegotiationPrice(int GroupNo, int para1, int para2, string para3, string para4)
+        private int GetSaveDataToNegotiationPrice(int GroupNo, int para1, int para2, string para3, string para4, ref string Notes)
         {
             try
             {
@@ -3048,6 +3087,7 @@
                             if (wrkRec.CompanyCode == para2)
                             {
                                 GetData = (int)wrkRec.NegotiationPrice;
+                                Notes = wrkRec.Notes;
                                 bBreaksw = true;
                             }
                             break;
@@ -3074,6 +3114,7 @@
                             if (wrkRec.ComponentCode == para1 && wrkRec.FirstString.Equals(para3.Trim()) && wrkRec.SecondString.Equals(para4.Trim()))
                             {
                                 GetData = (int)wrkRec.NegotiationPrice;
+                                Notes = wrkRec.Notes;
                                 bBreaksw = true;
                             }
                             break;
@@ -3145,7 +3186,7 @@
             {
                 // 承認済の場合は終了
                 int iCode1 = ClsExcute.AppovalList.First(x => x.Value.Equals("積算見積書承認")).Key;
-                if (ClsApprovalPermission.CheckApprovalData(m_ConstructionCode, iCode1)) return true;
+                if (ClsApprovalPermission.CheckApprovalData(m_ConstructionCode, iCode1, CommonDefine.s_Default_OrderNo)) return true;
 
                 foreach (int[] wrkData in m_ChangeOutSourceList)
                 {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmEstimateBudget
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] m_SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -114,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -202,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -235,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -279,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -296,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -312,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -323,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -340,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -356,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -367,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -384,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -400,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -411,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -428,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -444,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -455,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -472,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -488,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -499,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -516,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -531,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -542,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -559,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -575,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -586,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -603,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -619,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -652,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -696,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -712,7 +858,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -947,11 +1093,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1120,6 +1267,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.cs	(revision 51)
@@ -307,7 +307,15 @@
         /// </summary>
         private FrmEstimateInput m_frmParent = null;
 
-        private ToolTip toolTip1;
+        /// <summary>
+        /// ���F�ς݃t���O
+        /// </summary>
+        private bool m_ApprovalFlag = false;
+
+        /// <summary>
+        /// �{�^���p�ėp�c�[���`�b�v
+        /// </summary>
+         private ToolTip toolTip1;
         // *-----* ���ʏ����ݒ� *-----*
         /// <summary>
         /// �T�u�t�H�[���N���t���O
@@ -318,6 +326,11 @@
         /// </summary>
         private bool m_ParentEnd = false;
         // *-----* ���ʏ����ݒ� *-----*
+
+        /// <summary>
+        /// �֘A���鑼���ϕ\���{�^���\��
+        /// </summary>
+        private bool m_Panel3Visible = true;
         #endregion
 
         #region �v���p�e�B
@@ -372,6 +385,15 @@
             set { m_ParentEnd = value; }
         }
         // *-----* ���ʏ����ݒ� *-----*
+
+        /// <summary>
+        /// �֘A���鑼���ϕ\���{�^���\��
+        /// </summary>
+        public bool Panel3Visible
+        {
+            get { return m_Panel3Visible; }
+            set { m_Panel3Visible = value; }
+        }
         #endregion
 
         #region �R���X�g���N�^
@@ -422,7 +444,8 @@
                 // �O�������ꗗ���\������Ă���΃N���[�Y����
                 if (m_frmAmountAllocation != null) m_frmAmountAllocation.Close();
                 // �e���Ϗ����\������Ă���΃N���[�Y����
-                if (m_frmParent != null) m_frmParent.Close();
+                //if (m_frmParent != null) m_frmParent.Close();
+                if (m_frmParent != null) m_frmParent.Dispose();
 
                 // �O�v���Z�X�ɖ߂�
                 if (m_CloseingProcessOn) ClsExcute.BackProcess();
@@ -468,6 +491,8 @@
                 else
                     m_CloseingProcessOn = false;
 
+                CommonMotions.EntryEndMessage("�ώZ���Ϗ��f�[�^");
+
                 // �I��
                 this.Close();
             }
@@ -497,6 +522,8 @@
                 else
                     m_CloseingProcessOn = false;
 
+                CommonMotions.RemoveEndMessage("�ώZ���Ϗ��f�[�^");
+
                 // �I��
                 this.Close();
             }
@@ -517,6 +544,12 @@
         {
             try
             {
+                // ���F�ς݂͏������Ȃ�
+                if (m_ApprovalFlag) return;
+
+                // �^�u����{�^����\���͏������Ȃ�
+                if (!TabCollections.DrawButton) return;
+
                 // ���v�^�u�͏������Ȃ�
                 if (TabCollections.SelectedIndex == 0) return;
 
@@ -579,6 +612,9 @@
                 // �V�����s���쐬����
                 CreateNewLine(dgvwork, ref RowCnt);
                 SetRowClearData(dgvwork, RowCnt);
+                dgvwork.Rows[RowCnt].Cells[(int)GridComponentColumn.LineTotal].ReadOnly = false;
+                if (m_EntryPage[TabCnt].Cotegory == CommonDefine.TabCotegory.Component)
+                    dgvwork.Rows[RowCnt].Cells[(int)GridComponentColumn.InputFlg].Value = (int)CommonDefine.DirectInput.Input;
             }
 
             // ���i���o�����O
@@ -995,6 +1031,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ���Ϗ����F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1041,6 +1080,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ���Ϗ����F")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // ��t�ԍ�
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonDefine.s_Default_OrderNo);
+
                 // �e�t�H�[���I��
                 m_ParentEnd = true;
 
@@ -1075,7 +1117,14 @@
 
             // �\���E���F�\������
             InitApprovalDisplay();
-            
+
+            if (m_EditLock)
+            {
+                // �Q�Ƃ̏ꍇ�͓��͂ł��Ȃ�
+                EstimaiteInputReadOnly();
+                btnApproval.Enabled = false;
+                btnPetition.Enabled = false;
+            }
             // *-----* �����ړ��{�^���ݒ� *-----*
             CreateProcessContextMenu(m_SubForm);
             // *-----* �����ړ��{�^���ݒ� *-----*
@@ -1089,7 +1138,7 @@
                 // ���F�ΏۃR�[�h���擾����
                 int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ���Ϗ����F")).Key;
                 // �Č��ɑ΂��Đ\��������Ă��邩���m�F����
-                bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode);
+                bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode, CommonDefine.s_Default_OrderNo);
                 // ���O�C���҂����F�҂����m�F����
                 bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
                 // �\�����Ń��O�C���҂����F�҂̏ꍇ�͏��F�{�^����\������
@@ -1339,19 +1388,16 @@
                 // �t�H�[�J�X���O���b�h��
                 ActiveControl = m_EntryPage[TabCollections.SelectedIndex].EntryDGV;
 
-                    // ���v�^�u�͏������Ȃ�
+                // ���v�^�u�͏������Ȃ�
                 int TabCnt = TabCollections.SelectedIndex;
                 if (TabCnt < 0) return;
 
-                // �Q�Ǝ��̓f�[�^�ύX�����Ȃ�
-                if (!m_EditLock)
-                {
-                    // �o�^�E�폜�E�I���{�^���͑區�ڃ^�u�̂ݗL��
-                    ProcessButtonVisibled(m_EntryPage[TabCnt].Cotegory);
+                // �o�^�E�폜�E�I���{�^���͑區�ڃ^�u�̂ݗL��
+                ProcessButtonVisibled(m_EntryPage[TabCnt].Cotegory);
 
-                    // �ǉ��E�폜�{�^���̕\����ς���
-                    AddDelButtonVisibled(m_EntryPage[TabCnt].Cotegory);
-                }
+                // �ǉ��E�폜�{�^���̕\����ς���
+                AddDelButtonVisibled(m_EntryPage[TabCnt].Cotegory);
+
                 // �v�֖߂�{�^���̕\����ς���
                 TotalButtonVisibled(m_EntryPage[TabCnt].Cotegory);
 
@@ -1364,9 +1410,6 @@
                 {
                     iHeight += wrkrow.Height;
                 }
-
-                // �H�퐔�X�V
-                SetDataCount();
             }
             catch (Exception ex)
             {
@@ -1690,8 +1733,19 @@
         /// <param name="e"></param>
         private void FrmEstimateInput_Shown(object sender, EventArgs e)
         {
+            panel3.Visible = false;
+            
+            if (!m_Panel3Visible) return;
+            
+            if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+            {
+                // �\���{�^���̕\��ON
+                panel3.Visible = true;
+            }
+            
             // ���H�����Ϗ��\��
-            FormLoadParentInput();
+            //FormLoadParentInput();
         }
         #endregion
 
@@ -1742,20 +1796,28 @@
                 DataGridView dgv = (DataGridView)sender;
                 if (dgv.CurrentCell == null) return;
 
-                int headerWidth = dgv.Rows[0].HeaderCell.Size.Width;
-                int cellWidth = dgv.ClientSize.Width - headerWidth;
-                int colIndex = dgv.CurrentCell.ColumnIndex;
+                //int headerWidth = dgv.Rows[0].HeaderCell.Size.Width;
+                //int cellWidth = dgv.ClientSize.Width - headerWidth;
+                //int colIndex = dgv.CurrentCell.ColumnIndex;
 
-                // �J�����g�Z�����B���ꍇ�́A�E�[�ɕ\�������悤�ɂ���
-                for (int i = colIndex; i >= 0; i--)
+                // �ƎБI���͋Ǝ҃Z���ֈړ�
+                if (dgv.CurrentCell.ColumnIndex == (int)GridItemColumn.SubConstractorName)
                 {
-                    cellWidth -= dgv.Columns[i].Width;
-                    if (cellWidth <= 0)
-                    {
-                        dgv.FirstDisplayedScrollingColumnIndex = (int)GridItemColumn.SubConstractorName;
-                        break;
-                    }
+                    dgv.FirstDisplayedScrollingColumnIndex = (int)GridItemColumn.LineTotal;
+                    dgv.CurrentCell = dgv[(int)GridItemColumn.SubConstractorName, dgv.CurrentRow.Index];
                 }
+
+                //// �J�����g�Z�����B���ꍇ�́A�E�[�ɕ\�������悤�ɂ���
+                //for (int i = colIndex; i >= 0; i--)
+                //{
+                //    cellWidth -= dgv.Columns[i].Width;
+                //    if (cellWidth <= 0)
+                //    {
+                //        //dgv.FirstDisplayedScrollingColumnIndex = (int)GridItemColumn.SubConstractorName;
+                //        //dgv.ClearSelection();
+                //        break;
+                //    }
+                //}
             }
             catch (System.Exception ex)
             {
@@ -1865,7 +1927,9 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ���Ϗ����F")).Key;
-                
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
+
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval, false))
                 {
@@ -1912,6 +1976,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ���Ϗ����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Pending, false))
@@ -1959,6 +2025,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // ���F�@�\�ԍ��Z�b�g
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�ώZ���Ϗ����F")).Key;
+                // ��t�ԍ�
+                frm.OrderNo = CommonDefine.s_Default_OrderNo;
 
                 // �\���E���F���R�[�h�X�V
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.NotApproval, false))
@@ -2032,5 +2100,20 @@
             }
         }
         #endregion
+
+        #region �X�N���[���ʒu���ς��΃N���A����
+        /// <summary>
+        /// �X�N���[���ʒu���ς��΃N���A����
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvEntryData_Scroll(object sender, ScrollEventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+
+            // ���X�N���[���N���A
+            if (e.ScrollOrientation == ScrollOrientation.HorizontalScroll) dgv.ClearSelection();
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInput.designer.cs	(revision 51)
@@ -245,7 +245,7 @@
             this.btnParent.Name = "btnParent";
             this.btnParent.Size = new System.Drawing.Size(230, 26);
             this.btnParent.TabIndex = 34;
-            this.btnParent.Text = "元工事表示";
+            this.btnParent.Text = "関連する他見積表示";
             this.btnParent.UseVisualStyleBackColor = false;
             this.btnParent.Click += new System.EventHandler(this.btnParent_Click);
             // 
@@ -691,7 +691,7 @@
             this.btnOtherProc.BackColor = System.Drawing.Color.SpringGreen;
             this.btnOtherProc.Location = new System.Drawing.Point(8, 656);
             this.btnOtherProc.Name = "btnOtherProc";
-            this.btnOtherProc.Size = new System.Drawing.Size(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 95;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
@@ -717,6 +717,7 @@
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
             this.TabCollections.Controls.Add(this.tabPage1);
+            this.TabCollections.DrawButton = true;
             this.TabCollections.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed;
             this.TabCollections.Location = new System.Drawing.Point(8, 185);
             this.TabCollections.Name = "TabCollections";
@@ -816,6 +817,7 @@
             this.dgvEntryData.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvEntryData_CellEnter);
             this.dgvEntryData.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvEntryData_CellValidated);
             this.dgvEntryData.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvEntryData_CellValueChanged);
+            this.dgvEntryData.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvEntryData_Scroll);
             this.dgvEntryData.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgvEntryData_KeyDown);
             this.dgvEntryData.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvEntryData_MouseUp);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInputAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInputAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/FrmEstimateInputAuxiliary.cs	(revision 51)
@@ -1,4 +1,5 @@
 ﻿using System;
+using System.Collections;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
@@ -268,9 +269,10 @@
                 newpage.EntryDGV.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvEntryData_CellDoubleClick);
                 newpage.EntryDGV.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvEntryData_CellEnter);
                 newpage.EntryDGV.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvEntryData_CellValidated);
-                newpage.EntryDGV.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgvEntryData_KeyDown);
                 newpage.EntryDGV.CellValueChanged += new DataGridViewCellEventHandler(this.dgvEntryData_CellValueChanged);
                 newpage.EntryDGV.CurrentCellChanged += new System.EventHandler(this.dgvEntryData_CurrentCellChanged);
+                newpage.EntryDGV.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvEntryData_Scroll);
+                newpage.EntryDGV.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgvEntryData_KeyDown);
                 newpage.EntryDGV.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvEntryData_MouseUp);
                 // 
                 // Column03
@@ -1083,9 +1085,9 @@
         }
         #endregion
 
-        #region 協力会社名称を取得する
+        #region 協力会社名称を取得する（ＤＢアクセス有）
         /// <summary>
-        /// 協力会社名称を取得する
+        /// 協力会社名称を取得する（ＤＢアクセス有）
         /// </summary>
         /// <param name="SubConstructorCode"></param>
         /// <returns></returns>
@@ -1114,7 +1116,7 @@
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return "";
+                return string.Empty;
             }
             finally
             {
@@ -1123,6 +1125,47 @@
         }
         #endregion
 
+        #region 協力会社名称を取得する（ＤＢアクセス無）
+        /// <summary>
+        /// 協力会社名称を取得する（ＤＢアクセス無）
+        /// </summary>
+        /// <param name="SubConstructorCode"></param>
+        /// <returns></returns>
+        private string GetSubConstructorName(int SubConstructorCode, string SubConstrName)
+        {
+            IOMSubContractor scDB = new IOMSubContractor();
+            try
+            {
+                string strName = string.Empty;
+                if (SubConstructorCode == CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key)
+                {
+                    // 自社コードは自社名
+                    strName = CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Value;
+                }
+
+                else if (SubConstructorCode == CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.UnDecided].Key)
+                {
+                    // 業者未定は業者未定
+                    strName = CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.UnDecided].Value;
+                }
+                else
+                {
+                    strName = SubConstrName;
+                }
+                return strName;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+            finally
+            {
+                scDB.close(); scDB = null;
+            }
+        }
+        #endregion
+
         #region 工種・作業タブのセット
         /// <summary>
         /// 工種・作業タブのセット
@@ -1129,7 +1172,7 @@
         /// </summary>
         /// <param name="linecnt"></param>
         /// <param name="Datalist"></param>
-        private void SetItemWorkRowData(int tabcnt, int linecnt, EstimateDataDetail Datalist)
+        private void SetItemWorkRowData(int tabcnt, int linecnt, EstimateDataDetail Datalist, string SubConstr, bool bDBAccess = true)
         {
             DataGridView dgv = m_EntryPage[tabcnt].EntryDGV;
             DataGridViewRow dgvRow = dgv.Rows[linecnt];
@@ -1155,7 +1198,11 @@
 
             // 協力業者セット
             dgvRow.Cells[(int)GridItemColumn.SubConstractorCode].Value = Datalist.CompanyCode;
-            dgvRow.Cells[(int)GridItemColumn.SubConstractorName].Value = GetSubConstructorName(Datalist.CompanyCode);
+            // DBへのアクセスを行わない場合がある
+            if (bDBAccess)
+                dgvRow.Cells[(int)GridItemColumn.SubConstractorName].Value = GetSubConstructorName(Datalist.CompanyCode);
+            else
+                dgvRow.Cells[(int)GridItemColumn.SubConstractorName].Value = GetSubConstructorName(Datalist.CompanyCode, SubConstr);
 
             if (m_EntryPage[tabcnt].Cotegory == CommonDefine.TabCotegory.Component)
             {
@@ -1706,10 +1753,10 @@
                 int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算見積書承認")).Key;
                 // 担当部署取得
-                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode);
+                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認データ取得
-                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode);
+                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
 
                 // 承認経路マスタ取得
                 int MasterCount = ClsApprovalPermission.GetApprovalMasterCount(iApprovalCode, DepartmentCode);
@@ -1760,7 +1807,7 @@
                 btnPetition.Size = new Size(250, btnPetition.Size.Height);
 
                 // ----- 工事コード・承認機能番号取得（申請レコードがなお場合は未申請）
-                if (!ClsApprovalPermission.CheckPetition(m_ConstructionCode, iApprovalCode)) return;
+                if (!ClsApprovalPermission.CheckPetition(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo)) return;
 
                 // ----- 申請済の場合
                 // 申請ボタンの表示
@@ -1773,12 +1820,14 @@
                 btnApproval.Visible = true;
 
                 // ----- 承認済の場合
-                if (ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode))
+                if (ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo))
                 {
                     btnApproval.Text = CommonDefine.ApprovalButtonString[1];
                     btnApproval.ForeColor = Color.Black;
                     // 承認済みの場合は入力できない
                     EstimaiteInputReadOnly();
+                    // 承認済みフラグON
+                    m_ApprovalFlag = true;
                 }
 
                 // 承認件数の表示
@@ -1817,6 +1866,8 @@
                 btnDispUp.Visible = false;                          // 行アップボタン
                 btnDispDown.Visible = false;                        // 行ダウンボタン
                 btnMasterIn.Visible = false;                        // 小項目マスタ追加ボタン
+                // タブ閉じるボタン非表示
+                TabCollections.DrawButton = false;
             }
             catch (Exception ex)
             {
@@ -1879,9 +1930,8 @@
         /// <param name="Code"></param>
         /// <param name="Amount"></param>
         /// <param name="AmountList"></param>
-        private void AddAmountList(int Code, int Amount)
+        private void AddAmountList(int Code, int Amount, string CompanyName)
         {
-            IOMSubContractor scDB = new IOMSubContractor();
             try
             {
                 bool bExistFlg = false;
@@ -1903,12 +1953,8 @@
                 dataRec.DispNo = NoCnt;
                 dataRec.Code = Code;
                 dataRec.Amount = Amount;
+                dataRec.Name = CompanyName;
 
-                // 未割当・自社はここまで来ない
-                string strSQL = scDB.CreatePrimarykeyString(Code);
-                SubContractorMaster scRec = new SubContractorMaster();
-                if (scDB.SelectAction(strSQL, ref scRec)) dataRec.Name = scRec.CompanyName;
-
                 m_AmountList.Add(dataRec);
             }
             catch (Exception ex)
@@ -1915,10 +1961,6 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                scDB.close(); scDB = null;
-            }
         }
 
         #endregion
@@ -1948,6 +1990,7 @@
                         if (CommonMotions.chkCellBlank(wrkRow.Cells[(int)GridItemColumn.LineTotal].Value)) continue;
 
                         int Code = 0;
+                        string CompanyName = string.Empty;
                         // 金額は共通なので先に取得する
                         int Amount = CommonMotions.cnvInt(wrkRow.Cells[(int)GridItemColumn.LineTotal].Value);
 
@@ -1955,7 +1998,10 @@
                         if (wrkPage.Cotegory == CommonDefine.TabCotegory.Item)
                         {   // 割当会社を取得する
                             if (!CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)GridItemColumn.SubConstractorCode].Value))
+                            {
                                 Code = CommonMotions.cnvInt(wrkRow.Cells[(int)GridItemColumn.SubConstractorCode].Value);
+                                CompanyName = CommonMotions.cnvString(wrkRow.Cells[(int)GridItemColumn.SubConstractorName].Value);
+                            }
                         }
                         // 中項目の計算
                         else if (wrkPage.Cotegory == CommonDefine.TabCotegory.Component)
@@ -1966,7 +2012,10 @@
 
                             // 割当会社を取得する
                             if (!CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)GridComponentColumn.SubConstractorCode].Value))
+                            {
                                 Code = CommonMotions.cnvInt(wrkRow.Cells[(int)GridItemColumn.SubConstractorCode].Value);
+                                CompanyName = CommonMotions.cnvString(wrkRow.Cells[(int)GridItemColumn.SubConstractorName].Value);
+                            }
 
                             // 割当が無く経費だった場合
                             if (!CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)GridComponentColumn.ExpensesFlg].Value))
@@ -2000,7 +2049,7 @@
                             }
                         }
                         // 金額加算
-                        AddAmountList(Code, Amount);
+                        AddAmountList(Code, Amount, CompanyName);
                     }
                 }
 
@@ -2779,7 +2828,7 @@
                     //etdwork.UnitPrice = UnitPriceArray[ix];
                     etdwork.LineTotal = 0;
 
-                    SetItemWorkRowData(TabCnt, CurrentRow, etdwork);
+                    SetItemWorkRowData(TabCnt, CurrentRow, etdwork, string.Empty);
                     CurrentRow++;
                 }
 
@@ -3508,7 +3557,7 @@
                 if (PageCotegory == CommonDefine.TabCotegory.Total)
                     SetRowData(CurrentTabCnt, CurrentRow, Data);
                 else
-                    SetItemWorkRowData(CurrentTabCnt, CurrentRow, Data);
+                    SetItemWorkRowData(CurrentTabCnt, CurrentRow, Data, string.Empty);
 
                 // 行カウントアップ
                 CurrentRow++;
@@ -4433,19 +4482,21 @@
         private bool LargeDataDisplay()
         {
             IOEstimateData etDB = new IOEstimateData();
-            IOMComponent MctDB = new IOMComponent();
+            IOEstimateDataDetail detailDB = new IOEstimateDataDetail();
+            //IOMComponent MctDB = new IOMComponent();
 
             List<EstimateData> LargeList = new List<EstimateData>();
             try
             {
                 // ++++++++++++++++++++++++++++++++++++++++ 積算見積データ
-
                 // 積算見積データ取得
-                string strSQL = etDB.CreatePrimarykeyString(m_ConstructionCode) + " Order By LineCount";
-                if (!etDB.SelectAction(strSQL, ref LargeList)) return false;
+                ArrayList LargeDataList = new ArrayList();
+                string strSQL = "SELECT A.*, B.* FROM ESTIMATEDATA A LEFT JOIN COMPONENTMASTER B ON B.COMPONENTCODE = A.COMPONENTCODE";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0} ORDER BY A.LineCount",m_ConstructionCode);
+                if (!etDB.ExecuteReader(strSQL, ref LargeDataList)) return false;
 
                 // データ無は表示せずに入力へ
-                if (LargeList.Count == 0) return false;
+                if (LargeDataList.Count == 0) return false;
 
                 // ページカテゴリセット
                 m_EntryPage[0].Cotegory = CommonDefine.TabCotegory.Total;
@@ -4452,24 +4503,30 @@
 
                 int CurrentRow = 0;
 
+                EstimateDataDetail DetailRec = new EstimateDataDetail();
+                List<ComponentMaster> CompList = new List<ComponentMaster>();
+
                 // データグリッドオブジェクト取得
+                SetArraryList2StructDataType1(LargeDataList, ref LargeList, ref CompList);
                 // 行を作成する
                 for (int iy = 0; iy < LargeList.Count; iy++)
                 {
+
                     // 固定行は処理しない
                     double dwork = 0;
                     if (!CommonMotions.chkNumeric(LargeList[iy].FixedItemCode, ref dwork)) continue;
 
-                    //// 行データセット
-                    EstimateDataDetail DataList = new EstimateDataDetail();
+                    // 構造体クリア
+                    detailDB.ClearStruct(ref DetailRec);
 
-                    DataList.ConstructionCode = LargeList[iy].ConstructionCode;
-                    DataList.ComponentCode = LargeList[iy].ComponentCode;
-                    DataList.ItemName = LargeList[iy].ItemName;
-                    DataList.UnitCount = 1.0;
-                    DataList.UnitName = "式";
-                    DataList.LineTotal = LargeList[iy].PriceValue;
-                    DataList.Note = LargeList[iy].Note;
+                    // 行データセット(構成データより項目データへセットする)
+                    DetailRec.ConstructionCode = LargeList[iy].ConstructionCode;
+                    DetailRec.ComponentCode = LargeList[iy].ComponentCode;
+                    DetailRec.ItemName = LargeList[iy].ItemName;
+                    DetailRec.UnitCount = 1.0;
+                    DetailRec.UnitName = "式";
+                    DetailRec.LineTotal = LargeList[iy].PriceValue;
+                    DetailRec.Note = LargeList[iy].Note;
 
 
                     // ++++++++++++++++++++ 行の追加
@@ -4479,26 +4536,21 @@
                     SetRowClearData(dgvEntryData, CurrentRow);
 
                     // 行データセット
-                    SetRowData(0, iy, DataList);
+                    SetRowData(0, iy, DetailRec);
 
                     int iExpensesFlg = LargeList[iy].MyExpensesFlg;
                     int iInputFlg = LargeList[iy].InputFlg;
 
                     // マスタにデータがあればそちらを優先する
-                    string strComponent = MctDB.CreatePrimarykeyString(LargeList[iy].ComponentCode);
-                    ComponentMaster MctRec = new ComponentMaster();
-                    if (MctDB.SelectAction(strComponent, ref MctRec))
-                    {
-                        // 経費フラグをセット
-                        iExpensesFlg = MctRec.MyExpensesFlg;
+                    // 経費フラグをセット
+                    iExpensesFlg = CompList[iy].MyExpensesFlg;
 
-                        // 下位に項目が無ければ直接入力
-                        if (MctRec.SubitemsFlg == 0) iInputFlg = 1;
-                        else iInputFlg = 0;
+                    // 下位に項目が無ければ直接入力
+                    if (CompList[iy].SubitemsFlg == 0) iInputFlg = 1;
+                    else iInputFlg = 0;
 
-                        // 直接入力フラグがOnの場合は直接入力可能をOnにする
-                        if (MctRec.DirectInputFlg == 1) iInputFlg = 1;
-                    }
+                    // 直接入力フラグがOnの場合は直接入力可能をOnにする
+                    if (CompList[iy].DirectInputFlg == 1) iInputFlg = 1;
 
                     // ----- 入力許可フラグと自社経費フラグを見えないセルに持つ
                     dgvEntryData.Rows[CurrentRow].Cells[(int)GridTotalColumn.ExpensesFlg].Value = iExpensesFlg;
@@ -4528,11 +4580,66 @@
                 InitDispTotalPage(LargeList);
 
                 etDB.close(); etDB = null;
-                MctDB.close(); MctDB = null;
+                detailDB.close(); detailDB = null;
+                //MctDB.close(); MctDB = null;
             }
         }
         #endregion
 
+        #region ArraryListよりデータ構造体配列へセットする（大項目）
+        /// <summary>
+        /// ArraryListよりデータ構造体配列へセットする（大項目）
+        /// </summary>
+        /// <param name="DataList"></param>
+        /// <param name="LargeList"></param>
+        /// <param name="CompList"></param>
+        private void SetArraryList2StructDataType1(ArrayList DataList,
+                                                    ref List<EstimateData> LargeList,
+                                                    ref List<ComponentMaster> CompList)
+        {
+            try
+            {
+                int EstimateCnt = Enum.GetNames(typeof(IOEstimateData.TableColumn)).Length;
+
+                foreach (object[] objRec in DataList)
+                {
+                    // 積算見積書データセット
+                    EstimateData LargeRec = new EstimateData();
+                    LargeRec.ConstructionCode = CommonMotions.cnvInt(objRec[(int)IOEstimateData.TableColumn.ConstructionCode]);     // 工事番号
+                    LargeRec.LineCount = CommonMotions.cnvInt(objRec[(int)IOEstimateData.TableColumn.LineCount]);                   // 行番号
+                    LargeRec.ComponentCode = CommonMotions.cnvInt(objRec[(int)IOEstimateData.TableColumn.ComponentCode]);           // 構成キー
+                    LargeRec.FixedItemCode = CommonMotions.cnvString(objRec[(int)IOEstimateData.TableColumn.FixedItemCode]);        // 固定項目キー
+                    LargeRec.ItemName = CommonMotions.cnvString(objRec[(int)IOEstimateData.TableColumn.ItemName]);                  // 作業名称
+                    LargeRec.WorkName = CommonMotions.cnvString(objRec[(int)IOEstimateData.TableColumn.WorkName]);                  // 工種名称／規格・寸法名称
+                    LargeRec.PriceValue = CommonMotions.cnvDouble(objRec[(int)IOEstimateData.TableColumn.PriceValue]);              // 金額
+                    LargeRec.Note = CommonMotions.cnvString(objRec[(int)IOEstimateData.TableColumn.Note]);                          // 備考
+                    LargeRec.MyExpensesFlg = CommonMotions.cnvInt(objRec[(int)IOEstimateData.TableColumn.MyExpensesFlg]);           // 自社経費フラグ
+                    LargeRec.InputFlg = CommonMotions.cnvInt(objRec[(int)IOEstimateData.TableColumn.InputFlg]);                     // 入力フラグ
+                    LargeRec.EntryDate = CommonMotions.cnvDate(objRec[(int)IOEstimateData.TableColumn.EntryDate]);                  // 登録日付
+                    LargeRec.UpdateDate = CommonMotions.cnvDate(objRec[(int)IOEstimateData.TableColumn.UpdateDate]);                // 更新日付
+                    LargeList.Add(LargeRec);
+
+                    // 構成データセット
+                    ComponentMaster CompRec = new ComponentMaster();
+                    CompRec.ComponentCode = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMComponent.NameColumn.ComponentCode]);     // 構成キー
+                    CompRec.DisplayOrder = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMComponent.NameColumn.DisplayOrder]);	    // 表示順
+                    CompRec.ComponentName = CommonMotions.cnvString(objRec[EstimateCnt + (int)IOMComponent.NameColumn.ComponentName]);	// 名称
+                    CompRec.SubitemsFlg = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMComponent.NameColumn.SubitemsFlg]);	        // 下位項目フラグ
+                    CompRec.DirectInputFlg = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMComponent.NameColumn.DirectInputFlg]);	// 直接入力フラグ
+                    CompRec.MyExpensesFlg = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMComponent.NameColumn.MyExpensesFlg]);	    // 自社経費フラグ
+                    CompRec.DeleteFlg = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMComponent.NameColumn.DeleteFlg]);	            // 削除フラグ
+                    CompRec.EntryDate = CommonMotions.cnvDate(objRec[EstimateCnt + (int)IOMComponent.NameColumn.EntryDate]);            // 登録日付
+                    CompRec.UpdateDate = CommonMotions.cnvDate(objRec[EstimateCnt + (int)IOMComponent.NameColumn.UpdateDate]);          // 更新日付
+                    CompList.Add(CompRec);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 中・小項目タブ表示
         /// <summary>
         /// 中・小項目タブ表示
@@ -4542,7 +4649,6 @@
         {
             IOEstimateDataBody etbDB = new IOEstimateDataBody();
             IOEstimateDataDetail etdDB = new IOEstimateDataDetail();
-            IOMComponent MctDB = new IOMComponent();
             IOMConstructionItem MciDB = new IOMConstructionItem();
             IOMComponentLink linkDB = new IOMComponentLink();
 
@@ -4552,14 +4658,29 @@
                 List<EstimateDataBody> MiddleList = new List<EstimateDataBody>();
 
                 // 積算見積ページデータ取得
-                string strSQL = etbDB.CreatePrimarykeyString(m_ConstructionCode) + " Order By PageCount";
-                if (!etbDB.SelectAction(strSQL, ref MiddleList)) return false;
+                //string strSQL = etbDB.CreatePrimarykeyString(m_ConstructionCode) + " Order By PageCount";
+                //if (!etbDB.SelectAction(strSQL, ref MiddleList)) return false;
+                string strSQL = "SELECT A.*, B.CNT, B.COMPONENTCODE FROM ESTIMATEDATABODY A,";
+                strSQL += " (SELECT COMPONENTCODE, COUNT(*) CNT FROM COMPONENTLINKMASTER BB";
+                strSQL += " WHERE BB.COMPONENTCODE IN (SELECT BBB.COMPONENTCODE FROM ESTIMATEDATABODY BBB";
+                strSQL += string.Format(" WHERE BBB.CONSTRUCTIONCODE = {0}) GROUP BY BB.COMPONENTCODE) B", m_ConstructionCode);
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}",m_ConstructionCode);
+                strSQL += " AND B.COMPONENTCODE = A.COMPONENTCODE";
+                strSQL += " ORDER BY A.PAGECOUNT";
+                ArrayList MiddleDataList = new ArrayList();
+                if (!etbDB.ExecuteReader(strSQL, ref MiddleDataList)) return false;
 
                 // データ無は次処理
-                if (MiddleList.Count == 0) return true;
+                if (MiddleDataList.Count == 0) return true;
 
                 int MiddleTab = 0;
                 int CnvCode = 0;
+                List<KeyValuePair<int, int>> linkList = new List<KeyValuePair<int, int>>();
+                List<EstimateDataDetail> SmallList = new List<EstimateDataDetail>();
+                List<ConstructionItemMaster> MciList = new List<ConstructionItemMaster>();
+                List<string> SubConstr = new List<string>();
+                // データセット
+                SetArraryList2StructDataType2(MiddleDataList, ref MiddleList, ref linkList);
                 for (int ix = 0; ix < MiddleList.Count; ix++)
                 {
                     // 工種タブカウントアップ
@@ -4568,23 +4689,16 @@
                     //// 行データセット
                     EstimateDataDetail DataListD = new EstimateDataDetail();
 
-                    if (ix != 0
-                        && (CommonDefine.TabCotegory)MiddleList[ix].Category == CommonDefine.TabCotegory.Component)
+                    bool subItems = true;
+                    if (MiddleList[ix].Category == (int)CommonDefine.TabCotegory.Component)
                     {
                         // 構成タブのみ行番号の英字キャラクタカウント
-                        ++CnvCode;
+                        if (ix != 0) ++CnvCode;
+
+                        // 構成タブの場合のみ下位にデータがあるかをチェックする
+                        if (linkList[ix].Key == 0) subItems = false;
                     }
-                    // 構成タブの場合のみ下位にデータがあるかをチェックする
-                    bool subItems = true;
-                    if ((CommonDefine.TabCotegory)MiddleList[ix].Category == CommonDefine.TabCotegory.Component)
-                    {
-                        string strLink = linkDB.CreatePrimarykeyString(MiddleList[ix].ComponentCode);
-                        List<ComponentLinkMaster> linkList = new List<ComponentLinkMaster>();
-                        if (linkDB.SelectAction(strLink, ref linkList) && linkList.Count == 0)
-                        {
-                            subItems = false;
-                        }
-                    }
+
                     // 新規：タブ追加
                     CreateTab((CommonDefine.TabCotegory)MiddleList[ix].Category,
                                     MiddleList[ix].ComponentCode,
@@ -4602,14 +4716,23 @@
 
 
                     // ++++++++++++++++++++++++++++++++++++++++ 積算見積明細データ(作業)
-                    List<EstimateDataDetail> SmallList = new List<EstimateDataDetail>();
+                    SmallList.Clear();
+                    MciList.Clear();
+                    SubConstr.Clear();
+                    
                     // 積算見積データ取得
-                    strSQL = etdDB.CreatePrimarykeyString(MiddleList[ix].ConstructionCode, MiddleList[ix].PageCount) + " Order By PageCount, LineCount";
-                    if (!etdDB.SelectAction(strSQL, ref SmallList)) continue;
+                    strSQL = "SELECT A.*, B.*, C.COMPANYNAME FROM ESTIMATEDATADETAIL A";
+                    strSQL += " LEFT JOIN CONSTRUCTIONITEMMASTER B ON B.ITEMCODE = A.ITEMCODE";
+                    strSQL += " LEFT JOIN SUBCONTRACTORMASTER C ON C.COMPANYCODE = A.COMPANYCODE";
+                    strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0} AND A.PAGECOUNT = {1}", MiddleList[ix].ConstructionCode, MiddleList[ix].PageCount);
+                    strSQL += " Order By A.PAGECOUNT, A.LINECOUNT";
+                    ArrayList SmallDataList = new ArrayList();
+                    if (!etdDB.ExecuteReader(strSQL, ref SmallDataList)) continue;
 
                     // データ無は次処理
-                    if (SmallList.Count == 0) continue;
-
+                    if (SmallDataList.Count == 0) continue;
+                    // データセット
+                    SetArraryList2StructDataType3(SmallDataList, ref SmallList, ref MciList, ref SubConstr);
                     int SmallRow = 0;
                     // グリッド表示停止
                     m_EntryPage[MiddleTab].EntryDGV.SuspendLayout();
@@ -4618,7 +4741,6 @@
                     for (int iy = 0; iy < SmallList.Count; iy++)
                     {
                         // 行追加
-                        //CreateNewLine(m_EntryPage[MiddleTab].EntryDGV, ref SmallRow);
                         DataGridViewAction.CreateNewLine(m_EntryPage[MiddleTab].EntryDGV, ref SmallRow);
 
                         // クリアデータセット
@@ -4631,25 +4753,20 @@
                             if (SmallList[iy].ItemCode == 0) SmallList[iy].InputFlg = 1;
 
                             // マスタにデータがあればそちらを優先する
-                            string strItem = MciDB.CreatePrimarykeyString(SmallList[iy].ItemCode);
-                            ConstructionItemMaster MciRec = new ConstructionItemMaster();
-                            if (MciDB.SelectAction(strItem, ref MciRec))
-                            {
-                                // 経費フラグをセット
-                                SmallList[iy].MyExpensesFlg = MciRec.MyExpensesFlg;
+                            // 経費フラグをセット
+                            SmallList[iy].MyExpensesFlg = MciList[iy].MyExpensesFlg;
 
-                                // 下位に項目が無ければ直接入力
-                                if (MciRec.SubitemsFlg == 0) SmallList[iy].InputFlg = 1;
-                                else SmallList[iy].InputFlg = 0;
-                            }
+                            // 下位に項目が無ければ直接入力
+                            if (MciList[iy].SubitemsFlg == 0) SmallList[iy].InputFlg = 1;
+                            else SmallList[iy].InputFlg = 0;
                         }
                         // 行データセット
-                        SetItemWorkRowData(MiddleTab, SmallRow, SmallList[iy]);
+                        SetItemWorkRowData(MiddleTab, SmallRow, SmallList[iy], SubConstr[iy], false);
                         SmallRow++;
                     }
 
                     // 構成タブで下位にデータが無い場合のみナンバリング
-                    if ((CommonDefine.TabCotegory)MiddleList[ix].Category == CommonDefine.TabCotegory.Component && m_EntryPage[MiddleTab].SubItems)
+                    if (MiddleList[ix].Category == (int)CommonDefine.TabCotegory.Component && m_EntryPage[MiddleTab].SubItems)
                     {
                         // 下位にデータがある場合のみリナンバする
                         LineReNumbering(m_EntryPage[MiddleTab].EntryDGV);
@@ -4674,7 +4791,6 @@
 
                 etdDB.close(); etdDB = null;
 
-                MctDB.close(); MctDB = null;
                 MciDB.close(); MciDB = null;
                 linkDB.close(); linkDB = null;
             }
@@ -4681,6 +4797,110 @@
         }
         #endregion
 
+        #region ArraryListよりデータ構造体配列へセットする（中項目）
+        /// <summary>
+        /// ArraryListよりデータ構造体配列へセットする（中項目）
+        /// </summary>
+        private void SetArraryList2StructDataType2(ArrayList DataList,
+                                                    ref List<EstimateDataBody> MiddleList,
+                                                    ref List<KeyValuePair<int, int>> linkList)
+        {
+            try
+            {
+                int EstimateCnt = Enum.GetNames(typeof(IOEstimateDataBody.TableColumn)).Length;
+
+                foreach (object[] objRec in DataList)
+                {
+                    // 積算見積書ボディデータセット
+                    EstimateDataBody MiddleRec = new EstimateDataBody();
+                    MiddleRec.ConstructionCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.ConstructionCode]);        // 工事コード
+                    MiddleRec.PageCount = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.PageCount]);                      // ページ番号
+                    MiddleRec.Category = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.Category]);	                    // 頁区分
+                    MiddleRec.UnionComponentCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.UnionComponentCode]);    // 所属構成キー
+                    MiddleRec.ComponentCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.ComponentCode]);	            // 構成キー
+                    MiddleRec.ItemCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.ItemCode]);	                    // 工種キー
+                    MiddleRec.SelectComponent = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.SelectComponent]);          // 選択構成キー
+                    MiddleRec.PageTitle = CommonMotions.cnvString(objRec[(int)IOEstimateDataBody.TableColumn.PageTitle]);                   // ページ表示名
+                    MiddleRec.DetailLineCount = CommonMotions.cnvInt(objRec[(int)IOEstimateDataBody.TableColumn.DetailLineCount]);          // 明細行番号
+                    MiddleRec.EntryDate = CommonMotions.cnvDate(objRec[(int)IOEstimateDataBody.TableColumn.UpdateDate]);                    // 登録日付
+                    MiddleRec.UpdateDate = CommonMotions.cnvDate(objRec[(int)IOEstimateDataBody.TableColumn.UpdateDate]);                   // 更新日付
+                    MiddleList.Add(MiddleRec);
+
+                    // 構成データセット
+                    KeyValuePair<int, int> wrkPair = new KeyValuePair<int, int>(CommonMotions.cnvInt(objRec[EstimateCnt]), CommonMotions.cnvInt(objRec[EstimateCnt + 1]));
+                    linkList.Add(wrkPair);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ArraryListよりデータ構造体配列へセットする（小項目）
+        /// <summary>
+        /// ArraryListよりデータ構造体配列へセットする（小項目）
+        /// </summary>
+        private void SetArraryList2StructDataType3(ArrayList DataList,
+                                                    ref List<EstimateDataDetail> SmallList,
+                                                    ref List<ConstructionItemMaster> MciList,
+                                                    ref List<string> SubConstr)
+        {
+            try
+            {
+                int EstimateCnt = Enum.GetNames(typeof(IOEstimateDataDetail.TableColumn)).Length;
+                int ItemCnt = Enum.GetNames(typeof(IOMConstructionItem.NameColumn)).Length;
+
+                foreach (object[] objRec in DataList)
+                {
+                    // 積算見積書ボディデータセット
+                    EstimateDataDetail SmallRec = new EstimateDataDetail();
+                    SmallRec.ConstructionCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.ConstructionCode]);   // 工事コード
+                    SmallRec.PageCount = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.PageCount]);                 // ページ番号
+                    SmallRec.LineCount = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.LineCount]);	                // 行番号
+                    SmallRec.DataType = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.DataType]);                   // データタイプ
+                    SmallRec.ComponentCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.ComponentCode]);	        // 構成キー
+                    SmallRec.ItemCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.ItemCode]);	                // 工種キー
+                    SmallRec.SpecCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.SpecCode]);	                // 規格・寸法キー
+                    SmallRec.ItemName = CommonMotions.cnvString(objRec[(int)IOEstimateDataDetail.TableColumn.ItemName]);	            // 作業名称
+                    SmallRec.SpecName = CommonMotions.cnvString(objRec[(int)IOEstimateDataDetail.TableColumn.SpecName]);	            // 工種名称／規格・寸法名称
+                    SmallRec.UnitCount = CommonMotions.cnvDouble(objRec[(int)IOEstimateDataDetail.TableColumn.UnitCount]);	            // 数量
+                    SmallRec.UnitName = CommonMotions.cnvString(objRec[(int)IOEstimateDataDetail.TableColumn.UnitName]);	            // 単位
+                    SmallRec.UnitPrice = CommonMotions.cnvDouble(objRec[(int)IOEstimateDataDetail.TableColumn.UnitPrice]);	            // 単価
+                    SmallRec.LineTotal = CommonMotions.cnvDouble(objRec[(int)IOEstimateDataDetail.TableColumn.LineTotal]);	            // 金額
+                    SmallRec.Note = CommonMotions.cnvString(objRec[(int)IOEstimateDataDetail.TableColumn.Note]);	                    // 備考
+                    SmallRec.CompanyCode = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.CompanyCode]);	            // 協力会社コード
+                    SmallRec.MyExpensesFlg = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.MyExpensesFlg]);         // 自社経費フラグ
+                    SmallRec.InputFlg = CommonMotions.cnvInt(objRec[(int)IOEstimateDataDetail.TableColumn.InputFlg]);                   // 入力フラグ
+                    SmallRec.EntryDate = CommonMotions.cnvDate(objRec[(int)IOEstimateDataDetail.TableColumn.EntryDate]);                // 登録日付
+                    SmallRec.UpdateDate = CommonMotions.cnvDate(objRec[(int)IOEstimateDataDetail.TableColumn.UpdateDate]);              // 更新日付
+                    SmallList.Add(SmallRec);
+
+                    // 構成データセット
+                    ConstructionItemMaster MciRec = new ConstructionItemMaster();
+                    MciRec.ItemCode = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.ItemCode]);	            // 工種キー
+                    MciRec.DisplayOrder = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.DisplayOrder]);	    // 表示順
+                    MciRec.ItemName = CommonMotions.cnvString(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.ItemName]);	        // 名称
+                    MciRec.SubitemsFlg = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.SubitemsFlg]);	    // 下位項目フラグ
+                    MciRec.MyExpensesFlg = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.MyExpensesFlg]);   // 自社経費フラグ
+                    MciRec.DeleteFlg = CommonMotions.cnvInt(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.DeleteFlg]);	        // 削除フラグ
+                    MciRec.EntryDate = CommonMotions.cnvDate(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.EntryDate]);          // 登録日付
+                    MciRec.UpdateDate = CommonMotions.cnvDate(objRec[EstimateCnt + (int)IOMConstructionItem.NameColumn.UpdateDate]);        // 更新日付
+                    MciList.Add(MciRec);
+
+                    // 協力会社名称
+                    string SubConstrName = CommonMotions.cnvString(objRec[EstimateCnt + ItemCnt]);
+                    SubConstr.Add(SubConstrName);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 登録ボタン押下後の登録処理
         /// <summary>
         /// 登録ボタン押下後の登録処理
@@ -5520,36 +5740,80 @@
         /// <returns></returns>
         private bool GetCommentEditPermission(int personcode)
         {
-            // システム権限によってデータアクセスに制限がある
-            if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+            try
             {
-                // システム管理者（すべて対象）
-                return true;
-            }
-            else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-            {
-                // 最高機密管理者（すべて対象）
-                return true;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // システム権限によってデータアクセスに制限がある
+                    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
+                    {
+                        // 一般ユーザー
+                    }
+                }
+                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;
             }
-            else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
+            catch (System.Exception ex)
             {
-                // 統括機密管理者（自書込みコード以外は編集不可）
-                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
-            {
-                // 一般ユーザー
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-
         }
         #endregion
 
@@ -5655,12 +5919,10 @@
         /// </summary>
         private void FormLoadParentInput()
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             IOConstructionLink LinkDB = new IOConstructionLink();
             try
             {
-                // 金額増減の子画面以外は処理しない
-                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Tying) return;
-                
                 // 表示中はアクティブにして抜ける
                 if (m_frmParent != null)
                 {
@@ -5668,21 +5930,38 @@
                     return;
                 }
 
+                // 工事選択画面表示
+                frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                frmTying.ConstructionCode = m_ConstructionCode;
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+                // 自分を選んだ場合は処理しない
+                if (SelConstrCode == m_ConstructionCode) return;
+
                 // 表示ボタンの表示ON
-                panel3.Visible = true;
+                //panel3.Visible = true;
 
-                // 親の工事番号を取得する
-                string strSQL = String.Format(" WHERE FluctuationCode = {0}", m_ConstructionCode);
-                ConstructionLink LinkRec = new ConstructionLink();
-                if (!LinkDB.SelectAction(strSQL, ref LinkRec)) return;
+                //// 親の工事番号を取得する
+                //string strSQL = String.Format(" WHERE FluctuationCode = {0}", m_ConstructionCode);
+                //ConstructionLink LinkRec = new ConstructionLink();
+                //if (!LinkDB.SelectAction(strSQL, ref LinkRec)) return;
 
                 // 積算見積書入力起動
                 m_frmParent = new FrmEstimateInput();
 
-                m_frmParent.ConstructionCode = LinkRec.ConstructionCode;
+                //m_frmParent.ConstructionCode = LinkRec.ConstructionCode;
+                m_frmParent.ConstructionCode = SelConstrCode;
                 m_frmParent.SubForm = true;
                 m_frmParent.ShowInTaskbar = true;
                 m_frmParent.DualModeFlg = true;
+                m_frmParent.Panel3Visible = false;
 
                 // クロースドハンドラをこちらで定義する
                 m_frmParent.FormClosed += new FormClosedEventHandler(FormCloseParentInput);
@@ -5693,6 +5972,7 @@
                 parentPO.X += 50;
                 parentPO.Y += 50;
                 m_frmParent.Location = parentPO;
+
             }
             catch (System.Exception ex)
             {
@@ -5701,6 +5981,7 @@
             finally
             {
                 LinkDB.close(); LinkDB = null;
+                frmTying.Dispose(); frmTying = null;
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateInput/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmEstimateInput
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] m_SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -114,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -202,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -235,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -279,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -296,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -312,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -323,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -340,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -356,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -367,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -384,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -400,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -411,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -428,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -444,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -455,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -472,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -488,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -499,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -516,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -531,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -542,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -559,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -575,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -586,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -603,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -619,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -652,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -696,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -712,7 +858,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -947,11 +1093,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1120,6 +1267,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrint.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrint.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrint.Designer.cs	(revision 51)
@@ -554,7 +554,7 @@
             this.btnOtherProc.BackColor = System.Drawing.Color.SpringGreen;
             this.btnOtherProc.Location = new System.Drawing.Point(8, 655);
             this.btnOtherProc.Name = "btnOtherProc";
-            this.btnOtherProc.Size = new System.Drawing.Size(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 95;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrint.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrint.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrint.cs	(revision 51)
@@ -113,6 +113,11 @@
         private int m_ProcessCount = 0;
 
         /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
         /// 保存時Excelパス
         /// </summary>
         private string m_SelectSaveExcel = "";
@@ -125,6 +130,11 @@
         /// </summary>
         private bool m_CloseingProcessOn = true;
 
+        /// <summary>
+        /// 該当工事基本情報
+        /// </summary>
+        ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
+
         // *-----* 共通処理設定 *-----*
         /// <summary>
         /// サブフォーム起動フラグ
@@ -147,6 +157,15 @@
             set { m_ConstructionCode = value; }
         }
 
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
         // *-----* 共通処理設定 *-----*
         /// <summary>
         /// サブフォームフラグ
@@ -240,6 +259,14 @@
         /// <param name="e"></param>
         private void FrmEstimatePrint_Load(object sender, EventArgs e)
         {
+            // 工事情報取得
+            if (!GetBaseInfoData())
+            {
+                MessageBox.Show("工事基本情報が存在しません", "エラー表示", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                this.Close();
+                return;
+            }
+
             //コントロールオブジェクト取得
             GetDisplayObject();
 
@@ -246,6 +273,11 @@
             // 初期表示
             InitDataLoad();
 
+            if (m_EditLock)
+            {
+                // 参照の場合は入力できない
+                ReadOnly();
+            }
         }
         #endregion
 
@@ -435,7 +467,7 @@
                 // 承認申請がされているか？
                 ProcessApproval pAppRec = new ProcessApproval();
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算見積書承認")).Key;
-                string StrApp = pAppDB.CreatePrimarykeyString(m_ConstructionCode, iApprovalCode, 1);
+                string StrApp = pAppDB.CreatePrimarykeyString(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo, 1);
                 if (!pAppDB.SelectAction(StrApp, ref pAppRec)) return false;
 
                 List<ConstructionBaseInfo> worklist = new List<ConstructionBaseInfo>();
@@ -1017,7 +1049,7 @@
             {
                 // ----- 工事コード・承認機能番号取得
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算見積書承認")).Key;
-                return ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode);
+                return ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode, CommonDefine.s_Default_OrderNo);
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrintAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrintAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/FrmEstimatePrintAuxiliary.cs	(revision 51)
@@ -72,7 +72,7 @@
         #endregion
 
         #region 定数
-        private static readonly string[] SheetName = new string[] {"積算見積書表紙",
+        private static readonly string[] s_SheetName = new string[] {"積算見積書表紙",
                                                                     "積算見積書内訳"
                                                                     };
         /// <summary>
@@ -86,8 +86,8 @@
         /// <summary>
         /// 消費税の但し書き
         /// </summary>
-        private string ConsumptionTaxMessage1 = "（内、消費税相当額￥{0}を含みます）";
-        private string ConsumptionTaxMessage2 = "消費税については相当額を別途御精算願います。";
+        private string s_ConsumptionTaxMessage1 = "（内、消費税相当額￥{0}を含みます）";
+        private string s_ConsumptionTaxMessage2 = "消費税については相当額を別途御精算願います。";
 
         /// <summary>
         /// 表紙１ページ目の行数
@@ -438,34 +438,6 @@
         }
         #endregion
 
-        #region 今の年号を取得する
-        /// <summary>
-        /// 今の年号を取得する
-        /// </summary>
-        /// <returns></returns>
-        private string GetNameOfAnEra()
-        {
-            try
-            {
-                string strRet = string.Empty;
-
-                CultureInfo culture = new CultureInfo("ja-JP", true);
-                culture.DateTimeFormat.Calendar = new JapaneseCalendar();
-
-                string result = DateTime.Now.ToString("ggyy年M月d日", culture);
-
-                strRet = result.Substring(0, 2);
-
-                return strRet;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return string.Empty;
-            }
-        }
-        #endregion
-
         #region 表紙印鑑表示
         /// <summary>
         ///  表紙印鑑表示
@@ -476,18 +448,25 @@
             IOProcessApproval paDB = new IOProcessApproval();
             try
             {
+                ArrayList arlist = new ArrayList();
+                
                 // 承認データ読込
-                string strSQLSeal = "SELECT A.PERSONCODE FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B";
-                strSQLSeal += paDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.EstimateApproval);
-                strSQLSeal += " AND A.PERSONCODE = B.PERSONCODE Order By B.SECURITYMANAGEMENT ASC";
-                ArrayList arlist = new ArrayList();
+                string strSQLSeal = string.Empty;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    strSQLSeal = "SELECT B.* FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B";
+                }
+                else
+                {
+                    strSQLSeal = "SELECT B.*, C.SECRANK FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B, SECURITYMASTER C";
+                }
+                strSQLSeal += paDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.EstimateApproval, CommonDefine.s_Default_OrderNo);
+                strSQLSeal += " AND A.PERSONCODE = B.PERSONCODE";
+                if (CommonMotions.LoginUserData.SecCode != 0) strSQLSeal += " AND C.SECCODE = B.SECCODE";
+                strSQLSeal += " Order By B.SECURITYMANAGEMENT ASC";
                 if (!paDB.ExecuteReader(strSQLSeal, ref arlist)) return;
 
-                //string strSQLSeal = paDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.EstimateApproval);
-                //strSQLSeal += " Order By SeqNo desc";
-                //List<ProcessApproval> paList = new List<ProcessApproval>();
-                //if (!paDB.SelectAction(strSQLSeal, ref paList)) return;
-
                 // 印刷テーブル作成
                 int[] PorsonCode = new int[4] { 0, 0, 0, 0 };
                 List<string> NameTable = new List<string>();
@@ -494,32 +473,47 @@
                 for (int i = 0; i < PorsonCode.Length; i++) NameTable.Add("");
                 string[] OrderOfPrecedenceTable = new string[4];
 
-                // 営業をセットする                
-                //PorsonTable[2] = SalesPersonCode;
-                //PersonInChargeMaster SalesRec = new PersonInChargeMaster();
-                //string strSales = picDB.CreatePrimarykeyString(SalesPersonCode);
-                //picDB.SelectAction(strSales, ref SalesRec);
-                //NameTable[2] = SalesRec.SealPrintName;
-                //OrderOfPrecedenceTable[2] = "営　業";
-
+                int PersonDataCnt = Enum.GetNames(typeof(IOMPersonInCharge.ColumnCnt)).Length;
                 // 承認データより担当者その他を取得する
-                //foreach (ProcessApproval readRec in paList)
-                for (int i = 0; i < arlist.Count;i++ )
+                for (int i = 0; i < arlist.Count; i++)
                 {
                     // エクセルの枠より多い場合は処理を抜ける
                     if (i > 3) break;
 
                     object[] readObj = (object[])arlist[i];
-
                     PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                    string strSQL = picDB.CreatePrimarykeyString(CommonMotions.cnvInt(readObj[0]));
-                    if (!picDB.SelectAction(strSQL, ref PersonRec)) continue;
+                    picDB.Reader2Struct(readObj, ref PersonRec);
 
-                    // 最高責任者・統括責任者・所属長かどうかを調べる
-                    if (PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key ||
-                        PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key ||
-                            PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                    bool SelData = false;
+                    // 新セキュリティデータ対応済みかを確認する
+                    if (CommonMotions.LoginUserData.SecCode == 0)
                     {
+                        // 最高責任者・統括責任者・所属長かどうかを調べる
+                        if (PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key ||
+                            PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key ||
+                                PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                        {
+                            SelData = true;
+                        }
+                    }
+                    else
+                    {
+                        int SecRank = CommonMotions.cnvInt(readObj[PersonDataCnt]);
+                        int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority;     // 特別権限
+                        int FRank = (int)CommonDefine.SecurityRankPos.FreeAuthority;        // 統括者権限
+                        int LRank = (int)CommonDefine.SecurityRankPos.LimitedAuthority;     // 所属長権限
+
+                        // 最高責任者・統括責任者・所属長かどうかを調べる
+                        if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                            || SecRank == CommonDefine.SecurityRankList[SRank].Key
+                            || SecRank == CommonDefine.SecurityRankList[FRank].Key
+                            || SecRank == CommonDefine.SecurityRankList[LRank].Key)
+                        {
+                            SelData = true;
+                        }
+                    }
+                    if (SelData)
+                    {
                         // コードと名前と役職を取得する
                         PorsonCode[i] = PersonRec.PersonCode;
                         NameTable[i] = PersonRec.SealPrintName;
@@ -629,7 +623,7 @@
                 // 工事名称を退避する
                 strParaList.Add(GetDictionaryMember(workDic, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName).Trim());     // 工事名称
                 //表紙シートの取得
-                m_UsedExcel.ExcelSheetGet(SheetName[(int)enumSheetName.Cover]);
+                m_UsedExcel.ExcelSheetGet(s_SheetName[(int)enumSheetName.Cover]);
                 // 約款ページ縦・横セット
                 m_UsedExcel.ExcelFitCountSet(2, 1);
 
@@ -646,7 +640,7 @@
                 }
                 else
                 {
-                    objPrint0[1, (int)Cover1ColumCharctor.ColumM] = GetNameOfAnEra() + "   年   月   日";
+                    objPrint0[1, (int)Cover1ColumCharctor.ColumM] = CommonMotions.GetNameOfAnEra(DateTime.Now) + "   年   月   日";
                 }
 
                 objPrint0[5, (int)Cover1ColumCharctor.ColumC] =
@@ -657,9 +651,15 @@
                 int Price = 0;
                 //if (worklist[0].ConsumptionTaxFlg == 1)
                 if (m_ConsumptionTaxFlg == (int)CommonDefine.BaseInfoConsumptionTaxFlg.Include)
-                    strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode) + " And FixedItemCode = 'E'";
+                {   // 総計　'E'
+                    strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode);
+                    strSQL += string.Format(" And FixedItemCode = '{0}'", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal5));
+                }
                 else
-                    strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode) + " And FixedItemCode = 'C'";
+                {   // 改め合計　'C'
+                    strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode);
+                    strSQL += string.Format(" And FixedItemCode = '{0}'", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal3));
+                }
                 if (edDB.SelectAction(strSQL, ref etList) && etList.Count != 0)
                 {
                     Price = (int)CommonMotions.cnvRound(etList[0].PriceValue);
@@ -673,17 +673,18 @@
                 {
                     etList.Clear();
                     int Tax = 0;
-                    strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode) + " And FixedItemCode = 'D'";
+                    strSQL = edDB.CreatePrimarykeyString(m_ConstructionCode);
+                    strSQL += string.Format(" And FixedItemCode = '{0}'", CommonDefine.GetEstimateTotalSeqNo(CommonDefine.EstimateTotalSeqNo.ToTal4));
                     if (edDB.SelectAction(strSQL, ref etList) && etList.Count != 0)
                     {
                         Tax = (int)CommonMotions.cnvRound(etList[0].PriceValue);
                     }
 
-                    strTax = string.Format(ConsumptionTaxMessage1, Tax.ToString("#,#"));
+                    strTax = string.Format(s_ConsumptionTaxMessage1, Tax.ToString("#,#"));
                 }
                 else
                 {
-                    strTax = ConsumptionTaxMessage2;
+                    strTax = s_ConsumptionTaxMessage2;
 
                 }
                 objPrint0[10, (int)Cover1ColumCharctor.ColumD] = strTax;                                                                // 消費税
@@ -724,7 +725,7 @@
                 }
                 else
                 {
-                    objPrint[0, (int)Cover2ColumCharctor.ColumE] = GetNameOfAnEra() + "   年   月   日";
+                    objPrint[0, (int)Cover2ColumCharctor.ColumE] = CommonMotions.GetNameOfAnEra(DateTime.Now) + "   年   月   日";
                 }
 
                 objPrint[2, (int)Cover2ColumCharctor.ColumE] = GetDictionaryMember(workDic, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName).Trim();         // 工事名称
@@ -899,7 +900,7 @@
                 if (LargeList.Count == 0) return CommonDefine.RetunAnswer.Answer7;
 
                 //シートの取得
-                m_UsedExcel.ExcelSheetGet(SheetName[(int)enumSheetName.Detail], true, TotalPageName);
+                m_UsedExcel.ExcelSheetGet(s_SheetName[(int)enumSheetName.Detail], true, TotalPageName);
 
                 // 1ページに収まらない場合必要分、先にコピーする（１明細1行＋工事名－最後の空白行）
                 int workRow = (int)CommonMotions.cnvRoundUp((double)(LargeList.Count + 1) / (double)s_DetailNumberOfLine);
@@ -913,7 +914,7 @@
                     string PrintArea = string.Format("$A$1:$H${0}", (s_NumberOfRowInDetail * workRow));
 
                     // シートの取得
-                    m_UsedExcel.ExcelSheetGet(SheetName[(int)enumSheetName.Detail], false);
+                    m_UsedExcel.ExcelSheetGet(s_SheetName[(int)enumSheetName.Detail], false);
                     // 明細フォーマットのコピー
                     m_UsedExcel.ExcelCopyRow(SrcRow, DestRow, PrintArea, workRow);
                 }
@@ -1032,7 +1033,7 @@
                     // ラインカント
                     LineCount = 0;
                     //シートの取得
-                    m_UsedExcel.ExcelSheetGet(SheetName[(int)enumSheetName.Detail], true, DataBody.PageTitle);
+                    m_UsedExcel.ExcelSheetGet(s_SheetName[(int)enumSheetName.Detail], true, DataBody.PageTitle);
 
                     // タイトル行をセットする
                     if (DataBody.SelectComponent == 0)
@@ -1079,7 +1080,7 @@
                         string PrintArea = string.Format("$A$1:$H${0}", (s_NumberOfRowInDetail * workRow));
 
                         // シートの取得
-                        m_UsedExcel.ExcelSheetGet(SheetName[(int)enumSheetName.Detail], false);
+                        m_UsedExcel.ExcelSheetGet(s_SheetName[(int)enumSheetName.Detail], false);
                         // 明細フォーマットのコピー
                         m_UsedExcel.ExcelCopyRow(SrcRow, DestRow, PrintArea, workRow);
                     }
@@ -1235,5 +1236,52 @@
             return true;
         }
         #endregion
+
+        #region 工事情報取得処理
+        /// <summary>
+        /// 工事情報取得
+        /// </summary>
+        /// <returns></returns>
+        private bool GetBaseInfoData()
+        {
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            try
+            {
+                string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
+                if (!cbDB.SelectAction(strSQL, ref m_ConstructionBaseInfo)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+        }
+        #endregion
+
+        #region 書込み禁止処理
+        /// <summary>
+        /// 参照処理
+        /// </summary>
+        private void ReadOnly()
+        {
+            try
+            {
+                // データ編集に関するボタンを非表示にする
+                btnPrint.Visible = false;                           // 印刷ボタン
+                btnCancel.Visible = false;                          // 印刷中止ボタン
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimatePrint/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmEstimatePrint
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        // private Form[] m_SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -114,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -202,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -235,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -279,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -296,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -312,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -323,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -340,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -356,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -367,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -384,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -400,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -411,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -428,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -444,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -455,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -472,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -488,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -499,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -516,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -531,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -542,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -559,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -575,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -586,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -603,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -619,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -652,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -696,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -712,7 +858,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -947,11 +1093,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1120,6 +1267,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.cs	(revision 51)
@@ -0,0 +1,707 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Text.RegularExpressions;
+
+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.Master;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+//*------------------------ 単位マスタメンテ画面 ----------------------*
+//  2015/07/14  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmMaterialCountEntry : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispColumn
+        {
+            DisplayOrder = 0,
+            UnitKey,
+            NameString,
+        }
+
+        /// <summary>
+        /// マスタリストMAXライン
+        /// </summary>
+        private const int s_ListMaxLineCount = 53;
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 資材種類
+        /// </summary>
+        public String m_MaterialType = "";
+
+        /// <summary>
+        /// 資材品目コード
+        /// </summary>
+        public int m_MaterialItemCode = 0;
+
+        /// <summary>
+        /// 資材品目
+        /// </summary>
+        public String m_MaterialItem = "";
+
+        /// <summary>
+        /// 資材数（変更前）
+        /// </summary>
+        public String m_MaterialCount = "";
+
+        /// <summary>
+        /// 割当可能数（変更前）
+        /// </summary>
+        public String m_MaterialAssignableCount = "";
+        /// <summary>
+
+        /// <summary>
+        /// データ操作
+        /// </summary>
+        private IOMaterialInfo m_IoM = null;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialCountEntry()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialCountEntry()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+        #region プロパティ
+
+        /// <summary>
+        /// 資材種類
+        /// </summary>
+        public string MaterialType
+        {
+            get { return m_MaterialType; }
+            set { m_MaterialType = value; }
+        }
+
+        /// <summary>
+        /// 資材品目コード
+        /// </summary>
+        public int MaterialItemCode
+        {
+            get { return m_MaterialItemCode; }
+            set { m_MaterialItemCode = value; }
+        }
+        /// <summary>
+        /// 資材品目
+        /// </summary>
+        public string MaterialItem
+        {
+            get { return m_MaterialItem; }
+            set { m_MaterialItem = value; }
+        }
+        
+        /// <summary>
+        /// 資材数（変更前）
+        /// </summary>
+        public string MaterialCount
+        {
+            get { return m_MaterialCount; }
+            set { m_MaterialCount = value; }
+        }
+        /// <summary>
+        /// 割当可能数（変更前）
+        /// </summary>
+        public string MaterialAssignableCount
+        {
+            get { return m_MaterialAssignableCount; }
+            set { m_MaterialAssignableCount = value; }
+        }
+
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+
+
+
+        #region イベントメソッド
+
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialCountEntry_Load(object sender, EventArgs e)
+        {
+            // 初期表示
+            InitDataLoad();
+
+            if (m_EditLock) txtDataEntry.Enabled = false;
+
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+        }
+
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        /// 
+        private void FrmMaterialCountEntry_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            try
+            {
+                // 前プロセスに戻る
+                ClsExcute.BackProcess();
+
+            }
+            finally
+            {
+                // ロック解除用
+                if (e.Cancel != true && m_IoM != null)
+                {
+                    m_IoM.rollback();
+                    m_IoM.close();
+                    m_IoM = null;
+                }
+            }
+        }
+
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        /// <summary>
+        /// IMEのコントロール
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellEnter(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                if (dgv.CurrentCell.ReadOnly) return;
+
+                //列によってIMEのモードを変更する
+                if (dgv.Columns[e.ColumnIndex].Name.Equals("Column3"))
+                {
+                    dgv.ImeMode = ImeMode.On;
+                }
+                else
+                {
+                    dgv.ImeMode = ImeMode.Disable;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        #region プライベートメソッド
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            // ロック実行
+            try
+            {
+                m_IoM = new IOMaterialInfo();
+                m_IoM.connect();
+                m_IoM.SetLockWaitime(1);
+                m_IoM.beginTran();
+                // 共有ロック
+                if (!m_IoM.RowLockShare(m_MaterialItemCode, false))
+                {
+                    this.Close();
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                this.Close();
+            }
+
+            try
+            {
+                
+                // 資材種類
+                lblMaterialKind.Text = m_MaterialType;
+                
+                // 資材品目
+                lblMaterialItem.Text = m_MaterialItem;
+                
+                // 資材数
+                lblMaterialCount.Text = m_MaterialCount;
+                
+                // 割当可能数
+                lblRentCount.Text = m_MaterialAssignableCount;
+
+                // 資材数(変更後)
+                lblMaterialCountAfter.Text = "";
+
+                // 割当可能数(変更後)
+                lblRentCountAfter.Text = "";
+
+                // 追加
+                txtTuika.Text = "0";
+
+                // 破棄
+                txtHaki.Text = "0";
+
+                // コメント
+                txtComment.Text = ""; 
+
+                // 登録日にシステム日付を表示
+                lblMaterialDate.Text = DateTime.Now.ToString("yyyy/MM/dd");
+
+                // 担当にログインユーザー名を表示
+                lblPerson.Text = CommonMotions.LoginUserData.PersonName;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            string sError = "";
+            List<MaterialInfo> mi = new List<MaterialInfo>();
+
+            try
+            {
+                // 画面．「追加」、画面．「破棄」ともに0の場合はエラー ※未入力は0として扱う。
+                if ((CommonMotions.chkObjectIsNull(txtTuika.Text) || CommonMotions.cnvInt(txtTuika.Text) == 0)
+                   && (CommonMotions.chkObjectIsNull(txtHaki.Text) || CommonMotions.cnvInt(txtHaki.Text) == 0))
+                {
+                    sError = "追加、破棄ともに値が入力されていません。";
+                    bRet = false;
+                }
+
+
+                // レングスチェック
+                if (txtComment.Text.Length != 0)
+                {
+                    int len = Encoding.GetEncoding("Shift_JIS").GetByteCount(txtComment.Text);
+                    if (len > 80)
+                    {
+                        bRet = false;
+                        sError = "コメントは全角４０文字までで入力してください。";
+                    }
+                }
+  
+                //割り当て可能チェック
+                if (int.Parse(lblRentCount.Text) < int.Parse(txtHaki.Text))
+                {
+                    sError = "割当可能数を超えて破棄できません。";
+                    bRet = false; 
+                }
+
+                if (!bRet)
+                {
+                    MessageBox.Show(sError, "データ確認"
+                                                , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                }
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 追加欄編集後の処理
+        /// </summary>
+        /// <returns></returns>
+        private void txtTuika_TextChanged(object sender, EventArgs e)
+        {
+            Regex regex = new Regex(@"^[0-9]+$");
+            Match match = regex.Match(txtTuika.Text);
+            if(match.Success)
+            {
+                // 総数　　　　→　変更前「資材数」＋画面.「追加」- 画面．「破棄」
+                lblMaterialCountAfter.Text = CommonMotions.cnvString(
+                CommonMotions.cnvInt(lblMaterialCount.Text) + CommonMotions.cnvInt(txtTuika.Text) - CommonMotions.cnvInt(txtHaki.Text));
+                // 割当可能数　→　変更前．「貸出可能数」＋画面．「追加」- 画面．「破棄」
+                lblRentCountAfter.Text = CommonMotions.cnvString(
+                CommonMotions.cnvInt(lblRentCount.Text) + CommonMotions.cnvInt(txtTuika.Text) - CommonMotions.cnvInt(txtHaki.Text));
+            }
+
+        }
+
+        /// <summary>
+        /// 破棄欄編集後の処理
+        /// </summary>
+        /// <returns></returns>
+        private void txtHaki_TextChanged(object sender, EventArgs e)
+        {
+            Regex regex = new Regex(@"^[0-9]+$");
+            Match match = regex.Match(txtHaki.Text);
+            if (match.Success)
+            {
+                // 入力された資材数を元に変更後に表示
+                // 総数　　　　→　変更前「資材数」＋画面.「追加」- 画面．「破棄」
+                lblMaterialCountAfter.Text = CommonMotions.cnvString(
+                    CommonMotions.cnvInt(lblMaterialCount.Text) + CommonMotions.cnvInt(txtTuika.Text) - CommonMotions.cnvInt(txtHaki.Text));
+                // 割当可能数　→　変更前．「貸出可能数」＋画面．「追加」- 画面．「破棄」
+                lblRentCountAfter.Text = CommonMotions.cnvString(
+                    CommonMotions.cnvInt(lblRentCount.Text) + CommonMotions.cnvInt(txtTuika.Text) - CommonMotions.cnvInt(txtHaki.Text));
+            }
+ 
+        }
+
+
+        #endregion
+
+
+        /// <summary>
+        /// 登録ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return;
+
+                if (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+
+                // データ登録
+                if (!DataEntry()) 
+                {
+                    m_IoM.rollback();
+                    m_IoM.RowLockShare(m_MaterialItemCode, false);
+                    return;
+                }
+
+                this.Close();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+            }
+
+        }
+
+        /// <summary>
+        /// データ登録
+        /// </summary>
+        private bool DataEntry()
+        {
+            MaterialInfo miwork = new MaterialInfo();
+
+            string strSQL = m_IoM.CreatePrimarykeyString(m_MaterialItemCode);
+            List<MaterialInfo> mList = new List<MaterialInfo>();
+
+            IOMaterialRecordInfo IoMri = new IOMaterialRecordInfo();
+
+            try
+            {
+                // 資材情報
+                miwork.MaterialItemCode = CommonMotions.cnvInt(m_MaterialItemCode);
+                miwork.MaterialCount = CommonMotions.cnvInt(lblMaterialCountAfter.Text);
+                miwork.RentCount = CommonMotions.cnvInt(lblRentCountAfter.Text);
+                miwork.DeleteFlg  = 0;
+
+
+                // 資材情報マスタ取得
+                if (!m_IoM.SelectAction(strSQL, ref mList, false))
+                {
+                    MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                if (mList.Count == 0)
+                {
+
+                    // 貸出可能数＜破棄数の場合はエラー
+                    if (CommonMotions.cnvInt(m_MaterialAssignableCount) < CommonMotions.cnvInt(txtHaki.Text))
+                    {
+                        MessageBox.Show("割当可能数を超えて破棄できません。", "登録エラー"
+                                , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                        return false;
+                    }
+
+                    // データがない場合は追加
+                    mList.Clear();
+                    mList.Add(miwork);
+
+                    // データ登録
+                    if (!m_IoM.InsertAction(mList, false))
+                    {
+                        MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+                else
+                {
+                    // 資材情報更新ロック
+                    m_IoM.rollback();
+                    if (!m_IoM.RowLockUpdate(m_MaterialItemCode, false))
+                    {
+                        m_IoM.RowLockShare(m_MaterialItemCode, false);
+                        MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+
+                    // 貸出可能数＜破棄数の場合はエラー
+                    if (CommonMotions.cnvInt(mList[0].RentCount) < CommonMotions.cnvInt(txtHaki.Text))
+                    {
+                        m_IoM.rollback();
+                        m_IoM.RowLockShare(m_MaterialItemCode, false);
+                        MessageBox.Show("割当可能数を超えて破棄できません。", "登録エラー"
+                                , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                        return false;
+
+                    }
+
+                    // データ登録
+                    if (!m_IoM.UpdateAction(strSQL, miwork, false))
+                    {
+                        m_IoM.rollback();
+                        m_IoM.RowLockShare(m_MaterialItemCode, false);
+                        MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+
+
+                // 資材履歴
+                IoMri.connect();
+                IoMri.beginTran();
+
+                if (CommonMotions.cnvInt(txtTuika.Text) > 0)            // 追加
+                {
+                    MaterialRecordInfo mriwork = new MaterialRecordInfo();
+
+                    mriwork.MaterialItemCode = CommonMotions.cnvInt(m_MaterialItemCode);
+                    mriwork.ProcessDate = CommonMotions.cnvDate(lblMaterialDate.Text);
+                    string strMrSql = IoMri.CreatePrimarykeyString(m_MaterialItemCode, mriwork.ProcessDate);
+                    mriwork.SeqNo = IoMri.SelectMaxMaterialRecordKeyCount(strMrSql) + 1;
+                    mriwork.RecKind = 2;
+                    mriwork.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                    mriwork.MaterialCount = CommonMotions.cnvInt(txtTuika.Text);
+                    mriwork.CommentText = CommonMotions.cnvString(txtComment.Text);
+
+                    List<MaterialRecordInfo> mRiList = new List<MaterialRecordInfo>();
+                    mRiList.Clear();
+                    mRiList.Add(mriwork);
+
+                    // データ登録
+                    if (!IoMri.InsertAction(mRiList))
+                    {
+                        m_IoM.rollback();
+                        m_IoM.RowLockShare(m_MaterialItemCode, false);
+                        IoMri.rollback();
+                        MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+
+                if (CommonMotions.cnvInt(txtHaki.Text) > 0)        // 破棄
+                {
+                    MaterialRecordInfo mriwork = new MaterialRecordInfo();
+
+                    mriwork.MaterialItemCode = CommonMotions.cnvInt(m_MaterialItemCode);
+                    mriwork.ProcessDate = CommonMotions.cnvDate(lblMaterialDate.Text);
+                    string strMrSql = IoMri.CreatePrimarykeyString(m_MaterialItemCode, mriwork.ProcessDate);
+                    mriwork.SeqNo = IoMri.SelectMaxMaterialRecordKeyCount(strMrSql) + 1;
+                    mriwork.RecKind = 3;
+                    mriwork.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                    mriwork.MaterialCount = CommonMotions.cnvInt(txtHaki.Text);
+                    mriwork.CommentText = CommonMotions.cnvString(txtComment.Text);
+
+                    List<MaterialRecordInfo> mRiList = new List<MaterialRecordInfo>();
+                    mRiList.Clear();
+                    mRiList.Add(mriwork);
+
+                    // データ登録
+                    if (!IoMri.InsertAction(mRiList))
+                    {
+                        m_IoM.rollback();
+                        m_IoM.RowLockShare(m_MaterialItemCode, false);
+                        IoMri.rollback();
+                        MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+
+                IoMri.commit();
+                m_IoM.commit();
+
+            }
+            finally 
+            {
+                if (IoMri != null)
+                {
+                    IoMri.close();
+                    IoMri = null;
+                }
+            }
+
+            return true;
+        }
+
+        /// <summary>
+        /// 追加フォーカス移動
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void txtTuika_Leave(object sender, EventArgs e)
+        {
+            Regex regex = new Regex(@"^[0-9]+$");
+            Match match = regex.Match(txtTuika.Text);
+            if (!match.Success)
+            {
+                MessageBox.Show("０以上の整数を入力してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                txtTuika.Focus();
+                return;
+            }
+
+            if (txtTuika.Text.Length > 0 && int.Parse(txtTuika.Text) > 0)
+            {
+                if (int.Parse(lblRentCount.Text) < int.Parse(txtHaki.Text))
+                {
+                    MessageBox.Show("割当可能数を超えて破棄できません。", "データ確認"
+                            , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+
+                }
+            }
+        }
+
+        /// <summary>
+        /// 破棄フォーカス移動
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void txtHaki_Leave(object sender, EventArgs e)
+        {
+            Regex regex = new Regex(@"^[0-9]+$");
+            Match match = regex.Match(txtHaki.Text);
+            if (!match.Success)
+            {
+                MessageBox.Show("０以上の整数を入力してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                txtHaki.Focus();
+                return;
+            }
+
+            if (txtHaki.Text.Length > 0 && int.Parse(txtHaki.Text) > 0)
+            {
+                if (int.Parse(lblRentCount.Text) < int.Parse(txtHaki.Text))
+                {
+                    MessageBox.Show("割当可能数を超えて破棄できません。", "データ確認"
+                            , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+
+                }
+            }
+        }
+
+        /// <summary>
+        /// 資材履歴ボタン押下時の処理
+        /// </summary>
+        private void btnMaterialHistory_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                
+                FrmMaterialHistory frm = new FrmMaterialHistory();
+
+                List<MaterialInfo> Mi = new List<MaterialInfo>();
+                m_IoM.SelectAction(string.Format(" where MaterialItemCode = {0}", MaterialItemCode), ref Mi, false);
+
+                //　遷移先への連携値
+                // パラメータセット
+                frm.MaterialType = CommonMotions.cnvString(MaterialType);
+                frm.MaterialItemCode = CommonMotions.cnvInt(MaterialItemCode);
+                frm.MaterialItem = CommonMotions.cnvString(MaterialItem);
+
+                if (Mi.Count != 0)
+                {
+                    frm.MaterialCount = CommonMotions.cnvString(Mi[0].MaterialCount);
+                    frm.MaterialAssignableCount = CommonMotions.cnvString(Mi[0].RentCount);
+                }
+                frm.ShowDialog();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.designer.cs	(revision 51)
@@ -0,0 +1,467 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmMaterialCountEntry
+    {
+        /// <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()
+        {
+            this.label1 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.lblMaterialKind = new System.Windows.Forms.Label();
+            this.lblMaterialItem = new System.Windows.Forms.Label();
+            this.lblMaterialDate = new System.Windows.Forms.Label();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.lblPerson = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label11 = new System.Windows.Forms.Label();
+            this.label13 = new System.Windows.Forms.Label();
+            this.label15 = new System.Windows.Forms.Label();
+            this.label14 = new System.Windows.Forms.Label();
+            this.label17 = new System.Windows.Forms.Label();
+            this.label20 = new System.Windows.Forms.Label();
+            this.label22 = new System.Windows.Forms.Label();
+            this.label23 = new System.Windows.Forms.Label();
+            this.txtDataEntry = new System.Windows.Forms.Button();
+            this.btnMaterialHistory = new System.Windows.Forms.Button();
+            this.label25 = new System.Windows.Forms.Label();
+            this.txtComment = new System.Windows.Forms.TextBox();
+            this.lblRentCountAfter = new System.Windows.Forms.Label();
+            this.lblRentCount = new System.Windows.Forms.Label();
+            this.lblMaterialCountAfter = new System.Windows.Forms.Label();
+            this.lblMaterialCount = new System.Windows.Forms.Label();
+            this.txtTuika = new System.Windows.Forms.TextBox();
+            this.txtHaki = new System.Windows.Forms.TextBox();
+            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.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(209, 9);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(292, 32);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "資　材　数　変　更";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            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(9, 49);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(86, 24);
+            this.label2.TabIndex = 23;
+            this.label2.Text = "資材種類";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            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(9, 79);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(86, 24);
+            this.label3.TabIndex = 26;
+            this.label3.Text = "資材品目";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(9, 109);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(86, 24);
+            this.label4.TabIndex = 28;
+            this.label4.Text = "登録日";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblMaterialKind
+            // 
+            this.lblMaterialKind.BackColor = System.Drawing.Color.White;
+            this.lblMaterialKind.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialKind.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialKind.Location = new System.Drawing.Point(100, 49);
+            this.lblMaterialKind.Name = "lblMaterialKind";
+            this.lblMaterialKind.Size = new System.Drawing.Size(180, 24);
+            this.lblMaterialKind.TabIndex = 29;
+            this.lblMaterialKind.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblMaterialItem
+            // 
+            this.lblMaterialItem.BackColor = System.Drawing.Color.White;
+            this.lblMaterialItem.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialItem.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialItem.Location = new System.Drawing.Point(100, 79);
+            this.lblMaterialItem.Name = "lblMaterialItem";
+            this.lblMaterialItem.Size = new System.Drawing.Size(180, 24);
+            this.lblMaterialItem.TabIndex = 30;
+            this.lblMaterialItem.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblMaterialDate
+            // 
+            this.lblMaterialDate.BackColor = System.Drawing.Color.White;
+            this.lblMaterialDate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialDate.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialDate.Location = new System.Drawing.Point(101, 109);
+            this.lblMaterialDate.Name = "lblMaterialDate";
+            this.lblMaterialDate.Size = new System.Drawing.Size(150, 24);
+            this.lblMaterialDate.TabIndex = 31;
+            this.lblMaterialDate.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(580, 255);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 28);
+            this.btnEnd.TabIndex = 4;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // lblPerson
+            // 
+            this.lblPerson.BackColor = System.Drawing.Color.White;
+            this.lblPerson.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblPerson.ForeColor = System.Drawing.Color.Black;
+            this.lblPerson.Location = new System.Drawing.Point(381, 109);
+            this.lblPerson.Name = "lblPerson";
+            this.lblPerson.Size = new System.Drawing.Size(144, 24);
+            this.lblPerson.TabIndex = 34;
+            this.lblPerson.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label9
+            // 
+            this.label9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label9.ForeColor = System.Drawing.Color.Black;
+            this.label9.Location = new System.Drawing.Point(289, 109);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(86, 24);
+            this.label9.TabIndex = 33;
+            this.label9.Text = "担当";
+            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label11
+            // 
+            this.label11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label11.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(9, 139);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(86, 24);
+            this.label11.TabIndex = 35;
+            this.label11.Text = "追加";
+            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label13
+            // 
+            this.label13.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label13.ForeColor = System.Drawing.Color.Black;
+            this.label13.Location = new System.Drawing.Point(289, 139);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(86, 24);
+            this.label13.TabIndex = 37;
+            this.label13.Text = "破棄";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label15
+            // 
+            this.label15.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label15.ForeColor = System.Drawing.Color.Black;
+            this.label15.Location = new System.Drawing.Point(9, 169);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(86, 24);
+            this.label15.TabIndex = 39;
+            this.label15.Text = "変更前";
+            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label14
+            // 
+            this.label14.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
+            this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label14.ForeColor = System.Drawing.Color.Black;
+            this.label14.Location = new System.Drawing.Point(102, 169);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(100, 24);
+            this.label14.TabIndex = 40;
+            this.label14.Text = "資材数";
+            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label17
+            // 
+            this.label17.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
+            this.label17.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label17.ForeColor = System.Drawing.Color.Black;
+            this.label17.Location = new System.Drawing.Point(302, 169);
+            this.label17.Name = "label17";
+            this.label17.Size = new System.Drawing.Size(142, 24);
+            this.label17.TabIndex = 42;
+            this.label17.Text = "貸出可能数";
+            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label20
+            // 
+            this.label20.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
+            this.label20.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label20.ForeColor = System.Drawing.Color.Black;
+            this.label20.Location = new System.Drawing.Point(302, 192);
+            this.label20.Name = "label20";
+            this.label20.Size = new System.Drawing.Size(142, 24);
+            this.label20.TabIndex = 47;
+            this.label20.Text = "貸出可能数";
+            this.label20.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label22
+            // 
+            this.label22.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
+            this.label22.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label22.ForeColor = System.Drawing.Color.Black;
+            this.label22.Location = new System.Drawing.Point(102, 192);
+            this.label22.Name = "label22";
+            this.label22.Size = new System.Drawing.Size(100, 24);
+            this.label22.TabIndex = 45;
+            this.label22.Text = "資材数";
+            this.label22.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label23
+            // 
+            this.label23.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label23.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label23.ForeColor = System.Drawing.Color.Black;
+            this.label23.Location = new System.Drawing.Point(9, 192);
+            this.label23.Name = "label23";
+            this.label23.Size = new System.Drawing.Size(86, 24);
+            this.label23.TabIndex = 44;
+            this.label23.Text = "変更後";
+            this.label23.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // txtDataEntry
+            // 
+            this.txtDataEntry.BackColor = System.Drawing.Color.Aqua;
+            this.txtDataEntry.ForeColor = System.Drawing.Color.Black;
+            this.txtDataEntry.Location = new System.Drawing.Point(454, 255);
+            this.txtDataEntry.Name = "txtDataEntry";
+            this.txtDataEntry.Size = new System.Drawing.Size(120, 28);
+            this.txtDataEntry.TabIndex = 51;
+            this.txtDataEntry.Text = "登　録";
+            this.txtDataEntry.UseVisualStyleBackColor = false;
+            this.txtDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // btnMaterialHistory
+            // 
+            this.btnMaterialHistory.BackColor = System.Drawing.Color.Lime;
+            this.btnMaterialHistory.ForeColor = System.Drawing.Color.Black;
+            this.btnMaterialHistory.Location = new System.Drawing.Point(8, 255);
+            this.btnMaterialHistory.Name = "btnMaterialHistory";
+            this.btnMaterialHistory.Size = new System.Drawing.Size(120, 28);
+            this.btnMaterialHistory.TabIndex = 52;
+            this.btnMaterialHistory.Text = "資材履歴";
+            this.btnMaterialHistory.UseVisualStyleBackColor = false;
+            this.btnMaterialHistory.Click += new System.EventHandler(this.btnMaterialHistory_Click);
+            // 
+            // label25
+            // 
+            this.label25.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label25.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label25.ForeColor = System.Drawing.Color.Black;
+            this.label25.Location = new System.Drawing.Point(9, 222);
+            this.label25.Name = "label25";
+            this.label25.Size = new System.Drawing.Size(87, 24);
+            this.label25.TabIndex = 53;
+            this.label25.Text = "コメント";
+            this.label25.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // txtComment
+            // 
+            this.txtComment.Location = new System.Drawing.Point(102, 223);
+            this.txtComment.Name = "txtComment";
+            this.txtComment.Size = new System.Drawing.Size(597, 23);
+            this.txtComment.TabIndex = 54;
+            // 
+            // lblRentCountAfter
+            // 
+            this.lblRentCountAfter.BackColor = System.Drawing.Color.White;
+            this.lblRentCountAfter.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblRentCountAfter.ForeColor = System.Drawing.Color.Black;
+            this.lblRentCountAfter.Location = new System.Drawing.Point(444, 192);
+            this.lblRentCountAfter.Name = "lblRentCountAfter";
+            this.lblRentCountAfter.Size = new System.Drawing.Size(100, 24);
+            this.lblRentCountAfter.TabIndex = 48;
+            this.lblRentCountAfter.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblRentCount
+            // 
+            this.lblRentCount.BackColor = System.Drawing.Color.White;
+            this.lblRentCount.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblRentCount.ForeColor = System.Drawing.Color.Black;
+            this.lblRentCount.Location = new System.Drawing.Point(444, 169);
+            this.lblRentCount.Name = "lblRentCount";
+            this.lblRentCount.Size = new System.Drawing.Size(100, 24);
+            this.lblRentCount.TabIndex = 43;
+            this.lblRentCount.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblMaterialCountAfter
+            // 
+            this.lblMaterialCountAfter.BackColor = System.Drawing.Color.White;
+            this.lblMaterialCountAfter.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialCountAfter.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialCountAfter.Location = new System.Drawing.Point(202, 192);
+            this.lblMaterialCountAfter.Name = "lblMaterialCountAfter";
+            this.lblMaterialCountAfter.Size = new System.Drawing.Size(100, 24);
+            this.lblMaterialCountAfter.TabIndex = 46;
+            this.lblMaterialCountAfter.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblMaterialCount
+            // 
+            this.lblMaterialCount.BackColor = System.Drawing.Color.White;
+            this.lblMaterialCount.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialCount.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialCount.Location = new System.Drawing.Point(202, 169);
+            this.lblMaterialCount.Name = "lblMaterialCount";
+            this.lblMaterialCount.Size = new System.Drawing.Size(100, 24);
+            this.lblMaterialCount.TabIndex = 41;
+            this.lblMaterialCount.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // txtTuika
+            // 
+            this.txtTuika.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtTuika.Location = new System.Drawing.Point(101, 139);
+            this.txtTuika.MaxLength = 4;
+            this.txtTuika.Name = "txtTuika";
+            this.txtTuika.Size = new System.Drawing.Size(100, 23);
+            this.txtTuika.TabIndex = 55;
+            this.txtTuika.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            this.txtTuika.TextChanged += new System.EventHandler(this.txtTuika_TextChanged);
+            this.txtTuika.Leave += new System.EventHandler(this.txtTuika_Leave);
+            // 
+            // txtHaki
+            // 
+            this.txtHaki.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtHaki.Location = new System.Drawing.Point(381, 139);
+            this.txtHaki.MaxLength = 4;
+            this.txtHaki.Name = "txtHaki";
+            this.txtHaki.Size = new System.Drawing.Size(100, 23);
+            this.txtHaki.TabIndex = 56;
+            this.txtHaki.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            this.txtHaki.TextChanged += new System.EventHandler(this.txtHaki_TextChanged);
+            this.txtHaki.Leave += new System.EventHandler(this.txtHaki_Leave);
+            // 
+            // FrmMaterialCountEntry
+            // 
+            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(708, 293);
+            this.Controls.Add(this.txtHaki);
+            this.Controls.Add(this.txtTuika);
+            this.Controls.Add(this.txtComment);
+            this.Controls.Add(this.label25);
+            this.Controls.Add(this.btnMaterialHistory);
+            this.Controls.Add(this.txtDataEntry);
+            this.Controls.Add(this.lblRentCountAfter);
+            this.Controls.Add(this.label20);
+            this.Controls.Add(this.lblMaterialCountAfter);
+            this.Controls.Add(this.label22);
+            this.Controls.Add(this.label23);
+            this.Controls.Add(this.lblRentCount);
+            this.Controls.Add(this.label17);
+            this.Controls.Add(this.lblMaterialCount);
+            this.Controls.Add(this.label14);
+            this.Controls.Add(this.label15);
+            this.Controls.Add(this.label13);
+            this.Controls.Add(this.label11);
+            this.Controls.Add(this.lblPerson);
+            this.Controls.Add(this.label9);
+            this.Controls.Add(this.lblMaterialDate);
+            this.Controls.Add(this.lblMaterialItem);
+            this.Controls.Add(this.lblMaterialKind);
+            this.Controls.Add(this.label4);
+            this.Controls.Add(this.label3);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label1);
+            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 = "FrmMaterialCountEntry";
+            this.Padding = new System.Windows.Forms.Padding(8);
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMaterialCountEntry_FormClosing);
+            this.Load += new System.EventHandler(this.FrmMaterialCountEntry_Load);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label lblMaterialKind;
+        private System.Windows.Forms.Label lblMaterialItem;
+        private System.Windows.Forms.Label lblMaterialDate;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label lblPerson;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.Label label15;
+        private System.Windows.Forms.Label label14;
+        private System.Windows.Forms.Label label17;
+        private System.Windows.Forms.Label label20;
+        private System.Windows.Forms.Label label22;
+        private System.Windows.Forms.Label label23;
+        private System.Windows.Forms.Button txtDataEntry;
+        private System.Windows.Forms.Button btnMaterialHistory;
+        private System.Windows.Forms.Label label25;
+        private System.Windows.Forms.TextBox txtComment;
+        private System.Windows.Forms.Label lblRentCountAfter;
+        private System.Windows.Forms.Label lblRentCount;
+        private System.Windows.Forms.Label lblMaterialCountAfter;
+        private System.Windows.Forms.Label lblMaterialCount;
+        private System.Windows.Forms.TextBox txtTuika;
+        private System.Windows.Forms.TextBox txtHaki;
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialCountEntry/FrmMaterialCountEntry.resx	(revision 51)
@@ -0,0 +1,120 @@
+<?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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.cs	(revision 51)
@@ -0,0 +1,1594 @@
+using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Linq;
+using System.Diagnostics;
+using System.Threading;
+using System.Text.RegularExpressions;
+
+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.Master;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+//*------------------------ 単位マスタメンテ画面 ----------------------*
+//  2015/07/14  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmMaterialReserveEntry : Form
+    {
+        #region グリッド並び替え
+        private class RowComparer : System.Collections.IComparer
+        {
+            private static int sortOrderModifier = 1;
+
+            public RowComparer()
+            {
+            }
+
+            public int Compare(object x, object y)
+            {
+                DataGridViewRow DataGridViewRow1 = (DataGridViewRow)x;
+                DataGridViewRow DataGridViewRow2 = (DataGridViewRow)y;
+
+                int CompareResult = System.String.Compare(
+                    DataGridViewRow1.Cells[(int)DispColumn.MaterialKindDisplayOrder].Value.ToString(),
+                    DataGridViewRow2.Cells[(int)DispColumn.MaterialKindDisplayOrder].Value.ToString());
+
+                if (CompareResult == 0)
+                {
+                    CompareResult = System.String.Compare(
+                        DataGridViewRow1.Cells[(int)DispColumn.MaterialItemDisplayOrder].Value.ToString(),
+                        DataGridViewRow2.Cells[(int)DispColumn.MaterialItemDisplayOrder].Value.ToString());
+                }
+                return CompareResult * sortOrderModifier;
+            }
+        }
+
+
+        #endregion
+
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispColumn
+        {
+            RowState = 0,
+            DisplayOrder,
+            MaterialKindCode,
+            MaterialKindName,
+            MaterialKindDisplayOrder,
+            MaterialItemCode,
+            MaterialItemName,
+            MaterialItemDisplayOrder,
+            RentCount,
+            MaterialCount,
+            MaterialCountBefore,
+            RepayPlanDate,
+            CommentText,
+        }
+
+        private enum DataColumn
+        {
+            MaterialKindCode = 0,
+            MaterialKindName,
+            MaterialKindDisplayOrder,
+            MaterialItemCode,
+            MaterialItemName,
+            MaterialItemDisplayOrder,
+            RentCount,
+            MaterialCount,
+            RepayPlanDate,
+            CommentText,
+        }
+        /// <summary>
+        /// マスタリストMAXライン
+        /// </summary>
+        //private const int s_ListMaxLineCount = 53;
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// フィールド値変化フラグ
+        /// </summary>
+        private bool m_bChengeAns = false;
+
+        /// <summary>
+        /// ダイアログ使用フラグ
+        /// </summary>
+        private bool m_DialogFlg = false;
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+        /// <summary>
+        /// 終了ボタン押下フラグ
+        /// </summary>
+        private bool m_EndButton = false;
+
+        /// <summary>
+        /// データ操作
+        /// </summary>
+        private IOMaterialInfo m_IoMi = null;
+
+        /// <summary>
+        /// 貸出日変更前値
+        /// </summary>
+        private string m_ProcessPrev = "";
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        // *-----* 共通処理設定 *-----*
+        /// <summary>
+        /// サブフォームフラグ
+        /// </summary>
+        private bool m_SubForm = false;
+        /// <summary>
+        /// 呼出元終了フラグ
+        /// </summary>
+        private bool m_ParentEnd = false;
+        // *-----* 共通処理設定 *-----*
+
+        private bool m_CloseingProcessOn = false;
+        
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialReserveEntry()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialReserveEntry()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+        #region プロパティ
+        /// <summary>
+        /// ダイアログ使用時フラグ
+        /// </summary>
+        public bool DialogUsed
+        {
+            set { m_DialogFlg = value; }
+        }
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+
+        }
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
+        // *-----* 共通処理設定 *-----*
+        /// <summary>
+        /// サブフォームフラグ
+        /// </summary>
+        public bool SubForm
+        {
+            get { return m_SubForm; }
+            set { m_SubForm = value; }
+        }
+        /// <summary>
+        /// 呼出元終了フラグ
+        /// </summary>
+        public bool ParentEnd
+        {
+            get { return m_ParentEnd; }
+            set { m_ParentEnd = value; }
+        }
+        // *-----* 共通処理設定 *-----*
+
+        #endregion
+
+
+        #region イベントメソッド
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialReserveEntry_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            try
+            {
+                if (m_EndButton) return;
+                if (m_bChengeAns)
+                {
+                    if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        e.Cancel = true;
+                        return;
+                    }
+                }
+                // 前プロセスに戻る
+                ClsExcute.BackProcess();
+
+            }
+            finally
+            {
+                // ロック解除用
+                if (e.Cancel != true && m_IoMi != null)
+                {
+                    m_IoMi.rollback();
+                    m_IoMi.close();
+                    m_IoMi = null;
+                }
+
+            }
+        }
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialReserveEntry_Load(object sender, EventArgs e)
+        {
+
+            // ロックを実行する為
+            try
+            {
+                m_IoMi = new IOMaterialInfo();
+                m_IoMi.connect();
+                m_IoMi.SetLockWaitime(1);
+                m_IoMi.beginTran();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                this.Close();
+            }
+
+            if(m_EditLock) btnDataEntry.Enabled = false;
+
+            // 初期表示
+            InitDataLoad();
+            
+            // ダイアログ使用時
+            if (m_DialogFlg)
+            {
+                //フォームの幅だけを変更する
+                this.SetBounds(this.Left, this.Top, (this.Width - 40), this.Height, BoundsSpecified.Width);
+            }
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // ボタン表示の制御
+            ButtonVisble(this);
+
+            // *-----* 処理移動ボタン設定 *-----*
+            CreateProcessContextMenu(m_SubForm);
+            // *-----* 処理移動ボタン設定 *-----*
+
+        }
+
+        /// <summary>
+        /// 行データクリア
+        /// </summary>
+        /// <param name="iIndex">行カウント</param>
+        private void SetRowClearData(int iIndex)
+        {
+            // クリアデータセット
+        }
+
+        /// <summary>
+        /// グリッド採番処理
+        /// </summary>
+        private void LineReNumbering()
+        {
+            int icnt = 1;
+            foreach (DataGridViewRow r in dgvMaster.Rows)
+            {
+                // 表示されているものだけ採番
+                if (r.Visible)
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = (icnt++).ToString();
+                else
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = "0";
+            }
+        }
+        /// <summary>
+        /// 行追加ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineEntry_Click(object sender, EventArgs e)
+        {
+            // 行がない場合は作成して抜ける
+            if (dgvMaster.Rows.Count == 0)
+            {
+                if (MessageBox.Show("行を追加します", "追加確認"
+                                    , MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.Cancel) return;
+
+                // 行追加
+                dgvMaster.Rows.Add();
+                // クリアデータセット
+                SetRowClearData(0);
+                // №再採番
+                LineReNumbering();
+                //　変更フラグOn
+                valueChange(sender, e);
+                // フォーカス移動
+                dgvMaster.Focus();
+                return;
+            }
+
+            // メッセージ表示
+            BtnTextCustomMessageBox msg = new BtnTextCustomMessageBox();
+            msg.ButtonText.No = "前へ追加";
+            msg.ButtonText.Yes = "後へ追加";
+            msg.ButtonText.Cancel = "キャンセル";
+            DialogResult resRet = msg.Show("行の前・後を選択してください。", "追加確認"
+                                            , MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
+
+            // キャンセルは処理しない
+            if (resRet == DialogResult.Cancel) return;
+
+            // カレント行取得
+            int iIndex = dgvMaster.CurrentRow.Index;
+            // 最終行
+            if (iIndex == dgvMaster.RowCount - 1)
+            {
+                if (resRet == DialogResult.No)
+                {
+                    // 前
+                    dgvMaster.Rows.Insert(iIndex);
+                }
+                else if (resRet == DialogResult.Yes)
+                {
+                    // 後
+                    dgvMaster.Rows.Add();
+                    iIndex = (dgvMaster.RowCount - 1);
+                }
+            }
+            else
+            {
+                if (resRet == DialogResult.Yes)
+                {
+                    // 後ろ
+                    ++iIndex;
+                }
+                dgvMaster.Rows.Insert(iIndex);
+            }
+
+            // クリアデータセット
+            SetRowClearData(iIndex);
+
+            // №再採番
+            LineReNumbering();
+
+            //　変更フラグOn
+            valueChange(sender, e);
+
+            // フォーカス移動
+            dgvMaster.Focus();
+            //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+            //dgvMaster.CurrentCell = dgvMaster[0, iIndex];
+        }
+
+        /// <summary>
+        /// フィールド値変更フラグ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void valueChange(object sender, EventArgs e)
+        {
+            m_bChengeAns = true;
+        }
+
+        /// <summary>
+        /// セル値変化
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            
+            // インデックス外は処理しない
+            if (e.RowIndex < 0 || e.ColumnIndex < 0) return;
+            // null値は処理しない
+            if (dgvMaster.Rows[e.RowIndex].Cells[e.ColumnIndex].Value == null) return;
+
+            // 値が変わればツールチップを変更する
+            dgvMaster.Rows[e.RowIndex].Cells[e.ColumnIndex].ToolTipText
+                = CommonMotions.cnvString(((DataGridView)sender).Rows[e.RowIndex].Cells[e.ColumnIndex].Value);
+            // 変更フラグON
+            m_bChengeAns = true;
+        }
+                /// <summary>
+        /// 行削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineDelete_Click(object sender, EventArgs e)
+        {
+            IOMUnit uDB = new IOMUnit();
+
+            try
+            {
+                //if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)DispColumn.NameString].Value)) return;
+
+                if (MessageBox.Show("選択した行データを削除します。", "削除確認"
+                    , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+
+                // 表示行退避
+                int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                uDB.connect();
+                uDB.beginTran();
+
+                string strSQL = uDB.CreatePrimarykeyString(CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemName].Value));
+                if (!uDB.DeleteAction(strSQL, false))
+                {
+                    uDB.rollback();
+                    MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                uDB.commit();
+
+                // データ表示
+                if (!DispGridData()) return;
+
+                // 表示行復元
+                dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+
+                // 変更フラグOff
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                uDB.close();
+                uDB = null;
+            }
+        }
+
+        /// <summary>
+        /// 登録ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return;
+
+                if (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+
+                // 表示行退避
+                int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                // データ登録
+                if (!DataEntry()) return;
+
+                m_bChengeAns = false;
+                LoadComboBox();
+
+                this.Refresh();
+
+                // データ表示
+                if (!DispGridData()) return;
+
+                // 表示行復元
+                dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// IMEのコントロール
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellEnter(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                if (dgv.CurrentCell.ReadOnly) return;
+
+                //列によってIMEのモードを変更する
+                if (dgv.Columns[e.ColumnIndex].Name.Equals("Column3"))
+                {
+                    dgv.ImeMode = ImeMode.On;
+                }
+                else
+                {
+                    dgv.ImeMode = ImeMode.Disable;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+
+        /// <summary>
+        /// セルダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // ダイアログとして使用するとき以外は処理しない
+            if (!m_DialogFlg) return;
+
+            if (e.RowIndex < 0) return;
+
+            btnEnd_Click(sender, (EventArgs)e);
+        }
+
+        /// <summary>
+        /// Formキーダウン処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialReserveEntry_KeyDown(object sender, KeyEventArgs e)
+        {
+            // DataGridviewは処理しない
+            if (ActiveControl.Name.Equals("dgvMaster"))
+            {
+                return;
+            }
+        }
+
+        #endregion
+
+        #region プライベートメソッド
+        /// <summary>
+        /// コンボボックスのロード
+        /// </summary>
+        private void LoadComboBox()
+        {
+            IOMaterialRecordInfo IoMri = new IOMaterialRecordInfo();
+            List<KeyValuePair<string, string>> DataList;
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                if (ConstructionCode == 0) return;
+
+                if (!IoMri.ExecuteReader(string.Format("select DATE_FORMAT(ProcessDate, '%Y/%m/%d') from MaterialRecordInfo where ConstructionCode = {0} and RECKIND = 0 group by ProcessDate order by ProcessDate desc", ConstructionCode), ref arData)) return;
+
+                DataList = new List<KeyValuePair<string, string>>();
+                if (arData.Count == 0)
+                {
+                    DataList.Add(new KeyValuePair<string, string>("0", "新規"));
+                }
+                // データ表示
+                int cnt = 0;
+                foreach (object[] work in arData)
+                {
+                    if (cnt == 0 && CommonMotions.cnvString(work[0]) != DateTime.Now.Date.ToString("yyyy/MM/dd"))
+                    {
+                        DataList.Add(new KeyValuePair<string, string>("0", "新規"));
+                    }
+                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(CommonMotions.cnvString(work[0]), CommonMotions.cnvString(work[0]));
+
+                    DataList.Add(keyval);
+                    cnt++;
+                }
+
+                // コンボボックス初期表示
+                cmbProcessDate.DataSource = null;
+                cmbProcessDate.ValueMember = "Key";
+                cmbProcessDate.DisplayMember = "Value";
+                ComboBoxAction.InitDataSetCombBox(cmbProcessDate, DataList, false);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoMri.close();
+                IoMri = null;
+            }
+        }
+
+
+
+
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            IOConstructionBaseInfoDetail IoConB = new IOConstructionBaseInfoDetail();
+            ConstructionBaseInfoDetail ConB = new ConstructionBaseInfoDetail();
+            try
+            {
+
+
+                //テスト用工事番号
+                //ConstructionCode = 2016020201;
+
+                // 画面表示用データ取得
+                if (!IoConB.SelectAction(string.Format(" where ConstructionCode = {0} and DETAILNO = 2", ConstructionCode), ref ConB)) return ;
+
+                lblDETAILSTRING.Text = ConB.DetailString;
+
+                // 担当にログインユーザー名を表示
+                lblPerson.Text = CommonMotions.LoginUserData.PersonName;
+
+                // コンボボックス設定
+                LoadComboBox();
+
+                // ダイアログ使用時
+                if (m_DialogFlg)
+                {
+                    label1.Text = "単位マスタ検索一覧";
+                }
+
+                m_bChengeAns = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            bool bAns = true;
+            string sErrmsg = "";
+            int errorCol = 0;
+            try
+            {
+
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    CommonMotions.chgBackColor(r.Cells[(int)DispColumn.MaterialCount], true);
+                    CommonMotions.chgBackColor(r.Cells[(int)DispColumn.RepayPlanDate], true);
+                    CommonMotions.chgBackColor(r.Cells[(int)DispColumn.CommentText], true);
+                }
+
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    //
+                    bAns = true;
+                    if (CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCount].Value) == 0)
+                    {
+                        bAns = false;
+                        sErrmsg = "貸出数が入力されていません。";
+                        errorCol = (int)DispColumn.MaterialCount;
+                    }
+
+                    Regex regex = new Regex(@"^[0-9]+$");
+                    Match match = regex.Match(r.Cells[(int)DispColumn.MaterialCount].Value.ToString());
+                    if (!match.Success)
+                    {
+                        bAns = false;
+                        sErrmsg = "１以上の整数を入力してください。";
+                        errorCol = (int)DispColumn.MaterialCount;
+                    }
+
+                    // 背景色変更
+                    CommonMotions.chgBackColor(r.Cells[errorCol], bAns);
+
+                    DateTime dt;
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.RepayPlanDate].Value).Length == 0)
+                    {
+                        bAns = false;
+                        sErrmsg = "データが入力されていません、確認してください。";
+                        errorCol = (int)DispColumn.RepayPlanDate;
+                    }
+                    regex = new Regex(@"^(\d{4})/(0[1-9]|1[0-2])/(0[1-9]|[12][0-9]|3[01])$");
+                    match = regex.Match(CommonMotions.cnvString(r.Cells[(int)DispColumn.RepayPlanDate].Value));
+                    if(!match.Success)
+                    {
+                        bAns = false;
+                        sErrmsg = "日付のフォーマットが不正です。(YYYY/MM/DD形式で入力してください)";
+                        errorCol = (int)DispColumn.RepayPlanDate;
+                    }
+                    else if (!DateTime.TryParse(CommonMotions.cnvString(r.Cells[(int)DispColumn.RepayPlanDate].Value), out dt))
+                    {
+                        bAns = false;
+                        sErrmsg = "日付のフォーマットが不正です。";
+                        errorCol = (int)DispColumn.RepayPlanDate;
+                    }
+                    else if (dt.Date <= DateTime.Now.Date)
+                    {                    
+                        bAns = false;
+                        sErrmsg = "返却予定日には、当日以前は設定できません。";
+                        errorCol = (int)DispColumn.RepayPlanDate;
+                    }
+
+                    // 背景色変更
+                    CommonMotions.chgBackColor(r.Cells[errorCol], bAns);
+
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.CommentText].Value) != "")
+                    {
+                        // レングスチェック
+                        int len = Encoding.GetEncoding("Shift_JIS").GetByteCount(CommonMotions.cnvString(r.Cells[(int)DispColumn.CommentText].Value));
+                        if (len > 80)
+                        {
+                            bAns = false;
+                            sErrmsg = "入力エラーがあります、確認してください。";
+                            errorCol = (int)DispColumn.CommentText;
+                        }
+                    }
+
+                    // 背景色変更
+                    CommonMotions.chgBackColor(r.Cells[errorCol], bAns);
+                    bRet &= bAns;
+
+                }
+
+                if (!bRet)
+                {
+                    MessageBox.Show(sErrmsg, "データ確認"
+                                                , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                }
+
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+      }
+
+        /// <summary>
+        /// データ登録
+        /// </summary>
+        private bool DataEntry()
+        {
+
+            IOMaterialRecordInfo IoMri = new IOMaterialRecordInfo();
+            IOConstructionMaterialInfo IoCmi = new IOConstructionMaterialInfo();
+
+            MaterialInfo MiWork;
+            ConstructionMaterialInfo CmiWork;
+            MaterialRecordInfo MriWork;
+
+            List<ConstructionMaterialInfo> CmiList;
+            List<MaterialRecordInfo> MriList;
+
+            try
+            {
+
+                DataRowState CmiState = DataRowState.Unchanged;
+                DataRowState MriState = DataRowState.Unchanged;
+
+                // 貸出日指定
+                string strProcessdate = cmbProcessDate.SelectedValue.ToString() == "0" ?
+                                        DateTime.Now.Date.ToString("yyyy/MM/dd") : cmbProcessDate.SelectedValue.ToString();
+
+                IoMri.connect();
+                IoMri.beginTran();
+
+                IoCmi.connect();
+                IoCmi.beginTran();
+
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    bool bProcessNoToday = false;
+                    MiWork = new MaterialInfo();
+                    CmiWork = new ConstructionMaterialInfo();
+                    MriWork = new MaterialRecordInfo();
+
+                    CmiList = new List<ConstructionMaterialInfo>();
+                    MriList = new List<MaterialRecordInfo>();
+
+                    int intMaterialItemCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialItemCode].Value);
+                    int intRentCount= CommonMotions.cnvInt(r.Cells[(int)DispColumn.RentCount].Value);
+                    int intMaterialCount = CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCount].Value);
+                    int intMaterialCountBefore = CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCountBefore].Value);
+
+                    ArrayList arData = new ArrayList();
+                    // 当日以外のデータが存在するか調査
+                    string sql = string.Format("select ProcessDate from MaterialRecordInfo where ProcessDate <> DATE_FORMAT('{0}','%Y/%m/%d') and ConstructionCode = {1} and MaterialItemCode = {2} and RECKIND = 0 group by ProcessDate", strProcessdate, m_ConstructionCode, intMaterialItemCode);
+                    IoMri.ExecuteReader(sql, ref arData,false);
+                    if (arData.Count != 0) bProcessNoToday = true;
+
+                    // 資材情報
+                    string strSQL = m_IoMi.CreatePrimarykeyString(intMaterialItemCode);
+                    List<MaterialInfo> MiList = new List<MaterialInfo>();
+                    if (!m_IoMi.SelectAction(strSQL, ref MiList, false))
+                    {
+                        MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+
+                    // 更新ロック
+                    m_IoMi.rollback();
+                    if (!m_IoMi.RowLockUpdate(intMaterialItemCode, false))
+                    {
+                        m_IoMi.RowLockShare(intMaterialItemCode, false);
+                        MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                    // 登録チェック②－２
+                    if ((MiList[0].RentCount + CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCountBefore].Value)) < CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCount].Value))
+                    {
+                        m_IoMi.rollback();
+                        m_IoMi.RowLockShare(intMaterialItemCode, false);
+                        MessageBox.Show("割当可能数を超えて、資材の予約できません。", "登録エラー"
+                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+
+                    // 解除時は前貸出数を加算
+                    MiWork.MaterialCount = MiList[0].MaterialCount;
+                    if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Deleted)
+                    {
+                        MiWork.RentCount = intRentCount + intMaterialCountBefore;
+                    }
+                    else
+                    {
+                        MiWork.RentCount = (intRentCount + intMaterialCountBefore) - intMaterialCount;
+                    }
+                    MiWork.DeleteFlg = MiList[0].DeleteFlg;
+
+                    // データ登録
+                    if (!m_IoMi.UpdateAction(strSQL, MiWork, false))
+                    {
+                        m_IoMi.rollback();
+                        m_IoMi.RowLockShare(intMaterialItemCode, false);
+                        MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+
+                    // データ操作内容設定
+                    if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Added)
+                    {
+                        if (bProcessNoToday == false)        // 登録時のDB登録について　１
+                        {
+                            CmiState = DataRowState.Added;
+                            MriState = DataRowState.Added;
+
+                        }
+                        else if (bProcessNoToday == true)   // 登録時のDB登録について　２
+                        {
+                            CmiState = DataRowState.Modified;
+                            MriState = DataRowState.Added;
+                        }
+                    }
+                    else if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Unchanged)   
+                    {
+                        // 登録時のDB登録について　３、４
+                        CmiState = DataRowState.Modified;
+                        MriState = DataRowState.Modified;
+                    }
+                    else if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Deleted)
+                    {
+                        if (bProcessNoToday == false)        // 登録時のDB登録について　５
+                        {
+                            CmiState = DataRowState.Deleted;
+                            MriState = DataRowState.Deleted;
+                        }
+                        else if (bProcessNoToday == true)   // 登録時のDB登録について　６
+                        {
+                            CmiState = DataRowState.Modified;
+                            MriState = DataRowState.Deleted;
+                        }
+                    }
+
+
+                    //  工事資材情報
+                    CmiWork.ConstructionCode = m_ConstructionCode;
+                    CmiWork.MaterialItemCode = intMaterialItemCode;
+                    CmiWork.CompleteFlg = 0;
+
+                    if (CmiState == DataRowState.Added) // 工事資材情報 新規
+                    {
+                        CmiWork.RentCount = intMaterialCount;
+                        CmiWork.RepayCount = 0;
+
+                        CmiList.Clear();
+                        CmiList.Add(CmiWork);
+                        // データ登録
+                        if (!IoCmi.InsertAction(CmiList, false))
+                        {
+                            m_IoMi.rollback();
+                            m_IoMi.RowLockShare(intMaterialItemCode, false);
+                            IoCmi.rollback();
+                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return false;
+                        }
+
+                    }
+                    else if (CmiState == DataRowState.Modified || CmiState == DataRowState.Deleted) // 工事資材情報 更新or削除
+                    {
+                        // 工事資材情報　
+                        strSQL = IoCmi.CreatePrimarykeyString(m_ConstructionCode, intMaterialItemCode);
+                        if (!IoCmi.SelectAction(strSQL, ref CmiList, false))
+                        {
+                            m_IoMi.rollback();
+                            m_IoMi.RowLockShare(intMaterialItemCode, false);
+                            MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return false;
+                        }
+
+                        // 解除時は前貸出数を減算
+                        if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Deleted)
+                        {
+                            CmiWork.RentCount = (CmiList[0].RentCount - intMaterialCountBefore);
+                        }
+                        else
+                        {
+                            CmiWork.RentCount = (CmiList[0].RentCount - intMaterialCountBefore) + intMaterialCount;
+                        }
+                        if (CmiList.Count != 0)
+                        {
+                            CmiWork.RepayCount = CmiList[0].RepayCount;
+                        }
+
+                        // ロック
+                        if (!IoCmi.RowLock(m_ConstructionCode, intMaterialItemCode, false))
+                        {
+                            m_IoMi.rollback();
+                            m_IoMi.RowLockShare(intMaterialItemCode, false);
+                            MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                            , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return false;
+                        }
+
+                        if (CmiState == DataRowState.Modified)  // 更新
+                        {
+                            // データ更新
+                            if (!IoCmi.UpdateAction(strSQL, CmiWork, false))
+                            {
+                                m_IoMi.rollback();
+                                m_IoMi.RowLockShare(intMaterialItemCode, false);
+                                IoCmi.rollback();
+                                MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                return false;
+                            }
+                        }
+                        else if (CmiState == DataRowState.Deleted)  // 削除
+                        {
+                            // データ更新
+                            if (!IoCmi.DeleteAction(strSQL, false))
+                            {
+                                m_IoMi.rollback();
+                                m_IoMi.RowLockShare(intMaterialItemCode, false);
+                                IoCmi.rollback();
+                                MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                return false;
+                            }
+                        }
+
+                    }
+
+                    // 資材履歴情報
+                    MriWork.MaterialCount = intMaterialCount;
+                    MriWork.RepayPlanDate = CommonMotions.cnvDate(r.Cells[(int)DispColumn.RepayPlanDate].Value);
+                    MriWork.CommentText = CommonMotions.cnvString(r.Cells[(int)DispColumn.CommentText].Value);
+                    MriWork.ConstructionCode = m_ConstructionCode;
+                    MriWork.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                    MriWork.RecKind = 0;
+
+                    strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode, CommonMotions.cnvDate(strProcessdate));
+
+                    if (MriState == DataRowState.Added) // 資材履歴情報 新規
+                    {
+                        MriWork.MaterialItemCode = intMaterialItemCode;
+                        MriWork.ProcessDate = CommonMotions.cnvDate(strProcessdate);
+                        MriWork.SeqNo = IoMri.SelectMaxMaterialRecordKeyCount(strSQL,false) + 1;
+
+                        MriList.Clear();
+                        MriList.Add(MriWork);
+                        // データ登録
+                        if (!IoMri.InsertAction(MriList, false))
+                        {
+                            m_IoMi.rollback();
+                            m_IoMi.RowLockShare(intMaterialItemCode, false);
+                            IoCmi.rollback();
+                            IoMri.rollback();
+                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return false;
+                        }
+                    }
+                    else if (MriState == DataRowState.Modified || MriState == DataRowState.Deleted) // 資材履歴情報 更新or削除
+                    {
+                        // データ確認
+                        strSQL += "and RecKind = 0";
+                        if (!IoMri.SelectAction(strSQL, ref MriList, false))
+                        {
+                            m_IoMi.rollback();
+                            m_IoMi.RowLockShare(intMaterialItemCode, false);
+                            IoCmi.rollback();
+                            MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return false;
+                        }
+
+                        // ロック
+                        if (!IoMri.RowLock(intMaterialItemCode, MriList[0].ProcessDate, MriList[0].SeqNo, false))
+                        {
+                            m_IoMi.rollback();
+                            m_IoMi.RowLockShare(intMaterialItemCode, false);
+                            IoCmi.rollback();
+                            MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                            , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return false;
+                        }
+
+                        if (MriState == DataRowState.Modified)  // 更新
+                        {
+                            // データ更新
+                            if (!IoMri.UpdateAction(strSQL, MriWork, false))
+                            {
+                                m_IoMi.rollback();
+                                m_IoMi.RowLockShare(intMaterialItemCode, false);
+                                IoCmi.rollback();
+                                IoMri.rollback();
+                                MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                return false;
+                            }
+                        }
+                        else if (MriState == DataRowState.Deleted)  // 削除
+                        {
+                            // データ更新
+                            if (!IoMri.DeleteAction(strSQL, false))
+                            {
+                                m_IoMi.rollback();
+                                m_IoMi.RowLockShare(intMaterialItemCode, false);
+                                IoCmi.rollback();
+                                IoMri.rollback();
+                                MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                return false;
+                            }
+                        }
+                    }
+
+                }
+
+                m_IoMi.commit();
+                IoCmi.commit();
+                IoMri.commit();
+
+                //LoadComboBox();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoMri.close();
+                IoMri = null;
+                IoCmi.close();
+                IoCmi = null;
+            }
+            return true;
+        }
+
+        /// <summary>
+        /// グリッド表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DispGridData()
+        {
+            IOConstructionMaterialInfo IoCmi = new IOConstructionMaterialInfo();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // 貸出日指定
+                string strProcessdate = cmbProcessDate.SelectedValue.ToString() == "0" ?
+                                        DateTime.Now.Date.ToString("yyyy/MM/dd") : cmbProcessDate.SelectedValue.ToString();
+                
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                // SQL作成
+                StringBuilder sql = new StringBuilder();
+                sql.AppendLine("select   Mkm.MaterialKindCode ");
+                sql.AppendLine("        ,Mkm.MaterialKindName ");
+                sql.AppendLine("        ,Mkm.DisplayOrder ");
+                sql.AppendLine("        ,Mim.MaterialItemCode ");
+                sql.AppendLine("        ,Mim.MaterialItemName ");
+                sql.AppendLine("        ,Mim.DisplayOrder ");
+                sql.AppendLine("		,ifnull(Mi.RentCount,0)	as RentCount ");
+                sql.AppendLine("        ,Mri.MaterialCount ");
+                sql.AppendLine("        ,ifnull(DATE_FORMAT(Mri.RepayPlanDate, '%Y/%m/%d'),'') as RepayPlanDate ");
+                sql.AppendLine("        ,ifnull(Mri.CommentText,'') as CommentText ");
+                sql.AppendLine("from MaterialRecordInfo as Mri 	left join MaterialInfo as Mi on Mri.MaterialItemCode = Mi.MaterialItemCode ");
+                sql.AppendLine("								left join (MaterialItemMaster as Mim left join MaterialKindMaster as Mkm on Mim.MaterialKindCode = Mkm.MaterialKindCode) on Mri.MaterialItemCode = Mim.MaterialItemCode ");
+                sql.AppendFormat("where Mri.CONSTRUCTIONCODE = {0} ", ConstructionCode);
+                sql.AppendFormat("and Mri.PROCESSDATE = '{0}' ", strProcessdate);
+                sql.AppendLine("and Mri.RECKIND = 0 ");
+                //sql.AppendLine("order by Mri.PROCESSDATE desc ");
+
+                // データ取得
+                if (!IoCmi.ExecuteReader(sql.ToString(), ref arData)) return false;
+
+                // データ表示
+                int icnt = 0;
+                foreach (object[] work in arData)
+                {
+                    dgvMaster.Rows.Add();
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RowState].Value = DataRowState.Unchanged;
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindCode].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialKindCode]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindDisplayOrder].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialKindDisplayOrder]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemCode].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialItemCode]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemName].Value = CommonMotions.cnvString(work[(int)DataColumn.MaterialItemName]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemDisplayOrder].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialItemDisplayOrder]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RentCount].Value = CommonMotions.cnvInt(work[(int)DataColumn.RentCount]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialCount].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialCount]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialCountBefore].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialCount]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RepayPlanDate].Value = CommonMotions.cnvString(work[(int)DataColumn.RepayPlanDate]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.CommentText].Value = CommonMotions.cnvString(work[(int)DataColumn.CommentText]);
+
+                    icnt++;
+
+                    // 共有ロック
+                    if (!m_IoMi.RowLockShare(CommonMotions.cnvInt(work[(int)DataColumn.MaterialItemCode]), false))
+                    {
+                        return false;
+                    }
+
+                }
+
+                // グリッドを資材種類表示、資材品目表示順にソート
+                dgvMaster.Sort(new RowComparer());
+
+                icnt = 0;
+                foreach (DataGridViewRow work in dgvMaster.Rows)
+                {
+                    string chkString = CommonMotions.cnvString(work.Cells[(int)DispColumn.MaterialKindName].Value);
+
+                    if (!(icnt == 0
+                        || (icnt != 0 && (!chkString.Equals(dgvMaster.Rows[icnt - 1].Cells[(int)DispColumn.MaterialKindName].ToolTipText)))))
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = "";
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText = chkString;
+                    }
+                    icnt++;
+                }
+
+                // №再採番
+                LineReNumbering();
+
+                //// 表示行が足りない場合は追加する
+                //if (dgvMaster.Rows.Count <= CommonDefine.s_MaxInitLineCountMastamente)
+                //{
+                //    int iAddLine = CommonDefine.s_MaxInitLineCountMastamente - dgvMaster.Rows.Count;
+                //    for (int i = 0; i < iAddLine; i++)
+                //    {
+                //        dgvMaster.Rows.Add();
+                //    }
+                //}
+
+                // ボタン制御
+                setButtonEnable();
+                m_bChengeAns = false;
+
+                // 貸出日退避
+                m_ProcessPrev = strProcessdate;
+                //dgvMaster.Rows.Add();
+                //// クリアデータセット
+                //SetRowClearData(dgvMaster.Rows.Count - 1);
+
+                //// 読込時データカウント取得
+                //m_initDataCount = IoCmi.Count;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoCmi.close();
+                IoCmi = null;
+            }
+            return true;
+        }
+
+        /// <summary>
+        /// ボタンの表示・非表示制御
+        /// </summary>
+        private void ButtonVisble(Control Parent)
+        {
+            bool bAns = true;
+            if (m_DialogFlg){
+
+                bAns = false;
+            }
+            else
+            {
+                bAns = true;
+            }
+
+            foreach (Control ctrl in Parent.Controls)
+            {
+                if (ctrl.GetType().Equals(typeof(Button)))
+                {
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.ToString() != btnEnd.Name.ToString()) ctrl.Visible = bAns;
+                }
+            }
+            // グリッドの読込のみ制御
+            dgvMaster.ReadOnly = m_DialogFlg;
+        }
+
+
+
+        /// <summary>
+        /// 資材選択押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnMaterialSelect_Click(object sender, EventArgs e)
+        {
+            FrmMaterialSelect sel = new FrmMaterialSelect();
+            sel.ShowDialog();
+            if (sel.EndButton == DialogResult.OK)
+            {
+                List<MaterialItemMaster> items = sel.MaterialItemNames;
+                List<MaterialKindMaster> kind = sel.MaterialKindNames;
+                int cnt = 0;
+                int setRow = 0;
+                foreach (MaterialItemMaster item in items)
+                {
+
+                    // 品目調査
+                    DataGridViewRow[] rows = dgvMaster.Rows.Cast<DataGridViewRow>()
+                                                                .Where(x => x.Cells[(int)DispColumn.MaterialKindCode].Value.ToString() == kind[cnt].MaterialKindCode.ToString() && x.Cells[(int)DispColumn.MaterialItemCode].Value.ToString() == item.MaterialItemCode.ToString()).ToArray();
+                    if (rows.Count() > 0)
+                    {
+                        rows[0].Visible = true;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.RowState].Value = DataRowState.Unchanged;
+                    }
+                    else
+                    {
+                        setRow = dgvMaster.Rows.Count == 0 ? 0 : dgvMaster.Rows.Count;
+
+                        // 1行追加
+                        dgvMaster.Rows.Add();
+
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.RowState].Value = DataRowState.Added;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.MaterialKindCode].Value = kind[cnt].MaterialKindCode;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.MaterialKindName].Value = kind[cnt].MaterialKindName;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.MaterialKindName].ToolTipText = kind[cnt].MaterialKindName;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.MaterialKindDisplayOrder].Value = kind[cnt].DisplayOrder;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.MaterialItemCode].Value = item.MaterialItemCode;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.MaterialItemName].Value = item.MaterialItemName;
+                        dgvMaster.Rows[setRow].Cells[(int)DispColumn.MaterialItemDisplayOrder].Value = item.DisplayOrder;
+
+                        List<MaterialInfo> lMi = new List<MaterialInfo>();
+                        m_IoMi.SelectAction(string.Format(" where MaterialItemCode = {0}", item.MaterialItemCode), ref lMi, false);
+                        if (lMi.Count != 0)
+                        {
+                            dgvMaster.Rows[setRow].Cells[(int)DispColumn.RentCount].Value = lMi[0].RentCount;
+                        }
+                        else
+                        {
+                            dgvMaster.Rows[setRow].Cells[(int)DispColumn.RentCount].Value = 0;
+                        }
+                        // 共有ロック
+                        if (!m_IoMi.RowLockShare(item.MaterialItemCode, false))
+                        {
+                            return;
+                        }
+                    }
+
+                    cnt++;
+                }
+
+                // グリッドを資材種類表示、資材品目表示順にソート
+                dgvMaster.Sort(new RowComparer());
+
+                // 資材種類名称設定
+                for (int icnt = dgvMaster.Rows.Count - 1; icnt >= 0; icnt--)
+                {
+                    string chkString = CommonMotions.cnvString(dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText);
+                    if ((icnt - 1) >= 0 &&
+                        dgvMaster.Rows[icnt - 1].Visible == true &&
+                        chkString.Equals(dgvMaster.Rows[icnt - 1].Cells[(int)DispColumn.MaterialKindName].ToolTipText))
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = "";
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText = chkString;
+                    }
+                    else
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = chkString;
+                    }
+                }
+
+                // №再採番
+                LineReNumbering();
+            
+            }
+        }
+
+        /// <summary>
+        /// グリッド最終行での処理
+        /// </summary>
+        private void GridLastLine(ref int SetRow)
+        {
+            // 最終行判定
+            if (dgvMaster.Rows.Count == 0 || dgvMaster.CurrentCell.RowIndex == dgvMaster.Rows.Count - 1)
+            {
+                // 最終列判定
+                if (dgvMaster.Rows.Count == 0 || dgvMaster.CurrentCell.ColumnIndex == (int)DispColumn.DisplayOrder)
+                {
+                    // 1行追加
+                    dgvMaster.Rows.Add();
+                    // クリアデータセット
+                    SetRowClearData(dgvMaster.Rows.Count - 1);
+
+                    SetRow = dgvMaster.Rows.Count - 1;
+                }
+
+            }
+        }
+
+        private void cmbProcessDate_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (cmbProcessDate.SelectedValue != null)
+            {
+                string strProcessdate = cmbProcessDate.SelectedValue.ToString() == "0" ?
+                                        DateTime.Now.Date.ToString("yyyy/MM/dd") : cmbProcessDate.SelectedValue.ToString();
+
+                if (m_ProcessPrev != "" && strProcessdate != m_ProcessPrev &&
+                    m_bChengeAns)
+                {
+                    if (MessageBox.Show("データに変更があります、登録せずに対象を変更してよろしいですか？。", "確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        cmbProcessDate.SelectedValue = m_ProcessPrev;
+                        return;
+                    }
+                }
+
+                // グリッドデータ表示
+                DispGridData();
+            }
+        }
+
+        /// <summary>
+        /// 資材履歴押下 
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnMaterialHistory_Click(object sender, EventArgs e)
+        {
+
+            try
+            {
+                FrmMaterialHistory frm = new FrmMaterialHistory();
+
+                List<MaterialInfo> Mi = new List<MaterialInfo>();
+                m_IoMi.SelectAction(string.Format(" where MaterialItemCode = {0}", CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemCode].Value)), ref Mi, false);
+
+                //　遷移先への連携値
+                // パラメータセット
+                frm.MaterialType = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialKindName].ToolTipText);
+                frm.MaterialItemCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemCode].Value);
+                frm.MaterialItem = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemName].Value);
+
+                if (Mi.Count != 0)
+                {
+                    frm.MaterialCount = CommonMotions.cnvString(Mi[0].MaterialCount);
+                    frm.MaterialAssignableCount = CommonMotions.cnvString(Mi[0].RentCount);
+                }
+                frm.ShowDialog();
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// ボタン制御
+        /// </summary>
+        private void setButtonEnable()
+        {
+            try
+            {
+                // 一覧が1行選択されている場合、ボタンを活性にする
+                if (dgvMaster.SelectedCells.Count == 1)
+                {
+                    btnMaterialRelease.Enabled = true;
+                    btnMaterialHistory.Enabled = true;
+                }
+                // 一覧が選択されていない場合、または2行以上選択している場合、ボタンを非活性にする
+                else
+                {
+                    btnMaterialRelease.Enabled = false;
+                    btnMaterialHistory.Enabled = false;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// セルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            setButtonEnable();
+        }
+
+        /// <summary>
+        /// 資材解除押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnMaterialRelease_Click(object sender, EventArgs e)
+        {
+            IOConstructionMaterialInfo cMi = new IOConstructionMaterialInfo();
+            List<ConstructionMaterialInfo> lcMi = new List<ConstructionMaterialInfo>();
+            try
+            {
+                int visibleCnt = 0;
+                foreach (DataGridViewRow work in dgvMaster.Rows)
+                {
+                    if (work.Visible == true) visibleCnt++;
+                }
+
+                if (visibleCnt == 0 || dgvMaster.SelectedCells.Count == 0) return;
+
+                // 該当資材の「工事資材情報」確認
+                string strMateriakItemCode = dgvMaster.Rows[dgvMaster.CurrentRow.Index].Cells[(int)DispColumn.MaterialItemCode].Value.ToString();
+                cMi.connect();
+                cMi.SelectAction(string.Format(" where ConstructionCode = {0} and MaterialItemCode = {1} ", ConstructionCode, strMateriakItemCode), ref lcMi);
+                if (lcMi.Count == 0)
+                {
+                    // 存在しない場合、行削除
+                    m_IoMi.rollback();
+                    dgvMaster.Rows.RemoveAt(dgvMaster.CurrentRow.Index);
+                }
+                else
+                {
+                    // 存在する場合、行非表示
+                    dgvMaster.Rows[dgvMaster.CurrentRow.Index].Cells[(int)DispColumn.RowState].Value = DataRowState.Deleted;
+                    dgvMaster.Rows[dgvMaster.CurrentRow.Index].Visible = false;
+                    dgvMaster.ClearSelection(); 
+                }
+
+                // 資材種類名称設定
+                for (int icnt = dgvMaster.Rows.Count - 1; icnt >= 0; icnt--)
+                {
+                    string chkString = CommonMotions.cnvString(dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText);
+                    if ((icnt - 1) >= 0 &&
+                        dgvMaster.Rows[icnt - 1].Visible == true &&
+                        chkString.Equals(dgvMaster.Rows[icnt - 1].Cells[(int)DispColumn.MaterialKindName].ToolTipText))
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = "";
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText = chkString;
+                    }
+                    else
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = chkString;
+                    }
+                }
+
+                // №再採番
+                LineReNumbering();
+
+                // 変更フラグON
+                m_bChengeAns = true;
+
+                // ボタン制御
+                setButtonEnable();
+            }
+            finally
+            {
+                cMi.close();
+                cMi = null;
+            }
+        }
+
+        /// <summary>
+        /// 資材解除押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private bool DataEntryProcess()
+        {
+            //データチェック
+            if (!DispFeildCheck()) return false;
+
+            if (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                    , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return false;
+
+            // 表示行退避
+            int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+            // データ登録
+            if (!DataEntry()) return false;
+
+            m_bChengeAns = false;
+
+            return true;
+        }
+    #endregion
+
+
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.designer.cs	(revision 51)
@@ -0,0 +1,468 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmMaterialReserveEntry
+    {
+        /// <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 dataGridViewCellStyle8 = 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.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.lblDETAILSTRING = new System.Windows.Forms.Label();
+            this.lblPerson = new System.Windows.Forms.Label();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.btnDataEntry = new System.Windows.Forms.Button();
+            this.button6 = new System.Windows.Forms.Button();
+            this.groupBoxEx1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
+            this.btnMaterialHistory = new System.Windows.Forms.Button();
+            this.btnMaterialRelease = new System.Windows.Forms.Button();
+            this.btnMaterialSelect = new System.Windows.Forms.Button();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cmbProcessDate = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.groupBoxEx1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).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.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(455, 8);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(292, 34);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "資　材　貸　出";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            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(8, 48);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(86, 24);
+            this.label2.TabIndex = 23;
+            this.label2.Text = "工事名称";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            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(8, 77);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(86, 24);
+            this.label3.TabIndex = 26;
+            this.label3.Text = "貸出日";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(271, 78);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(86, 24);
+            this.label4.TabIndex = 28;
+            this.label4.Text = "担当";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDETAILSTRING
+            // 
+            this.lblDETAILSTRING.BackColor = System.Drawing.Color.White;
+            this.lblDETAILSTRING.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDETAILSTRING.ForeColor = System.Drawing.Color.Black;
+            this.lblDETAILSTRING.Location = new System.Drawing.Point(100, 48);
+            this.lblDETAILSTRING.Name = "lblDETAILSTRING";
+            this.lblDETAILSTRING.Size = new System.Drawing.Size(919, 24);
+            this.lblDETAILSTRING.TabIndex = 29;
+            this.lblDETAILSTRING.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblPerson
+            // 
+            this.lblPerson.BackColor = System.Drawing.Color.White;
+            this.lblPerson.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblPerson.ForeColor = System.Drawing.Color.Black;
+            this.lblPerson.Location = new System.Drawing.Point(363, 78);
+            this.lblPerson.Name = "lblPerson";
+            this.lblPerson.Size = new System.Drawing.Size(140, 24);
+            this.lblPerson.TabIndex = 31;
+            this.lblPerson.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1039, 390);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 4;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // btnDataEntry
+            // 
+            this.btnDataEntry.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
+            this.btnDataEntry.ForeColor = System.Drawing.Color.Black;
+            this.btnDataEntry.Location = new System.Drawing.Point(913, 390);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataEntry.TabIndex = 33;
+            this.btnDataEntry.Text = "登　録";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // button6
+            // 
+            this.button6.BackColor = System.Drawing.Color.Red;
+            this.button6.ForeColor = System.Drawing.Color.Black;
+            this.button6.Location = new System.Drawing.Point(8, 390);
+            this.button6.Name = "button6";
+            this.button6.Size = new System.Drawing.Size(120, 30);
+            this.button6.TabIndex = 37;
+            this.button6.Text = "その他画面へ";
+            this.button6.UseVisualStyleBackColor = false;
+            this.button6.Click += new System.EventHandler(this.btnOtherProc_Click);
+            // 
+            // groupBoxEx1
+            // 
+            this.groupBoxEx1.BorderColor = System.Drawing.Color.White;
+            this.groupBoxEx1.Controls.Add(this.btnMaterialHistory);
+            this.groupBoxEx1.Controls.Add(this.btnMaterialRelease);
+            this.groupBoxEx1.Controls.Add(this.btnMaterialSelect);
+            this.groupBoxEx1.Controls.Add(this.dgvMaster);
+            this.groupBoxEx1.Location = new System.Drawing.Point(8, 107);
+            this.groupBoxEx1.Name = "groupBoxEx1";
+            this.groupBoxEx1.Size = new System.Drawing.Size(1150, 277);
+            this.groupBoxEx1.TabIndex = 39;
+            this.groupBoxEx1.TabStop = false;
+            // 
+            // btnMaterialHistory
+            // 
+            this.btnMaterialHistory.BackColor = System.Drawing.Color.Lime;
+            this.btnMaterialHistory.ForeColor = System.Drawing.Color.Black;
+            this.btnMaterialHistory.Location = new System.Drawing.Point(6, 241);
+            this.btnMaterialHistory.Name = "btnMaterialHistory";
+            this.btnMaterialHistory.Size = new System.Drawing.Size(120, 30);
+            this.btnMaterialHistory.TabIndex = 38;
+            this.btnMaterialHistory.Text = "資材履歴";
+            this.btnMaterialHistory.UseVisualStyleBackColor = false;
+            this.btnMaterialHistory.Click += new System.EventHandler(this.btnMaterialHistory_Click);
+            // 
+            // btnMaterialRelease
+            // 
+            this.btnMaterialRelease.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
+            this.btnMaterialRelease.ForeColor = System.Drawing.Color.Black;
+            this.btnMaterialRelease.Location = new System.Drawing.Point(895, 241);
+            this.btnMaterialRelease.Name = "btnMaterialRelease";
+            this.btnMaterialRelease.Size = new System.Drawing.Size(120, 30);
+            this.btnMaterialRelease.TabIndex = 36;
+            this.btnMaterialRelease.Text = "資材解除";
+            this.btnMaterialRelease.UseVisualStyleBackColor = false;
+            this.btnMaterialRelease.Click += new System.EventHandler(this.btnMaterialRelease_Click);
+            // 
+            // btnMaterialSelect
+            // 
+            this.btnMaterialSelect.BackColor = System.Drawing.Color.Fuchsia;
+            this.btnMaterialSelect.ForeColor = System.Drawing.Color.Black;
+            this.btnMaterialSelect.Location = new System.Drawing.Point(1023, 241);
+            this.btnMaterialSelect.Name = "btnMaterialSelect";
+            this.btnMaterialSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnMaterialSelect.TabIndex = 35;
+            this.btnMaterialSelect.Text = "資材選択";
+            this.btnMaterialSelect.UseVisualStyleBackColor = false;
+            this.btnMaterialSelect.Click += new System.EventHandler(this.btnMaterialSelect_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
+            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeight = 27;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column13,
+            this.Column1,
+            this.Column11,
+            this.Column2,
+            this.Column9,
+            this.Column8,
+            this.Column3,
+            this.Column10,
+            this.Column4,
+            this.Column5,
+            this.Column12,
+            this.Column6,
+            this.Column7});
+            this.dgvMaster.Location = new System.Drawing.Point(6, 6);
+            this.dgvMaster.MultiSelect = false;
+            this.dgvMaster.Name = "dgvMaster";
+            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.dgvMaster.RowHeadersDefaultCellStyle = dataGridViewCellStyle8;
+            this.dgvMaster.RowHeadersWidth = 24;
+            this.dgvMaster.Size = new System.Drawing.Size(1137, 229);
+            this.dgvMaster.TabIndex = 31;
+            this.dgvMaster.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellClick);
+            this.dgvMaster.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellValueChanged);
+            // 
+            // Column13
+            // 
+            this.Column13.HeaderText = "RowState";
+            this.Column13.Name = "Column13";
+            this.Column13.Visible = false;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            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 = 40;
+            // 
+            // Column11
+            // 
+            this.Column11.HeaderText = "種類コード";
+            this.Column11.Name = "Column11";
+            this.Column11.Visible = false;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column2.HeaderText = "種類";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 180;
+            // 
+            // Column9
+            // 
+            this.Column9.HeaderText = "種類表示";
+            this.Column9.Name = "Column9";
+            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Programmatic;
+            this.Column9.Visible = false;
+            // 
+            // Column8
+            // 
+            this.Column8.HeaderText = "品目コード";
+            this.Column8.Name = "Column8";
+            this.Column8.Visible = false;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
+            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.Width = 300;
+            // 
+            // Column10
+            // 
+            this.Column10.HeaderText = "品目表示";
+            this.Column10.Name = "Column10";
+            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Programmatic;
+            this.Column10.Visible = false;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle5.Format = "#,0";
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle5;
+            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;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle6.Format = "#,0";
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column5.HeaderText = "貸出数";
+            this.Column5.Name = "Column5";
+            this.Column5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column12
+            // 
+            this.Column12.HeaderText = "変更前貸出数";
+            this.Column12.Name = "Column12";
+            this.Column12.Visible = false;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column6.HeaderText = "返却予定日";
+            this.Column6.Name = "Column6";
+            this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column6.Width = 125;
+            // 
+            // Column7
+            // 
+            this.Column7.HeaderText = "コメント";
+            this.Column7.Name = "Column7";
+            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column7.Width = 248;
+            // 
+            // cmbProcessDate
+            // 
+            this.cmbProcessDate.BackColor = System.Drawing.Color.White;
+            this.cmbProcessDate.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbProcessDate.FormattingEnabled = true;
+            this.cmbProcessDate.Location = new System.Drawing.Point(100, 78);
+            this.cmbProcessDate.Name = "cmbProcessDate";
+            this.cmbProcessDate.Size = new System.Drawing.Size(165, 24);
+            this.cmbProcessDate.TabIndex = 34;
+            this.cmbProcessDate.SelectedIndexChanged += new System.EventHandler(this.cmbProcessDate_SelectedIndexChanged);
+            // 
+            // FrmMaterialReserveEntry
+            // 
+            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(1166, 430);
+            this.Controls.Add(this.groupBoxEx1);
+            this.Controls.Add(this.button6);
+            this.Controls.Add(this.cmbProcessDate);
+            this.Controls.Add(this.btnDataEntry);
+            this.Controls.Add(this.lblPerson);
+            this.Controls.Add(this.lblDETAILSTRING);
+            this.Controls.Add(this.label4);
+            this.Controls.Add(this.label3);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label1);
+            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 = "FrmMaterialReserveEntry";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMaterialReserveEntry_FormClosing);
+            this.Load += new System.EventHandler(this.FrmMaterialReserveEntry_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmMaterialReserveEntry_KeyDown);
+            this.groupBoxEx1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label lblDETAILSTRING;
+        private System.Windows.Forms.Label lblPerson;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Button btnDataEntry;
+        private ComboBoxEX cmbProcessDate;
+        private System.Windows.Forms.Button btnMaterialRelease;
+        private System.Windows.Forms.Button btnMaterialSelect;
+        private System.Windows.Forms.Button btnMaterialHistory;
+        private System.Windows.Forms.Button button6;
+        private DataGridViewEX dgvMaster;
+        private GroupBoxEx groupBoxEx1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column13;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/FrmMaterialReserveEntry.resx	(revision 51)
@@ -0,0 +1,147 @@
+<?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="Column13.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="Column11.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="Column9.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="Column3.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="Column12.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/ProcessControl.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReserveEntry/ProcessControl.cs	(revision 51)
@@ -0,0 +1,1141 @@
+﻿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 System.Diagnostics;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.Master;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmMaterialReserveEntry
+    {
+        /// <summary>
+        /// 自プロセスの番号を持つ
+        /// </summary>
+        private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.MaterialReserveEntry;
+
+        #region プロセスコンテキストメニュー変数
+        /// <summary>
+        /// プロセスコンテキストメニュー
+        /// </summary>
+        private ContextMenuStrip m_ProcessContextMenuStrip;
+        #endregion
+
+        #region 他プロセスフォーム配列変数
+        /// <summary>
+        /// 他プロセスフォーム配列
+        /// </summary>
+        //private Form[] ClsExcute.SubFormHandleList = null;
+        #endregion
+
+        #region 別プロセス移動メニュー作成
+        /// <summary>
+        /// 別プロセス移動メニュー作成
+        /// </summary>
+        private void CreateProcessContextMenu(bool bSubForm)
+        {
+            try
+            {
+                // メニュー一覧を作成する
+                m_ProcessContextMenuStrip = new ContextMenuStrip();
+
+                // メニューのセット
+                UpDateProcessContextMenu(bSubForm);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 別プロセス移動メニュー更新
+        /// <summary>
+        /// 別プロセス移動メニュー更新
+        /// </summary>
+        private void UpDateProcessContextMenu(bool bSubForm = false)
+        {
+            try
+            {
+                // 起動プロセスの一案を作成する
+                List<KeyValuePair<int, string>> ProcList = new List<KeyValuePair<int, string>>();
+                // 工事番号セット
+                ClsProcessExist.ConstructionCode = m_ConstructionCode;
+                // リスト取得
+                ClsProcessExist.GetProcessList(ref ProcList, s_CurrentProcessNo);
+
+                // メニュー一覧を作成する
+                m_ProcessContextMenuStrip.Items.Clear();
+
+                // メニューデータのセット
+                int icnt = 0;
+                foreach (KeyValuePair<int, string> CurRec in ProcList)
+                {
+                    // 自プロセスは処理しない
+                    if (CurRec.Key == s_CurrentProcessNo) continue;
+
+                    // 総務部所属者はデータ参照出来る処理がある
+                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        if (!ClsSecurityPermission.PermitGeneralAffairsDevision(CurRec.Key)) continue;
+                    }
+
+                    //イベントの登録
+                    EventHandler handle = null;
+                    switch (CurRec.Key)
+                    {
+                        case (int)ClsExcute.ProcessExecuteNo.MainMenu:                  //  0:メニュー
+                            handle = ProcessExecute_MainMenu;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo:      //  2:工事情報入力
+                            handle = ProcessExecute_ConstructionBaseInfo;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimateInput:             //  3:積算見積入力
+                            handle = ProcessExecute_EstimateInput;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimatePrint:             //  4:積算見積書印刷
+                            handle = ProcessExecute_EstimatePrint;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimateBudget:            //  5:積算予算書入力
+                            handle = ProcessExecute_EstimateBudget;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionBudget:        //  6:工事予算書入力
+                            handle = ProcessExecute_ConstructionBudget;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            handle = ProcessExecute_ConstructionCopyList;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
+                            handle = ProcessExecute_PurchaseOrderEntry;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:        // 10:注文書印刷
+                            handle = ProcessExecute_PurchaseOrderPrint;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionLedger:        // 12:工事詳細台帳
+                            handle = ProcessExecute_ConstructionLedger;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.TAndPCosts:                // 13:交通費及び購入品入力
+                            handle = ProcessExecute_TAndPCosts;
+                            break;
+                    }
+                    // 起動関数のセットが無ければ処理しない
+                    if (handle == null) continue;
+
+                    // 区切り線
+                    if (icnt != 0) m_ProcessContextMenuStrip.Items.Add("-");
+                    // 行のセット
+                    ToolStripMenuItem tsmItem = new ToolStripMenuItem(CurRec.Value, null, handle);
+                    m_ProcessContextMenuStrip.Items.Add(tsmItem);
+                    icnt++;
+                }
+                // コンテキストメニューセット
+                button6.ContextMenuStrip = m_ProcessContextMenuStrip;
+                m_ProcessContextMenuStrip.Show(button6, new Point(0, 0));
+                m_ProcessContextMenuStrip.Close();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 別プロセス起動ボタン
+        /// <summary>
+        /// 別プロセス起動ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnOtherProc_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // ボタンの真上にメニューを表示する
+                int h = m_ProcessContextMenuStrip.Height * -1;
+                m_ProcessContextMenuStrip.Show(button6, new Point(0, h));
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 終了時処理
+        /// <summary>
+        /// 終了時サブフォームクローズ
+        /// </summary>
+        private void TerminatingProcess()
+        {
+            try
+            {
+                // フォームがCloseされていなければクローズする
+                for (int i = 0; i < ClsExcute.SubFormHandleList.Length; i++)
+                {
+                    PreserveSubFormHandle Handle = ClsExcute.SubFormHandleList[i];
+
+                    // 自分が起動したもの以外は処理しない
+                    if (Handle.ProcessNo != s_CurrentProcessNo) continue;
+
+                    // 自分は処理しない
+                    if (i == s_CurrentProcessNo)
+                    {
+                        ClsExcute.SubFormHandleList[i].SubFormHandle = null;
+                        ClsExcute.SubFormHandleList[i].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                        continue;
+                    }
+
+                    // 起動されて無ければ処理しない
+                    if (Handle.SubFormHandle == null) continue;
+
+                    // 画面クローズ
+                    Handle.SubFormHandle.Close();
+                    ClsExcute.SubFormHandleList[i].SubFormHandle = null;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 次の起動が申請画面かどうかの判定
+        /// <summary>
+        /// 次の起動が申請画面かどうかの判定
+        /// </summary>
+        /// <returns></returns>
+        private bool judgmentApprovalScreen()
+        {
+            try
+            {
+                // プロセス起動テーブルに申請画面が設定されている場合はtrue
+                int NextProcess = ClsExcute.ProcControlPara[ClsExcute.GetNowProcessPoint()].ProcNo;
+                if (NextProcess == (int)ClsExcute.SubFormExecuteNo.ApprovalScreen) return true;
+
+                return false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region ---------- 他プロセス起動ハンドラ群　START
+        #region 一気にメニューへ戻る
+        /// <summary>
+        /// 一気にメニューへ戻る
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ProcessExecute_MainMenu(object sender, EventArgs e)
+        {
+            try
+            {
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 起動テーブルをクリアする
+                ClsExcute.ClearProcess();
+
+                // メニューへ戻るフラグON　
+                m_ParentEnd = true;
+
+                // 終了処理OFF
+                m_CloseingProcessOn = false;
+
+                // 自フォーム終了
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 工事情報入力
+        /// <summary>
+        /// 工事情報入力
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                // フォームがあれば最前面へ
+                FrmConstructionBaseInfo frm = (FrmConstructionBaseInfo)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事情報入力起動
+                frm = new FrmConstructionBaseInfo();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionBaseInfoClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimateInput(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                // フォームがあれば最前面へ
+                FrmEstimateInput frm = (FrmEstimateInput)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 積算見積書入力起動
+                frm = new FrmEstimateInput();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimateInputClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimatePrint(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                // フォームがあれば最前面へ
+                FrmEstimatePrint frm = (FrmEstimatePrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 積算見積書印刷起動
+                frm = new FrmEstimatePrint();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimatePrintClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimateBudget(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                // フォームがあれば最前面へ
+                FrmEstimateBudget frm = (FrmEstimateBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 積算予算書入力起動
+                frm = new FrmEstimateBudget();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimateBudgetClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionBudget(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                // フォームがあれば最前面へ
+                FrmConstructionBudget frm = (FrmConstructionBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事予算書入力起動
+                frm = new FrmConstructionBudget();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionBudgetClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                // フォームがあれば最前面へ
+                FrmNewOrContinueCopy frm = (FrmNewOrContinueCopy)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事案件コピー起動
+                frm = new FrmNewOrContinueCopy();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmNewOrContinueCopyClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                // フォームがあれば最前面へ
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 注文書入力起動
+                frm = new FrmPurchaseOrderEntry();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmPurchaseOrderEntryClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                // フォームがあれば最前面へ
+                FrmPurchaseOrderPrint frm = (FrmPurchaseOrderPrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 注文書印刷起動
+                frm = new FrmPurchaseOrderPrint();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmPurchaseOrderPrintClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionLedger(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+                // フォームがあれば最前面へ
+                FrmConstructionLedger frm = (FrmConstructionLedger)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事詳細台帳入力起動
+                frm = new FrmConstructionLedger();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionLedgerClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_TAndPCosts(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
+                // フォームがあれば最前面へ
+                FrmTAndPCosts frm = (FrmTAndPCosts)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 交通費及び購入品等入力起動
+                frm = new FrmTAndPCosts();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmTAndPCostsClosed);
+                frm.Show();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion // ---------- 他プロセス起動ハンドラ群　END
+
+        #region ---------- 他プロセス終了ハンドラ群　START
+        #region 工事情報入力のクローズを取得する
+        /// <summary>
+        /// 工事情報入力のクローズを取得する
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionBaseInfoClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                FrmConstructionBaseInfo frm = (FrmConstructionBaseInfo)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+                bool DataChange = frm.DataChenge;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    this.Activate();
+                    // データ変更がある場合は再表示
+                    if (DataChange)
+                    {
+                        //GetBaseInfoData();
+                      //  SetConstructorCode();
+                      //  if (m_ConstructionBaseInfo.ConstructionPeriod >= 16) GetExpensesList();
+                        InitDataLoad();
+                    }
+                }
+            }
+            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 FrmEstimateInputClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                FrmEstimateInput frm = (FrmEstimateInput)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmEstimatePrintClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                FrmEstimatePrint frm = (FrmEstimatePrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+                
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmEstimateBudgetClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                FrmEstimateBudget frm = (FrmEstimateBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmConstructionBudgetClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                FrmConstructionBudget frm = (FrmConstructionBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmNewOrContinueCopyClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                // プロセス番号が違うので注意！！
+                FrmNewOrContinueCopy frm = (FrmNewOrContinueCopy)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+
+                // 戻り値取得
+                int ConstructionCode = frm.ConstructionCode;
+                bool bNowConstruction = frm.NewConstruction;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // 現在設定値クリア
+                ClsExcute.ClearExecParameter(NowPoint);
+                // 工事番号変更
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ConstructionCode);
+                // コピー作成データフラグセット
+                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
+
+                this.Activate();
+
+                // 終了処理フラグOff
+                m_CloseingProcessOn = false;
+
+            }
+            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 FrmPurchaseOrderEntryClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmPurchaseOrderPrintClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmConstructionLedgerClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+                FrmConstructionLedger frm = (FrmConstructionLedger)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmTAndPCostsClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
+                FrmTAndPCosts frm = (FrmTAndPCosts)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion // ---------- 他プロセス終了ハンドラ群　END
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.cs	(revision 51)
@@ -0,0 +1,986 @@
+using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Linq;
+using System.Diagnostics;
+using System.Threading;
+using System.Text.RegularExpressions;
+
+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.Master;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+//*------------------------ 単位マスタメンテ画面 ----------------------*
+//  2015/07/14  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmMaterialReturnEntry : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispColumn
+        {
+            DisplayOrder = 0,
+            MaterialKindCode,
+            MaterialKindName,
+            MaterialKindDisplayOrder,
+            MaterialItemCode,
+            MaterialItemName,
+            MaterialItemDisplayOrder,
+            RentCount,
+            RepayCount,
+            MaterialCount,
+            MaterialCountBefore,
+            CommentText,
+        }
+
+        private enum DataColumn
+        {
+            MaterialKindCode = 0,
+            MaterialKindName,
+            KindDisp,
+            MaterialItemCode,
+            MaterialItemName,
+            ItemDisp,
+            RENTCOUNT,
+            REPAYCOUNT,
+            MaterialCount,
+            CommentText,
+            CompleteFlg,
+        }
+
+        /// <summary>
+        /// マスタリストMAXライン
+        /// </summary>
+        private const int s_ListMaxLineCount = 53;
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// フィールド値変化フラグ
+        /// </summary>
+        private bool m_bChengeAns = false;
+
+        /// <summary>
+        /// ダイアログ使用フラグ
+        /// </summary>
+        private bool m_DialogFlg = false;
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+        /// <summary>
+        /// 終了ボタン押下フラグ
+        /// </summary>
+        private bool m_EndButton = false;
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        // *-----* 共通処理設定 *-----*
+        /// <summary>
+        /// サブフォームフラグ
+        /// </summary>
+        private bool m_SubForm = false;
+        /// <summary>
+        /// 呼出元終了フラグ
+        /// </summary>
+        private bool m_ParentEnd = false;
+
+        // *-----* 共通処理設定 *-----*
+
+        private bool m_CloseingProcessOn = false;
+
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialReturnEntry()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialReturnEntry()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+        #region プロパティ
+        /// <summary>
+        /// ダイアログ使用時フラグ
+        /// </summary>
+        public bool DialogUsed
+        {
+            set { m_DialogFlg = value; }
+        }
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+
+        }
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
+        // *-----* 共通処理設定 *-----*
+        /// <summary>
+        /// サブフォームフラグ
+        /// </summary>
+        public bool SubForm
+        {
+            get { return m_SubForm; }
+            set { m_SubForm = value; }
+        }
+        /// <summary>
+        /// 呼出元終了フラグ
+        /// </summary>
+        public bool ParentEnd
+        {
+            get { return m_ParentEnd; }
+            set { m_ParentEnd = value; }
+        }
+        // *-----* 共通処理設定 *-----*
+
+        #endregion
+
+
+        #region イベントメソッド
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialReturnEntry_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (m_EndButton) return;
+            if (m_bChengeAns)
+            {
+                if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    e.Cancel = true;
+                    return;
+                }
+            }
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+        }
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialReturnEntry_Load(object sender, EventArgs e)
+        {
+            // 初期表示
+            InitDataLoad();
+
+            if (m_EditLock) btnDataEntry.Enabled = false;
+
+            // ダイアログ使用時
+            if (m_DialogFlg)
+            {
+                //フォームの幅だけを変更する
+                this.SetBounds(this.Left, this.Top, (this.Width - 40), this.Height, BoundsSpecified.Width);
+            }
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // ボタン表示の制御
+            ButtonVisble(this);
+
+            // *-----* 処理移動ボタン設定 *-----*
+            CreateProcessContextMenu(m_SubForm);
+            // *-----* 処理移動ボタン設定 *-----*
+
+        }
+
+        /// <summary>
+        /// 行データクリア
+        /// </summary>
+        /// <param name="iIndex">行カウント</param>
+        private void SetRowClearData(int iIndex)
+        {
+            // クリアデータセット
+        }
+
+        /// <summary>
+        /// グリッド採番処理
+        /// </summary>
+        private void LineReNumbering()
+        {
+            int icnt = 1;
+            foreach (DataGridViewRow r in dgvMaster.Rows)
+            {
+                // 表示されているものだけ採番
+                if (r.Visible)
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = (icnt++).ToString();
+                else
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = "0";
+            }
+        }
+        /// <summary>
+        /// 行追加ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineEntry_Click(object sender, EventArgs e)
+        {
+            // 行がない場合は作成して抜ける
+            if (dgvMaster.Rows.Count == 0)
+            {
+                if (MessageBox.Show("行を追加します", "追加確認"
+                                    , MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.Cancel) return;
+
+                // 行追加
+                dgvMaster.Rows.Add();
+                // クリアデータセット
+                SetRowClearData(0);
+                // №再採番
+                LineReNumbering();
+                //　変更フラグOn
+                valueChange(sender, e);
+                // フォーカス移動
+                dgvMaster.Focus();
+                return;
+            }
+
+            // メッセージ表示
+            BtnTextCustomMessageBox msg = new BtnTextCustomMessageBox();
+            msg.ButtonText.No = "前へ追加";
+            msg.ButtonText.Yes = "後へ追加";
+            msg.ButtonText.Cancel = "キャンセル";
+            DialogResult resRet = msg.Show("行の前・後を選択してください。", "追加確認"
+                                            , MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
+
+            // キャンセルは処理しない
+            if (resRet == DialogResult.Cancel) return;
+
+            // カレント行取得
+            int iIndex = dgvMaster.CurrentRow.Index;
+            // 最終行
+            if (iIndex == dgvMaster.RowCount - 1)
+            {
+                if (resRet == DialogResult.No)
+                {
+                    // 前
+                    dgvMaster.Rows.Insert(iIndex);
+                }
+                else if (resRet == DialogResult.Yes)
+                {
+                    // 後
+                    dgvMaster.Rows.Add();
+                    iIndex = (dgvMaster.RowCount - 1);
+                }
+            }
+            else
+            {
+                if (resRet == DialogResult.Yes)
+                {
+                    // 後ろ
+                    ++iIndex;
+                }
+                dgvMaster.Rows.Insert(iIndex);
+            }
+
+            // クリアデータセット
+            SetRowClearData(iIndex);
+
+            // №再採番
+            LineReNumbering();
+
+            //　変更フラグOn
+            valueChange(sender, e);
+
+            // フォーカス移動
+            dgvMaster.Focus();
+            //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+            //dgvMaster.CurrentCell = dgvMaster[0, iIndex];
+        }
+
+        /// <summary>
+        /// フィールド値変更フラグ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void valueChange(object sender, EventArgs e)
+        {
+            m_bChengeAns = true;
+        }
+
+        /// <summary>
+        /// セル値変化
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            // インデックス外は処理しない
+            if (e.RowIndex < 0 || e.ColumnIndex < 0) return;
+
+            // 変更フラグON
+            m_bChengeAns = true;
+        }
+
+        /// <summary>
+        /// 登録ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return;
+
+                // 確認
+                if (tglAllReturn.Checked)
+                {
+                    if (MessageBox.Show("返却されていない資材は、資材から削除されます。完了してよろしいですか？", "登録確認"
+                            , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+                }
+                else
+                {
+                    if (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                            , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+                }
+
+                //// 表示行退避
+                //int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                // データ登録
+                DataEntry();
+
+                // データ表示
+                if (!DispGridData()) return;
+
+                //// 表示行復元
+                //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// IMEのコントロール
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellEnter(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                if (dgv.CurrentCell.ReadOnly) return;
+
+                //列によってIMEのモードを変更する
+                if (dgv.Columns[e.ColumnIndex].Name.Equals("Column3"))
+                {
+                    dgv.ImeMode = ImeMode.On;
+                }
+                else
+                {
+                    dgv.ImeMode = ImeMode.Disable;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+
+        /// <summary>
+        /// セルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            dgvMaster_CellDoubleClick(sender, e);
+        }
+
+        /// <summary>
+        /// セルダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // ダイアログとして使用するとき以外は処理しない
+            if (!m_DialogFlg) return;
+
+            if (e.RowIndex < 0) return;
+
+            btnEnd_Click(sender, (EventArgs)e);
+        }
+
+        /// <summary>
+        /// Formキーダウン処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialReturnEntry_KeyDown(object sender, KeyEventArgs e)
+        {
+            // DataGridviewは処理しない
+            if (ActiveControl.Name.Equals("dgvMaster"))
+            {
+                return;
+            }
+        }
+
+        #endregion
+
+        #region プライベートメソッド
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            IOConstructionBaseInfoDetail IoConB = new IOConstructionBaseInfoDetail();
+            ConstructionBaseInfoDetail ConB = new ConstructionBaseInfoDetail();
+
+            try
+            {
+                // テスト用工事番号
+                //ConstructionCode = 2016020201;
+
+                // 画面表示用データ取得
+                if (!IoConB.SelectAction(string.Format(" where ConstructionCode = {0} and DETAILNO = 2", ConstructionCode), ref ConB)) return;
+
+                lblDETAILSTRING.Text = ConB.DetailString;
+
+                // 担当にログインユーザー名を表示
+                lblPerson.Text = CommonMotions.LoginUserData.PersonName;
+
+                // 返却日
+                lblRepaydate.Text = DateTime.Now.Date.ToString("yyyy/MM/dd");
+
+                if (!DispGridData()) return;
+
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            bool bAns = true;
+            string sError = "";
+            try
+            {
+                bAns = true;
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+
+                    // 割当数＜返却済＋返却数の場合は、エラー
+                    if (CommonMotions.cnvInt(r.Cells[(int)DispColumn.RentCount].Value) < CommonMotions.cnvInt(r.Cells[(int)DispColumn.RepayCount].Value) + CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCount].Value))
+                    {
+                        bAns = false;
+                        sError = "貸出した資材数を超えて資材の返却はできません。"; 
+                        // 背景色変更
+                        CommonMotions.chgBackColor(r.Cells[(int)DispColumn.MaterialCount], bAns);
+                    }
+
+                    Regex regex = new Regex(@"^[0-9]+$");
+                    Match match = regex.Match(r.Cells[(int)DispColumn.MaterialCount].Value.ToString());
+                    if (!match.Success)
+                    {
+                        bAns = false;
+                        sError = "１以上の整数を入力してください。";
+                        CommonMotions.chgBackColor(r.Cells[(int)DispColumn.MaterialCount], bAns);
+                    }
+
+                    // コメント
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.CommentText].Value) != "")
+                    {
+                        // レングスチェック
+                        bAns = CommonMotions.chkStringLength(CommonMotions.cnvString(r.Cells[(int)DispColumn.CommentText].Value), 80);
+                        if (bAns == false)
+                        {
+                            sError = "入力エラーがあります、確認してください。";
+                            // 背景色変更
+                            CommonMotions.chgBackColor(r.Cells[(int)DispColumn.CommentText], bAns);
+                        }
+                    }
+                    bRet &= bAns;
+                }
+
+                if (!bRet)
+                {
+                    MessageBox.Show(sError, "データ確認"
+                                                , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                }
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+      }
+
+        /// <summary>
+        /// データ登録
+        /// </summary>
+        private void DataEntry()
+        {
+            IOMaterialInfo IoMi = new IOMaterialInfo();
+            IOConstructionMaterialInfo IoCmi = new IOConstructionMaterialInfo();
+            IOMaterialRecordInfo IoMri = new IOMaterialRecordInfo();
+
+            MaterialInfo MiWork;
+            ConstructionMaterialInfo CmiWork;
+            MaterialRecordInfo MriWork;
+
+            List<ConstructionMaterialInfo> CmiList;
+            List<MaterialRecordInfo> MriList;
+
+            try
+            {
+
+                IoMi.connect();
+                IoMi.beginTran();
+
+                IoCmi.connect();
+                IoCmi.beginTran();
+
+                IoMri.connect();
+                IoMri.beginTran();
+
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    int intMaterialItemCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialItemCode].Value);
+                    int intRentCount = CommonMotions.cnvInt(r.Cells[(int)DispColumn.RentCount].Value);
+                    int intRepayCount= CommonMotions.cnvInt(r.Cells[(int)DispColumn.RepayCount].Value);
+                    int intMaterialCount= CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCount].Value);
+                    int intMaterialCountBefore = CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialCountBefore].Value);
+
+                    // 資材情報------------------------------------------------------------------------
+                    MiWork = new MaterialInfo();
+                    string strSQL = IoMi.CreatePrimarykeyString(intMaterialItemCode);
+                    List<MaterialInfo> MiList = new List<MaterialInfo>();
+                    if (!IoMi.SelectAction(strSQL, ref MiList, false))
+                    {
+                        MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    // 資材の返却完了判断
+                    int intDeleteMaterialCount = intRentCount - (intRepayCount + intMaterialCount);
+                    if (tglAllReturn.Checked && intDeleteMaterialCount != 0)
+                    {
+                        MiWork.MaterialCount = MiList[0].MaterialCount - intDeleteMaterialCount;
+                    }
+                    else
+                    {
+                        MiWork.MaterialCount = MiList[0].MaterialCount;
+                    }
+                    MiWork.RentCount = MiList[0].RentCount + (intMaterialCount - intMaterialCountBefore);
+
+                    // 更新ロック
+                    if (!IoMi.RowLockUpdate(intMaterialItemCode, false))
+                    {
+                        MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    // データ登録
+                    if (!IoMi.UpdateAction(strSQL, MiWork, false))
+                    {
+                        IoMi.rollback();
+                        MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+                    
+                    // 工事資材情報--------------------------------------------------------------------
+                    CmiWork = new ConstructionMaterialInfo();
+                    strSQL = IoCmi.CreatePrimarykeyString(ConstructionCode,intMaterialItemCode);
+                    CmiList = new List<ConstructionMaterialInfo>();
+                    if (!IoCmi.SelectAction(strSQL, ref CmiList, false))
+                    {
+                        IoMi.rollback();
+                        MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    CmiWork.RentCount = CmiList[0].RentCount;
+                    CmiWork.RepayCount = intRepayCount + intMaterialCount;
+                    if (tglAllReturn.Checked)
+                    {
+                        CmiWork.CompleteFlg = 1;
+                    }
+                    else
+                    {
+                        CmiWork.CompleteFlg = 0;
+                    }
+
+                    // ロック
+                    if (!IoCmi.RowLock(m_ConstructionCode, intMaterialItemCode, false))
+                    {
+                        IoMi.rollback();
+                        MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    // データ更新
+                    if (!IoCmi.UpdateAction(strSQL, CmiWork, false))
+                    {
+                        IoMi.rollback();
+                        IoCmi.rollback();
+                        MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    // 資材履歴情報------------------------------------------------------------------------
+                    MriWork = new MaterialRecordInfo();
+                    strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode,DateTime.Now.Date);
+                    strSQL += "and RecKind = 1";
+                    MriList = new List<MaterialRecordInfo>();
+                    if (!IoMri.SelectAction(strSQL, ref MriList, false))
+                    {
+                        IoMi.rollback();
+                        IoCmi.rollback();
+                        MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    MriWork.CommentText = CommonMotions.cnvString(r.Cells[(int)DispColumn.CommentText].Value);
+                    MriWork.ConstructionCode = m_ConstructionCode;
+                    MriWork.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                    MriWork.RecKind = 1;
+                    MriWork.MaterialCount = intMaterialCount;
+
+                    if (MriList.Count == 0)     //  新規
+                    {
+                        strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode, DateTime.Now.Date);
+                        MriWork.MaterialItemCode = intMaterialItemCode;
+                        MriWork.ProcessDate = CommonMotions.cnvDate(lblRepaydate.Text);
+                        MriWork.SeqNo = IoMri.SelectMaxMaterialRecordKeyCount(strSQL, false) + 1;
+
+                        MriList.Clear();
+                        MriList.Add(MriWork);
+                        // データ登録
+                        if (!IoMri.InsertAction(MriList, false))
+                        {
+                            IoMi.rollback();
+                            IoCmi.rollback();
+                            IoMri.rollback();
+                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+
+                    }
+                    else　　　　　　//  更新
+                    {
+                        // ロック
+                        if (!IoMri.RowLock(intMaterialItemCode, MriList[0].ProcessDate, MriList[0].SeqNo, false))
+                        {
+                            IoMi.rollback();
+                            IoCmi.rollback();
+                            MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                            , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+
+                        // データ更新
+                        strSQL = IoMri.CreatePrimarykeyString(intMaterialItemCode, DateTime.Now.Date);
+                        strSQL += string.Format("and SeqNo = {0}", MriList[0].SeqNo);
+                        if (!IoMri.UpdateAction(strSQL, MriWork, false))
+                        {
+                            IoMi.rollback();
+                            IoCmi.rollback();
+                            IoMri.rollback();
+                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+
+                    }
+
+                }
+
+                IoMi.commit();
+                IoCmi.commit();
+                IoMri.commit();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoMi.close();
+                IoMi = null;
+
+                IoCmi.close();
+                IoCmi = null;
+
+                IoMri.close();
+                IoMri = null;
+            }
+        }
+
+        /// <summary>
+        /// 単位マスタ表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DispGridData()
+        {
+            IOConstructionMaterialInfo IoCmi = new IOConstructionMaterialInfo();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                // SQL作成
+                StringBuilder sql = new StringBuilder();
+                sql.AppendLine("select   Mkm.MaterialKindCode ");
+                sql.AppendLine("		,Mkm.MaterialKindName ");
+                sql.AppendLine("		,Mkm.DisplayOrder as KindDisp ");
+                sql.AppendLine("		,Mim.MaterialItemCode ");
+                sql.AppendLine("		,Mim.MaterialItemName ");
+                sql.AppendLine("        ,Mim.DisplayOrder as ItemDisp ");
+                sql.AppendLine("        ,Cmi.RENTCOUNT ");
+                sql.AppendLine("        ,Cmi.REPAYCOUNT - ifnull(Mri.MaterialCount,0) as REPAYCOUNT ");
+                sql.AppendLine("        ,ifnull(Mri.MaterialCount,0) as MaterialCount ");
+                sql.AppendLine("        ,ifnull(Mri.CommentText,'') as CommentText ");
+                sql.AppendLine("        ,Cmi.CompleteFlg ");
+                sql.AppendFormat("from ConstructionMaterialInfo as Cmi left join MaterialRecordInfo as Mri on Cmi.CONSTRUCTIONCODE = Mri.CONSTRUCTIONCODE and Cmi.MATERIALITEMCODE = Mri.MATERIALITEMCODE and Mri.RECKIND = 1 and ProcessDate = DATE_FORMAT('{0}','%Y/%m/%d') ", lblRepaydate.Text);
+                sql.AppendLine("									 left join (MaterialItemMaster as Mim left join MaterialKindMaster as Mkm on Mim.MaterialKindCode = Mkm.MaterialKindCode) on Cmi.MaterialItemCode = Mim.MaterialItemCode  ");
+                sql.AppendFormat("where Cmi.ConstructionCode = {0} ",ConstructionCode);
+                sql.AppendLine("order by Mkm.DisplayOrder ,Mim.DisplayOrder ");
+
+                // データ取得
+                if (!IoCmi.ExecuteReader(sql.ToString(), ref arData)) return false;
+
+                // データ表示
+                int icnt = 0;
+                bool CompleteFlg = true;
+                foreach (object[] work in arData)
+                {
+                    dgvMaster.Rows.Add();
+
+                    string chkString = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+
+                    if (!(icnt == 0
+                        || (icnt != 0 && (!chkString.Equals(dgvMaster.Rows[icnt - 1].Cells[(int)DispColumn.MaterialKindName].ToolTipText)))))
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = "";
+                    }
+                    else
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+                    }
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindCode].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialKindCode]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindDisplayOrder].Value = CommonMotions.cnvInt(work[(int)DataColumn.KindDisp]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemCode].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialItemCode]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemName].Value = CommonMotions.cnvString(work[(int)DataColumn.MaterialItemName]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemDisplayOrder].Value = CommonMotions.cnvInt(work[(int)DataColumn.ItemDisp]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RentCount].Value = CommonMotions.cnvInt(work[(int)DataColumn.RENTCOUNT]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RepayCount].Value = CommonMotions.cnvInt(work[(int)DataColumn.REPAYCOUNT]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialCount].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialCount]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialCountBefore].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialCount]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.CommentText].Value = CommonMotions.cnvString(work[(int)DataColumn.CommentText]);
+
+                    CompleteFlg = CommonMotions.cnvInt(work[(int)DataColumn.CompleteFlg]) == 1 ? false : true;
+                    icnt++;
+                }
+
+                // №再採番
+                LineReNumbering();
+
+                // 完了時画面操作不可
+                if (!CompleteFlg)
+                {
+                    tglAllReturn.Enabled = CompleteFlg;
+                    btnDataEntry.Enabled = CompleteFlg;
+                    dgvMaster.Enabled = CompleteFlg;
+                }
+
+                m_bChengeAns = false;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoCmi.close();
+                IoCmi = null;
+            }
+            return true;
+        }
+
+        /// <summary>
+        /// ボタンの表示・非表示制御
+        /// </summary>
+        private void ButtonVisble(Control Parent)
+        {
+            bool bAns = true;
+            if (m_DialogFlg){
+
+                bAns = false;
+            }
+            else
+            {
+                bAns = true;
+            }
+
+            foreach (Control ctrl in Parent.Controls)
+            {
+                if (ctrl.GetType().Equals(typeof(Button)))
+                {
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.ToString() != btnEnd.Name.ToString()) ctrl.Visible = bAns;
+                }
+            }
+            // グリッドの読込のみ制御
+            dgvMaster.ReadOnly = m_DialogFlg;
+        }
+
+        /// <summary>
+        /// グリッド最終行での処理
+        /// </summary>
+        private void GridLastLine()
+        {
+            // 最終行判定
+            if (dgvMaster.CurrentCell.RowIndex == dgvMaster.Rows.Count - 1)
+            {
+                // 最終列判定
+                if (dgvMaster.CurrentCell.ColumnIndex == (int)DispColumn.CommentText)
+                {
+                    // 1行追加
+                    dgvMaster.Rows.Add();
+                    // クリアデータセット
+                    SetRowClearData(dgvMaster.Rows.Count - 1);
+                    // №再採番
+                    LineReNumbering();
+                }
+
+            }
+        }
+
+        /// <summary>
+        /// データ登録
+        /// </summary>
+        private bool DataEntryProcess()
+        {
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return false;
+
+                // 確認
+                if (tglAllReturn.Checked)
+                {
+                    if (MessageBox.Show("返却されていない資材は、資材から削除されます。完了してよろしいですか？", "登録確認"
+                            , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return false;
+                }
+                else
+                {
+                    if (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                            , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return false;
+                }
+
+                //// 表示行退避
+                //int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                // データ登録
+                DataEntry();
+
+                // データ表示
+                if (!DispGridData()) return false;
+
+                //// 表示行復元
+                //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+            return true;
+        }
+
+        #endregion
+
+
+
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.designer.cs	(revision 51)
@@ -0,0 +1,424 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmMaterialReturnEntry
+    {
+        /// <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 dataGridViewCellStyle7 = 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.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.lblDETAILSTRING = new System.Windows.Forms.Label();
+            this.lblPerson = new System.Windows.Forms.Label();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.btnDataEntry = new System.Windows.Forms.Button();
+            this.lblRepaydate = new System.Windows.Forms.Label();
+            this.button3 = new System.Windows.Forms.Button();
+            this.groupBoxEx1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
+            this.tglAllReturn = new System.Windows.Forms.CheckBox();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column11 = 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.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.groupBoxEx1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).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.Cursor = System.Windows.Forms.Cursors.Arrow;
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(455, 8);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(292, 34);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "資　材　返　却";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            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(8, 48);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(86, 24);
+            this.label2.TabIndex = 23;
+            this.label2.Text = "工事名称";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            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(8, 77);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(86, 24);
+            this.label3.TabIndex = 26;
+            this.label3.Text = "返却日";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(271, 77);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(86, 24);
+            this.label4.TabIndex = 28;
+            this.label4.Text = "担当";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDETAILSTRING
+            // 
+            this.lblDETAILSTRING.BackColor = System.Drawing.Color.White;
+            this.lblDETAILSTRING.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDETAILSTRING.ForeColor = System.Drawing.Color.Black;
+            this.lblDETAILSTRING.Location = new System.Drawing.Point(100, 48);
+            this.lblDETAILSTRING.Name = "lblDETAILSTRING";
+            this.lblDETAILSTRING.Size = new System.Drawing.Size(919, 24);
+            this.lblDETAILSTRING.TabIndex = 29;
+            this.lblDETAILSTRING.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblPerson
+            // 
+            this.lblPerson.BackColor = System.Drawing.Color.White;
+            this.lblPerson.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblPerson.ForeColor = System.Drawing.Color.Black;
+            this.lblPerson.Location = new System.Drawing.Point(363, 77);
+            this.lblPerson.Name = "lblPerson";
+            this.lblPerson.Size = new System.Drawing.Size(140, 24);
+            this.lblPerson.TabIndex = 31;
+            this.lblPerson.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1032, 386);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 4;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // btnDataEntry
+            // 
+            this.btnDataEntry.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
+            this.btnDataEntry.ForeColor = System.Drawing.Color.Black;
+            this.btnDataEntry.Location = new System.Drawing.Point(906, 386);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataEntry.TabIndex = 33;
+            this.btnDataEntry.Text = "登　録";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // lblRepaydate
+            // 
+            this.lblRepaydate.BackColor = System.Drawing.Color.White;
+            this.lblRepaydate.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblRepaydate.ForeColor = System.Drawing.Color.Black;
+            this.lblRepaydate.Location = new System.Drawing.Point(100, 77);
+            this.lblRepaydate.Name = "lblRepaydate";
+            this.lblRepaydate.Size = new System.Drawing.Size(165, 24);
+            this.lblRepaydate.TabIndex = 34;
+            this.lblRepaydate.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // button3
+            // 
+            this.button3.BackColor = System.Drawing.Color.Aqua;
+            this.button3.ForeColor = System.Drawing.Color.Black;
+            this.button3.Location = new System.Drawing.Point(14, 386);
+            this.button3.Name = "button3";
+            this.button3.Size = new System.Drawing.Size(120, 30);
+            this.button3.TabIndex = 37;
+            this.button3.Text = "その他画面へ";
+            this.button3.UseVisualStyleBackColor = false;
+            this.button3.Click += new System.EventHandler(this.btnOtherProc_Click);
+            // 
+            // groupBoxEx1
+            // 
+            this.groupBoxEx1.BorderColor = System.Drawing.Color.White;
+            this.groupBoxEx1.Controls.Add(this.tglAllReturn);
+            this.groupBoxEx1.Controls.Add(this.dgvMaster);
+            this.groupBoxEx1.Location = new System.Drawing.Point(8, 107);
+            this.groupBoxEx1.Name = "groupBoxEx1";
+            this.groupBoxEx1.Size = new System.Drawing.Size(1150, 273);
+            this.groupBoxEx1.TabIndex = 38;
+            this.groupBoxEx1.TabStop = false;
+            // 
+            // tglAllReturn
+            // 
+            this.tglAllReturn.Appearance = System.Windows.Forms.Appearance.Button;
+            this.tglAllReturn.AutoSize = true;
+            this.tglAllReturn.Checked = true;
+            this.tglAllReturn.CheckState = System.Windows.Forms.CheckState.Checked;
+            this.tglAllReturn.Location = new System.Drawing.Point(6, 240);
+            this.tglAllReturn.Margin = new System.Windows.Forms.Padding(2);
+            this.tglAllReturn.Name = "tglAllReturn";
+            this.tglAllReturn.Size = new System.Drawing.Size(188, 26);
+            this.tglAllReturn.TabIndex = 37;
+            this.tglAllReturn.Text = "資材の返却を完了する";
+            this.tglAllReturn.UseVisualStyleBackColor = true;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
+            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeight = 27;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column8,
+            this.Column2,
+            this.Column9,
+            this.Column10,
+            this.Column3,
+            this.Column11,
+            this.Column4,
+            this.Column5,
+            this.Column6,
+            this.Column12,
+            this.Column7});
+            this.dgvMaster.Location = new System.Drawing.Point(6, 6);
+            this.dgvMaster.MultiSelect = false;
+            this.dgvMaster.Name = "dgvMaster";
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.RowHeadersDefaultCellStyle = dataGridViewCellStyle7;
+            this.dgvMaster.RowHeadersWidth = 24;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(1137, 229);
+            this.dgvMaster.TabIndex = 31;
+            this.dgvMaster.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellValueChanged);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            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 = 40;
+            // 
+            // Column8
+            // 
+            this.Column8.HeaderText = "種類コード";
+            this.Column8.Name = "Column8";
+            this.Column8.Visible = false;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column2.HeaderText = "種類";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 180;
+            // 
+            // Column9
+            // 
+            this.Column9.HeaderText = "種類表示順";
+            this.Column9.Name = "Column9";
+            this.Column9.Visible = false;
+            // 
+            // Column10
+            // 
+            this.Column10.HeaderText = "品目コード";
+            this.Column10.Name = "Column10";
+            this.Column10.Visible = false;
+            // 
+            // Column3
+            // 
+            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.Width = 300;
+            // 
+            // Column11
+            // 
+            this.Column11.HeaderText = "品目表示順";
+            this.Column11.Name = "Column11";
+            this.Column11.Visible = false;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle4.Format = "#,0";
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle4;
+            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;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle5.Format = "#,0";
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle5;
+            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;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column6.HeaderText = "返却数";
+            this.Column6.Name = "Column6";
+            this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column6.Width = 125;
+            // 
+            // Column12
+            // 
+            this.Column12.HeaderText = "変更前返却数";
+            this.Column12.Name = "Column12";
+            this.Column12.Visible = false;
+            // 
+            // Column7
+            // 
+            this.Column7.HeaderText = "コメント";
+            this.Column7.Name = "Column7";
+            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column7.Width = 248;
+            // 
+            // FrmMaterialReturnEntry
+            // 
+            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(1166, 423);
+            this.Controls.Add(this.groupBoxEx1);
+            this.Controls.Add(this.button3);
+            this.Controls.Add(this.lblRepaydate);
+            this.Controls.Add(this.btnDataEntry);
+            this.Controls.Add(this.lblPerson);
+            this.Controls.Add(this.lblDETAILSTRING);
+            this.Controls.Add(this.label4);
+            this.Controls.Add(this.label3);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label1);
+            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 = "FrmMaterialReturnEntry";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMaterialReturnEntry_FormClosing);
+            this.Load += new System.EventHandler(this.FrmMaterialReturnEntry_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmMaterialReturnEntry_KeyDown);
+            this.groupBoxEx1.ResumeLayout(false);
+            this.groupBoxEx1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private DataGridViewEX dgvMaster;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label lblDETAILSTRING;
+        private System.Windows.Forms.Label lblPerson;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Button btnDataEntry;
+        private System.Windows.Forms.Label lblRepaydate;
+        private System.Windows.Forms.Button button3;
+        private GroupBoxEx groupBoxEx1;
+        private System.Windows.Forms.CheckBox tglAllReturn;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/FrmMaterialReturnEntry.resx	(revision 51)
@@ -0,0 +1,144 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column8.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="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="Column3.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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/ProcessControl.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Material/MaterialReturnEntry/ProcessControl.cs	(revision 51)
@@ -0,0 +1,1141 @@
+﻿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 System.Diagnostics;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.Master;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmMaterialReturnEntry
+    {
+        /// <summary>
+        /// 自プロセスの番号を持つ
+        /// </summary>
+        private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.MaterialReturnEntry;
+
+        #region プロセスコンテキストメニュー変数
+        /// <summary>
+        /// プロセスコンテキストメニュー
+        /// </summary>
+        private ContextMenuStrip m_ProcessContextMenuStrip;
+        #endregion
+
+        #region 他プロセスフォーム配列変数
+        /// <summary>
+        /// 他プロセスフォーム配列
+        /// </summary>
+        //private Form[] ClsExcute.SubFormHandleList = null;
+        #endregion
+
+        #region 別プロセス移動メニュー作成
+        /// <summary>
+        /// 別プロセス移動メニュー作成
+        /// </summary>
+        private void CreateProcessContextMenu(bool bSubForm)
+        {
+            try
+            {
+                // メニュー一覧を作成する
+                m_ProcessContextMenuStrip = new ContextMenuStrip();
+
+                // メニューのセット
+                UpDateProcessContextMenu(bSubForm);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 別プロセス移動メニュー更新
+        /// <summary>
+        /// 別プロセス移動メニュー更新
+        /// </summary>
+        private void UpDateProcessContextMenu(bool bSubForm = false)
+        {
+            try
+            {
+                // 起動プロセスの一案を作成する
+                List<KeyValuePair<int, string>> ProcList = new List<KeyValuePair<int, string>>();
+                // 工事番号セット
+                ClsProcessExist.ConstructionCode = m_ConstructionCode;
+                // リスト取得
+                ClsProcessExist.GetProcessList(ref ProcList, s_CurrentProcessNo);
+
+                // メニュー一覧を作成する
+                m_ProcessContextMenuStrip.Items.Clear();
+
+                // メニューデータのセット
+                int icnt = 0;
+                foreach (KeyValuePair<int, string> CurRec in ProcList)
+                {
+                    // 自プロセスは処理しない
+                    if (CurRec.Key == s_CurrentProcessNo) continue;
+
+                    // 総務部所属者はデータ参照出来る処理がある
+                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        if (!ClsSecurityPermission.PermitGeneralAffairsDevision(CurRec.Key)) continue;
+                    }
+
+                    //イベントの登録
+                    EventHandler handle = null;
+                    switch (CurRec.Key)
+                    {
+                        case (int)ClsExcute.ProcessExecuteNo.MainMenu:                  //  0:メニュー
+                            handle = ProcessExecute_MainMenu;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo:      //  2:工事情報入力
+                            handle = ProcessExecute_ConstructionBaseInfo;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimateInput:             //  3:積算見積入力
+                            handle = ProcessExecute_EstimateInput;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimatePrint:             //  4:積算見積書印刷
+                            handle = ProcessExecute_EstimatePrint;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimateBudget:            //  5:積算予算書入力
+                            handle = ProcessExecute_EstimateBudget;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionBudget:        //  6:工事予算書入力
+                            handle = ProcessExecute_ConstructionBudget;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            handle = ProcessExecute_ConstructionCopyList;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
+                            handle = ProcessExecute_PurchaseOrderEntry;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:        // 10:注文書印刷
+                            handle = ProcessExecute_PurchaseOrderPrint;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionLedger:        // 12:工事詳細台帳
+                            handle = ProcessExecute_ConstructionLedger;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.TAndPCosts:                // 13:交通費及び購入品入力
+                            handle = ProcessExecute_TAndPCosts;
+                            break;
+                    }
+                    // 起動関数のセットが無ければ処理しない
+                    if (handle == null) continue;
+
+                    // 区切り線
+                    if (icnt != 0) m_ProcessContextMenuStrip.Items.Add("-");
+                    // 行のセット
+                    ToolStripMenuItem tsmItem = new ToolStripMenuItem(CurRec.Value, null, handle);
+                    m_ProcessContextMenuStrip.Items.Add(tsmItem);
+                    icnt++;
+                }
+                // コンテキストメニューセット
+                button3.ContextMenuStrip = m_ProcessContextMenuStrip;
+                m_ProcessContextMenuStrip.Show(button3, new Point(0, 0));
+                m_ProcessContextMenuStrip.Close();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 別プロセス起動ボタン
+        /// <summary>
+        /// 別プロセス起動ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnOtherProc_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // ボタンの真上にメニューを表示する
+                int h = m_ProcessContextMenuStrip.Height * -1;
+                m_ProcessContextMenuStrip.Show(button3, new Point(0, h));
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 終了時処理
+        /// <summary>
+        /// 終了時サブフォームクローズ
+        /// </summary>
+        private void TerminatingProcess()
+        {
+            try
+            {
+                // フォームがCloseされていなければクローズする
+                for (int i = 0; i < ClsExcute.SubFormHandleList.Length; i++)
+                {
+                    PreserveSubFormHandle Handle = ClsExcute.SubFormHandleList[i];
+
+                    // 自分が起動したもの以外は処理しない
+                    if (Handle.ProcessNo != s_CurrentProcessNo) continue;
+
+                    // 自分は処理しない
+                    if (i == s_CurrentProcessNo)
+                    {
+                        ClsExcute.SubFormHandleList[i].SubFormHandle = null;
+                        ClsExcute.SubFormHandleList[i].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                        continue;
+                    }
+
+                    // 起動されて無ければ処理しない
+                    if (Handle.SubFormHandle == null) continue;
+
+                    // 画面クローズ
+                    Handle.SubFormHandle.Close();
+                    ClsExcute.SubFormHandleList[i].SubFormHandle = null;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 次の起動が申請画面かどうかの判定
+        /// <summary>
+        /// 次の起動が申請画面かどうかの判定
+        /// </summary>
+        /// <returns></returns>
+        private bool judgmentApprovalScreen()
+        {
+            try
+            {
+                // プロセス起動テーブルに申請画面が設定されている場合はtrue
+                int NextProcess = ClsExcute.ProcControlPara[ClsExcute.GetNowProcessPoint()].ProcNo;
+                if (NextProcess == (int)ClsExcute.SubFormExecuteNo.ApprovalScreen) return true;
+
+                return false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region ---------- 他プロセス起動ハンドラ群　START
+        #region 一気にメニューへ戻る
+        /// <summary>
+        /// 一気にメニューへ戻る
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ProcessExecute_MainMenu(object sender, EventArgs e)
+        {
+            try
+            {
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 起動テーブルをクリアする
+                ClsExcute.ClearProcess();
+
+                // メニューへ戻るフラグON　
+                m_ParentEnd = true;
+
+                // 終了処理OFF
+                m_CloseingProcessOn = false;
+
+                // 自フォーム終了
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 工事情報入力
+        /// <summary>
+        /// 工事情報入力
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                // フォームがあれば最前面へ
+                FrmConstructionBaseInfo frm = (FrmConstructionBaseInfo)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事情報入力起動
+                frm = new FrmConstructionBaseInfo();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionBaseInfoClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimateInput(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                // フォームがあれば最前面へ
+                FrmEstimateInput frm = (FrmEstimateInput)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 積算見積書入力起動
+                frm = new FrmEstimateInput();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimateInputClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimatePrint(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                // フォームがあれば最前面へ
+                FrmEstimatePrint frm = (FrmEstimatePrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 積算見積書印刷起動
+                frm = new FrmEstimatePrint();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimatePrintClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimateBudget(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                // フォームがあれば最前面へ
+                FrmEstimateBudget frm = (FrmEstimateBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 積算予算書入力起動
+                frm = new FrmEstimateBudget();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimateBudgetClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionBudget(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                // フォームがあれば最前面へ
+                FrmConstructionBudget frm = (FrmConstructionBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事予算書入力起動
+                frm = new FrmConstructionBudget();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionBudgetClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                // フォームがあれば最前面へ
+                FrmNewOrContinueCopy frm = (FrmNewOrContinueCopy)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事案件コピー起動
+                frm = new FrmNewOrContinueCopy();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmNewOrContinueCopyClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                // フォームがあれば最前面へ
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 注文書入力起動
+                frm = new FrmPurchaseOrderEntry();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmPurchaseOrderEntryClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                // フォームがあれば最前面へ
+                FrmPurchaseOrderPrint frm = (FrmPurchaseOrderPrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 注文書印刷起動
+                frm = new FrmPurchaseOrderPrint();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmPurchaseOrderPrintClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionLedger(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+                // フォームがあれば最前面へ
+                FrmConstructionLedger frm = (FrmConstructionLedger)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 工事詳細台帳入力起動
+                frm = new FrmConstructionLedger();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionLedgerClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_TAndPCosts(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
+                // フォームがあれば最前面へ
+                FrmTAndPCosts frm = (FrmTAndPCosts)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!DataEntryProcess()) return;
+                }
+
+                // 交通費及び購入品等入力起動
+                frm = new FrmTAndPCosts();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmTAndPCostsClosed);
+                frm.Show();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion // ---------- 他プロセス起動ハンドラ群　END
+
+        #region ---------- 他プロセス終了ハンドラ群　START
+        #region 工事情報入力のクローズを取得する
+        /// <summary>
+        /// 工事情報入力のクローズを取得する
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionBaseInfoClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                FrmConstructionBaseInfo frm = (FrmConstructionBaseInfo)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+                bool DataChange = frm.DataChenge;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    this.Activate();
+                    // データ変更がある場合は再表示
+                    if (DataChange)
+                    {
+                        //GetBaseInfoData();
+                      //  SetConstructorCode();
+                      //  if (m_ConstructionBaseInfo.ConstructionPeriod >= 16) GetExpensesList();
+                        InitDataLoad();
+                    }
+                }
+            }
+            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 FrmEstimateInputClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                FrmEstimateInput frm = (FrmEstimateInput)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmEstimatePrintClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                FrmEstimatePrint frm = (FrmEstimatePrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+                
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmEstimateBudgetClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                FrmEstimateBudget frm = (FrmEstimateBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmConstructionBudgetClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                FrmConstructionBudget frm = (FrmConstructionBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmNewOrContinueCopyClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                // プロセス番号が違うので注意！！
+                FrmNewOrContinueCopy frm = (FrmNewOrContinueCopy)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+
+                // 戻り値取得
+                int ConstructionCode = frm.ConstructionCode;
+                bool bNowConstruction = frm.NewConstruction;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // 現在設定値クリア
+                ClsExcute.ClearExecParameter(NowPoint);
+                // 工事番号変更
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ConstructionCode);
+                // コピー作成データフラグセット
+                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
+
+                this.Activate();
+
+                // 終了処理フラグOff
+                m_CloseingProcessOn = false;
+
+            }
+            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 FrmPurchaseOrderEntryClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmPurchaseOrderPrintClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmConstructionLedgerClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+                FrmConstructionLedger frm = (FrmConstructionLedger)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmTAndPCostsClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
+                FrmTAndPCosts frm = (FrmTAndPCosts)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion // ---------- 他プロセス終了ハンドラ群　END
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedings.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedings.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedings.cs	(revision 51)
@@ -47,41 +47,12 @@
         private enum DispGridColumn
         {
             No = 0,
-            FixFlg,
-            GroupCount,
-            ComponentCode,
-            ItemCode,
-            ItemName,
-            TextName,
-            SubContractorCode,
-            SubContractorName,
-            EstimatePrice,
-            ExecPrice,
-            Percent,
-            TitleFlg,
-            TotalFlg,
-            BlankFlg,
-            IndependentFlg,
-            ChildFlg,
-            payment,
+            Titile,
+            Detail,
         }
 
-        #region ���͕�����MAX�i120�j
-        /// <summary>
-        /// ���͕�����MAX�i120�j
-        /// </summary>
-        private static int s_InputStringMax1 = 120;
         #endregion
 
-        #region ���͐��lMAX�l�P�i9999999999.99�j
-        /// <summary>
-        /// ���͐��lMAX�l�P�i9999999999.99�j
-        /// </summary>
-        private static double s_InputDoubleMax1 = 9999999999.99;
-        #endregion
-
-        #endregion
-
         #region ���x���\���R���g���[��
         /// <summary>
         /// �\���R���g���[��
@@ -97,45 +68,45 @@
             /// </summary>
             ConstName,
             /// <summary>
-            /// �H���ꏊ
+            /// �쐬��
             /// </summary>
-            ConstPlace,
+            CreateDate,
             /// <summary>
-            /// �H���S���Җ�
+            /// �쐬�Җ�
             /// </summary>
             CreatorName,
             /// <summary>
-            /// �w������
+            /// �ō�����
             /// </summary>
-            InstructorName,
+            MeetingDate,
             /// <summary>
-            /// �쐬��
+            /// �J�n��
             /// </summary>
-            CreateDate,
+            StartHours,
             /// <summary>
-            /// �󒍋��z
+            /// �J�n��
             /// </summary>
-            OrdersPrice,
+            StartMinutes,
             /// <summary>
-            /// ���H��
+            /// �I����
             /// </summary>
-            StartingDate,
+            CompHours,
             /// <summary>
-            /// ������
+            /// �I����
             /// </summary>
-            CompleteDate,
+            CompMinutes,
             /// <summary>
-            /// �H��
+            /// �ꏊ1
             /// </summary>
-            BetweenTimes,
+            Place1,
             /// <summary>
-            /// �H�����
+            /// �ꏊ2
             /// </summary>
-            ConstructionType,
+            Place2,
             /// <summary>
-            /// �\�Z����
+            /// �ꏊ3
             /// </summary>
-            BudgetOverrun,
+            Place3,
         }
         #endregion
 
@@ -166,28 +137,6 @@
         private static Color s_CommonCalculatedValueFColor = Color.White;
         #endregion
         
-        #region �O���b�h���ڍs�^�C�g��
-        /// <summary>
-        /// �O���b�h���ڍs�^�C�g��
-        /// </summary>
-        private static string[] GroupTitle = new string[] { ""
-                                                            , "�o�@�@�@�@�@��"
-                                                            , "�{�@�@�H�@�@��"
-                                                            , "��ʔ�i�ʍs���E�d�ԑ�j"
-                                                            , "�w�@�@���@�@�i"
-                                                            , "�ԗ����[�X��"
-                                                            , "���ԏ�E���ޒu����"
-                                                            , "�h�@�@���@�@��"
-                                                            , "���@���@��@��"
-                                                            , "�w �� �� �� �^"
-                                                            , "���@�^�@�o�@��"
-                                                            , "���@�@���@�@�v"
-                                                            , "���@�v�@���@�z"
-                                                            , "���@���@���@�z"
-                                                            , "���ݗ��v���z"};
-        private static string PersonnelExpensesGroup = "�l�@�@���@�@��";
-        #endregion
-
         #region �Œ�J�����^�C�g��
         /// <summary>
         /// �Œ�J�����^�C�g��
@@ -351,58 +300,10 @@
         private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
 
         /// <summary>
-        /// �H����{�����
-        /// </summary>
-        private FrmConstructionBaseInfo m_frmBase = null;
-        /// <summary>
-        /// �ώZ���ϓ��͉��
-        /// </summary>
-        private FrmEstimateInput m_frmEstimate = null;
-        /// <summary>
-        /// �ώZ�\�Z���͉��
-        /// </summary>
-        private FrmEstimateBudget m_frmBudget = null;
-
-        /// <summary>
-        /// ���F�҃��X�g�n���h��
-        /// </summary>
-        private FrmApprovalAuthorizerList m_frmAuthorizerList = null;
-
-        /// <summary>
         /// ���x���R���g���[���ێ��z��
         /// </summary>
-        private Control[] m_DspLabelCtrl = new Control[12];
+        private Control[] m_DspLabelCtrl = null;
 
-        /// <summary>
-        /// ��`�s�J�E���g�z��
-        /// </summary>
-        private int[] m_CostsRowCount = new int[14];
-
-        /// <summary>
-        /// �x�����쐬�G���A
-        /// </summary>
-        private DataGridViewColumn[] m_GridPaymentColList;
-        private DataGridViewCellStyle[] m_GridPaymentCellStyleList;
-
-        /// <summary>
-        /// ���v�E���ї��쐬�G���A
-        /// </summary>
-        private DataGridViewColumn[] m_GridTotalColList;
-        private DataGridViewCellStyle[] m_GridTotalCellStyleList;
-
-        #region Cell���T�C�Y
-        /// <summary>
-        /// Cell���T�C�Y
-        /// </summary>
-        //private static int[] s_CellSize = new int[] { 90, 100, 0, 0, 0, 200, 200, 0, 200, 150, 150, 150, 150, 100, 0, 0, 0 };
-        private  int[] m_CellSize;
-        #endregion
-
-        /// <summary>
-        /// �w�b�_�[�p�c�[���`�b�v
-        /// </summary>
-        private ToolTip m_HeaderToolTip = null;
-
         // *-----* ���ʏ����ݒ� *-----*
         /// <summary>
         /// �T�u�t�H�[���t���O
@@ -435,21 +336,6 @@
             set { m_EditLock = value; }
         }
 
-        /// <summary>
-        /// �O���b�h�̃J���������擾����
-        /// </summary>
-        public int GetGridColumsCount
-        {
-            get { return Enum.GetNames(typeof(DispGridColumn)).Length; }
-        }
-
-        /// <summary>
-        /// �H���ڍב䒠�̍Čv�Z����
-        /// </summary>
-        public bool RecalculateLedger
-        {
-            get { return NonDspLedgerRecalculate(); }
-        }
         // *-----* ���ʏ����ݒ� *-----*
         /// <summary>
         /// �T�u�t�H�[���t���O
@@ -516,9 +402,6 @@
                 // �t�H�[����Close����Ă��Ȃ���΃N���[�Y����
                 TerminatingProcess();
 
-                // ���F�󋵈ꗗ���\������Ă���΃N���[�Y����
-                if (m_frmAuthorizerList != null) m_frmAuthorizerList.Close();
-
                 // �I���{�^����ON�Ȃ�ΑO�v���Z�X�ɖ߂�
                 if (m_CloseingProcessOn) ClsExcute.BackProcess();
             }
@@ -542,78 +425,6 @@
         }
         #endregion
 
-        #region �H����{���̃N���[�Y���擾����
-        /// <summary>
-        /// �H����{���̃N���[�Y���擾����
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void FrmBase_FormClosed(object sender, FormClosedEventArgs e)
-        {
-            try
-            {
-                this.Activate();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                // �n���h���N���A
-                m_frmBase.Dispose(); m_frmBase = null;
-            }
-        }
-        #endregion
-
-        #region �ώZ���ϓ��͂̃N���[�Y���擾����
-        /// <summary>
-        /// �ώZ���ϓ��͂̃N���[�Y���擾����
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void FrmEstimateClosed(object sender, FormClosedEventArgs e)
-        {
-            try
-            {
-                    this.Activate();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                // �n���h���N���A
-                m_frmEstimate.Dispose(); m_frmEstimate = null;
-            }
-        }
-        #endregion
-
-        #region �ώZ���ϓ��͂̃N���[�Y���擾����
-        /// <summary>
-        /// �ώZ���ϓ��͂̃N���[�Y���擾����
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void FrmBudgetClosed(object sender, FormClosedEventArgs e)
-        {
-            try
-            {
-                this.Activate();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                // �n���h���N���A
-                m_frmBudget.Dispose(); m_frmBudget = null;
-            }
-        }
-        #endregion
-
         #region Entry�L�[�ł̈ړ�����
         /// <summary>
         /// Entry�L�[�ł̈ړ�����
@@ -669,24 +480,11 @@
                     // ���F�ΏۃR�[�h���擾����
                     int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
                     // �Č��ɑ΂��Đ\��������Ă��邩���m�F����
-                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode);
+                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode, CommonDefine.s_Default_OrderNo);
                     // ���O�C���҂����F�҂����m�F����
                     bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
                 }
 
-                // �����������҂��f�[�^�ɃA�N�Z�X����ꍇ�͏�ɎQ�ƃ��[�h
-                //if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
-                //{
-                //    m_EditLock = true;
-                //}
-
-                // �Q�ƃ��[�h
-                if (m_EditLock)
-                {
-                    // �S�ẴR���g���[�����b�N
-                    SeeModeLock();
-                }
-
                 // �ύX�t���OOFF
                 m_bChengeAns = false;
             }
@@ -722,103 +520,6 @@
         }
         #endregion
 
-        #region �t�H�[���N��������
-        /// <summary>
-        /// �t�H�[���N��������
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void FrmConstructionBudget_Shown(object sender, EventArgs e)
-        {
-            try
-            {
-                // ���F�҈ꗗ�\��
-                //DispAuthtorizerListControl();
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region ���F�҈ꗗ�N���[�Y
-        /// <summary>
-        /// ���F�҈ꗗ�̃N���[�Y���擾����
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void FrmApprovalAuthorizerList_FormClosed(object sender, FormClosedEventArgs e)
-        {
-            try
-            {
-                this.Activate();
-
-                // ���F��ʋN���t���O�擾
-                bool bApprovalExecute = m_frmAuthorizerList.ExecApprovalScreen;
-
-                // �n���h���N���A
-                m_frmAuthorizerList.Dispose(); m_frmAuthorizerList = null;
-
-                // ���F��ʋN���������ꍇ
-                if (!bApprovalExecute) return;
-
-                // �I������OFF
-                m_CloseingProcessOn = false;
-                // ���t�H�[���I��
-                this.Close();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region ���F�҈ꗗ�\��
-        /// <summary>
-        /// ���F�҈ꗗ�\��
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void btnApprovalList_Click(object sender, EventArgs e)
-        {
-
-        }
-        #endregion
-
-        #region ���F�҉�ʕ\��
-        /// <summary>
-        /// ���F��ʂ�\������
-        /// </summary>
-        private void DispAuthtorizerListControl()
-        {
-            try
-            {
-                // ���F�҈ꗗ�\��
-                m_frmAuthorizerList = new FrmApprovalAuthorizerList();
-                // �p�����[�^�Z�b�g
-                m_frmAuthorizerList.ConstructionCode = m_ConstructionCode;
-                int ProgressComplete = ClsExcute.AppovalList.First(x => x.Value.Equals("�H���\�Z�����F")).Key;
-
-                m_frmAuthorizerList.ApprovalCode = ProgressComplete;
-                // �ʒu�ݒ�
-                m_frmAuthorizerList.LocationPoint = new Point(this.Right, this.Top);
-
-                // �^�X�N�o�[�ɕ\�����Ȃ�
-                //m_frmAuthorizerList.ShowInTaskbar = false;
-
-                // �N���[�X�h�n���h����������Œ�`����
-                m_frmAuthorizerList.FormClosed += new FormClosedEventHandler(FrmApprovalAuthorizerList_FormClosed);
-                m_frmAuthorizerList.Show();
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region �Z���̃L�[�_�E��
         /// <summary>
         /// �Z���̃L�[�_�E������
@@ -834,25 +535,6 @@
                 e.Handled = true;
                 return;
             }
-
-            // ���b�N�ӏ�Delete�EBack�L�[�̏���
-            if (e.KeyCode == Keys.Delete || e.KeyCode == Keys.Back)
-            {
-                DataGridViewCell CurCell = dgvAllDisplay.CurrentCell;
-                // ���͉�Ж��̂ݏ�������
-                if (CurCell.ColumnIndex != (int)DispGridColumn.SubContractorName) return;
-                
-                DataGridViewRow CurRow = dgvAllDisplay.CurrentRow;
-                // ���ʉ��ݔ�E�O����̂ݏ�������
-                int GroupNo = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-                if (GroupNo != (int)FrmConstructionBudget.DataGroup.CommonTempCosts
-                    && GroupNo != (int)FrmConstructionBudget.DataGroup.OutSourceCosts) return;
-                
-                // ���͉�ЃR�[�h�E���̂��N���A����
-                CurRow.Cells[(int)(int)DispGridColumn.SubContractorCode].Value = 0;
-                CurRow.Cells[(int)(int)DispGridColumn.SubContractorName].Value = string.Empty;
-                m_bChengeAns = true;
-            }
         }
         #endregion
 
@@ -868,112 +550,7 @@
             {
                 DataGridView dgv = dgvAllDisplay;
                 DataGridViewRow CurRow = dgv.CurrentRow;
-                // ���׈ȊO�͏������Ȃ�
-                if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)DispGridColumn.TotalFlg].Value)) return;
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TotalFlg].Value) != 0) return;
 
-                if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)DispGridColumn.TitleFlg].Value)) return;
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TitleFlg].Value) != 0) return;
-
-                if (CommonMotions.chkObjectIsNull(CurRow.Cells[(int)DispGridColumn.BlankFlg].Value)) return;
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.BlankFlg].Value) != 0) return;
-
-                // �󔒍s�͏������Ȃ�
-                if (BlankLine(e.RowIndex)) return;
-
-                // �O���[�v�ԍ��擾
-                int GroupNo = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                // ���͒l�ҏW
-                switch (e.ColumnIndex)
-                {
-                    case (int)DispGridColumn.EstimatePrice:
-                        // �\����z
-                        CurRow.Cells[e.ColumnIndex].Value = CommonMotions.cnvInt(CurRow.Cells[e.ColumnIndex].Value).ToString("#,#");
-                        break;
-                    case (int)DispGridColumn.ExecPrice:
-                        // ���s���z
-                        int execprice = CommonMotions.cnvInt(CurRow.Cells[e.ColumnIndex].Value);
-                        CurRow.Cells[e.ColumnIndex].Value = execprice.ToString("#,#");
-
-                        if (GroupNo != (int)FrmConstructionLedger.DataGroup.BillingAmount && GroupNo != (int)FrmConstructionLedger.DataGroup.CurrentProfit)
-                        {
-                            // �䗦�v�Z
-                            CurRow.Cells[(int)DispGridColumn.Percent].Value = CalculattionPercent(execprice).ToString("0.00");
-                        }
-                        break;
-                    default:
-                        // ���̑�
-                        if (e.ColumnIndex >= (int)DispGridColumn.payment)
-                        {
-                            CurRow.Cells[e.ColumnIndex].Value = CommonMotions.cnvInt(CurRow.Cells[e.ColumnIndex].Value).ToString("#,#");
-                        }
-                        break;
-                }
-
-                // �]�����ڂ�����Ɨ����ڂł���Ύ��s�̍��v��\�����Ȃ�
-                bool bDspTotalFlg = true;
-                int nextRowCnt = CurRow.Index + 1;
-                if (nextRowCnt < dgv.RowCount)
-                {
-                    // ���s�͓Ɨ�����
-                    if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.IndependentFlg].Value) == 1)
-                    {
-                        // ���s�͏]������
-                        if (CommonMotions.cnvInt(dgv.Rows[nextRowCnt].Cells[(int)DispGridColumn.ChildFlg].Value) == 1)
-                            bDspTotalFlg = false;
-                    }
-                }
-
-                // ���v�\��
-                int TotalCols = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                int RowTotal = 0;
-                if (bDspTotalFlg)
-                {
-                    // �x�����z�̍��v
-                    RowTotal = 0;
-                    for (int i = (int)DispGridColumn.payment; i < TotalCols; i++)
-                    {
-                        RowTotal += CommonMotions.cnvInt(CurRow.Cells[i].Value);
-                    }
-                }
-                else
-                {
-                    for (int i = CurRow.Index + 1; i < dgv.RowCount; i++)
-                    {
-                        if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)DispGridColumn.IndependentFlg].Value) == 1) break;
-                        RowTotal += CommonMotions.cnvInt(dgv.Rows[i].Cells[TotalCols].Value);
-                    }
-                }
-                CurRow.Cells[TotalCols].Value = RowTotal.ToString("#,0");
-
-                // �O���[�v�ɂ���Ďx���v�Z�̕\������ύX����
-                switch (GroupNo)
-                {
-                    case (int)FrmConstructionLedger.DataGroup.BillingAmount:
-                        // �������z�͎x�����z�����v�Z���Ȃ�
-                        break;
-                    default:
-                        // ���ѕ\��
-                        int ExecPrice = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.ExecPrice].Value);
-                        int ResultCols = dgv.ColumnCount + (int)ColPayTotal.Results;
-                        int ResultValue = (ExecPrice - RowTotal);
-                        CurRow.Cells[ResultCols].Value = ResultValue.ToString("#,0");
-
-                        // �x���\�z�E�x�����߂̕ҏW
-                        SetOverPayment(CurRow.Index);
-                        break;
-                }
-
-                // �����v�v�Z
-                CalculateNetIncome();
-                
-                // ���v�v�Z
-                CalculateAllTotal();
-
-                /// ���ݗ��v�v�Z
-                CalculateCurrentProfit();
-
             }
             catch (System.Exception ex)
             {
@@ -1001,18 +578,11 @@
 
                 DataGridView dgv = (DataGridView)sender;
 
-                // ���Ў{�H�E�w���i�s�̓{�^�����s����{�^����\������
-                DispControlLineButton();
-
-                // �Ǎ���p�Z���͏������Ȃ�
-                if (dgv.CurrentCell.ReadOnly) return;
-
                 //IME�̃��[�h��ύX����
                 switch (e.ColumnIndex)
                 {
-                    case (int)DispGridColumn.ItemName:                          // ����
-                    case (int)DispGridColumn.TextName:                          // �H�����e
-                    case (int)DispGridColumn.SubContractorName:                 // ���͉��
+                    case (int)DispGridColumn.Titile:        // ����
+                    case (int)DispGridColumn.Detail:        // �c��
                         dgv.ImeMode = ImeMode.On;
                         break;
                     default:
@@ -1049,118 +619,6 @@
         }
         #endregion
 
-        // �Z���I���s
-        int m_BeforeGridRow = -1;
-        #region �Z���I��ύX
-        /// <summary>
-        /// �Z���ύX���s�̐F��ς���
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void dgvAllDisplay_SelectionChanged(object sender, EventArgs e)
-        {
-            DataGridView dgv = dgvAllDisplay;
-            // �s�I��F�����ɖ߂�
-            if (m_BeforeGridRow != -1)
-            {
-                DefaultRowChangeColor(m_BeforeGridRow);
-            }
-
-            // �I���s����ޔ�
-            m_BeforeGridRow = dgv.CurrentRow.Index;
-            // �s�I��F��ݒ�
-            SelectRowChangeColor(m_BeforeGridRow);
-        }
-        #endregion
-
-        #region �Z���_�u���N���b�N
-        /// <summary>
-        /// �Z���_�u���N���b�N
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void dgvAllDisplay_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
-        {
-            DataGridView dgv = dgvAllDisplay;
-
-            // �^�C�g���͏������Ȃ�
-            if (CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1) return;
-
-            switch (e.ColumnIndex)
-            {
-                // ----- ���͉�Ж��Z��
-                case (int)DispGridColumn.SubContractorName:
-                    // �O���b�h���Ə����݋֎~�͏����I��
-                    if (dgv.ReadOnly) return;
-
-                    int GroupNo = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispGridColumn.GroupCount].Value);
-                    switch (GroupNo)
-                    {
-                        case (int)FrmConstructionLedger.DataGroup.ConstructionCosts:
-                            // ----- �{�H��
-                            // ���͉�БI��
-                            ShowSubConstructorDiag();
-                            break;
-                        case (int)FrmConstructionLedger.DataGroup.PurchaseCosts:
-                            // ----- �w���i
-                            // �d����I��
-                            ShowSuppliersDiag();
-                            break;
-                        default:
-                            break;
-                    }
-
-                    break;
-                default:
-                    break;
-            }
-        }
-        #endregion
-
-        #region �O���b�h�̃}�E�X�A�b�v
-        /// <summary>
-        /// �O���b�h�}�E�X�A�b�v
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void dgvAllDisplay_MouseUp(object sender, MouseEventArgs e)
-        {
-            try
-            {
-                DataGridView dgv = (DataGridView)sender;
-
-                lblCellTotal.Text = string.Empty;
-
-                double dTotal = 0;
-                int DataCnt = 0;
-                int NumericCnt = 0;
-                foreach (DataGridViewCell c in dgv.SelectedCells)
-                {
-                    if (CommonMotions.chkObjectIsNull(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex])) continue;
-                    if (CommonMotions.chkCellBlank(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value)) continue;
-
-                    Console.WriteLine("{0}, {1}", c.ColumnIndex, c.RowIndex);
-                    DataCnt++;
-                    dTotal += CommonMotions.cnvDouble(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value);
-                    if (CommonMotions.chkNumeric(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value)) NumericCnt++;
-                }
-                if (DataCnt <= 1 || dTotal == 0 || NumericCnt == 0) return;
-                string strTotal = CommonMotions.cnvTruncate(dTotal).ToString("#,#");
-                if (dTotal - System.Math.Floor(dTotal) != 0) strTotal = dTotal.ToString("#,#.00");
-
-                string strwrkData = string.Format(CommonDefine.s_CalculateCellFormat,
-                                                    CommonMotions.cnvTruncate(dTotal / (double)NumericCnt).ToString("#,#"),
-                                                    DataCnt.ToString("#,#"),
-                                                    strTotal);
-                lblCellTotal.Text = strwrkData;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region �s�ǉ��{�^��
         /// <summary>
         /// �s�ǉ��{�^������
@@ -1169,10 +627,6 @@
         /// <param name="e"></param>
         private void btnLineAdd_Click(object sender, EventArgs e)
         {
-            // ���Ў{�H�E�w���i�s��ǉ�����
-            AddLineData();
-            // �s�ǉ����͑I���s��+����
-            m_BeforeGridRow++;
         }
         #endregion
 
@@ -1184,8 +638,6 @@
         /// <param name="e"></param>
         private void btnLineDel_Click(object sender, EventArgs e)
         {
-            // ���Ў{�H�E�w���i�s���폜����
-            DelLineData();
         }
         #endregion
 
@@ -1206,6 +658,8 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.EntryEndMessage("�ł����킹�c���^�f�[�^");
+
             // �I��
             this.Close();
         }
@@ -1228,6 +682,7 @@
             else
                 m_CloseingProcessOn = false;
 
+            CommonMotions.RemoveEndMessage("�ł����킹�c���^�f�[�^");
             // �I��
             this.Close();
         }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedings.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedings.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedings.designer.cs	(revision 51)
@@ -39,21 +39,28 @@
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.panel1 = new System.Windows.Forms.Panel();
+            this.dTPCreateDate = new System.Windows.Forms.DateTimePicker();
+            this.lblLabel02 = new System.Windows.Forms.Label();
             this.pnlApproval = new System.Windows.Forms.Panel();
             this.lblApprovalCount = new System.Windows.Forms.Label();
             this.btnPetition = new System.Windows.Forms.Button();
             this.btnApproval = new System.Windows.Forms.Button();
-            this.textBox1 = new System.Windows.Forms.TextBox();
-            this.label3 = new System.Windows.Forms.Label();
+            this.lblLabel01 = new System.Windows.Forms.Label();
             this.label4 = new System.Windows.Forms.Label();
             this.label19 = new System.Windows.Forms.Label();
-            this.cmbDirectInput = new System.Windows.Forms.ComboBox();
             this.label5 = new System.Windows.Forms.Label();
-            this.lblLabel04 = new System.Windows.Forms.Label();
+            this.lblLabel03 = new System.Windows.Forms.Label();
+            this.pnlApprovalButton = new System.Windows.Forms.Panel();
+            this.btnOnApproval = new System.Windows.Forms.Button();
+            this.btnNotApproval = new System.Windows.Forms.Button();
+            this.btnOnHold = new System.Windows.Forms.Button();
             this.btnLineDel = new System.Windows.Forms.Button();
             this.btnLineAdd = new System.Windows.Forms.Button();
             this.pnlBase = new System.Windows.Forms.Panel();
+            this.dtMeetingDate = new System.Windows.Forms.DateTimePicker();
             this.textBox3 = new System.Windows.Forms.TextBox();
+            this.textBox2 = new System.Windows.Forms.TextBox();
+            this.textBox1 = new System.Windows.Forms.TextBox();
             this.numUD4 = new System.Windows.Forms.NumericUpDown();
             this.numUD3 = new System.Windows.Forms.NumericUpDown();
             this.label16 = new System.Windows.Forms.Label();
@@ -63,12 +70,7 @@
             this.label18 = new System.Windows.Forms.Label();
             this.label15 = new System.Windows.Forms.Label();
             this.label14 = new System.Windows.Forms.Label();
-            this.dataGridViewEX1 = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.label11 = new System.Windows.Forms.Label();
-            this.textBox2 = new System.Windows.Forms.TextBox();
             this.label10 = new System.Windows.Forms.Label();
             this.label9 = new System.Windows.Forms.Label();
             this.label8 = new System.Windows.Forms.Label();
@@ -77,21 +79,28 @@
             this.label7 = new System.Windows.Forms.Label();
             this.label6 = new System.Windows.Forms.Label();
             this.lblCellTotal = new System.Windows.Forms.Label();
+            this.btnOtherProc = new System.Windows.Forms.Button();
+            this.btnFinal = new System.Windows.Forms.Button();
+            this.btnFirst = new System.Windows.Forms.Button();
+            this.btnProv = new System.Windows.Forms.Button();
+            this.btnNext = new System.Windows.Forms.Button();
+            this.dgvPerson = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dgvAllDisplay = 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.btnOtherProc = new System.Windows.Forms.Button();
-            this.textBox4 = new System.Windows.Forms.TextBox();
-            this.textBox5 = new System.Windows.Forms.TextBox();
             this.panel1.SuspendLayout();
             this.pnlApproval.SuspendLayout();
+            this.pnlApprovalButton.SuspendLayout();
             this.pnlBase.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUD4)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.numUD3)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.numUD2)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.numcUD1)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dataGridViewEX1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvPerson)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).BeginInit();
             this.SuspendLayout();
             // 
@@ -106,7 +115,7 @@
             this.label1.Name = "label1";
             this.label1.Size = new System.Drawing.Size(500, 20);
             this.label1.TabIndex = 6;
-            this.label1.Text = "発注者打ち合わせ議事録入力";
+            this.label1.Text = "打　合　せ　議　事　録　入　力";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // btnDataDelete
@@ -115,7 +124,7 @@
             this.btnDataDelete.BackColor = System.Drawing.Color.Red;
             this.btnDataDelete.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataDelete.ForeColor = System.Drawing.Color.White;
-            this.btnDataDelete.Location = new System.Drawing.Point(1086, 656);
+            this.btnDataDelete.Location = new System.Drawing.Point(1086, 658);
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 13;
@@ -129,7 +138,7 @@
             this.btnDataEntry.BackColor = System.Drawing.Color.Green;
             this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataEntry.ForeColor = System.Drawing.Color.White;
-            this.btnDataEntry.Location = new System.Drawing.Point(960, 656);
+            this.btnDataEntry.Location = new System.Drawing.Point(960, 658);
             this.btnDataEntry.Name = "btnDataEntry";
             this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
             this.btnDataEntry.TabIndex = 12;
@@ -143,7 +152,7 @@
             this.btnEnd.BackColor = System.Drawing.Color.Blue;
             this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnEnd.ForeColor = System.Drawing.Color.White;
-            this.btnEnd.Location = new System.Drawing.Point(1212, 656);
+            this.btnEnd.Location = new System.Drawing.Point(1212, 658);
             this.btnEnd.Name = "btnEnd";
             this.btnEnd.Size = new System.Drawing.Size(120, 30);
             this.btnEnd.TabIndex = 14;
@@ -156,19 +165,43 @@
             this.panel1.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
             this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.panel1.Controls.Add(this.dTPCreateDate);
+            this.panel1.Controls.Add(this.lblLabel02);
             this.panel1.Controls.Add(this.pnlApproval);
-            this.panel1.Controls.Add(this.textBox1);
-            this.panel1.Controls.Add(this.label3);
+            this.panel1.Controls.Add(this.lblLabel01);
             this.panel1.Controls.Add(this.label4);
             this.panel1.Controls.Add(this.label19);
-            this.panel1.Controls.Add(this.cmbDirectInput);
             this.panel1.Controls.Add(this.label5);
-            this.panel1.Controls.Add(this.lblLabel04);
+            this.panel1.Controls.Add(this.lblLabel03);
+            this.panel1.Controls.Add(this.pnlApprovalButton);
             this.panel1.Location = new System.Drawing.Point(7, 40);
             this.panel1.Name = "panel1";
             this.panel1.Size = new System.Drawing.Size(1330, 80);
             this.panel1.TabIndex = 0;
             // 
+            // dTPCreateDate
+            // 
+            this.dTPCreateDate.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dTPCreateDate.Format = System.Windows.Forms.DateTimePickerFormat.Short;
+            this.dTPCreateDate.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.dTPCreateDate.Location = new System.Drawing.Point(866, 6);
+            this.dTPCreateDate.Name = "dTPCreateDate";
+            this.dTPCreateDate.Size = new System.Drawing.Size(170, 26);
+            this.dTPCreateDate.TabIndex = 117;
+            this.dTPCreateDate.TabStop = false;
+            // 
+            // lblLabel02
+            // 
+            this.lblLabel02.BackColor = System.Drawing.Color.White;
+            this.lblLabel02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel02.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblLabel02.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel02.Location = new System.Drawing.Point(236, 7);
+            this.lblLabel02.Name = "lblLabel02";
+            this.lblLabel02.Size = new System.Drawing.Size(492, 25);
+            this.lblLabel02.TabIndex = 116;
+            this.lblLabel02.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
             // pnlApproval
             // 
             this.pnlApproval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
@@ -178,7 +211,7 @@
             this.pnlApproval.Controls.Add(this.lblApprovalCount);
             this.pnlApproval.Controls.Add(this.btnPetition);
             this.pnlApproval.Controls.Add(this.btnApproval);
-            this.pnlApproval.Location = new System.Drawing.Point(1052, 39);
+            this.pnlApproval.Location = new System.Drawing.Point(1052, 35);
             this.pnlApproval.Name = "pnlApproval";
             this.pnlApproval.Size = new System.Drawing.Size(262, 34);
             this.pnlApproval.TabIndex = 114;
@@ -222,29 +255,19 @@
             this.btnApproval.Text = "未承認";
             this.btnApproval.UseVisualStyleBackColor = false;
             // 
-            // textBox1
+            // lblLabel01
             // 
-            this.textBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.textBox1.Location = new System.Drawing.Point(866, 6);
-            this.textBox1.Name = "textBox1";
-            this.textBox1.Size = new System.Drawing.Size(140, 26);
-            this.textBox1.TabIndex = 1;
-            this.textBox1.Text = "2016/12/31";
-            this.textBox1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.lblLabel01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblLabel01.BackColor = System.Drawing.Color.White;
+            this.lblLabel01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel01.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel01.Location = new System.Drawing.Point(128, 7);
+            this.lblLabel01.Name = "lblLabel01";
+            this.lblLabel01.Size = new System.Drawing.Size(100, 25);
+            this.lblLabel01.TabIndex = 113;
+            this.lblLabel01.Text = "2016999901";
+            this.lblLabel01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // label3
-            // 
-            this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-            this.label3.BackColor = System.Drawing.Color.White;
-            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label3.ForeColor = System.Drawing.Color.Black;
-            this.label3.Location = new System.Drawing.Point(128, 7);
-            this.label3.Name = "label3";
-            this.label3.Size = new System.Drawing.Size(100, 25);
-            this.label3.TabIndex = 113;
-            this.label3.Text = "2016999901";
-            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // label4
             // 
             this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
@@ -269,23 +292,11 @@
             this.label19.Text = "工事名称";
             this.label19.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // cmbDirectInput
-            // 
-            this.cmbDirectInput.BackColor = System.Drawing.Color.White;
-            this.cmbDirectInput.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbDirectInput.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbDirectInput.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.cmbDirectInput.FormattingEnabled = true;
-            this.cmbDirectInput.Location = new System.Drawing.Point(236, 6);
-            this.cmbDirectInput.Name = "cmbDirectInput";
-            this.cmbDirectInput.Size = new System.Drawing.Size(492, 27);
-            this.cmbDirectInput.TabIndex = 0;
-            // 
             // label5
             // 
             this.label5.BackColor = System.Drawing.Color.SandyBrown;
             this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label5.Location = new System.Drawing.Point(1022, 7);
+            this.label5.Location = new System.Drawing.Point(744, 40);
             this.label5.Name = "label5";
             this.label5.Size = new System.Drawing.Size(114, 25);
             this.label5.TabIndex = 35;
@@ -292,26 +303,74 @@
             this.label5.Text = "記　入　者";
             this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // lblLabel04
+            // lblLabel03
             // 
-            this.lblLabel04.BackColor = System.Drawing.Color.White;
-            this.lblLabel04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblLabel04.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblLabel04.ForeColor = System.Drawing.Color.Black;
-            this.lblLabel04.Location = new System.Drawing.Point(1144, 7);
-            this.lblLabel04.Name = "lblLabel04";
-            this.lblLabel04.Size = new System.Drawing.Size(170, 25);
-            this.lblLabel04.TabIndex = 36;
-            this.lblLabel04.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            this.lblLabel03.BackColor = System.Drawing.Color.White;
+            this.lblLabel03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel03.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblLabel03.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel03.Location = new System.Drawing.Point(866, 40);
+            this.lblLabel03.Name = "lblLabel03";
+            this.lblLabel03.Size = new System.Drawing.Size(170, 25);
+            this.lblLabel03.TabIndex = 36;
+            this.lblLabel03.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
             // 
+            // pnlApprovalButton
+            // 
+            this.pnlApprovalButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.pnlApprovalButton.AutoSize = true;
+            this.pnlApprovalButton.BackColor = System.Drawing.Color.White;
+            this.pnlApprovalButton.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.pnlApprovalButton.Controls.Add(this.btnOnApproval);
+            this.pnlApprovalButton.Controls.Add(this.btnNotApproval);
+            this.pnlApprovalButton.Controls.Add(this.btnOnHold);
+            this.pnlApprovalButton.Location = new System.Drawing.Point(1052, 35);
+            this.pnlApprovalButton.Name = "pnlApprovalButton";
+            this.pnlApprovalButton.Size = new System.Drawing.Size(262, 34);
+            this.pnlApprovalButton.TabIndex = 119;
+            this.pnlApprovalButton.Visible = false;
+            // 
+            // btnOnApproval
+            // 
+            this.btnOnApproval.BackColor = System.Drawing.Color.MediumSpringGreen;
+            this.btnOnApproval.Location = new System.Drawing.Point(5, 3);
+            this.btnOnApproval.Name = "btnOnApproval";
+            this.btnOnApproval.Size = new System.Drawing.Size(83, 24);
+            this.btnOnApproval.TabIndex = 34;
+            this.btnOnApproval.TabStop = false;
+            this.btnOnApproval.Text = "承認";
+            this.btnOnApproval.UseVisualStyleBackColor = false;
+            // 
+            // btnNotApproval
+            // 
+            this.btnNotApproval.BackColor = System.Drawing.Color.Red;
+            this.btnNotApproval.Location = new System.Drawing.Point(171, 3);
+            this.btnNotApproval.Name = "btnNotApproval";
+            this.btnNotApproval.Size = new System.Drawing.Size(83, 24);
+            this.btnNotApproval.TabIndex = 35;
+            this.btnNotApproval.TabStop = false;
+            this.btnNotApproval.Text = "不承認";
+            this.btnNotApproval.UseVisualStyleBackColor = false;
+            // 
+            // btnOnHold
+            // 
+            this.btnOnHold.BackColor = System.Drawing.Color.Yellow;
+            this.btnOnHold.Location = new System.Drawing.Point(88, 3);
+            this.btnOnHold.Name = "btnOnHold";
+            this.btnOnHold.Size = new System.Drawing.Size(83, 24);
+            this.btnOnHold.TabIndex = 36;
+            this.btnOnHold.TabStop = false;
+            this.btnOnHold.Text = "保留";
+            this.btnOnHold.UseVisualStyleBackColor = false;
+            // 
             // btnLineDel
             // 
             this.btnLineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnLineDel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
             this.btnLineDel.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnLineDel.Location = new System.Drawing.Point(812, 656);
+            this.btnLineDel.Location = new System.Drawing.Point(831, 658);
             this.btnLineDel.Name = "btnLineDel";
-            this.btnLineDel.Size = new System.Drawing.Size(130, 30);
+            this.btnLineDel.Size = new System.Drawing.Size(120, 30);
             this.btnLineDel.TabIndex = 20;
             this.btnLineDel.Text = "行　削　除";
             this.btnLineDel.UseVisualStyleBackColor = false;
@@ -323,9 +382,9 @@
             this.btnLineAdd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnLineAdd.BackColor = System.Drawing.Color.PaleGreen;
             this.btnLineAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold);
-            this.btnLineAdd.Location = new System.Drawing.Point(674, 656);
+            this.btnLineAdd.Location = new System.Drawing.Point(711, 658);
             this.btnLineAdd.Name = "btnLineAdd";
-            this.btnLineAdd.Size = new System.Drawing.Size(130, 30);
+            this.btnLineAdd.Size = new System.Drawing.Size(120, 30);
             this.btnLineAdd.TabIndex = 19;
             this.btnLineAdd.Text = "行　追　加";
             this.btnLineAdd.UseVisualStyleBackColor = false;
@@ -338,9 +397,10 @@
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
             this.pnlBase.BackColor = System.Drawing.Color.WhiteSmoke;
-            this.pnlBase.Controls.Add(this.textBox5);
-            this.pnlBase.Controls.Add(this.textBox4);
+            this.pnlBase.Controls.Add(this.dtMeetingDate);
             this.pnlBase.Controls.Add(this.textBox3);
+            this.pnlBase.Controls.Add(this.textBox2);
+            this.pnlBase.Controls.Add(this.textBox1);
             this.pnlBase.Controls.Add(this.numUD4);
             this.pnlBase.Controls.Add(this.numUD3);
             this.pnlBase.Controls.Add(this.label16);
@@ -350,9 +410,8 @@
             this.pnlBase.Controls.Add(this.label18);
             this.pnlBase.Controls.Add(this.label15);
             this.pnlBase.Controls.Add(this.label14);
-            this.pnlBase.Controls.Add(this.dataGridViewEX1);
+            this.pnlBase.Controls.Add(this.dgvPerson);
             this.pnlBase.Controls.Add(this.label11);
-            this.pnlBase.Controls.Add(this.textBox2);
             this.pnlBase.Controls.Add(this.label10);
             this.pnlBase.Controls.Add(this.label9);
             this.pnlBase.Controls.Add(this.label8);
@@ -367,18 +426,45 @@
             this.pnlBase.Size = new System.Drawing.Size(1330, 510);
             this.pnlBase.TabIndex = 36;
             // 
+            // dtMeetingDate
+            // 
+            this.dtMeetingDate.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dtMeetingDate.Format = System.Windows.Forms.DateTimePickerFormat.Short;
+            this.dtMeetingDate.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.dtMeetingDate.Location = new System.Drawing.Point(128, 9);
+            this.dtMeetingDate.Name = "dtMeetingDate";
+            this.dtMeetingDate.Size = new System.Drawing.Size(170, 26);
+            this.dtMeetingDate.TabIndex = 124;
+            this.dtMeetingDate.TabStop = false;
+            // 
             // textBox3
             // 
             this.textBox3.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.textBox3.Location = new System.Drawing.Point(128, 46);
+            this.textBox3.Location = new System.Drawing.Point(128, 114);
             this.textBox3.Name = "textBox3";
             this.textBox3.Size = new System.Drawing.Size(700, 26);
-            this.textBox3.TabIndex = 5;
+            this.textBox3.TabIndex = 123;
             // 
+            // textBox2
+            // 
+            this.textBox2.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.textBox2.Location = new System.Drawing.Point(128, 80);
+            this.textBox2.Name = "textBox2";
+            this.textBox2.Size = new System.Drawing.Size(700, 26);
+            this.textBox2.TabIndex = 123;
+            // 
+            // textBox1
+            // 
+            this.textBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.textBox1.Location = new System.Drawing.Point(128, 46);
+            this.textBox1.Name = "textBox1";
+            this.textBox1.Size = new System.Drawing.Size(700, 26);
+            this.textBox1.TabIndex = 5;
+            // 
             // numUD4
             // 
             this.numUD4.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numUD4.Location = new System.Drawing.Point(647, 9);
+            this.numUD4.Location = new System.Drawing.Point(645, 9);
             this.numUD4.Maximum = new decimal(new int[] {
             59,
             0,
@@ -392,7 +478,7 @@
             // numUD3
             // 
             this.numUD3.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numUD3.Location = new System.Drawing.Point(562, 9);
+            this.numUD3.Location = new System.Drawing.Point(576, 9);
             this.numUD3.Maximum = new decimal(new int[] {
             23,
             0,
@@ -409,7 +495,7 @@
             this.label16.BackColor = System.Drawing.Color.Transparent;
             this.label16.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.label16.Font = new System.Drawing.Font("ＭＳ 明朝", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label16.Location = new System.Drawing.Point(612, 6);
+            this.label16.Location = new System.Drawing.Point(618, 7);
             this.label16.Name = "label16";
             this.label16.Size = new System.Drawing.Size(35, 24);
             this.label16.TabIndex = 122;
@@ -421,7 +507,7 @@
             this.label13.BackColor = System.Drawing.Color.Transparent;
             this.label13.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.label13.Font = new System.Drawing.Font("ＭＳ 明朝", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label13.Location = new System.Drawing.Point(527, 10);
+            this.label13.Location = new System.Drawing.Point(541, 10);
             this.label13.Name = "label13";
             this.label13.Size = new System.Drawing.Size(35, 24);
             this.label13.TabIndex = 119;
@@ -431,7 +517,7 @@
             // numUD2
             // 
             this.numUD2.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numUD2.Location = new System.Drawing.Point(477, 9);
+            this.numUD2.Location = new System.Drawing.Point(491, 9);
             this.numUD2.Maximum = new decimal(new int[] {
             59,
             0,
@@ -445,7 +531,7 @@
             // numcUD1
             // 
             this.numcUD1.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numcUD1.Location = new System.Drawing.Point(392, 9);
+            this.numcUD1.Location = new System.Drawing.Point(422, 9);
             this.numcUD1.Maximum = new decimal(new int[] {
             23,
             0,
@@ -492,66 +578,6 @@
             this.label14.Text = "№";
             this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // dataGridViewEX1
-            // 
-            this.dataGridViewEX1.AllowUserToAddRows = false;
-            this.dataGridViewEX1.AllowUserToDeleteRows = false;
-            this.dataGridViewEX1.AllowUserToResizeColumns = false;
-            this.dataGridViewEX1.AllowUserToResizeRows = false;
-            this.dataGridViewEX1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.dataGridViewEX1.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.dataGridViewEX1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            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.dataGridViewEX1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
-            this.dataGridViewEX1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dataGridViewEX1.ColumnHeadersVisible = false;
-            this.dataGridViewEX1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.dataGridViewTextBoxColumn1,
-            this.dataGridViewTextBoxColumn2,
-            this.dataGridViewTextBoxColumn8});
-            this.dataGridViewEX1.Location = new System.Drawing.Point(852, 48);
-            this.dataGridViewEX1.Name = "dataGridViewEX1";
-            this.dataGridViewEX1.RowHeadersVisible = false;
-            this.dataGridViewEX1.RowHeadersWidth = 20;
-            this.dataGridViewEX1.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dataGridViewEX1.RowTemplate.Height = 20;
-            this.dataGridViewEX1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dataGridViewEX1.Size = new System.Drawing.Size(470, 100);
-            this.dataGridViewEX1.TabIndex = 6;
-            // 
-            // dataGridViewTextBoxColumn1
-            // 
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle2;
-            this.dataGridViewTextBoxColumn1.Frozen = true;
-            this.dataGridViewTextBoxColumn1.HeaderText = "№";
-            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
-            this.dataGridViewTextBoxColumn1.ReadOnly = true;
-            this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn1.Width = 50;
-            // 
-            // dataGridViewTextBoxColumn2
-            // 
-            this.dataGridViewTextBoxColumn2.HeaderText = "所属";
-            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
-            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn2.Width = 200;
-            // 
-            // dataGridViewTextBoxColumn8
-            // 
-            this.dataGridViewTextBoxColumn8.HeaderText = "氏名";
-            this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8";
-            this.dataGridViewTextBoxColumn8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn8.Width = 200;
-            // 
             // label11
             // 
             this.label11.BackColor = System.Drawing.Color.White;
@@ -564,16 +590,6 @@
             this.label11.Text = "出　席　者";
             this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // textBox2
-            // 
-            this.textBox2.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.textBox2.Location = new System.Drawing.Point(128, 9);
-            this.textBox2.Name = "textBox2";
-            this.textBox2.Size = new System.Drawing.Size(140, 26);
-            this.textBox2.TabIndex = 1;
-            this.textBox2.Text = "2016/12/31";
-            this.textBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            // 
             // label10
             // 
             this.label10.BackColor = System.Drawing.Color.White;
@@ -606,7 +622,7 @@
             this.label8.BackColor = System.Drawing.Color.Transparent;
             this.label8.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.label8.Font = new System.Drawing.Font("ＭＳ 明朝", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label8.Location = new System.Drawing.Point(442, 6);
+            this.label8.Location = new System.Drawing.Point(464, 7);
             this.label8.Name = "label8";
             this.label8.Size = new System.Drawing.Size(35, 24);
             this.label8.TabIndex = 50;
@@ -618,7 +634,7 @@
             this.label2.BackColor = System.Drawing.Color.White;
             this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label2.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.label2.Location = new System.Drawing.Point(284, 9);
+            this.label2.Location = new System.Drawing.Point(314, 9);
             this.label2.Name = "label2";
             this.label2.Size = new System.Drawing.Size(100, 26);
             this.label2.TabIndex = 38;
@@ -630,7 +646,7 @@
             this.label12.BackColor = System.Drawing.Color.White;
             this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label12.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.label12.Location = new System.Drawing.Point(6, 164);
+            this.label12.Location = new System.Drawing.Point(6, 154);
             this.label12.Name = "label12";
             this.label12.Size = new System.Drawing.Size(50, 30);
             this.label12.TabIndex = 38;
@@ -642,7 +658,7 @@
             this.label7.BackColor = System.Drawing.Color.White;
             this.label7.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label7.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.label7.Location = new System.Drawing.Point(356, 164);
+            this.label7.Location = new System.Drawing.Point(356, 154);
             this.label7.Name = "label7";
             this.label7.Size = new System.Drawing.Size(950, 30);
             this.label7.TabIndex = 37;
@@ -654,7 +670,7 @@
             this.label6.BackColor = System.Drawing.Color.White;
             this.label6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label6.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.label6.Location = new System.Drawing.Point(56, 164);
+            this.label6.Location = new System.Drawing.Point(56, 154);
             this.label6.Name = "label6";
             this.label6.Size = new System.Drawing.Size(300, 30);
             this.label6.TabIndex = 37;
@@ -673,6 +689,131 @@
             this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
             this.lblCellTotal.TabIndex = 36;
             // 
+            // 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(8, 658);
+            this.btnOtherProc.Name = "btnOtherProc";
+            this.btnOtherProc.Size = new System.Drawing.Size(150, 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);
+            // 
+            // btnFinal
+            // 
+            this.btnFinal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnFinal.BackColor = System.Drawing.Color.LimeGreen;
+            this.btnFinal.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnFinal.Location = new System.Drawing.Point(570, 658);
+            this.btnFinal.Name = "btnFinal";
+            this.btnFinal.Size = new System.Drawing.Size(130, 30);
+            this.btnFinal.TabIndex = 106;
+            this.btnFinal.TabStop = false;
+            this.btnFinal.Text = "最終議事録≫";
+            this.btnFinal.UseVisualStyleBackColor = false;
+            // 
+            // btnFirst
+            // 
+            this.btnFirst.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnFirst.BackColor = System.Drawing.Color.LimeGreen;
+            this.btnFirst.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnFirst.Location = new System.Drawing.Point(180, 658);
+            this.btnFirst.Name = "btnFirst";
+            this.btnFirst.Size = new System.Drawing.Size(130, 30);
+            this.btnFirst.TabIndex = 105;
+            this.btnFirst.TabStop = false;
+            this.btnFirst.Text = "≪先頭議事録";
+            this.btnFirst.UseVisualStyleBackColor = false;
+            // 
+            // btnProv
+            // 
+            this.btnProv.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnProv.BackColor = System.Drawing.Color.SeaGreen;
+            this.btnProv.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnProv.Location = new System.Drawing.Point(310, 658);
+            this.btnProv.Name = "btnProv";
+            this.btnProv.Size = new System.Drawing.Size(130, 30);
+            this.btnProv.TabIndex = 104;
+            this.btnProv.TabStop = false;
+            this.btnProv.Text = "＜前議事録";
+            this.btnProv.UseVisualStyleBackColor = false;
+            // 
+            // btnNext
+            // 
+            this.btnNext.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnNext.BackColor = System.Drawing.Color.SeaGreen;
+            this.btnNext.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnNext.Location = new System.Drawing.Point(440, 658);
+            this.btnNext.Name = "btnNext";
+            this.btnNext.Size = new System.Drawing.Size(130, 30);
+            this.btnNext.TabIndex = 103;
+            this.btnNext.TabStop = false;
+            this.btnNext.Text = "次議事録＞";
+            this.btnNext.UseVisualStyleBackColor = false;
+            // 
+            // dgvPerson
+            // 
+            this.dgvPerson.AllowUserToAddRows = false;
+            this.dgvPerson.AllowUserToDeleteRows = false;
+            this.dgvPerson.AllowUserToResizeColumns = false;
+            this.dgvPerson.AllowUserToResizeRows = false;
+            this.dgvPerson.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvPerson.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvPerson.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.dgvPerson.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvPerson.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvPerson.ColumnHeadersVisible = false;
+            this.dgvPerson.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn1,
+            this.dataGridViewTextBoxColumn2,
+            this.dataGridViewTextBoxColumn8});
+            this.dgvPerson.Location = new System.Drawing.Point(852, 48);
+            this.dgvPerson.Name = "dgvPerson";
+            this.dgvPerson.RowHeadersVisible = false;
+            this.dgvPerson.RowHeadersWidth = 20;
+            this.dgvPerson.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvPerson.RowTemplate.Height = 20;
+            this.dgvPerson.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvPerson.Size = new System.Drawing.Size(470, 104);
+            this.dgvPerson.TabIndex = 6;
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "№";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn1.Width = 50;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            this.dataGridViewTextBoxColumn2.HeaderText = "所属";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn2.Width = 200;
+            // 
+            // dataGridViewTextBoxColumn8
+            // 
+            this.dataGridViewTextBoxColumn8.HeaderText = "氏名";
+            this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8";
+            this.dataGridViewTextBoxColumn8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn8.Width = 200;
+            // 
             // dgvAllDisplay
             // 
             this.dgvAllDisplay.AllowUserToAddRows = false;
@@ -697,7 +838,7 @@
             this.Column1,
             this.Column2,
             this.Column3});
-            this.dgvAllDisplay.Location = new System.Drawing.Point(5, 194);
+            this.dgvAllDisplay.Location = new System.Drawing.Point(5, 184);
             this.dgvAllDisplay.Name = "dgvAllDisplay";
             this.dgvAllDisplay.RowHeadersVisible = false;
             this.dgvAllDisplay.RowHeadersWidth = 20;
@@ -704,15 +845,12 @@
             this.dgvAllDisplay.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvAllDisplay.RowTemplate.Height = 20;
             this.dgvAllDisplay.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvAllDisplay.Size = new System.Drawing.Size(1320, 300);
+            this.dgvAllDisplay.Size = new System.Drawing.Size(1320, 324);
             this.dgvAllDisplay.TabIndex = 7;
-            this.dgvAllDisplay.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellDoubleClick);
             this.dgvAllDisplay.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellEnter);
             this.dgvAllDisplay.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellValidated);
             this.dgvAllDisplay.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellValueChanged);
-            this.dgvAllDisplay.SelectionChanged += new System.EventHandler(this.dgvAllDisplay_SelectionChanged);
             this.dgvAllDisplay.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgvAllDisplay_KeyDown);
-            this.dgvAllDisplay.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvAllDisplay_MouseUp);
             // 
             // Column1
             // 
@@ -740,35 +878,6 @@
             this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column3.Width = 950;
             // 
-            // 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(200, 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);
-            // 
-            // textBox4
-            // 
-            this.textBox4.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.textBox4.Location = new System.Drawing.Point(128, 80);
-            this.textBox4.Name = "textBox4";
-            this.textBox4.Size = new System.Drawing.Size(700, 26);
-            this.textBox4.TabIndex = 123;
-            // 
-            // textBox5
-            // 
-            this.textBox5.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.textBox5.Location = new System.Drawing.Point(128, 114);
-            this.textBox5.Name = "textBox5";
-            this.textBox5.Size = new System.Drawing.Size(700, 26);
-            this.textBox5.TabIndex = 123;
-            // 
             // FrmProceedings
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -775,6 +884,10 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1344, 692);
+            this.Controls.Add(this.btnFinal);
+            this.Controls.Add(this.btnFirst);
+            this.Controls.Add(this.btnProv);
+            this.Controls.Add(this.btnNext);
             this.Controls.Add(this.btnOtherProc);
             this.Controls.Add(this.pnlBase);
             this.Controls.Add(this.btnLineDel);
@@ -792,12 +905,12 @@
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmConstructionBudget_FormClosing);
             this.Load += new System.EventHandler(this.FrmConstructionBudget_Load);
-            this.Shown += new System.EventHandler(this.FrmConstructionBudget_Shown);
             this.SizeChanged += new System.EventHandler(this.FrmConstructionBudget_SizeChanged);
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionBudget_KeyDown);
             this.panel1.ResumeLayout(false);
             this.panel1.PerformLayout();
             this.pnlApproval.ResumeLayout(false);
+            this.pnlApprovalButton.ResumeLayout(false);
             this.pnlBase.ResumeLayout(false);
             this.pnlBase.PerformLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUD4)).EndInit();
@@ -804,7 +917,7 @@
             ((System.ComponentModel.ISupportInitialize)(this.numUD3)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.numUD2)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.numcUD1)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dataGridViewEX1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvPerson)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).EndInit();
             this.ResumeLayout(false);
 
@@ -820,16 +933,14 @@
         private System.Windows.Forms.Button btnLineDel;
         private System.Windows.Forms.Button btnLineAdd;
         private System.Windows.Forms.Label label5;
-        private System.Windows.Forms.Label lblLabel04;
+        private System.Windows.Forms.Label lblLabel03;
         private System.Windows.Forms.Panel pnlBase;
         private System.Windows.Forms.Label lblCellTotal;
         private System.Windows.Forms.Button btnOtherProc;
         private System.Windows.Forms.Label label19;
-        private System.Windows.Forms.ComboBox cmbDirectInput;
         private System.Windows.Forms.Label label4;
         private DataGridViewEX dgvAllDisplay;
-        private System.Windows.Forms.Label label3;
-        private System.Windows.Forms.TextBox textBox1;
+        private System.Windows.Forms.Label lblLabel01;
         private System.Windows.Forms.Label label12;
         private System.Windows.Forms.Label label7;
         private System.Windows.Forms.Label label6;
@@ -838,12 +949,11 @@
         private System.Windows.Forms.Button btnPetition;
         private System.Windows.Forms.Button btnApproval;
         private System.Windows.Forms.Label label14;
-        private DataGridViewEX dataGridViewEX1;
+        private DataGridViewEX dgvPerson;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn8;
         private System.Windows.Forms.Label label11;
-        private System.Windows.Forms.TextBox textBox2;
         private System.Windows.Forms.Label label10;
         private System.Windows.Forms.Label label9;
         private System.Windows.Forms.NumericUpDown numUD2;
@@ -855,12 +965,23 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
-        private System.Windows.Forms.TextBox textBox3;
+        private System.Windows.Forms.TextBox textBox1;
         private System.Windows.Forms.NumericUpDown numUD4;
         private System.Windows.Forms.NumericUpDown numUD3;
         private System.Windows.Forms.Label label16;
         private System.Windows.Forms.Label label13;
-        private System.Windows.Forms.TextBox textBox5;
-        private System.Windows.Forms.TextBox textBox4;
+        private System.Windows.Forms.TextBox textBox3;
+        private System.Windows.Forms.TextBox textBox2;
+        private System.Windows.Forms.Label lblLabel02;
+        private System.Windows.Forms.DateTimePicker dTPCreateDate;
+        private System.Windows.Forms.Panel pnlApprovalButton;
+        private System.Windows.Forms.Button btnOnApproval;
+        private System.Windows.Forms.Button btnNotApproval;
+        private System.Windows.Forms.Button btnOnHold;
+        private System.Windows.Forms.DateTimePicker dtMeetingDate;
+        private System.Windows.Forms.Button btnFinal;
+        private System.Windows.Forms.Button btnFirst;
+        private System.Windows.Forms.Button btnProv;
+        private System.Windows.Forms.Button btnNext;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedingsAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedingsAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/FrmProceedingsAuxiliary.cs	(revision 51)
@@ -48,30 +48,6 @@
             {
                 DataGridView dgv = dgvAllDisplay;
 
-                int CellWidth1 = m_CellSize[(int)DispGridColumn.ItemName];
-                int CellWidth2 = m_CellSize[(int)DispGridColumn.TextName];
-                int CellWidth3 = m_CellSize[(int)DispGridColumn.SubContractorName];
-                // 最大化の場合
-                if (!bNormal)
-                {
-                    int allWidth = 0;
-                    for (int i = 0; i < dgv.ColumnCount;i++ )
-                    {
-                        allWidth += m_CellSize[i];
-                    }
-                    // セルの合計サイズが大きい場合は処理しない
-                    if (allWidth > dgv.Width) return;
-
-                    int idifference = (dgv.Width - (allWidth + dgv.RowHeadersWidth)) / 3;
-                    CellWidth1 += idifference;
-                    CellWidth2 += idifference;
-                    CellWidth3 += idifference;
-                }
-
-                dgv.Columns[(int)DispGridColumn.ItemName].Width = CellWidth1;
-                dgv.Columns[(int)DispGridColumn.TextName].Width = CellWidth2;
-                dgv.Columns[(int)DispGridColumn.SubContractorName].Width = CellWidth3;
-
             }
             catch (Exception ex)
             {
@@ -107,51 +83,6 @@
         }
         #endregion
 
-        #region 経費率リスト取得処理
-        /// <summary>
-        /// 経費率リストを取得する
-        /// </summary>
-        /// <returns></returns>
-        private bool GetExpensesList()
-        {
-            IOMDepartmentExpenses expDB = new IOMDepartmentExpenses();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            try
-            {
-                // 工事担当者マスタ取得
-                string strPerson = picDB.CreatePrimarykeyString(m_ConstructionBaseInfo.ConstructionPersonCode);
-                PersonInChargeMaster picRec = new PersonInChargeMaster();
-                if(!picDB.SelectAction(strPerson,ref picRec)) return false;
-
-                // 部署経費率マスタ取得
-                string strSQL = "SELECT A.NAMESTRING, IFNULL(B.EXPENSESRATIO, 0)";
-                strSQL += " FROM DIVISIONMASTER A";
-                strSQL += " LEFT OUTER JOIN";
-                strSQL += " (SELECT NAMECODE, DEPARTMENTCODE, EXPENSESRATIO, EXPENSESPERIOD";
-                strSQL += string.Format(" FROM DEPARTMENTEXPENSESMASTER WHERE DEPARTMENTCODE = {0}) B", picRec.DepartmentCode);
-                strSQL += " ON A.NAMECODE = B.NAMECODE";
-                strSQL += string.Format(" AND B.EXPENSESPERIOD = {0}", m_ConstructionBaseInfo.ConstructionPeriod);
-                strSQL += string.Format(" WHERE A.DIVISIONCODE = {0}", (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
-                strSQL += " ORDER BY A.DISPLAYORDER";
-
-                if (!expDB.ExecuteReader(strSQL, ref ExpensesList)) return false;
-                if (ExpensesList.Count == 0) return false;
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                expDB.close(); expDB = null;
-                picDB.close(); picDB = null;
-            }
-        }
-        #endregion
-
         #region 表示オブジェクトの取得
         /// <summary>
         /// 表示オブジェクトの取得
@@ -159,22 +90,20 @@
         private void SetDisplayObject()
         {
             // ヘッダー情報
-            //m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode] = lblLabel01;
-            //m_DspLabelCtrl[(int)DspLblCtrlName.ConstName] = lblLabel02;
-            //m_DspLabelCtrl[(int)DspLblCtrlName.ConstPlace] = lblLabel03;
-
-            //m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName] = lblLabel04;
-
-            //m_DspLabelCtrl[(int)DspLblCtrlName.InstructorName] = label12;
-
-            //m_DspLabelCtrl[(int)DspLblCtrlName.CreateDate] = label2;
-            //m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice] = label6;
-            //m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate] = label8;
-            //m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate] = label11;
-            //m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes] = label15;
-
-            //m_DspLabelCtrl[(int)DspLblCtrlName.ConstructionType] = label17;
-            //m_DspLabelCtrl[(int)DspLblCtrlName.BudgetOverrun] = lblBudgetOverrun;
+            int ArrayCount = Enum.GetNames(typeof(DspLblCtrlName)).Length;
+            m_DspLabelCtrl = new Control[ArrayCount];
+            m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode] = lblLabel01;         // 工事番号
+            m_DspLabelCtrl[(int)DspLblCtrlName.ConstName] = lblLabel02;         // 工事名称
+            m_DspLabelCtrl[(int)DspLblCtrlName.CreateDate] = dTPCreateDate;     // 作成日
+            m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName] = lblLabel03;       // 作成者名
+            m_DspLabelCtrl[(int)DspLblCtrlName.MeetingDate] = dtMeetingDate;    // 打合せ日
+            m_DspLabelCtrl[(int)DspLblCtrlName.StartHours] = numcUD1;           // 開始時
+            m_DspLabelCtrl[(int)DspLblCtrlName.StartMinutes] = numUD2;          // 開始時
+            m_DspLabelCtrl[(int)DspLblCtrlName.CompHours] = numUD3;             // 終了時
+            m_DspLabelCtrl[(int)DspLblCtrlName.CompMinutes] = numUD4;           // 終了時
+            m_DspLabelCtrl[(int)DspLblCtrlName.Place1] = textBox1;              // 場所1
+            m_DspLabelCtrl[(int)DspLblCtrlName.Place2] = textBox2;              // 場所2
+            m_DspLabelCtrl[(int)DspLblCtrlName.Place3] = textBox3;              // 場所3
         }
         #endregion
 
@@ -187,6 +116,9 @@
             foreach (Control wrk in m_DspLabelCtrl)
             {
                 if (CommonMotions.chkObjectIsNull(wrk)) continue;
+                if (!wrk.GetType().Equals(typeof(TextBox))
+                    && !wrk.GetType().Equals(typeof(Label))) continue;
+                
                 wrk.Text = "";
             }
 
@@ -194,29 +126,6 @@
         }
         #endregion
 
-        #region グリッドに空行をセット
-        /// <summary>
-        /// グリッドに指定数の空行をセットする
-        /// </summary>
-        /// <param name="dgv"></param>
-        private void SetBlankRow(DataGridView dgv)
-        {
-            try
-            {
-                // 表示行が足りない場合は追加する
-                if (dgv.Rows.Count <= CommonDefine.s_MaxInitLineCount)
-                {
-                    int iAddLine = CommonDefine.s_MaxInitLineCount - dgvAllDisplay.Rows.Count;
-                    if (iAddLine != 0) dgv.Rows.Add(iAddLine);
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region ヘッダー情報表示
         /// <summary>
         /// ヘッダー情報表示
@@ -223,99 +132,24 @@
         /// </summary>
         private bool DispHeader()
         {
-            IOConstructionBaseInfoDetail cbidDB = new IOConstructionBaseInfoDetail();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            IOMConstructionType ctypeDB = new IOMConstructionType();
-            IOConstructionBudget cbDB = new IOConstructionBudget();
+            IOConstructionBaseInfoDetail BaseDDB = new IOConstructionBaseInfoDetail();
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
             try
             {
-                m_HeaderToolTip = new ToolTip();
+                // 工事名称取得
+                string strSQL = BaseDDB.CreatePrimarykeyString(m_ConstructionCode);
+                strSQL += string.Format(" AND DETAILNO = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                ConstructionBaseInfoDetail DetailRec = new ConstructionBaseInfoDetail();
+                BaseDDB.SelectAction(strSQL, ref DetailRec);
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstName].Text = DetailRec.DetailString;
 
-                // 工事予算書を取得する
-                string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
-                ConstructionBudget cbRec = new ConstructionBudget();
-                bool bBudgetExist = cbDB.SelectAction(strSQL, ref cbRec);
+                // 担当者取得
+                int Person = CommonMotions.LoginUserData.PersonCode;
+                strSQL = PersonDB.CreatePrimarykeyString(Person);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+                m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName].Text = PersonRec.PersonName;
 
-                // データ表示
-                m_DspLabelCtrl[(int)DspLblCtrlName.CreateDate].Text = cbRec.CreateDate.ToShortDateString();                                                     // 作成日
-                
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode].Text = CommonMotions.cnvStringCodeFromInt(m_ConstructionCode, "-", 8);                            // 工事コード
-                
-                int OrdersPrice = (int)m_ConstructionBaseInfo.OrdersDecisionPrice;
-                m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text = @"\" + OrdersPrice.ToString("#,0") + "-";                                                // 受注金額
-
-                // 工事基本情報明細取得
-                strSQL = cbidDB.CreatePrimarykeyString(m_ConstructionCode, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-                ConstructionBaseInfoDetail workRec = new ConstructionBaseInfoDetail();
-                if (!cbidDB.SelectAction(strSQL, ref workRec)) return false;
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstName].Text = workRec.DetailString;                                                                      // 工事名称
-                m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.ConstName], workRec.DetailString);
-
-                strSQL = cbidDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" And (DetailNo = {0} Or DetailNo = {1} Or DetailNo = {2})",
-                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace1,                                   // 工事場所１
-                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace2,                                   // 工事場所２
-                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3);                                  // 工事場所３
-                strSQL += " Order By DetailNo";
-                List<ConstructionBaseInfoDetail> workList = new List<ConstructionBaseInfoDetail>();
-                cbidDB.SelectAction(strSQL, ref workList);
-                string Place = string.Empty;
-                foreach (ConstructionBaseInfoDetail wrkRec in workList)
-                {
-                    Place += wrkRec.DetailString;
-                }
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstPlace].Text = Place;                                                                                    // 工事場所
-                m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.ConstPlace], Place);
-
-                // 工事担当者取得
-                int PersonCode = cbRec.CreatorCode;
-                if (PersonCode == 0) PersonCode = m_ConstructionBaseInfo.ConstructionPersonCode;
-                strSQL = picDB.CreatePrimarykeyString(PersonCode);
-                PersonInChargeMaster personRec = new PersonInChargeMaster();
-                picDB.SelectAction(strSQL, ref personRec);
-
-                m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName].Text = personRec.PersonName;                                                                    // 作成者
-                m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName], personRec.PersonName);
-                
-                // 担当指導員取得
-                PersonCode = m_ConstructionBaseInfo.ConstructionInstructor;
-                if (PersonCode != 0)
-                {
-                    strSQL = picDB.CreatePrimarykeyString(PersonCode);
-                    PersonInChargeMaster instructorRec = new PersonInChargeMaster();
-                    picDB.SelectAction(strSQL, ref instructorRec);
-                    m_DspLabelCtrl[(int)DspLblCtrlName.InstructorName].Text = instructorRec.PersonName;                                                         // 担当指導員
-                    m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.InstructorName], instructorRec.PersonName);
-                }
-
-                DateTime StDate = cbRec.ConstructionStart;
-                DateTime EdDate = cbRec.ConstructionEnd;
-                if (StDate != DateTime.MinValue && EdDate != DateTime.MinValue)
-                {
-                    m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text = StDate.ToShortDateString();                                                         // 契約工期開始
-                    m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text = EdDate.ToShortDateString();                                                         // 契約工期完成
-
-                    m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text = CommonMotions.DiffMounthTimes(StDate, EdDate).ToString("0.00");
-                }
-
-                // 工事種別マスタ取得
-                // 担当者マスタ取得
-                strSQL = ctypeDB.CreatePrimarykeyString(m_ConstructionBaseInfo.ConstructionType);
-                ConstructionTypeMaster ctypeRec = new ConstructionTypeMaster();
-                ctypeDB.SelectAction(strSQL, ref ctypeRec);
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstructionType].Text = ctypeRec.NameString;                                                                   // 工事種別
-                m_HeaderToolTip.SetToolTip(m_DspLabelCtrl[(int)DspLblCtrlName.ConstructionType], ctypeRec.NameString);
-
-                // 支払枠を作成する
-                CreatePaymentColumns();
-
-                // グリッドの情報を取得する
-                int CellCount = dgvAllDisplay.ColumnCount;
-                m_CellSize = new int[CellCount];
-                foreach (DataGridViewColumn col in dgvAllDisplay.Columns)
-                {
-                    m_CellSize[col.Index] = col.Width;
-                }
                 return true;
             }
             catch (Exception ex)
@@ -325,358 +159,34 @@
             }
             finally
             {
-                cbidDB.close(); cbidDB = null;
-                picDB.close(); picDB = null;
-                ctypeDB.close(); ctypeDB = null;
-                cbDB.close(); cbDB = null;
+                BaseDDB.close(); BaseDDB = null;
+                PersonDB.close(); PersonDB = null;
             }
         }
         #endregion
 
-        #region 支払欄カラム作成
+        #region データ表示処理
         /// <summary>
-        /// 支払欄カラムを作成する
+        /// データ表示処理
         /// </summary>
-        private void CreatePaymentColumns()
+        private void DisplayDetail()
         {
             try
             {
-                DataGridView dgv = dgvAllDisplay;
-                // 支払欄数取得
-                int ColumnCount = CommonMotions.cnvRoundUp(CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text));
-                // 実際の工期より3カ月入力欄を伸ばす
-                ColumnCount += 3;
 
-                // 月毎支払欄作成
-                DateTime dtTitleDate = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
-                m_GridPaymentColList = new DataGridViewColumn[ColumnCount];
-                m_GridPaymentCellStyleList = new DataGridViewCellStyle[ColumnCount];
-                for (int i = 0; i < ColumnCount; i++)
-                {
-                    // スタイル作成
-                    m_GridPaymentCellStyleList[i] = new DataGridViewCellStyle();
-                    m_GridPaymentCellStyleList[i].Alignment = DataGridViewContentAlignment.MiddleRight;
-
-                    // セル作成
-                    m_GridPaymentColList[i] = new DataGridViewColumn();
-                    dgv.Columns.Add(m_GridPaymentColList[i]);
-
-                    // カラムの設定
-                    m_GridPaymentColList[i].CellTemplate = new DataGridViewTextBoxCell();
-                    m_GridPaymentColList[i].DefaultCellStyle = m_GridPaymentCellStyleList[i];
-                    m_GridPaymentColList[i].HeaderText = string.Format("{0}年{1}月", dtTitleDate.AddMonths(i).Year, dtTitleDate.AddMonths(i).Month);
-
-                    m_GridPaymentColList[i].Name = string.Format("ColPayment{0}", i);
-                    m_GridPaymentColList[i].ReadOnly = false;
-                    m_GridPaymentColList[i].Resizable = DataGridViewTriState.False;
-                    m_GridPaymentColList[i].SortMode = DataGridViewColumnSortMode.NotSortable;
-                    m_GridPaymentColList[i].Width = 150;
-                }
-
-                //　合計・実績欄作成
-                int ArrayCnt = Enum.GetNames(typeof(ColPayTotal)).Length;
-                m_GridTotalColList = new DataGridViewColumn[ArrayCnt];
-                m_GridTotalCellStyleList = new DataGridViewCellStyle[ArrayCnt];
-                for (int i = 0; i < ArrayCnt; i++)
-                {
-                    // スタイル作成
-                    m_GridTotalCellStyleList[i] = new DataGridViewCellStyle();
-                    m_GridTotalCellStyleList[i].Alignment = DataGridViewContentAlignment.MiddleRight;
-
-                    // セル作成
-                    m_GridTotalColList[i] = new DataGridViewColumn();
-                    dgv.Columns.Add(m_GridTotalColList[i]);
-
-                    // カラムの設定
-                    m_GridTotalColList[i].CellTemplate = new DataGridViewTextBoxCell();
-                    m_GridTotalColList[i].DefaultCellStyle = m_GridTotalCellStyleList[i];
-                    m_GridTotalColList[i].HeaderText = ColumnsTitle[i];
-
-                    m_GridTotalColList[i].Name = string.Format("ColPayTotal{0}", i);
-                    // 補填枠は入力可にする
-                    if (i < (ArrayCnt - 1))
-                        m_GridTotalColList[i].ReadOnly = true;
-                    else
-                        m_GridTotalColList[i].ReadOnly = false;
-
-                    m_GridTotalColList[i].Resizable = DataGridViewTriState.False;
-                    m_GridTotalColList[i].SortMode = DataGridViewColumnSortMode.NotSortable;
-                    m_GridTotalColList[i].Width = 150;
-                }
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-        }
-        #endregion
-
-        #region タイトル行の追加
-        /// <summary>
-        /// データ行を作成する
-        /// </summary>
-        /// <param name="SetData"></param>
-        private void CreateTitleRow(int TitleNo, string TitleName)
-        {
-            try
+            finally
             {
-                DataGridView dgv = dgvAllDisplay;
-                // カラム数
-                int colcnt = dgv.Columns.Count;
-                // 行追加
-                int rowcnt = dgv.Rows.Add(1);
-
-                // データ作成
-                object[] SetData = new object[colcnt];
-                SetData[(int)DispGridColumn.No] = TitleNo;
-                SetData[(int)DispGridColumn.FixFlg] = "*";
-                SetData[(int)DispGridColumn.GroupCount] = TitleNo;
-                SetData[(int)DispGridColumn.ItemName] = TitleName;
-                SetData[(int)DispGridColumn.TitleFlg] = "1";
-
-                // 行データセット
-                dgv.Rows[rowcnt].SetValues(SetData);
-
-                // 行の色を変える
-                for (int i = 0; i < colcnt; i++)
-                {
-                    dgv.Rows[rowcnt].Cells[i].Style.BackColor = s_TitleRowBackColor;
-                }
-
-                // 表示した行を書込み禁止にする
-                dgv.Rows[rowcnt].ReadOnly = true;
+                if ((5 - dgvPerson.RowCount) > 0) dgvPerson.RowCount += (5 - dgvPerson.RowCount);
+                if ((16 - dgvAllDisplay.RowCount) > 0) dgvAllDisplay.RowCount += (16 - dgvAllDisplay.RowCount);
             }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
         }
         #endregion
 
-        #region データ行を作成
-        /// <summary>
-        /// データ行を作成する
-        /// </summary>
-        /// <param name="SetData"></param>
-        private void CreateDataRow(object[] SetData)
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                // 行追加
-                int rowcnt = dgv.Rows.Add(1);
-                // カラム数取得
-                int colcnt=dgv.Columns.Count;
-
-                // カレント行取得
-                DataGridViewRow CurRow = dgv.Rows[rowcnt];
-
-                // 行データセット
-                CurRow.SetValues(SetData);
-                // フラグセット
-                CurRow.Cells[(int)DispGridColumn.TitleFlg].Value = "0";
-                CurRow.Cells[(int)DispGridColumn.TotalFlg].Value = "0";
-                CurRow.Cells[(int)DispGridColumn.BlankFlg].Value = "0";
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 空行の追加
-        /// <summary>
-        /// 空行を作成する
-        /// </summary>
-        private void AddEmptyRow()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                // カラム数
-                int colcnt = dgv.Columns.Count;
-                // 行追加
-                int rowcnt = dgv.Rows.Add(1);
-                // フラグON
-                dgv.Rows[rowcnt].Cells[(int)DispGridColumn.BlankFlg].Value = 1;
-                // 行の色を変える
-                for (int i = 0; i < colcnt; i++)
-                {
-                    dgv.Rows[rowcnt].Cells[i].Style.BackColor = Color.White;
-                }
-                // 表示した行を書込み禁止にする
-                dgv.Rows[rowcnt].ReadOnly = true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 行選択色
-        /// <summary>
-        /// 行を選択色にする
-        /// </summary>
-        /// <param name="CurrentRow"></param>
-        private void SelectRowChangeColor(int CurrentRow)
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                DataGridViewRow CurRow = dgv.Rows[CurrentRow];
-                // カラム数
-                int colcnt = dgv.Columns.Count;
-                // 総合計は処理しない
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TotalFlg].Value) == 2) return;
-
-                // 行の色を変える
-                for (int i = 0; i < colcnt; i++)
-                {
-                    dgv.Rows[m_BeforeGridRow].Cells[i].Style.BackColor = s_RowSelectColor;
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-
-        }
-        #endregion
-
-        #region 全行デフォルト色
-        /// <summary>
-        /// 全て行をデフォルト色にする
-        /// </summary>
-        /// <param name="BeforeGridRow"></param>
-        private void DefaultALLRowChangeColor()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                foreach (DataGridViewRow wrkRow in dgv.Rows)
-                {
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value) != 0) continue;
-
-                    // 行の色をデフォルト色へ変更
-                    DefaultRowChangeColor(wrkRow.Index);
-                }
-
-                // 選択行色
-                object sender = dgv;
-                m_BeforeGridRow = dgv.CurrentRow.Index;
-                EventArgs e = new EventArgs();
-                dgvAllDisplay_SelectionChanged(sender, e);
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 行デフォルト色
-        /// <summary>
-        /// 行をデフォルト色にする
-        /// </summary>
-        /// <param name="BeforeGridRow"></param>
-        private void DefaultRowChangeColor(int CurrentRow)
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                DataGridViewRow CurRow = dgv.Rows[CurrentRow];
-                int colcnt = dgv.Columns.Count;
-                int GroupNo = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1)
-                {   // タイトル行
-                    // 行の色を変える
-                    for (int i = 0; i < colcnt; i++)
-                    {
-                        dgv.Rows[m_BeforeGridRow].Cells[i].Style.BackColor = s_TitleRowBackColor;
-                    }
-                }
-                else if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TotalFlg].Value) == 1)
-                {   // 合計行
-
-                }
-                else if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1)
-                {   // ブランク行
-                    // 行の色を変える
-                    for (int i = 0; i < colcnt; i++)
-                    {
-                        dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.White;
-                    }
-                }
-                else if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TotalFlg].Value) == 2)
-                {   // 総合計
-                    // 行の色を変える
-                    for (int i = 0; i < colcnt; i++)
-                    {
-                        dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.White;
-                        dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.Black;
-                    }
-                }
-                else
-                {   // 明細行
-                    // 行の色を変える
-                    for (int i = 0; i < colcnt; i++)
-                    {
-                        //dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.White;
-                        switch (i)
-                        {
-                            // 積算時見積金額
-                            case (int)DispGridColumn.EstimatePrice:
-                                dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.FromArgb(192, 255, 255);
-                                break;
-                            // 実行金額
-                            case (int)DispGridColumn.ExecPrice:
-                                dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.FromArgb(255, 224, 192);
-                                break;
-                            default:
-                                dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.White;
-                                //if (i == dgv.ColumnCount + (int)ColPayTotal.Totals && GroupNo == (int)GroupName_ConstructionLedger.CurrentProfit)
-                                //// 支払合計の現在利益金額は色を変える
-                                //{
-                                //    dgv.Rows[CurrentRow].Cells[i].Style.ForeColor = Color.LightBlue;
-                                //    dgv.Rows[CurrentRow].Cells[i].Style.BackColor = Color.Black;
-                                //}
-                                break;
-                        }
-                    }
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 受注金額よりパーセントを求める
-        /// <summary>
-        /// 指示値が受注金額の何パーセントかを計算する
-        /// </summary>
-        /// <param name="dInput"></param>
-        /// <returns></returns>
-        private double CalculattionPercent(double dInput)
-        {
-            double dwork = 0;
-
-            // 受注金額取得
-            double dBase = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text.Replace("\\", "").Replace("-", ""));
-            if (dBase == 0) return dwork;
-
-            dwork = dInput / dBase * 100.0;
-
-            return dwork;
-        }
-        #endregion
-
         #region 初期処理
         /// <summary>
         /// 初期時データ取得
@@ -692,15 +202,9 @@
                 // ヘッダー表示
                 if (!DispHeader()) return;
 
-                // グリッド行削除
-                dgvAllDisplay.Rows.Clear();
+                // 明細データ表示
+                DisplayDetail();
 
-                // データがある場合は表示を行う
-                if (InitDispData()) return;
-                
-                // データが無い場合は工事予算書より作成する
-                DispDataFromConstructionBudget();
-
             }
             catch (Exception ex)
             {
@@ -708,9 +212,6 @@
             }
             finally
             {
-                // 表示行が足りない場合は追加する
-                SetBlankRow(dgvAllDisplay);
-
                 // 変更フラグのクリア
                 m_bChengeAns = false;
             }
@@ -717,1663 +218,22 @@
         }
         #endregion
 
-        #region 工事予算書よりデータを取得する
-        /// <summary>
-        /// 工事予算書よりデータを取得する
-        /// </summary>
-        /// <returns></returns>
-        private bool DispDataFromConstructionBudget()
-        {
-            try
-            {
-
-                // 工事予算書より経費を取り込む
-                DispDataFromConstructionBudget1();
-
-                // 空白行
-                AddEmptyRow();
-
-                // 工事予算書より施工費を取り込む
-                DispDataFromConstructionBudget2();
-
-                // 空白行
-                AddEmptyRow();
-
-                // 工事予算書より購入品ブロックを取り込む
-                DispDataFromConstructionBudget3();
-
-                // 空白行
-                AddEmptyRow();
-
-                // 16期以降は給与を表示する
-                if (m_ConstructionBaseInfo.ConstructionPeriod >= 16)
-                {
-                    // 工事予算書より人件費ブロックを取り込む
-                    DispDataFromConstructionBudget4();
-                }
-
-                // 空白行
-                AddEmptyRow();
-
-                // 純利益行作成
-                CreateNetIncome();
-
-                // 合計金額
-                CreateAllTotal();
-
-                // 請求金額作成
-                ConstructionLedgerDetail SaveBillingData = new ConstructionLedgerDetail();
-                CreateBillingAmount(SaveBillingData);
-
-                // 現在利益作成
-                CreateCurrentProfit();
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region 工事予算書より経費を取り込む
-        /// <summary>
-        /// 工事予算書より経費を取り込む
-        /// </summary>
-        /// <returns></returns>
-        private bool DispDataFromConstructionBudget1()
-        {
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
-            try
-            {
-                // 工事予算書明細データを読み込む
-                string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)FrmConstructionBudget.DataGroup.Expenses);
-                strSQL += " ORDER BY GroupCount ASC, LineCount ASC";
-                List<ConstructionBudgetDetail> DetailList = new List<ConstructionBudgetDetail>();
-                if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
-                if (DetailList.Count == 0) return false;
-
-                DataGridView dgv = dgvAllDisplay;
-                int GroupNo = (int)FrmConstructionLedger.DataGroup.Expenses;
-                int icnt = 0;
-
-                // グループ名表示
-                CreateTitleRow(GroupNo, GroupTitle[GroupNo]);
-
-                // 行位置取得
-                m_CostsRowCount[(int)CostsRowLine.ExpensesRowLine] = dgv.RowCount - 1;
-
-                foreach (ConstructionBudgetDetail DetailRec in DetailList)
-                {
-                    object[] RowData = new object[dgv.Columns.Count];
-                    // データセット
-                    RowData[(int)DispGridColumn.No] = string.Format("{0}-{1}", GroupNo, ++icnt);
-                    RowData[(int)DispGridColumn.FixFlg] = "*";
-                    RowData[(int)DispGridColumn.GroupCount] = GroupNo;
-                    RowData[(int)DispGridColumn.ItemName] = DetailRec.FirstString;
-                    RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                    RowData[(int)DispGridColumn.SubContractorCode] = DetailRec.CompanyCode;
-                    RowData[(int)DispGridColumn.SubContractorName] = DetailRec.CompanyName;
-                    RowData[(int)DispGridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
-                    RowData[(int)DispGridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
-                    RowData[(int)DispGridColumn.payment] = DetailRec.ExecutionAmount.ToString("#,0");
-
-                    // 合計欄位置取得
-                    int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                    RowData[TotalPoint] = DetailRec.ExecutionAmount.ToString("#,0");
-                    // 実績欄位置取得
-                    int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
-                    RowData[ResultPoint] = "0";
-
-                    // 行セット
-                    CreateDataRow(RowData);
-                }
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                DetailDB.close(); DetailDB = null;
-            }
-        }
-        #endregion
-
-        #region 工事予算書より施工費を取り込む
-        /// <summary>
-        /// 工事予算書より施工費を取り込む
-        /// </summary>
-        /// <returns></returns>
-        private bool DispDataFromConstructionBudget2()
-        {
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
-            try
-            {
-                // 工事予算書明細データを読み込む
-                string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" AND (GROUPCOUNT = {0}", (int)FrmConstructionBudget.DataGroup.CommonTempCosts);       // 共通仮設
-                strSQL += string.Format(" OR GROUPCOUNT = {0}", (int)FrmConstructionBudget.DataGroup.OutSourceCosts);          // 外注費
-                strSQL += string.Format(" OR GROUPCOUNT = {0})", (int)FrmConstructionBudget.DataGroup.MyConstruction);         // 自社施工
-                strSQL += " ORDER BY GroupCount ASC, LineCount ASC";
-                List<ConstructionBudgetDetail> DetailList = new List<ConstructionBudgetDetail>();
-                if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
-                if (DetailList.Count == 0) return false;
-
-                DataGridView dgv = dgvAllDisplay;
-                int GroupNo = (int)FrmConstructionLedger.DataGroup.ConstructionCosts;
-                int icnt = 0;
-                // グループ名表示
-                CreateTitleRow(GroupNo, GroupTitle[GroupNo]);
-
-                // 行位置取得
-                m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine] = dgv.RowCount - 1;
-
-                foreach (ConstructionBudgetDetail DetailRec in DetailList)
-                {
-                    object[] RowData = new object[dgv.Columns.Count];
-                    // データセット
-                    RowData[(int)DispGridColumn.No] = string.Format("{0}-{1}", GroupNo, ++icnt);
-                    RowData[(int)DispGridColumn.FixFlg] = "*";
-                    RowData[(int)DispGridColumn.GroupCount] = GroupNo;
-                    RowData[(int)DispGridColumn.ItemName] = DetailRec.FirstString;
-                    RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                    RowData[(int)DispGridColumn.SubContractorCode] = DetailRec.CompanyCode;
-                    RowData[(int)DispGridColumn.SubContractorName] = DetailRec.CompanyName;
-                    RowData[(int)DispGridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,0");
-                    RowData[(int)DispGridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
-                    RowData[(int)DispGridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
-
-                    // 合計欄位置取得
-                    int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                    RowData[TotalPoint] = "0";
-                    // 実績欄位置取得
-                    int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
-                    RowData[ResultPoint] = DetailRec.ExecutionAmount.ToString("#,0");
-
-                    // 行セット
-                    CreateDataRow(RowData);
-                }
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                DetailDB.close(); DetailDB = null;
-            }
-        }
-        #endregion
-
-        #region 購入品ブロックを作成する
-        /// <summary>
-        /// 購入品ブロックを作成する
-        /// </summary>
-        /// <returns></returns>
-        private bool DispDataFromConstructionBudget3()
-        {
-            try
-            {
-                int icnt = 1;
-                int Block = (int)FrmConstructionLedger.DataGroup.TransportationCosts;
-                // グループ名表示
-                CreateTitleRow(Block, GroupTitle[(int)FrmConstructionLedger.DataGroup.PurchaseCosts] + "　　等");
-
-                // 交通費表示
-                GetDispDataFromConstructionBudget(Block, (int)FrmConstructionBudget.DataGroup.TransportationCosts, icnt++);
-                // 購入品
-                DispPurchaseCostsFromConstructionBudget(Block, icnt++);
-                // 車両リース代
-                GetDispDataFromConstructionBudget(Block, (int)FrmConstructionBudget.DataGroup.VehicleLeaseFee, icnt++);
-                // 駐車場・資材置き場
-                GetDispDataFromConstructionBudget(Block, (int)FrmConstructionBudget.DataGroup.ParkingCosts, icnt++);
-                // 宿泊費
-                GetDispDataFromConstructionBudget(Block, (int)FrmConstructionBudget.DataGroup.RoomChargeCosts, icnt++);
-                // 処分費等
-                GetDispDataFromConstructionBudget(Block, (int)FrmConstructionBudget.DataGroup.DisposeCosts, icnt++);
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region 工事予算書より購入品を取り込む
-        /// <summary>
-        /// 工事予算書より購入品を取り込む
-        /// </summary>
-        /// <returns></returns>
-        private bool DispPurchaseCostsFromConstructionBudget(int BlockCnt ,int icnt)
-        {
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
-            try
-            {
-                // 工事予算書明細データを読み込む
-                string strSQL = "SELECT SUM(ESTIMATEPRICE), SUM(EXECUTIONAMOUNT), SUM(AMOUNTCONFIGRATE) FROM CONSTRUCTIONBUDGETDETAIL";
-                strSQL += DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)FrmConstructionBudget.DataGroup.PurchaseCosts);       // 購入品
-                ArrayList DetailList = new ArrayList();
-                if (!DetailDB.ExecuteReader(strSQL, ref DetailList)) return false;
-                if (DetailList.Count == 0) return false;
-
-                DataGridView dgv = dgvAllDisplay;
-                int GroupNo = (int)FrmConstructionLedger.DataGroup.PurchaseCosts;
-                object[] wrkobj = (object[])DetailList[0];
-
-                // 行位置取得
-                m_CostsRowCount[(int)CostsRowLine.PurchaseCostsRowLine] = dgv.RowCount;
-
-                object[] RowData = new object[dgv.Columns.Count];
-                // データセット
-                RowData[(int)DispGridColumn.No] = string.Format("{0}-{1}", BlockCnt, icnt);
-                RowData[(int)DispGridColumn.FixFlg] = "*";
-                RowData[(int)DispGridColumn.GroupCount] = GroupNo;
-                RowData[(int)DispGridColumn.ItemName] = GroupTitle[GroupNo];
-                RowData[(int)DispGridColumn.EstimatePrice] = CommonMotions.cnvInt(wrkobj[0]).ToString("#,0");
-                RowData[(int)DispGridColumn.ExecPrice] = CommonMotions.cnvInt(wrkobj[1]).ToString("#,0");
-                RowData[(int)DispGridColumn.Percent] = CommonMotions.cnvDouble(wrkobj[2]).ToString("0.00");
-
-                // 合計欄位置取得
-                int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                RowData[TotalPoint] = "0";
-                // 実績欄位置取得
-                int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
-                RowData[ResultPoint] = CommonMotions.cnvInt(wrkobj[1]).ToString("#,0");
-
-                // 行セット
-                CreateDataRow(RowData);
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                DetailDB.close(); DetailDB = null;
-            }
-        }
-        #endregion
-
-        #region 工事予算書よりデータを取り込む
-        /// <summary>
-        /// 工事予算書よりデータを取り込む
-        /// </summary>
-        /// <returns></returns>
-        private bool GetDispDataFromConstructionBudget(int BlockNo, int GroupNo, int DataNo)
-        {
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
-            try
-            {
-                // 工事予算書明細データを読み込む
-                string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" AND GROUPCOUNT = {0}", GroupNo);
-                strSQL += " ORDER BY LineCount ASC";
-
-                ConstructionBudgetDetail DetailRec = new ConstructionBudgetDetail();
-                if (!DetailDB.SelectAction(strSQL, ref DetailRec)) return false;
-
-                DataGridView dgv = dgvAllDisplay;
-
-                object[] RowData = new object[dgv.Columns.Count];
-                // データセット
-                switch (DetailRec.GroupCount)
-                {
-                    // 車両リース代
-                    case (int)FrmConstructionBudget.DataGroup.VehicleLeaseFee:
-                        // 行位置取得
-                        m_CostsRowCount[(int)CostsRowLine.VehicleLeaseFeeRowLine] = dgv.RowCount;
-                        GroupNo = (int)FrmConstructionLedger.DataGroup.VehicleLeaseFee;
-                        RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                        break;
-                    // 交通費（通行料・電車代）
-                    case (int)FrmConstructionBudget.DataGroup.TransportationCosts:
-                        // 行位置取得
-                        m_CostsRowCount[(int)CostsRowLine.TransportationCostsRowLine] = dgv.RowCount;
-                        GroupNo = (int)FrmConstructionLedger.DataGroup.TransportationCosts;
-                        RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                        break;
-                    // 駐車場・資材置き場
-                    case (int)FrmConstructionBudget.DataGroup.ParkingCosts:
-                        // 行位置取得
-                        m_CostsRowCount[(int)CostsRowLine.ParkingCostsRowLine] = dgv.RowCount;
-                        GroupNo = (int)FrmConstructionLedger.DataGroup.ParkingCosts;
-                        RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                        break;
-                    // 宿泊費
-                    case (int)FrmConstructionBudget.DataGroup.RoomChargeCosts:
-                        // 行位置取得
-                        m_CostsRowCount[(int)CostsRowLine.RoomChargeCostsRowLine] = dgv.RowCount;
-                        GroupNo = (int)FrmConstructionLedger.DataGroup.RoomChargeCosts;
-                        RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                        break;
-                    // 処分費等
-                    case (int)FrmConstructionBudget.DataGroup.DisposeCosts:
-                        // 行位置取得
-                        m_CostsRowCount[(int)CostsRowLine.DisposeCostsRowLine] = dgv.RowCount;
-                        GroupNo = (int)FrmConstructionLedger.DataGroup.DisposeCosts;
-                        RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                        break;
-                    // 指導員費用
-                    case (int)FrmConstructionBudget.DataGroup.InstructorCosts:
-                        // 行位置取得
-                        m_CostsRowCount[(int)CostsRowLine.InstructorRowLine] = dgv.RowCount;
-                        GroupNo = (int)FrmConstructionLedger.DataGroup.Instructor;
-                        break;
-                    // 給与費用
-                    case (int)FrmConstructionBudget.DataGroup.PayrollExpenses:
-                        // 行位置取得
-                        m_CostsRowCount[(int)CostsRowLine.PayrollExpensesRowLine] = dgv.RowCount;
-                        GroupNo = (int)FrmConstructionLedger.DataGroup.Payroll;
-                        break;
-                    default:
-                        // その他の項目
-                        GroupNo = 0;
-                        RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                        break;
-                }
-
-                RowData[(int)DispGridColumn.No] = string.Format("{0}-{1}", BlockNo, DataNo);
-                RowData[(int)DispGridColumn.FixFlg] = "*";
-                RowData[(int)DispGridColumn.GroupCount] = GroupNo;
-                RowData[(int)DispGridColumn.ItemName] = DetailRec.FirstString;
-
-                RowData[(int)DispGridColumn.SubContractorCode] = DetailRec.CompanyCode;
-                RowData[(int)DispGridColumn.SubContractorName] = DetailRec.CompanyName;
-                RowData[(int)DispGridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,0");
-                RowData[(int)DispGridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
-                RowData[(int)DispGridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
-
-                // 合計欄位置取得
-                int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                RowData[TotalPoint] = "0";
-                // 実績欄位置取得
-                int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
-                RowData[ResultPoint] = DetailRec.ExecutionAmount.ToString("#,0");
-
-                // 行セット
-                CreateDataRow(RowData);
-
-                // 一般ユーザーの指導員は担当者の給与を見えないようにする
-                if (DetailRec.GroupCount == (int)FrmConstructionBudget.DataGroup.PayrollExpenses)
-                {
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key
-                        && CommonMotions.LoginUserData.PersonCode == m_ConstructionBaseInfo.ConstructionInstructor)
-                    {
-                        int rowcnt = dgv.RowCount - 1;
-                        dgv.Rows[rowcnt].Visible = false;
-                    }
-                }
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                DetailDB.close(); DetailDB = null;
-            }
-        }
-        #endregion
-
-        #region 工事予算書より人件費ブロックを取り込む
-        /// <summary>
-        /// 工事予算書より人件費ブロックを取り込む
-        /// </summary>
-        /// <returns></returns>
-        private bool DispDataFromConstructionBudget4()
-        {
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
-            try
-            {
-                int GroupNo = (int)FrmConstructionLedger.DataGroup.TransportationCosts + 1;
-                int icnt = 1;
-                // グループ名表示
-                CreateTitleRow(GroupNo, PersonnelExpensesGroup);
-
-                // 指導員給与
-                GetDispDataFromConstructionBudget(GroupNo, (int)FrmConstructionBudget.DataGroup.InstructorCosts, icnt++);
-                // 給与経費
-                GetDispDataFromConstructionBudget(GroupNo, (int)FrmConstructionBudget.DataGroup.PayrollExpenses, icnt++);
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                DetailDB.close(); DetailDB = null;
-            }
-        }
-        #endregion
-
-        #region 明細合計を集計
-        /// <summary>
-        /// 明細合計を集計する
-        /// </summary>
-        /// <param name="EstimateValue"></param>
-        /// <param name="NegotiationPriceValue"></param>
-        /// <param name="HopePriceValue"></param>
-        /// <param name="ExecValue"></param>
-        /// <param name="PercentValue"></param>
-        private void GetDetailTotal(ref int EstimateValue, ref int ExecValue, ref double PercentValue, ref int TotalValue, ref int ResultValue, ref int[] MTotal)
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                // 支払額欄位置取得
-                int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                // 支払可能額欄位置取得
-                int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
-                // 純利益数の取得
-                int BreakLine = m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine];
-                // 純利益が表示されていなければグリッド最大行をセット
-                if (BreakLine == 0) BreakLine = dgv.Rows.Count;
-
-                // 月毎クリア
-                Array.Clear(MTotal, 0, MTotal.Length);
-                foreach (DataGridViewRow wrkRow in dgv.Rows)
-                {
-                    // 純利益の前までで処理終了
-                    if (wrkRow.Index >= BreakLine) break;
-                    // 子項目は加算しない
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.ChildFlg].Value) != 0) continue;
-
-                    EstimateValue += CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.EstimatePrice].Value);           // 積算時見積金額
-                    ExecValue += CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.ExecPrice].Value);                   // 実行金額
-                    PercentValue += CommonMotions.cnvDouble(wrkRow.Cells[(int)DispGridColumn.Percent].Value);               // 構成比率
-                    TotalValue += CommonMotions.cnvInt(wrkRow.Cells[TotalPoint].Value);                                     // 合計金額
-                    ResultValue += CommonMotions.cnvInt(wrkRow.Cells[ResultPoint].Value);                                   // 実績金額
-
-                    // 月毎加算
-                    int arrayCnt = 0;
-                    for (int i = (int)DispGridColumn.payment; i < dgv.ColumnCount; i++, arrayCnt++)
-                    {
-                        MTotal[arrayCnt] += CommonMotions.cnvInt(wrkRow.Cells[i].Value);
-                    }
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 純利益計算
-        /// <summary>
-        /// 純利益計算
-        /// </summary>
-        /// <returns></returns>
-        private void CalculateNetIncome()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                // 受注金額取得
-                int OrdersPrice = CommonMotions.cnvInt(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text.Replace("\\", "").Replace("-", ""));
-
-                int EstimateValue = 0;
-                int ExecValue = 0;
-                double PercentValue = 0;
-                int TotalValue = 0;
-                int ResultValue = 0;
-                int Colcnt = dgv.ColumnCount - (int)DispGridColumn.payment;
-                int[] MTotal = new int[Colcnt];
-
-                // 合計値取得
-                GetDetailTotal(ref EstimateValue, ref ExecValue, ref PercentValue, ref TotalValue, ref ResultValue, ref MTotal);
-
-                // 予定金額（受注金額－予定金額合計）
-                int EstimatePrice = OrdersPrice - EstimateValue;
-                // 実行金額（受注金額－実行金額合計）
-                int ExecPrice = OrdersPrice - ExecValue;
-
-                // 純利益行カウント取得
-                int LineCnt = m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine];
-                if (LineCnt == 0) return;
-
-                // データセット
-                dgv.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value = EstimatePrice.ToString("#,0");
-                dgv.Rows[LineCnt].Cells[(int)DispGridColumn.ExecPrice].Value = ExecPrice.ToString("#,0");
-                dgv.Rows[LineCnt].Cells[(int)DispGridColumn.Percent].Value = CalculattionPercent((double)ExecPrice).ToString("0.00");
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 純利益作成
-        /// <summary>
-        /// 純利益作成
-        /// </summary>
-        /// <returns></returns>
-        private void CreateNetIncome()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                // 受注金額取得
-                int OrdersPrice = CommonMotions.cnvInt(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text.Replace("\\", "").Replace("-", ""));
-
-                int EstimatePriceValue = 0;
-                int ExecPriceValue = 0;
-                double PercentValue = 0;
-                int TotalValue = 0;
-                int ResultPriceValue = 0;
-                int Colcnt = dgv.ColumnCount - (int)DispGridColumn.payment;
-                int[] MTotal = new int[Colcnt];
-
-                // 合計値取得
-                GetDetailTotal(ref EstimatePriceValue, ref ExecPriceValue, ref PercentValue, ref TotalValue, ref ResultPriceValue, ref MTotal);
-
-                int EstimateValue = OrdersPrice - EstimatePriceValue;
-                int ExecValue = OrdersPrice - ExecPriceValue;
-
-                object[] RowData = new object[dgv.Columns.Count];
-                // データセット
-                RowData[(int)DispGridColumn.FixFlg] = "*";
-                RowData[(int)DispGridColumn.GroupCount] = (int)FrmConstructionLedger.DataGroup.NetIncome;
-                RowData[(int)DispGridColumn.ItemName] = GroupTitle[(int)FrmConstructionLedger.DataGroup.NetIncome];
-                RowData[(int)DispGridColumn.EstimatePrice] = EstimateValue.ToString("#,0");
-                RowData[(int)DispGridColumn.ExecPrice] = ExecValue.ToString("#,0");
-                RowData[(int)DispGridColumn.Percent] = CalculattionPercent((double)ExecValue).ToString("0.00");
-
-                // 行セット
-                CreateDataRow(RowData);
-
-                // 行位置取得
-                int LineCnt = dgv.RowCount - 1;
-                m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine] = LineCnt;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 予算超過金額セット
-        /// <summary>
-        /// 予算超過金額セット
-        /// </summary>
-        private void SetBudgetOverrun()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                int TotalLine = m_CostsRowCount[(int)CostsRowLine.AllTotalRowLine];
-
-                // 支払可能額欄取得
-                int OverpaymentPoint = dgv.ColumnCount + (int)ColPayTotal.Overpayments;
-                int Overpayment = CommonMotions.cnvInt(dgv.Rows[TotalLine].Cells[OverpaymentPoint].Value);
-
-                // 補正欄取得
-                int BurdenPoint = dgv.ColumnCount + (int)ColPayTotal.PaymentBurdens;
-                int Burden = CommonMotions.cnvInt(dgv.Rows[TotalLine].Cells[BurdenPoint].Value);
-                
-                // 予算超過額セット
-                int Budget = (Overpayment + Burden);
-                m_DspLabelCtrl[(int)DspLblCtrlName.BudgetOverrun].Text = Budget.ToString("#,0");
-                // 支払可能額がマイナスの場合
-                if (Budget < 0)
-                {
-                    m_DspLabelCtrl[(int)DspLblCtrlName.BudgetOverrun].ForeColor = Color.Red;
-                }
-                else
-                {
-                    m_DspLabelCtrl[(int)DspLblCtrlName.BudgetOverrun].ForeColor = Color.Black;
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 合計金額計算
-        /// <summary>
-        /// 合計金額計算
-        /// </summary>
-        private void CalculateAllTotal()
-        {
-            DataGridView dgv = dgvAllDisplay;
-
-            int EstimateValue = 0;
-            int ExecValue = 0;
-            double PercentValue = 0;
-            int TotalValue = 0;
-            int ResultValue = 0;
-            int Colcnt = dgv.ColumnCount - (int)DispGridColumn.payment;
-            int[] MTotal = new int[Colcnt];
-
-            // 合計値取得
-            GetDetailTotal(ref EstimateValue, ref ExecValue, ref PercentValue, ref TotalValue, ref ResultValue, ref MTotal);
-
-            // 純利益取得
-            int NetIncomeLine = m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine];
-            EstimateValue += CommonMotions.cnvInt(dgv.Rows[NetIncomeLine].Cells[(int)DispGridColumn.EstimatePrice].Value);
-            ExecValue += CommonMotions.cnvInt(dgv.Rows[NetIncomeLine].Cells[(int)DispGridColumn.ExecPrice].Value);
-
-            // データセット
-            int LineCnt = m_CostsRowCount[(int)CostsRowLine.AllTotalRowLine];
-            dgv.Rows[LineCnt].Cells[(int)DispGridColumn.EstimatePrice].Value = EstimateValue.ToString("#,0");
-            dgv.Rows[LineCnt].Cells[(int)DispGridColumn.ExecPrice].Value = ExecValue.ToString("#,0");
-            dgv.Rows[LineCnt].Cells[(int)DispGridColumn.Percent].Value = CalculattionPercent((double)ExecValue).ToString("0.00");
-
-            // 月毎合計
-            int arrayCnt = 0;
-            for (int i = (int)DispGridColumn.payment; i < dgv.ColumnCount; i++, arrayCnt++)
-            {
-                dgv.Rows[LineCnt].Cells[i].Value = MTotal[arrayCnt].ToString("#,0");
-            }
-
-            // 合計欄位置取得
-            int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-            dgv.Rows[LineCnt].Cells[TotalPoint].Value = TotalValue.ToString("#,0");
-            // 実績欄位置取得
-            int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
-            dgv.Rows[LineCnt].Cells[ResultPoint].Value = ResultValue.ToString("#,0");
-
-            // 予算超過金額セット
-            SetBudgetOverrun();
-        }
-        #endregion
-
-        #region 合計金額作成
-        /// <summary>
-        /// 合計金額作成
-        /// </summary>
-        private void CreateAllTotal()
-        {
-
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                int EstimatePriceValue = 0;
-                int ExecPriceValue = 0;
-                double PercentValue = 0;
-                int TotalValue = 0;
-                int ResultPriceValue = 0;
-                int Colcnt = dgv.ColumnCount - (int)DispGridColumn.payment;
-                int[] MTotal = new int[Colcnt];
-
-                // 合計値取得
-                GetDetailTotal(ref EstimatePriceValue, ref ExecPriceValue, ref PercentValue, ref TotalValue, ref ResultPriceValue, ref MTotal);
-
-                // 純利益取得
-                int NetIncomeLine = m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine];
-                EstimatePriceValue += CommonMotions.cnvInt(dgv.Rows[NetIncomeLine].Cells[(int)DispGridColumn.EstimatePrice].Value);
-                ExecPriceValue += CommonMotions.cnvInt(dgv.Rows[NetIncomeLine].Cells[(int)DispGridColumn.ExecPrice].Value);
-
-                // 空白行
-                AddEmptyRow();
-
-                object[] RowData = new object[dgv.Columns.Count];
-                // データセット
-                RowData[(int)DispGridColumn.FixFlg] = "*";
-                RowData[(int)DispGridColumn.GroupCount] = (int)FrmConstructionLedger.DataGroup.AllTotal;
-                RowData[(int)DispGridColumn.ItemName] = GroupTitle[(int)FrmConstructionLedger.DataGroup.AllTotal];
-                RowData[(int)DispGridColumn.EstimatePrice] = EstimatePriceValue.ToString("#,0");
-                RowData[(int)DispGridColumn.ExecPrice] = ExecPriceValue.ToString("#,0");
-                RowData[(int)DispGridColumn.Percent] = CalculattionPercent((double)ExecPriceValue).ToString("0.00");
-
-                // 月毎合計
-                int arrayCnt = 0;
-                for (int i = (int)DispGridColumn.payment; i < dgv.ColumnCount; i++, arrayCnt++)
-                {
-                    RowData[i] = MTotal[arrayCnt].ToString("#,0");
-                }
-
-                // 合計欄位置取得
-                int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                RowData[TotalPoint] = TotalValue.ToString("#,0");
-
-                // 実績欄位置取得
-                int ResultPoint = dgv.ColumnCount + (int)ColPayTotal.Results;
-                RowData[ResultPoint] = ResultPriceValue.ToString("#,0");
-
-                // 行セット
-                CreateDataRow(RowData);
-
-                // 行位置取得
-                int LineCnt = dgv.RowCount - 1;
-                m_CostsRowCount[(int)CostsRowLine.AllTotalRowLine] = LineCnt;
-
-                // 総合計フラグON
-                dgv.Rows[LineCnt].Cells[(int)DispGridColumn.TotalFlg].Value = 2;
-
-                // 工事価格計は行を大きくする
-                dgv.Rows[LineCnt].Height = dgv.RowTemplate.Height * 2;
-                float FontSize = dgv.DefaultCellStyle.Font.Size;
-                Font DrowFont = new Font(dgv.DefaultCellStyle.Font.FontFamily, FontSize * 2);
-                dgv.Rows[LineCnt].Cells[(int)DispGridColumn.No].Style.Font = DrowFont;
-
-                // 行の色を変える
-                for (int i = 0; i < dgv.Columns.Count; i++)
-                {
-                    dgv.Rows[LineCnt].Cells[i].Style.ForeColor = Color.White;
-                    dgv.Rows[LineCnt].Cells[i].Style.BackColor = Color.Black;
-                }
-
-                // 予算超過金額セット
-                SetBudgetOverrun();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 現在利益計算
-        /// <summary>
-        /// 現在利益計算
-        /// </summary>
-        private void CalculateCurrentProfit()
-        {
-            DataGridView dgv = dgvAllDisplay;
-
-            // 合計欄位置取得
-            int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-
-            // 合計金額取得
-            int AllTotalRow = m_CostsRowCount[(int)CostsRowLine.AllTotalRowLine];
-            int AllTotal = CommonMotions.cnvInt(dgv.Rows[AllTotalRow].Cells[TotalPoint].Value);
-
-            // 請求金額行数取得
-            int BillingAmountRow = m_CostsRowCount[(int)CostsRowLine.BillingAmountRowLine];
-            int BillingAmount = CommonMotions.cnvInt(dgv.Rows[BillingAmountRow].Cells[TotalPoint].Value);
-
-            int LineCnt = m_CostsRowCount[(int)CostsRowLine.CurrentProfitRowLine];
-
-            // 現在利益金額
-            dgv.Rows[LineCnt].Cells[TotalPoint].Value = (BillingAmount - AllTotal).ToString("#,0");
-
-        }
-        #endregion
-
-        #region 現在利益作成
-        /// <summary>
-        /// 現在利益作成
-        /// </summary>
-        private void CreateCurrentProfit()
-        {
-
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                object[] RowData = new object[dgv.Columns.Count];
-                // データセット
-                RowData[(int)DispGridColumn.FixFlg] = "*";
-                RowData[(int)DispGridColumn.GroupCount] = (int)FrmConstructionLedger.DataGroup.CurrentProfit;
-                RowData[(int)DispGridColumn.ItemName] = GroupTitle[(int)FrmConstructionLedger.DataGroup.CurrentProfit];
-
-                // 合計欄位置取得
-                int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-
-                // 合計金額取得
-                int AllTotalRow = m_CostsRowCount[(int)CostsRowLine.AllTotalRowLine];
-                int AllTotal = CommonMotions.cnvInt(dgv.Rows[AllTotalRow].Cells[TotalPoint].Value);
-
-                // 請求金額行数取得
-                int BillingAmountRow = m_CostsRowCount[(int)CostsRowLine.BillingAmountRowLine];
-                int BillingAmount = CommonMotions.cnvInt(dgv.Rows[BillingAmountRow].Cells[TotalPoint].Value);
-
-                // 現在利益金額
-                RowData[TotalPoint] = (BillingAmount - AllTotal).ToString("#,0");
-
-                // 行セット
-                CreateDataRow(RowData);
-
-                // 行位置取得
-                int LineCnt = dgv.RowCount - 1;
-                m_CostsRowCount[(int)CostsRowLine.CurrentProfitRowLine] = LineCnt;
-
-                // 行ロック
-                dgv.Rows[LineCnt].ReadOnly = true;
-
-                // セルの色を変える
-                //dgv.Rows[LineCnt].Cells[TotalPoint].Style.ForeColor = Color.LightBlue;
-                //dgv.Rows[LineCnt].Cells[TotalPoint].Style.BackColor = Color.Black;
-
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 請求金額作成
-        /// <summary>
-        /// 請求金額作成
-        /// </summary>
-        private void CreateBillingAmount(ConstructionLedgerDetail SaveBillingData)
-        {
-            IOConstructionLedgerExcute ExcuteDB = new IOConstructionLedgerExcute();
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                // 空白行
-                AddEmptyRow();
-
-                object[] RowData = new object[dgv.Columns.Count];
-                // データセット
-                RowData[(int)DispGridColumn.FixFlg] = "*";
-                RowData[(int)DispGridColumn.GroupCount] = (int)FrmConstructionLedger.DataGroup.BillingAmount;
-                RowData[(int)DispGridColumn.ItemName] = GroupTitle[(int)FrmConstructionLedger.DataGroup.BillingAmount];
-                RowData[(int)DispGridColumn.IndependentFlg] = "1";
-
-                string strSQL = ExcuteDB.CreatePrimarykeyString(m_ConstructionCode,
-                                                                (int)FrmConstructionLedger.DataGroup.BillingAmount);
-                strSQL += " ORDER BY ColumnCount ASC";
-                List<ConstructionLedgerExcute> ExcList = new List<ConstructionLedgerExcute>();
-                ExcuteDB.SelectAction(strSQL, ref ExcList);
-
-                // 月毎合計
-                int arrayCnt = 0;
-                int TotalValue = 0;
-                foreach (ConstructionLedgerExcute ExcRec in ExcList)
-                {
-                    int i = arrayCnt + (int)DispGridColumn.payment;
-                    RowData[i] = ExcList[arrayCnt].PaymentAmount.ToString("#,0");
-                    TotalValue += (int)ExcList[arrayCnt].PaymentAmount;
-
-                    arrayCnt++;
-                }
-
-                // 合計欄位置取得
-                int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                RowData[TotalPoint] = TotalValue.ToString("#,0");
-
-                // 行セット
-                CreateDataRow(RowData);
-
-                // 行位置取得
-                int LineCnt = dgv.RowCount - 1;
-                m_CostsRowCount[(int)CostsRowLine.BillingAmountRowLine] = LineCnt;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                ExcuteDB.close(); ExcuteDB = null;
-            }
-        }
-        #endregion
-
-        #region 書込み禁止処理
-        /// <summary>
-        /// 予算入力を変更禁止にする
-        /// </summary>
-        private void BudgetInputReadOnly()
-        {
-            try
-            {
-                // 総計グリッドを読込専用にする
-                dgvAllDisplay.ReadOnly = true;
-
-                // データ編集に関するボタンを非表示にする
-                btnDataEntry.Visible = false;                       // 登録ボタン
-                btnDataDelete.Visible = false;                      // 削除ボタン
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 工事詳細台帳データ読込
-        /// <summary>
-        /// 工事詳細台帳データ読込
-        /// </summary>
-        /// <returns></returns>
-        private bool InitDispData()
-        {
-            IOConstructionLedger LedgerDB = new IOConstructionLedger();
-            IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
-            IOConstructionLedgerExcute ExcuteDB = new IOConstructionLedgerExcute();
-            try
-            {
-                // 工事詳細台帳データを読み込む
-                string strSQL = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
-                ConstructionLedger LedgerRec = new ConstructionLedger();
-                if (!LedgerDB.SelectAction(strSQL, ref LedgerRec)) return false;
-
-                // 工事詳細台帳明細データを読み込む
-                strSQL += " ORDER BY GroupCount ASC, LineCount ASC";
-                List<ConstructionLedgerDetail> DetailList = new List<ConstructionLedgerDetail>();
-                if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
-                if (DetailList.Count == 0) return false;
-
-                DataGridView dgv = dgvAllDisplay;
-                int GridColMax = dgv.ColumnCount;
-                int GroupNo = (int)FrmConstructionLedger.DataGroup.Expenses;
-                int icnt = 1;
-                int Block = (int)FrmConstructionLedger.DataGroup.Expenses;
-                ConstructionLedgerDetail SaveBillingData = new ConstructionLedgerDetail();
-                // グループ名表示(経費)
-                CreateTitleRow(GroupNo, GroupTitle[GroupNo]);
-                foreach (ConstructionLedgerDetail DetailRec in DetailList)
-                {
-                    // グループ番号が違えばタイトル行表示
-                    if (GroupNo != DetailRec.GroupCount)
-                    {
-                        GroupNo = DetailRec.GroupCount;
-                        switch (GroupNo)
-                        {
-                            case (int)FrmConstructionLedger.DataGroup.ConstructionCosts:
-                                // 施工費
-                                AddEmptyRow();                                      // 空白行
-                                Block = (int)FrmConstructionLedger.DataGroup.ConstructionCosts;
-                                CreateTitleRow(GroupNo, GroupTitle[GroupNo]);     // タイトル表示
-                                icnt = 1;
-                                break;
-                            case (int)FrmConstructionLedger.DataGroup.TransportationCosts:
-                                // 交通費（通行料・電車代）
-                                AddEmptyRow();                                      // 空白行
-                                string Titlestring = GroupTitle[(int)FrmConstructionLedger.DataGroup.PurchaseCosts] + "　　等";
-                                Block = (int)FrmConstructionLedger.DataGroup.TransportationCosts;
-                                CreateTitleRow(GroupNo, Titlestring);             // タイトル表示
-                                icnt = 1;
-                                break;
-                            case (int)FrmConstructionLedger.DataGroup.Instructor:
-                                // 指導員給料行
-                                AddEmptyRow();                                      // 空白行
-                                Block = (int)FrmConstructionLedger.DataGroup.TransportationCosts + 1;
-                                CreateTitleRow(Block, PersonnelExpensesGroup);     // タイトル表示
-                                icnt = 1;
-                                break;
-                            case (int)FrmConstructionLedger.DataGroup.PurchaseCosts:           // 購入品
-                            case (int)FrmConstructionLedger.DataGroup.VehicleLeaseFee:         // 車両リース代
-                            case (int)FrmConstructionLedger.DataGroup.ParkingCosts:            // 駐車場・資材置き場
-                            case (int)FrmConstructionLedger.DataGroup.RoomChargeCosts:         // 宿泊費
-                            case (int)FrmConstructionLedger.DataGroup.DisposeCosts:            // 処分費等
-                            case (int)FrmConstructionLedger.DataGroup.Payroll:         // 給料行
-                                break;
-                            default:
-                                Block = 0;
-                                break;
-                        }
-                    }
-
-                    object[] RowData = new object[GridColMax];
-                    // 固定フラグは工事予算書より読み込んだものにセットする
-                    if (DetailRec.FixDataFlg == 1)
-                        RowData[(int)DispGridColumn.FixFlg] = "*";
-
-                    // 独立データフラグ
-                    RowData[(int)DispGridColumn.IndependentFlg] = 1;
-
-                    // 経費・施工費・購入品は番号を振る
-                    switch (GroupNo)
-                    {
-                        case (int)FrmConstructionLedger.DataGroup.Expenses:                // 経費
-                        case (int)FrmConstructionLedger.DataGroup.ConstructionCosts:       // 施工費
-                        case (int)FrmConstructionLedger.DataGroup.TransportationCosts:     // 交通費（通行料・電車代）
-                        case (int)FrmConstructionLedger.DataGroup.PurchaseCosts:           // 購入品
-                        case (int)FrmConstructionLedger.DataGroup.VehicleLeaseFee:         // 車両リース代
-                        case (int)FrmConstructionLedger.DataGroup.ParkingCosts:            // 駐車場・資材置き場
-                        case (int)FrmConstructionLedger.DataGroup.RoomChargeCosts:         // 宿泊費
-                        case (int)FrmConstructionLedger.DataGroup.DisposeCosts:            // 処分費等
-                        case (int)FrmConstructionLedger.DataGroup.Instructor:              // 指導員給料行
-                        case (int)FrmConstructionLedger.DataGroup.Payroll:         // 給料行
-                            RowData[(int)DispGridColumn.No] = string.Format("{0}-{1}", Block, icnt++);
-                            break;
-                        default:
-                            break;
-                    }
-                    RowData[(int)DispGridColumn.GroupCount] = DetailRec.GroupCount;
-                    RowData[(int)DispGridColumn.ItemName] = DetailRec.FirstString;
-                    RowData[(int)DispGridColumn.TextName] = DetailRec.SecondString;
-                    RowData[(int)DispGridColumn.SubContractorCode] = DetailRec.CompanyCode;
-                    RowData[(int)DispGridColumn.SubContractorName] = DetailRec.CompanyName;
-                    // 施工費は予算金額がある
-                    if (DetailRec.GroupCount == (int)FrmConstructionLedger.DataGroup.ConstructionCosts)
-                        RowData[(int)DispGridColumn.EstimatePrice] = DetailRec.EstimatePrice.ToString("#,0");
-
-                    RowData[(int)DispGridColumn.ExecPrice] = DetailRec.ExecutionAmount.ToString("#,0");
-                    RowData[(int)DispGridColumn.Percent] = DetailRec.AmountConfigRate.ToString("0.00");
-
-                    // 支払いデータをセットする
-                    double TotalValue = 0;
-                    strSQL = ExcuteDB.CreatePrimarykeyString(m_ConstructionCode, DetailRec.GroupCount, DetailRec.LineCount);
-                    strSQL += " ORDER BY ColumnCount";
-                    List<ConstructionLedgerExcute> ExcuteList = new List<ConstructionLedgerExcute>();
-                    ExcuteDB.SelectAction(strSQL, ref ExcuteList);
-                    foreach (ConstructionLedgerExcute ExcuteRec in ExcuteList)
-                    {
-                        RowData[ExcuteRec.ColumnCount] = ExcuteRec.PaymentAmount.ToString("#,#");
-                        TotalValue += ExcuteRec.PaymentAmount;
-                    }
-
-                    // 合計金額表示
-                    RowData[GridColMax + (int)ColPayTotal.Totals] = TotalValue.ToString("#,0");
-
-                    // 実績金額表示
-                    int ExecValue = (int)(DetailRec.ExecutionAmount - TotalValue);
-                    RowData[GridColMax + (int)ColPayTotal.Results] = ExecValue.ToString("#,0");
-
-                    // 支払補填額
-                    RowData[GridColMax + (int)ColPayTotal.PaymentBurdens] = DetailRec.PaymentBurden.ToString("#,0");
-
-                    // 請求金額データはデータを作成しない
-                    if (DetailRec.GroupCount != (int)FrmConstructionLedger.DataGroup.BillingAmount)
-                    {
-                        // データ行作成
-                        CreateDataRow(RowData);
-                    }
-
-                    for (int i = (int)DispGridColumn.ItemName; i <= (int)DispGridColumn.SubContractorName; i++)
-                    {
-                        dgv.Rows[dgv.RowCount - 1].Cells[i].ReadOnly = true;
-                    }
-                    switch (DetailRec.GroupCount)
-                    {
-                        case (int)FrmConstructionLedger.DataGroup.ConstructionCosts:       // 施工費
-                            // 施工費・購入品の固定項目以外の行は名称等を編集出来る
-                            if (DetailRec.FixDataFlg != 1)
-                            {
-                                for (int i = (int)DispGridColumn.ItemName; i <= (int)DispGridColumn.SubContractorName; i++)
-                                {
-                                    dgv.Rows[dgv.RowCount - 1].Cells[i].ReadOnly = false;
-                                }
-                            }
-                            break;
-
-                        case (int)FrmConstructionLedger.DataGroup.Instructor:              // 指導員
-                        case (int)FrmConstructionLedger.DataGroup.Payroll:         // 給与
-                        case (int)FrmConstructionLedger.DataGroup.NetIncome:               // 純利益
-                            // 16期より前は指導員金額・担当者給与・純利益を表示しない
-                            if (m_ConstructionBaseInfo.ConstructionPeriod < 16) dgv.Rows[dgv.RowCount - 1].Visible = false;
-                            break;
-                        default:
-                            break;
-                    }
-
-                    // 支払可能額・支払超過の編集
-                    SetOverPayment(dgv.RowCount - 1);
-
-                    // グループごとの処理
-                    SetGroupDataProperty(DetailRec, ref SaveBillingData);
-                }
-
-                // 空白行
-                AddEmptyRow();
-                // 純利益作成
-                CreateNetIncome();
-
-                // 合計金額
-                CreateAllTotal();
-
-                // 請求金額作成
-                CreateBillingAmount(SaveBillingData);
-
-                // 現在利益作成
-                CreateCurrentProfit();
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                LedgerDB.close(); LedgerDB = null;
-                DetailDB.close(); DetailDB = null;
-                ExcuteDB.close(); ExcuteDB = null;
-            }
-        }
-        #endregion
-
-        #region グループごとの処理を行う
-        /// <summary>
-        /// グループごとの処理を行う
-        /// </summary>
-        /// <param name="DetailRec"></param>
-        /// <param name="SaveBillingData"></param>
-        private void SetGroupDataProperty(ConstructionLedgerDetail DetailRec, ref ConstructionLedgerDetail SaveBillingData)
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                // グループごとの処理
-                switch (DetailRec.GroupCount)
-                {
-                    // 経費
-                    case (int)FrmConstructionLedger.DataGroup.Expenses:
-                        if (m_CostsRowCount[(int)CostsRowLine.ExpensesRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.ExpensesRowLine] = dgv.RowCount - 2;
-                        break;
-                    // 施工費
-                    case (int)FrmConstructionLedger.DataGroup.ConstructionCosts:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine] = dgv.RowCount - 2;
-                        break;
-                    // 購入品
-                    case (int)FrmConstructionLedger.DataGroup.PurchaseCosts:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.PurchaseCostsRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.PurchaseCostsRowLine] = dgv.RowCount - 2;
-                        break;
-                    // 車両リース代
-                    case (int)FrmConstructionLedger.DataGroup.VehicleLeaseFee:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.VehicleLeaseFeeRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.VehicleLeaseFeeRowLine] = dgv.RowCount - 1;
-                        break;
-                    // 交通費（通行料・電車代）
-                    case (int)FrmConstructionLedger.DataGroup.TransportationCosts:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.TransportationCostsRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.TransportationCostsRowLine] = dgv.RowCount - 1;
-                        break;
-                    // 駐車場・資材置き場
-                    case (int)FrmConstructionLedger.DataGroup.ParkingCosts:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.ParkingCostsRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.ParkingCostsRowLine] = dgv.RowCount - 1;
-                        break;
-                    // 宿泊費
-                    case (int)FrmConstructionLedger.DataGroup.RoomChargeCosts:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.RoomChargeCostsRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.RoomChargeCostsRowLine] = dgv.RowCount - 1;
-                        break;
-                    // 処分費等
-                    case (int)FrmConstructionLedger.DataGroup.DisposeCosts:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.DisposeCostsRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.DisposeCostsRowLine] = dgv.RowCount - 1;
-                        break;
-                    // 指導員給料
-                    case (int)FrmConstructionLedger.DataGroup.Instructor:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.InstructorRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.InstructorRowLine] = dgv.RowCount - 1;
-                        break;
-                    // 給料
-                    case (int)FrmConstructionLedger.DataGroup.Payroll:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.PayrollExpensesRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.PayrollExpensesRowLine] = dgv.RowCount - 1;
-                        // 指導員は担当者の給与を見えないようにする
-                        if (CommonMotions.LoginUserData.PersonCode == m_ConstructionBaseInfo.ConstructionInstructor)
-                        {
-                            int rowcnt = dgv.RowCount - 1;
-                            dgv.Rows[rowcnt].Visible = false;
-                        }
-                        break;
-                    // 純利益
-                    case (int)FrmConstructionLedger.DataGroup.NetIncome:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine] = dgv.RowCount - 1;
-                        break;
-
-                    // 合計金額
-                    case (int)FrmConstructionLedger.DataGroup.AllTotal:
-                        // 行位置取得
-                        if (m_CostsRowCount[(int)CostsRowLine.AllTotalRowLine] == 0)
-                            m_CostsRowCount[(int)CostsRowLine.AllTotalRowLine] = dgv.RowCount - 1;
-                        break;
-
-                    // 請求金額
-                    case (int)FrmConstructionLedger.DataGroup.BillingAmount:
-                        SaveBillingData = DetailRec;
-                        break;
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 行操作ボタンの表示制御
-        /// <summary>
-        /// 行追加・削除のボタン表示を制御する
-        /// </summary>
-        private void DispControlLineButton()
-        {
-            bool DispFlg = false;
-            try
-            {
-                // グリッド書込み禁止時は処理しない
-                if (dgvAllDisplay.ReadOnly) return;
-
-                DataGridView dgv = dgvAllDisplay;
-                DataGridViewRow CurRow = dgv.CurrentRow;
-                int GroupCount = 0;
-
-                // 空白行は処理しない
-                if (CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1)
-                {
-                    // 1行前が施工行か判定する
-                    int ProvRowCount = CurRow.Index - 1;
-                    if (ProvRowCount < 0) return;
-                    DataGridViewRow ProvRow = dgv.Rows[ProvRowCount];
-                    GroupCount = CommonMotions.cnvInt(ProvRow.Cells[(int)DispGridColumn.GroupCount].Value);
-                    if (GroupCount != (int)FrmConstructionLedger.DataGroup.ConstructionCosts) return;
-                }
-
-                // 該当行のグループ番号取得
-                if (GroupCount == 0)
-                    GroupCount = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                // 施工費以外は処理しない
-                if (GroupCount != (int)FrmConstructionLedger.DataGroup.ConstructionCosts) return;
-
-                // 工事詳細台帳で作成された行だけを対象にする
-                string strFix = CommonMotions.cnvString(CurRow.Cells[(int)DispGridColumn.FixFlg].Value);
-                DispFlg = true;
-             
-                btnLineAdd.Visible = DispFlg;
-                // 固定行は削除できない
-                if (strFix.Equals("*"))
-                    btnLineDel.Visible = false;
-                else
-                    btnLineDel.Visible = DispFlg;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 施工費行を追加
-        /// <summary>
-        /// 施工費行を追加する
-        /// </summary>
-        private void AddLineData()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                DataGridViewRow CurRow = dgv.CurrentRow;
-
-                int InsertCnt = 0;
-                // グループカウントを取得する
-                int GroupCount = 0;
-                GroupCount = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                // 施工グループの場合は上に追加
-                if (GroupCount == (int)FrmConstructionLedger.DataGroup.ConstructionCosts)
-                {
-                    // 施工費グループの場合は下に追加
-                    InsertCnt = CurRow.Index + 1;
-                }
-                else if (GroupCount == 0)
-                {   // 空白行で施工費のすぐ後は対象とする
-                    DataGridViewRow wrkRow = dgv.Rows[dgv.CurrentRow.Index - 1];
-                    GroupCount = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value);
-                    if (GroupCount == (int)FrmConstructionLedger.DataGroup.ConstructionCosts)
-                    {
-                        // 空白行は上に追加
-                        InsertCnt = CurRow.Index;
-                    }
-                }
-
-                // 選択行が不正ならば処理しない
-                if (InsertCnt == 0) return;
-
-                // 行作成
-                DataGridViewAction.CreateNewLine(dgv, ref InsertCnt);
-
-                // 設定データセット
-                DataGridViewRow SetData = dgv.Rows[InsertCnt];
-                SetData.Cells[(int)DispGridColumn.GroupCount].Value = GroupCount;
-                SetData.Cells[(int)DispGridColumn.EstimatePrice].Value = "";
-                SetData.Cells[(int)DispGridColumn.ExecPrice].Value = "0";
-                SetData.Cells[(int)DispGridColumn.Percent].Value = "0.00";
-                // フラグセット
-                SetData.Cells[(int)DispGridColumn.TitleFlg].Value = "0";
-                SetData.Cells[(int)DispGridColumn.TotalFlg].Value = "0";
-                SetData.Cells[(int)DispGridColumn.BlankFlg].Value = "0";
-
-                // ----- 独立データの場合
-                SetData.Cells[(int)DispGridColumn.IndependentFlg].Value = "1";
-
-                // フィールドロック制御
-                SetData.Cells[(int)DispGridColumn.ItemName].ReadOnly = false;
-                SetData.Cells[(int)DispGridColumn.TextName].ReadOnly = false;
-                SetData.Cells[(int)DispGridColumn.SubContractorName].ReadOnly = false;
-                SetData.Cells[(int)DispGridColumn.ExecPrice].ReadOnly = false;
-
-                // 行番号を振りなおす
-                int StLineCnt = 0;
-                if (GroupCount == (int)FrmConstructionLedger.DataGroup.ConstructionCosts)
-                    StLineCnt = m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine] + 1;
-
-                // 採番処理
-                int iCnt = 1;
-                string strParentNo = string.Empty;
-                for (int i = StLineCnt; i < dgv.RowCount; i++)
-                {
-                    if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)DispGridColumn.BlankFlg].Value) == 1) break;
-
-                    dgv.Rows[i].Cells[(int)DispGridColumn.No].Value = string.Format("{0}-{1}", GroupCount, iCnt);
-                    strParentNo = CommonMotions.cnvString(dgv.Rows[i].Cells[(int)DispGridColumn.No].Value);
-                    iCnt++;
-                }
-
-                // 自分より下の集計行を加算する
-                int GroupLineNo = 0;
-                if (GroupCount == (int)FrmConstructionLedger.DataGroup.ConstructionCosts)
-                    GroupLineNo = (int)CostsRowLine.ConstructionCostLine;
-                else if (GroupCount == (int)FrmConstructionLedger.DataGroup.PurchaseCosts)
-                    GroupLineNo = (int)CostsRowLine.PurchaseCostsRowLine;
-                // 行加算処理
-                for (int i = GroupLineNo + 1; i < m_CostsRowCount.Length; i++)
-                {
-                    m_CostsRowCount[i]++;
-                }
-
-                // 行選択色を変更する
-                DefaultALLRowChangeColor();
-
-                // 変更フラグON
-                m_bChengeAns = true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-
-        }
-        #endregion
-
-        #region 施工費行を削除
-        /// <summary>
-        /// 施工費行を削除する
-        /// </summary>
-        private void DelLineData()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                DataGridViewRow CurRow = dgv.CurrentRow;
-
-                int RemoveCnt = 0;
-                // グループカウントを取得する
-                int GroupCount = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                // 施工費グループの以外は処理しない
-                if (GroupCount != (int)FrmConstructionLedger.DataGroup.ConstructionCosts) return;
-
-                // 削除行取得
-                RemoveCnt = CurRow.Index;
-
-                // タイトルの場合は削除無
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1) RemoveCnt = 0;
-                // 空白行の場合は削除無
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1) RemoveCnt = 0;
-                // 固定行の場合は削除無
-                if (CommonMotions.cnvString(CurRow.Cells[(int)DispGridColumn.FixFlg].Value).Equals("*")) RemoveCnt = 0;
-
-                // 選択行が不正ならば処理しない
-                if (RemoveCnt == 0) return;
-
-                // 行削除
-                dgv.Rows.RemoveAt(RemoveCnt);
-
-                // 施工費・購入品グループ行番号を振りなおす
-                // 行番号を振りなおす
-                int StLineCnt = 0;
-                if (GroupCount == (int)FrmConstructionLedger.DataGroup.ConstructionCosts)
-                    StLineCnt = m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine] + 1;
-
-                // 採番処理
-                int iCnt = 1;
-                string strParentNo = string.Empty;
-                for (int i = StLineCnt; i < dgv.RowCount; i++)
-                {
-                    if (CommonMotions.cnvInt(dgv.Rows[i].Cells[(int)DispGridColumn.BlankFlg].Value) == 1) break;
-
-                    dgv.Rows[i].Cells[(int)DispGridColumn.No].Value = string.Format("{0}-{1}", GroupCount, iCnt);
-                    strParentNo = CommonMotions.cnvString(dgv.Rows[i].Cells[(int)DispGridColumn.No].Value);
-                    iCnt++;
-                }
-
-                // 自分より下の集計行を減算する
-                int GroupLineNo = 0;
-                if (GroupCount == (int)FrmConstructionLedger.DataGroup.ConstructionCosts)
-                    GroupLineNo = (int)CostsRowLine.ConstructionCostLine;
-
-                for (int i = GroupLineNo + 1; i < m_CostsRowCount.Length; i++)
-                {
-                    m_CostsRowCount[i]--;
-                }
-
-                // 行選択色を変更する
-                DefaultALLRowChangeColor();
-
-                // 変更フラグON
-                m_bChengeAns = true;
-
-                // カレント行が削除不可の場合はボタンを消す
-                btnLineDel.Visible = false;
-                if (CommonMotions.cnvString(dgv.CurrentRow.Cells[(int)DispGridColumn.FixFlg].Value).Equals("*")) return;    // 固定行は処理しない
-                if (CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1) return;            // 空白行は処理しない
-                btnLineDel.Visible = true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-
-        }
-        #endregion
-
-        #region 施工費・購入品行を１行上にあげる
-        /// <summary>
-        /// 施工費・購入品行をＵＰする
-        /// </summary>
-        private void UpLineData()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                DataGridViewRow CurRow = dgv.CurrentRow;
-
-                int UpCnt = 0;
-                // グループカウントを取得する
-                int GroupCount = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                // 施工費・購入品グループの以外は処理しない
-                if (GroupCount != (int)FrmConstructionLedger.DataGroup.ConstructionCosts && GroupCount != (int)FrmConstructionLedger.DataGroup.PurchaseCosts) return;
-
-                // 従属フラグを取得する
-                int ChildFlg = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.ChildFlg].Value);
-
-                // 施工費・購入品グループの場合は上に追加
-                UpCnt = CurRow.Index;
-
-                // １行上を取得する
-                DataGridViewRow wrkRow = dgv.Rows[dgv.CurrentRow.Index - 1];
-
-                // 従属項目が対象の場合は1行が上が親項目かどうかを確認してそこより上には上がらない
-                if (ChildFlg != 0)
-                {
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.IndependentFlg].Value) != 0) return;
-                }
-
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1)
-                {   // タイトルの場合は処理しない
-                    UpCnt = 0;
-                }
-                else if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1)
-                {   // １行上がタイトルの場合は処理しない
-                    UpCnt = 0;
-                }
-
-                // 選択行が不正ならば処理しない
-                if (UpCnt == 0) return;
-
-                // グリッドアップキー処理
-                DataGridViewAction.GridRowUpAction(dgv, (int)DispGridColumn.FixFlg, (dgv.ColumnCount - 1));
-
-                // 行選択色を変更する
-                DefaultALLRowChangeColor();
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-
-        }
-        #endregion
-
-        #region 施工費・購入品行を１行下に下げる
-        /// <summary>
-        /// 施工費・購入品行をＤＯＷＮする
-        /// </summary>
-        private void DownLineData()
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                DataGridViewRow CurRow = dgv.CurrentRow;
-
-                int DownCnt = 0;
-                // グループカウントを取得する
-                int GroupCount = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                // 施工費・購入品グループの以外は処理しない
-                if (GroupCount != (int)FrmConstructionLedger.DataGroup.ConstructionCosts && GroupCount != (int)FrmConstructionLedger.DataGroup.PurchaseCosts) return;
-
-                // 従属フラグを取得する
-                int ChildFlg = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.ChildFlg].Value);
-
-                // 施工費・購入品グループの場合は上に追加
-                DownCnt = CurRow.Index;
-                // １行下を取得する
-                DataGridViewRow wrkRow = dgv.Rows[dgv.CurrentRow.Index + 1];
-
-                // 従属項目が対象の場合は1行が下が独立項目かどうかを確認してそこより下には下がらない
-                if (ChildFlg != 0)
-                {
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.IndependentFlg].Value) != 0) return;
-                }
-                
-                if (CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1)
-                {   // タイトルの場合は処理しない
-                    DownCnt = 0;
-                }
-                else if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == 0)
-                {   // １行上が空白の場合は処理しない
-                    DownCnt = 0;
-                }
-
-                // 選択行が不正ならば処理しない
-                if (DownCnt == 0) return;
-
-                // グリッドダウンキー処理
-                DataGridViewAction.GridRowDownAction(dgv, (int)DispGridColumn.FixFlg, (dgv.ColumnCount - 1));
-
-                // 行選択色を変更する
-                DefaultALLRowChangeColor();
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-
-        }
-        #endregion
-
         #region 登録ボタン押下後の登録処理
         /// <summary>
         /// 登録ボタン押下後の登録処理
         /// </summary>
         /// <returns></returns>
-        private bool DataEntryProcess(bool Display = true)
+        private bool DataEntryProcess()
         {
-            IOConstructionLedger LedgerDB = new IOConstructionLedger();
-            IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
-            IOConstructionLedgerExcute ExcuteDB = new IOConstructionLedgerExcute();
             try
             {
                 //データチェック
                 if (!DispFeildCheck()) return false;
-                
-                if (Display)
-                {
-                    if (MessageBox.Show("工事予算書データを更新します、よろしいですか？", "登録確認"
-                                        , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return false;
-                }
 
-                // データ接続
-                LedgerDB.connect(); LedgerDB.beginTran();
-                DetailDB.connect(); DetailDB.beginTran();
-                ExcuteDB.connect(); ExcuteDB.beginTran();
+                if (MessageBox.Show("議事録データを更新します、よろしいですか？", "登録確認"
+                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return false;
 
-                // 詳細台帳データ
-                if (!ConstructionLedgerDataEntry(LedgerDB))
-                {
-                    LedgerDB.rollback();
-                    return false;
-                }
 
-                // 詳細台帳明細データ
-                if (!ConstructionLedgerDetailEntry(DetailDB))
-                {
-                    LedgerDB.rollback();
-                    DetailDB.rollback();
-                    return false;
-                }
-
-                // 詳細台帳明細データ
-                if (!ConstructionLedgerExcuteEntry(ExcuteDB))
-                {
-                    LedgerDB.rollback();
-                    DetailDB.rollback();
-                    ExcuteDB.rollback();
-                    return false;
-                }
-
-                // データ接続
-                LedgerDB.commit();
-                DetailDB.commit();
-                ExcuteDB.commit();
-
                 // データ変更フラグOff
                 m_bChengeAns = false;
 
@@ -2386,360 +246,10 @@
             }
             finally
             {
-                LedgerDB.close(); LedgerDB = null;
-                DetailDB.close(); DetailDB = null;
-                ExcuteDB.close(); ExcuteDB = null;
             }
         }
         #endregion
 
-        #region 経費を探す
-        /// <summary>
-        /// 経費を名称から探す
-        /// </summary>
-        /// <param name="Terget"></param>
-        /// <returns></returns>
-        private int GetExpenss(string Terget)
-        {
-            try
-            {
-                int LineRet = 0;
-
-                DataGridView dgv = dgvAllDisplay;
-                for (int i = 0; i < m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine]; i++)
-                {
-                    if (CommonMotions.cnvString(dgv.Rows[i].Cells[(int)DispGridColumn.ItemName].Value).IndexOf(Terget) >= 0)
-                    {
-                        LineRet = i;
-                        break;
-                    }
-                }
-                return LineRet;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return 0;
-            }
-        }
-        #endregion
-
-        #region 工事詳細台帳データ登録
-        /// <summary>
-        /// 工事詳細台帳データ登録
-        /// </summary>
-        private bool ConstructionLedgerDataEntry(IOConstructionLedger LedgerDB)
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                int EstimatePriceValue = 0;
-                int ExecPriceValue = 0;
-                double PercentValue = 0;
-                int TotalValue = 0;
-                int ResultPriceValue = 0;
-
-                int Colcnt = dgv.ColumnCount - (int)DispGridColumn.payment;
-                int[] MTotal = new int[Colcnt];
-                int TotalPoint = dgv.ColumnCount + (int)ColPayTotal.Totals;
-
-                // 合計値取得
-                GetDetailTotal(ref EstimatePriceValue, ref ExecPriceValue, ref PercentValue, ref TotalValue, ref ResultPriceValue, ref MTotal);
-
-                ConstructionLedger work = new ConstructionLedger();
-                List<ConstructionLedger> workList = new List<ConstructionLedger>();
-
-                // 工事コード
-                work.ConstructionCode = m_ConstructionCode;
-                // 	事業期
-                work.ConstructionPeriod = m_ConstructionBaseInfo.ConstructionPeriod;
-                // 作成者コード
-                work.CreatorCode = m_ConstructionBaseInfo.ConstructionPersonCode;
-                // 作成者名
-                work.CreatorName = m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName].Text;
-                // 作成日
-                work.CreateDate = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CreateDate].Text);
-                // 工期（単位・月）
-                work.ConstructionTimes = CommonMotions.cnvDouble(m_DspLabelCtrl[(int)DspLblCtrlName.BetweenTimes].Text);
-                // 契約工期開始
-                work.ConstructionStart = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.StartingDate].Text);
-                // 契約工期完了
-                work.ConstructionEnd = CommonMotions.cnvDate(m_DspLabelCtrl[(int)DspLblCtrlName.CompleteDate].Text);
-                // 税抜受注決定金額
-                string strwork = CommonMotions.cnvString(m_DspLabelCtrl[(int)DspLblCtrlName.OrdersPrice].Text).Replace("-", "");
-                work.OrdersDecisionPrice = CommonMotions.cnvDouble(strwork);
-                // 会社経費合計
-                int Rowcnt = GetExpenss("会社");
-                work.CompanyExpenses = CommonMotions.cnvDouble(dgv.Rows[Rowcnt].Cells[(int)DispGridColumn.ExecPrice].Value);
-                // 部署経費合計
-                Rowcnt = GetExpenss("部署");
-                work.DepartmentExpenses = CommonMotions.cnvDouble(dgv.Rows[Rowcnt].Cells[(int)DispGridColumn.ExecPrice].Value);
-                // 営業経費合計
-                Rowcnt = GetExpenss("営業");
-                work.SalesExpenses = CommonMotions.cnvDouble(dgv.Rows[Rowcnt].Cells[(int)DispGridColumn.ExecPrice].Value);
-
-                // 純利益
-                int netRow = m_CostsRowCount[(int)CostsRowLine.NetIncomeRowLine];
-                double bworkNet = CommonMotions.cnvDouble(dgv.Rows[netRow].Cells[(int)DispGridColumn.ExecPrice].Value);
-                work.NetProfit = bworkNet;
-
-                // 経費を取得する
-                int endRow = m_CostsRowCount[(int)CostsRowLine.ConstructionCostLine];
-                double bworkExpenses = 0;
-                for (int i = 0; i < endRow; i++)
-                {
-                    // 集計する
-                    bworkExpenses += CommonMotions.cnvDouble(dgv.Rows[i].Cells[(int)DispGridColumn.ExecPrice].Value);
-                }
-
-                // 総支払額
-                // 支払額－経費
-                work.TotalPayment = TotalValue - bworkExpenses;
-
-                // 給与
-                int PayrollExpensesRow = m_CostsRowCount[(int)CostsRowLine.PayrollExpensesRowLine];
-                if (PayrollExpensesRow > 0)
-                {
-                    work.Allowance = CommonMotions.cnvDouble(dgv.Rows[PayrollExpensesRow].Cells[TotalPoint].Value);
-                }
-
-                // 指導員給与
-                int InstructorRow = m_CostsRowCount[(int)CostsRowLine.InstructorRowLine];
-                double bworkInstructor = 0;
-                if (InstructorRow > 0)
-                {
-                    bworkInstructor = CommonMotions.cnvDouble(dgv.Rows[InstructorRow].Cells[TotalPoint].Value);
-                }
-
-                // 粗利
-                //work.GrossProfit = ExecPriceValue - (ExecPriceValue - bworkExpenses - PayrollExpensesRow - bworkInstructor);
-                // 合計欄位置取得
-                int LineCnt = m_CostsRowCount[(int)CostsRowLine.CurrentProfitRowLine];
-                work.GrossProfit = CommonMotions.cnvDouble(dgv.Rows[LineCnt].Cells[TotalPoint].Value) - PayrollExpensesRow - bworkInstructor;
-                
-                // 検索文字列作成
-                string strWhere = LedgerDB.CreatePrimarykeyString(work.ConstructionCode);
-
-                if (!LedgerDB.SelectAction(strWhere, ref workList, false))
-                {
-                    MessageBox.Show("工事詳細台帳データ：登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                // 積算予算書データデータ登録
-                if (workList.Count == 0)
-                {
-                    // データがない場合
-                    // データ引込日
-                    work.CreateDate = DateTime.Now;
-
-                    // データ登録
-                    if (!LedgerDB.InsertAction(work, false))
-                    {
-                        MessageBox.Show("工事詳細台帳データ：追加登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
-                }
-                else
-                {
-                    // データがある場合
-                    // データ更新
-                    if (!LedgerDB.UpdateAction(strWhere, work, false))
-                    {
-                        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 ConstructionLedgerDetailEntry(IOConstructionLedgerDetail DetailDB)
-        {
-            try
-            {
-                // まず削除する
-                string DelSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                DetailDB.DeleteAction(DelSQL, false);
-
-                DataGridView dgv = dgvAllDisplay;
-                int PaymentBurdenCol = dgv.ColumnCount + (int)ColPayTotal.PaymentBurdens;
-                foreach (DataGridViewRow wrkRow in dgv.Rows)
-                {
-                    // 純利益は書き込まない
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)FrmConstructionLedger.DataGroup.NetIncome) continue;
-                    // 合計金額は書き込まない
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)FrmConstructionLedger.DataGroup.AllTotal) continue;
-                    // 現在利益金額は書き込まない
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)FrmConstructionLedger.DataGroup.CurrentProfit) continue;
-                    
-                    // データ定義
-                    ConstructionLedgerDetail work = new ConstructionLedgerDetail();
-
-                    // データセット
-                    // 明細チェック
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value) != 0) continue;
-
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1) continue;
-
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1) continue;
-
-                    // 空白行は処理しない
-                    if (BlankLine(wrkRow.Index)) continue;
-
-                    // 工事コード
-                    work.ConstructionCode = m_ConstructionCode;
-
-                    // グループ番号
-                    work.GroupCount = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                    // 行番号
-                    work.LineCount = wrkRow.Index + 1;
-
-                    // 構成キー
-                    work.ComponentCode =CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.ComponentCode].Value);
-                    // 工種キー
-                    work.ItemCode = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.ItemCode].Value);
-                    // 項目名称
-                    work.FirstString = CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.ItemName].Value);
-                    // 工事内容
-                    work.SecondString = CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.TextName].Value);
-                    // 協力会社コード
-                    work.CompanyCode = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.SubContractorCode].Value);
-                    // 協力会社名称
-                    work.CompanyName = CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.SubContractorName].Value);
-                    // 積算時見積金額
-                    work.EstimatePrice = CommonMotions.cnvDouble(wrkRow.Cells[(int)DispGridColumn.EstimatePrice].Value);
-                    // 実行金額
-                    work.ExecutionAmount = CommonMotions.cnvDouble(wrkRow.Cells[(int)DispGridColumn.ExecPrice].Value);
-                    // 金額構成率
-                    work.AmountConfigRate = CommonMotions.cnvDouble(wrkRow.Cells[(int)DispGridColumn.Percent].Value);
-                    // 支払補填額
-                    work.PaymentBurden = CommonMotions.cnvDouble(wrkRow.Cells[PaymentBurdenCol].Value);
-                    // 固定フラグ
-                    if (CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.FixFlg].Value).Equals("*")) work.FixDataFlg = 1;
-                    // 独立データフラグ
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.IndependentFlg].Value) == 1)
-                        work.IndependentFlg = 1;
-                    else
-                        work.IndependentFlg = 0;
-
-                    // データ登録
-                    if (!DetailDB.InsertAction(work, false))
-                    {
-                        MessageBox.Show("工事詳細台帳明細データ：追加登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
-                } // iRows
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region 工事予算書支払データ登録
-        /// <summary>
-        /// 工事予算書支払データ登録
-        /// </summary>
-        private bool ConstructionLedgerExcuteEntry(IOConstructionLedgerExcute ExcuteDB)
-        {
-            try
-            {
-                // まず削除する
-                string DelSQL = ExcuteDB.CreatePrimarykeyString(m_ConstructionCode);
-                ExcuteDB.DeleteAction(DelSQL, false);
-                DataGridView dgv = dgvAllDisplay;
-                int PayEnd = dgv.ColumnCount + (int)ColPayTotal.Totals;
-
-                foreach (DataGridViewRow wrkRow in dgv.Rows)
-                {
-                    // 純利益は書き込まない
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)FrmConstructionLedger.DataGroup.NetIncome) continue;
-                    // 合計金額は書き込まない
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)FrmConstructionLedger.DataGroup.AllTotal) continue;
-                    // 現在利益金額は書き込まない
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value) == (int)FrmConstructionLedger.DataGroup.CurrentProfit) continue;
-
-                    // データセット
-                    // 明細チェック
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value) != 0) continue;
-
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value) == 1) continue;
-
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1) continue;
-
-                    // 空白行は処理しない
-                    if (BlankLine(wrkRow.Index)) continue;
-
-                    for (int i = (int)DispGridColumn.payment; i < PayEnd; i++)
-                    {
-                        // 支払金額が無い場合は処理しない
-                        if (CommonMotions.cnvDouble(wrkRow.Cells[i].Value) < 1) continue;
-
-                        // データ定義
-                        ConstructionLedgerExcute work = new ConstructionLedgerExcute();
-
-                        // 工事コード
-                        work.ConstructionCode = m_ConstructionCode;
-
-                        // グループ番号
-                        work.GroupCount = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value);
-
-                        // 行番号
-                        work.LineCount = wrkRow.Index + 1;
-
-                        // 列番号
-                        work.ColumnCount = i;
-
-                        // 支払金額
-                        work.PaymentAmount = CommonMotions.cnvDouble(wrkRow.Cells[i].Value);
-
-                        // 対象年月
-                        string strTarget = CommonMotions.cnvString(dgv.Columns[i].HeaderCell.Value).Replace("年", "/").Replace("月", "/") + "01";
-                        work.TargetMonth = CommonMotions.cnvDate(strTarget);
-
-                        // データ登録
-                        if (!ExcuteDB.InsertAction(work, false))
-                        {
-                            MessageBox.Show("工事詳細台帳実行データ：追加登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return false;
-                        }
-                    }
-                } // iRows
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
         #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
@@ -2747,118 +257,11 @@
         /// <returns></returns>
         private bool DispFeildCheck()
         {
-            bool bRet = true;
-            bool bAns = true;
-            int ErrorRowl = 0;
             try
             {
-                DataGridView dgv = dgvAllDisplay;
-                // 明細チェック
-                foreach (DataGridViewRow wrkRow in dgvAllDisplay.Rows)
-                {
-                    // 明細チェック
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TotalFlg].Value) != 0) continue;
+                // 終了時はチェックしない
+                if (ActiveControl.Name.Equals(btnEnd.Name)) return true;
 
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.TitleFlg].Value) != 0) continue;
-
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value)) continue;
-                    if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value) != 0) continue;
-
-                    // 空白行は処理しない
-                    if (BlankLine(wrkRow.Index)) continue;
-                    if (wrkRow.Index == 40)
-                    {
-                        Console.WriteLine("Debug");
-                    }
-                    DataGridViewTextBoxCell workCell = null;
-                    // 項目名称レングスチェック
-                    workCell = (DataGridViewTextBoxCell)wrkRow.Cells[(int)DispGridColumn.ItemName];
-                    bAns = CommonMotions.chkStringLength(CommonMotions.cnvString(workCell.Value), s_InputStringMax1); // レングスチェック
-                    CommonMotions.chgBackColor(workCell, bAns);                                         // 背景色変更
-                    if (bAns) DefaultRowChangeColor(workCell.RowIndex);
-                    if (!bAns) ErrorRowl = wrkRow.Index;
-                    bRet &= bAns;
-
-                    // 工事内容レングスチェック
-                    workCell = (DataGridViewTextBoxCell)wrkRow.Cells[(int)DispGridColumn.TextName];
-                    bAns = CommonMotions.chkStringLength(CommonMotions.cnvString(workCell.Value), s_InputStringMax1); // レングスチェック
-                    CommonMotions.chgBackColor(workCell, bAns);                                         // 背景色変更
-                    if (bAns) DefaultRowChangeColor(workCell.RowIndex);
-                    if (!bAns) ErrorRowl = wrkRow.Index;
-                    bRet &= bAns;
-
-                    // 協力会社名称レングスチェック
-                    workCell = (DataGridViewTextBoxCell)wrkRow.Cells[(int)DispGridColumn.SubContractorName];
-                    bAns = CommonMotions.chkStringLength(CommonMotions.cnvString(workCell.Value), s_InputStringMax1); // レングスチェック
-                    CommonMotions.chgBackColor(workCell, bAns);                                         // 背景色変更
-                    if (bAns) DefaultRowChangeColor(workCell.RowIndex);
-                    if (!bAns) ErrorRowl = wrkRow.Index;
-                    bRet &= bAns;
-
-                    double doubleRet = 0;
-                    // 予算金額行・実行金額行毎のチェック
-                    for (int ix = (int)DispGridColumn.EstimatePrice; ix <= (int)DispGridColumn.ExecPrice; ix++)
-                    {
-                        bAns = true;
-                        if (CommonMotions.chkObjectIsNull(wrkRow.Cells[ix].Value)) continue;
-                        if (wrkRow.Cells[ix].Value.ToString().Length == 0) continue;
-
-                        workCell = (DataGridViewTextBoxCell)wrkRow.Cells[ix];
-                        bAns = CommonMotions.chkNumeric(workCell.Value, ref doubleRet);                             // タイプチェック
-                        if (doubleRet < (s_InputDoubleMax1 * -1) || s_InputDoubleMax1 < doubleRet) bAns = false;    // 桁数チェック
-
-                        // 背景色変更
-                        if (bAns)
-                        {
-                            DefaultRowChangeColor(workCell.RowIndex);
-                        }
-                        else
-                        {
-                            CommonMotions.chgBackColor(workCell, bAns);
-                            ErrorRowl = wrkRow.Index;
-                        }
-                        
-                        bRet &= bAns;
-                    }
-
-                    // 支払金額のチェック
-                    int PayEnd = dgv.ColumnCount + (int)ColPayTotal.Totals;
-                    for (int i = (int)DispGridColumn.payment; i < PayEnd; i++)
-                    {
-                        bAns = true;
-                        if (CommonMotions.chkObjectIsNull(wrkRow.Cells[i].Value)) continue;
-                        if (wrkRow.Cells[i].Value.ToString().Length == 0) continue;
-
-                        workCell = (DataGridViewTextBoxCell)wrkRow.Cells[i];
-                        bAns = CommonMotions.chkNumeric(workCell.Value, ref doubleRet);                             // タイプチェック
-                        if (doubleRet < (s_InputDoubleMax1 * -1) || s_InputDoubleMax1 < doubleRet) bAns = false;    // 桁数チェック
-
-                        // 背景色変更
-                        if (bAns)
-                        {
-                            DefaultRowChangeColor(workCell.RowIndex);
-                        }
-                        else
-                        {
-                            CommonMotions.chgBackColor(workCell, bAns);
-                            ErrorRowl = wrkRow.Index;
-                        }
-
-                        bRet &= bAns;
-                    }
-                }
-
-                if (!bRet)
-                {
-                    MessageBox.Show("入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
-                    return false;
-                }
-
-                // 最後のエラー行へ移動する
-                dgvAllDisplay.FirstDisplayedScrollingRowIndex = ErrorRowl;
-
                 return true;
             }
             catch (System.Exception ex)
@@ -2869,56 +272,24 @@
         }
         #endregion
 
-        #region 工事詳細台帳データ削除
+        #region 日報データ削除ボタン押下後処理
         /// <summary>
-        /// 削除ボタン押下
+        /// 日報データ削除ボタン押下後処理
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
         private bool DataRemoveProcess()
         {
-            IOConstructionLedger LedgerDB = new IOConstructionLedger();
-            IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
-            IOConstructionLedgerExcute ExcuteDB = new IOConstructionLedgerExcute();
             try
             {
                 if (MessageBox.Show("表示中のデータを削除します。", "削除確認"
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return false;
 
-                if (MessageBox.Show("「はい(Y)」を選択すると表示中の予算データは削除されます！！\n本当によろしいですか？", "削除確認"
+                if (MessageBox.Show("「はい(Y)」を選択すると表示中の議事録データは削除されます！！\n本当によろしいですか？", "削除確認"
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return false;
 
-                // 予算書データ接続
-                LedgerDB.connect(); LedgerDB.beginTran();
-                DetailDB.connect(); DetailDB.beginTran();
-                ExcuteDB.connect(); ExcuteDB.beginTran();
 
-                if (!ConstructionLedgerDelete(LedgerDB))
-                {
-                    LedgerDB.rollback();
-                    return false;
-                }
-
-                if (!ConstructionLedgerDetailDelete(DetailDB))
-                {
-                    LedgerDB.rollback();
-                    DetailDB.rollback();
-                    return false;
-                }
-
-                if (!ConstructionLedgerExcutelDelete(ExcuteDB))
-                {
-                    LedgerDB.rollback();
-                    DetailDB.rollback();
-                    ExcuteDB.rollback();
-                    return false;
-                }
-
-                // 成功時Commit
-                LedgerDB.commit();
-                DetailDB.commit();
-                ExcuteDB.commit();
-
+                // データ変更フラグOff
                 m_bChengeAns = false;
 
                 return true;
@@ -2926,347 +297,13 @@
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return true;
-            }
-            finally
-            {
-                LedgerDB.close(); LedgerDB = null;
-                DetailDB.close(); DetailDB = null;
-                ExcuteDB.close(); ExcuteDB = null;
-            }
-        }
-        #endregion
-
-        #region 工事詳細台帳データ削除
-        /// <summary>
-        /// 工事詳細台帳データ削除
-        /// </summary>
-        /// <param name="LedgerDB"></param>
-        /// <returns></returns>
-        private bool ConstructionLedgerDelete(IOConstructionLedger LedgerDB)
-        {
-            try
-            {
-                List<ConstructionLedger> workList = new List<ConstructionLedger>();
-                string strWhere = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
-                if (!LedgerDB.SelectAction(strWhere, ref workList, false))
-                {
-                    MessageBox.Show("工事詳細台帳データ：削除確認に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                if (workList.Count == 0)
-                {
-                    return true;
-                }
-                else
-                {
-                    // データがある場合
-                    if (!LedgerDB.DeleteAction(strWhere, false))
-                    {
-                        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>
-        /// <param name="mainDB"></param>
-        /// <returns></returns>
-        private bool ConstructionLedgerDetailDelete(IOConstructionLedgerDetail detialDB)
-        {
-            try
-            {
-                List<ConstructionLedgerDetail> workList = new List<ConstructionLedgerDetail>();
-                string strWhere = detialDB.CreatePrimarykeyString(m_ConstructionCode);
-                if (!detialDB.SelectAction(strWhere, ref workList, false))
-                {
-                    MessageBox.Show("工事詳細台帳明細データ：削除確認に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                if (workList.Count == 0)
-                {
-                    return true;
-                }
-                else
-                {
-                    // データがある場合
-                    // データ更新
-                    if (!detialDB.DeleteAction(strWhere, false))
-                    {
-                        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>
-        /// <param name="mainDB"></param>
-        /// <returns></returns>
-        private bool ConstructionLedgerExcutelDelete(IOConstructionLedgerExcute ExcuteDB)
-        {
-            try
-            {
-                List<ConstructionLedgerExcute> workList = new List<ConstructionLedgerExcute>();
-                string strWhere = ExcuteDB.CreatePrimarykeyString(m_ConstructionCode);
-                if (!ExcuteDB.SelectAction(strWhere, ref workList, false))
-                {
-                    MessageBox.Show("工事詳細台帳実行データ：削除確認に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                if (workList.Count == 0)
-                {
-                    return true;
-                }
-                else
-                {
-                    // データがある場合
-                    // データ更新
-                    if (!ExcuteDB.DeleteAction(strWhere, false))
-                    {
-                        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>
-        /// <param name="LineCnt"></param>
-        /// <returns></returns>
-        private bool BlankLine(int LineCnt)
-        {
-            DataGridViewRow wrkRow = dgvAllDisplay.Rows[LineCnt];
-
-            // 空判定
-            if (CommonMotions.chkCellBlank(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value)) return true;
-            if (CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.BlankFlg].Value) == 1) return true;
-
-            return false;
-        }
-        #endregion
-
-        #region 協力会社選択ダイアログ表示
-        /// <summary>
-        /// 協力会社選択ダイアログ表示
-        /// </summary>
-        private void ShowSubConstructorDiag()
-        {
-            FrmSubContractorDiag frm = new FrmSubContractorDiag();
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                frm.ConstructionCode = m_ConstructionCode;
-                frm.StartupSource = (int)ClsExcute.ProcessExecuteNo.Proceedings;
-                //frm.ShowInTaskbar = false;
-                frm.ShowDialog();
-                if (frm.EndButton == System.Windows.Forms.DialogResult.OK)
-                {
-                    SubContractorMaster selRec = frm.SelectData;
-                    dgv.CurrentRow.Cells[(int)DispGridColumn.SubContractorCode].Value = selRec.CompanyCode;
-                    dgv.CurrentRow.Cells[(int)DispGridColumn.SubContractorName].Value = selRec.CompanyName;
-                    m_bChengeAns = true;
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
             finally
             {
-                frm.Dispose();
-                frm = null;
             }
         }
         #endregion
 
-        #region 仕入先選択ダイアログ表示
-        /// <summary>
-        /// 仕入先選択ダイアログ表示
-        /// </summary>
-        private void ShowSuppliersDiag()
-        {
-            FrmSuppliersDiag frm = new FrmSuppliersDiag();
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-
-                frm.ConstructionCode = m_ConstructionCode;
-                //frm.ShowInTaskbar = false;
-                frm.ShowDialog();
-                if (frm.EndButton == System.Windows.Forms.DialogResult.OK)
-                {
-                    SuppliersMaster selRec = frm.SelectData;
-                    dgv.CurrentRow.Cells[(int)DispGridColumn.SubContractorCode].Value = selRec.SuppliersCode;
-                    dgv.CurrentRow.Cells[(int)DispGridColumn.SubContractorName].Value = selRec.SuppliersName1 + " " + selRec.SuppliersName2;
-                    m_bChengeAns = true;
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                frm.Dispose();
-                frm = null;
-            }
-        }
-        #endregion
-
-        #region 参照モード
-        /// <summary>
-        /// 参照モードにして各コントロールへロックをかける
-        /// </summary>
-        private void SeeModeLock()
-        {
-            try
-            {
-                dgvAllDisplay.ReadOnly = true;
-                
-                // 最後にボタンの処理を行う
-                btnDataEntry.Visible = false;
-                btnDataDelete.Visible = false;
-                btnLineAdd.Visible = false;
-                btnLineDel.Visible = false;
-
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 支払可能額・支払超過の編集
-        /// <summary>
-        /// 支払可能額・支払超過の編集
-        /// </summary>
-        /// <param name="RowCnt"></param>
-        private void SetOverPayment(int RowCnt)
-        {
-            try
-            {
-                DataGridView dgv = dgvAllDisplay;
-                int ResultCols = dgv.ColumnCount + (int)ColPayTotal.Results;
-                int OverpaymentCols = dgv.ColumnCount + (int)ColPayTotal.Overpayments;
-                
-                DataGridViewRow CurRow = dgv.Rows[RowCnt];
-
-                int ResultValue = CommonMotions.cnvInt(CurRow.Cells[ResultCols].Value);
-                // 支払可能額がマイナスになったら文字を赤にする
-                if (ResultValue < 0)
-                {
-                    CurRow.Cells[ResultCols].Style.ForeColor = Color.Red;
-                    CurRow.Cells[OverpaymentCols].Style.ForeColor = Color.Red;
-                    CurRow.Cells[OverpaymentCols].Value = CurRow.Cells[ResultCols].Value;
-                }
-                else
-                {
-                    CurRow.Cells[ResultCols].Style.ForeColor = Color.Black;
-                    CurRow.Cells[OverpaymentCols].Style.ForeColor = Color.Black;
-                    CurRow.Cells[OverpaymentCols].Value = "";
-                }
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 経費入力後の再表示
-        /// <summary>
-        /// 経費入力後の再表示
-        /// </summary>
-        private void ReLoadLedgerData(object sender, FormClosedEventArgs e)
-        {
-            try
-            {
-                int NowRowCnt = dgvAllDisplay.FirstDisplayedScrollingRowIndex;
-                // グリッドクリア
-                dgvAllDisplay.Rows.Clear();
-                // データ再読込
-                InitDispData();
-                dgvAllDisplay.FirstDisplayedScrollingRowIndex = NowRowCnt;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
-        #region 工事詳細台帳を再計算する
-        /// <summary>
-        /// 工事詳細台帳を再計算する
-        /// </summary>
-        /// <returns></returns>
-        private bool NonDspLedgerRecalculate()
-        {
-            try
-            {
-                // 表示クリア
-                ClearDisplay();
-
-                // ヘッダー表示
-                if (!DispHeader()) return false;
-
-                // グリッド行削除
-                dgvAllDisplay.Rows.Clear();
-
-                // データがある場合は表示を行う
-                if (!InitDispData()) return false;
-
-                // データ登録
-                if (!DataEntryProcess(false)) return false;
-                
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Proceedings/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmProceedings
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] ClsExcute.SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -91,13 +86,6 @@
                 {
                     // 自プロセスは処理しない
                     if (CurRec.Key == s_CurrentProcessNo) continue;
-
-                    // 総務部所属者はデータ参照出来る処理がある
-                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
-                    {
-                        if (!ClsSecurityPermission.PermitGeneralAffairsDevision(CurRec.Key)) continue;
-                    }
-
                     //イベントの登録
                     EventHandler handle = null;
                     switch (CurRec.Key)
@@ -121,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -209,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -242,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -286,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -303,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -319,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -330,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -347,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -363,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -374,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -391,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -407,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -418,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -435,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -451,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -462,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -479,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -495,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -506,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -523,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -538,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -549,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -566,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -582,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -593,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -610,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -626,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -659,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -703,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -719,7 +858,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -954,11 +1093,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1127,6 +1267,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/CreateNewTabPage.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/CreateNewTabPage.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/CreateNewTabPage.cs	(revision 51)
@@ -855,6 +855,20 @@
                 NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.PriceValue].SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
                 NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.PriceValue].Width = 150;
 
+                // 元工事番号
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.SourceCode].HeaderText = "元工事番号";
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.SourceCode].Name = string.Format("Group1TextBoxColumnSourceCode{0}", PageCount);
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.SourceCode].ReadOnly = true;
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.SourceCode].Visible = false;
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.SourceCode].Width = 5;
+
+                // 工事台帳行
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.LedgerLine].HeaderText = "工事台帳行";
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.LedgerLine].Name = string.Format("Group1TextBoxColumnLedgerLine{0}", PageCount);
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.LedgerLine].ReadOnly = true;
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.LedgerLine].Visible = false;
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.LedgerLine].Width = 5;
+
                 // DafaultCellStyle
                 NewPage.Group1CellDefaultStyle.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
                 NewPage.Group1CellDefaultStyle.BackColor = System.Drawing.SystemColors.Control;
@@ -884,7 +898,9 @@
                 NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.Quantity],
                 NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.UnitName],
                 NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.UnitPrice],
-                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.PriceValue]});
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.PriceValue],
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.SourceCode],
+                NewPage.Group1TextBoxColumn[(int)DispDetailGridColumn.LedgerLine]});
                 wrkGrid.Location = new System.Drawing.Point(8, 20);
                 wrkGrid.Name = string.Format("dgvAllDisplay{0}", PageCount);
                 wrkGrid.RowHeadersVisible = false;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.Designer.cs	(revision 51)
@@ -0,0 +1,560 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmOrderEntryList
+    {
+        /// <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.panel1 = new System.Windows.Forms.Panel();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.lblDispCnt01 = new System.Windows.Forms.Label();
+            this.lblLabel01 = new System.Windows.Forms.Label();
+            this.label17 = new System.Windows.Forms.Label();
+            this.label16 = new System.Windows.Forms.Label();
+            this.lblConstructionCodelabel = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.lblLabel03 = new System.Windows.Forms.Label();
+            this.lblLabel02 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.lblLabel04 = new System.Windows.Forms.Label();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.btnDataEntry = new System.Windows.Forms.Button();
+            this.btnTargetOut = new System.Windows.Forms.Button();
+            this.groupBox2 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
+            this.dgvAllDisplay = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column10 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.panel1.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label1
+            // 
+            this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
+            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(422, 10);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(500, 20);
+            this.label1.TabIndex = 7;
+            this.label1.Text = "注　文　書　作　成　一　覧";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // panel1
+            // 
+            this.panel1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
+            this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.panel1.Controls.Add(this.label7);
+            this.panel1.Controls.Add(this.label6);
+            this.panel1.Controls.Add(this.label4);
+            this.panel1.Controls.Add(this.lblDispCnt01);
+            this.panel1.Controls.Add(this.lblLabel01);
+            this.panel1.Controls.Add(this.label17);
+            this.panel1.Controls.Add(this.label16);
+            this.panel1.Controls.Add(this.lblConstructionCodelabel);
+            this.panel1.Controls.Add(this.label3);
+            this.panel1.Controls.Add(this.lblLabel03);
+            this.panel1.Controls.Add(this.lblLabel02);
+            this.panel1.Controls.Add(this.label5);
+            this.panel1.Controls.Add(this.lblLabel04);
+            this.panel1.Location = new System.Drawing.Point(7, 40);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(1330, 108);
+            this.panel1.TabIndex = 8;
+            // 
+            // label7
+            // 
+            this.label7.BackColor = System.Drawing.Color.SandyBrown;
+            this.label7.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label7.Location = new System.Drawing.Point(8, 71);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(120, 25);
+            this.label7.TabIndex = 55;
+            this.label7.Text = "受注金額";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label6
+            // 
+            this.label6.BackColor = System.Drawing.Color.White;
+            this.label6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label6.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.label6.ForeColor = System.Drawing.Color.Black;
+            this.label6.Location = new System.Drawing.Point(134, 71);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(170, 25);
+            this.label6.TabIndex = 56;
+            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.LightGreen;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Location = new System.Drawing.Point(1122, 5);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 54;
+            this.label4.Text = "注文書作成数";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDispCnt01
+            // 
+            this.lblDispCnt01.BackColor = System.Drawing.Color.White;
+            this.lblDispCnt01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDispCnt01.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.lblDispCnt01.ForeColor = System.Drawing.Color.Black;
+            this.lblDispCnt01.Location = new System.Drawing.Point(1242, 5);
+            this.lblDispCnt01.Name = "lblDispCnt01";
+            this.lblDispCnt01.Size = new System.Drawing.Size(80, 25);
+            this.lblDispCnt01.TabIndex = 53;
+            this.lblDispCnt01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblLabel01
+            // 
+            this.lblLabel01.BackColor = System.Drawing.Color.White;
+            this.lblLabel01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel01.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel01.Location = new System.Drawing.Point(134, 5);
+            this.lblLabel01.Name = "lblLabel01";
+            this.lblLabel01.Size = new System.Drawing.Size(115, 25);
+            this.lblLabel01.TabIndex = 52;
+            this.lblLabel01.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label17
+            // 
+            this.label17.BackColor = System.Drawing.Color.White;
+            this.label17.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label17.ForeColor = System.Drawing.Color.Black;
+            this.label17.Location = new System.Drawing.Point(448, 71);
+            this.label17.Name = "label17";
+            this.label17.Size = new System.Drawing.Size(350, 25);
+            this.label17.TabIndex = 47;
+            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label16
+            // 
+            this.label16.BackColor = System.Drawing.Color.SandyBrown;
+            this.label16.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label16.Location = new System.Drawing.Point(320, 71);
+            this.label16.Name = "label16";
+            this.label16.Size = new System.Drawing.Size(120, 25);
+            this.label16.TabIndex = 46;
+            this.label16.Text = "工事種別";
+            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblConstructionCodelabel
+            // 
+            this.lblConstructionCodelabel.BackColor = System.Drawing.Color.SandyBrown;
+            this.lblConstructionCodelabel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblConstructionCodelabel.ForeColor = System.Drawing.Color.White;
+            this.lblConstructionCodelabel.Location = new System.Drawing.Point(8, 5);
+            this.lblConstructionCodelabel.Name = "lblConstructionCodelabel";
+            this.lblConstructionCodelabel.Size = new System.Drawing.Size(120, 25);
+            this.lblConstructionCodelabel.TabIndex = 30;
+            this.lblConstructionCodelabel.Text = "工事名称";
+            this.lblConstructionCodelabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            this.label3.BackColor = System.Drawing.Color.SandyBrown;
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.Location = new System.Drawing.Point(8, 38);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(120, 25);
+            this.label3.TabIndex = 33;
+            this.label3.Text = "施工及び納入場所";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblLabel03
+            // 
+            this.lblLabel03.BackColor = System.Drawing.Color.White;
+            this.lblLabel03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel03.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel03.Location = new System.Drawing.Point(134, 38);
+            this.lblLabel03.Name = "lblLabel03";
+            this.lblLabel03.Size = new System.Drawing.Size(550, 25);
+            this.lblLabel03.TabIndex = 34;
+            this.lblLabel03.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblLabel02
+            // 
+            this.lblLabel02.BackColor = System.Drawing.Color.White;
+            this.lblLabel02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel02.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel02.Location = new System.Drawing.Point(255, 5);
+            this.lblLabel02.Name = "lblLabel02";
+            this.lblLabel02.Size = new System.Drawing.Size(816, 25);
+            this.lblLabel02.TabIndex = 32;
+            this.lblLabel02.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label5
+            // 
+            this.label5.BackColor = System.Drawing.Color.SandyBrown;
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.Location = new System.Drawing.Point(814, 71);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(120, 25);
+            this.label5.TabIndex = 35;
+            this.label5.Text = "工事担当者";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblLabel04
+            // 
+            this.lblLabel04.BackColor = System.Drawing.Color.White;
+            this.lblLabel04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblLabel04.ForeColor = System.Drawing.Color.Black;
+            this.lblLabel04.Location = new System.Drawing.Point(942, 71);
+            this.lblLabel04.Name = "lblLabel04";
+            this.lblLabel04.Size = new System.Drawing.Size(190, 25);
+            this.lblLabel04.TabIndex = 36;
+            this.lblLabel04.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.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(1217, 656);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 53;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // 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(1089, 656);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataEntry.TabIndex = 96;
+            this.btnDataEntry.Text = "実　行";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // btnTargetOut
+            // 
+            this.btnTargetOut.BackColor = System.Drawing.Color.LightYellow;
+            this.btnTargetOut.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnTargetOut.ForeColor = System.Drawing.Color.Black;
+            this.btnTargetOut.Location = new System.Drawing.Point(874, 656);
+            this.btnTargetOut.Name = "btnTargetOut";
+            this.btnTargetOut.Size = new System.Drawing.Size(120, 30);
+            this.btnTargetOut.TabIndex = 96;
+            this.btnTargetOut.Text = "作成対象外セット";
+            this.btnTargetOut.UseVisualStyleBackColor = false;
+            this.btnTargetOut.Click += new System.EventHandler(this.btnTargetOut_Click);
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox2.BorderColor = System.Drawing.Color.Black;
+            this.groupBox2.Controls.Add(this.dgvAllDisplay);
+            this.groupBox2.Location = new System.Drawing.Point(7, 154);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(1330, 490);
+            this.groupBox2.TabIndex = 0;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = "発　注　先　一　覧";
+            // 
+            // dgvAllDisplay
+            // 
+            this.dgvAllDisplay.AllowUserToAddRows = false;
+            this.dgvAllDisplay.AllowUserToDeleteRows = false;
+            this.dgvAllDisplay.AllowUserToResizeColumns = false;
+            this.dgvAllDisplay.AllowUserToResizeRows = false;
+            this.dgvAllDisplay.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvAllDisplay.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.dgvAllDisplay.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvAllDisplay.ColumnHeadersHeight = 24;
+            this.dgvAllDisplay.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvAllDisplay.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn1,
+            this.dataGridViewTextBoxColumn3,
+            this.Column3,
+            this.Column6,
+            this.Column9,
+            this.Column1,
+            this.Column5,
+            this.Column10,
+            this.Column2,
+            this.Column7,
+            this.Column8,
+            this.Column4,
+            this.Column11,
+            this.Column12});
+            this.dgvAllDisplay.Location = new System.Drawing.Point(10, 22);
+            this.dgvAllDisplay.Name = "dgvAllDisplay";
+            this.dgvAllDisplay.RowHeadersVisible = false;
+            this.dgvAllDisplay.RowHeadersWidth = 20;
+            this.dgvAllDisplay.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvAllDisplay.RowTemplate.Height = 24;
+            this.dgvAllDisplay.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
+            this.dgvAllDisplay.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvAllDisplay.Size = new System.Drawing.Size(1310, 458);
+            this.dgvAllDisplay.TabIndex = 2;
+            this.dgvAllDisplay.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvAllDisplay_CellClick);
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "№";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn1.Width = 40;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            this.dataGridViewTextBoxColumn3.Frozen = true;
+            this.dataGridViewTextBoxColumn3.HeaderText = "注文書枝番";
+            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
+            this.dataGridViewTextBoxColumn3.ReadOnly = true;
+            this.dataGridViewTextBoxColumn3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn3.Visible = false;
+            this.dataGridViewTextBoxColumn3.Width = 5;
+            // 
+            // 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.Width = 350;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle3;
+            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 = 350;
+            // 
+            // Column9
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column9.Frozen = true;
+            this.Column9.HeaderText = "申請回";
+            this.Column9.Name = "Column9";
+            this.Column9.ReadOnly = true;
+            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle5;
+            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 = 150;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle6;
+            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 = 150;
+            // 
+            // Column10
+            // 
+            this.Column10.Frozen = true;
+            this.Column10.HeaderText = "作成対象外";
+            this.Column10.Name = "Column10";
+            this.Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            // 
+            // Column2
+            // 
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "選択";
+            this.Column2.Name = "Column2";
+            this.Column2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column2.Width = 50;
+            // 
+            // Column7
+            // 
+            this.Column7.Frozen = true;
+            this.Column7.HeaderText = "元工事番号";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column7.Visible = false;
+            // 
+            // Column8
+            // 
+            this.Column8.Frozen = true;
+            this.Column8.HeaderText = "発注業者番号";
+            this.Column8.Name = "Column8";
+            this.Column8.ReadOnly = true;
+            this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column8.Visible = false;
+            // 
+            // Column4
+            // 
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "申請受付番号";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Visible = false;
+            this.Column4.Width = 5;
+            // 
+            // Column11
+            // 
+            this.Column11.HeaderText = "行番号";
+            this.Column11.Name = "Column11";
+            this.Column11.ReadOnly = true;
+            this.Column11.Visible = false;
+            // 
+            // Column12
+            // 
+            this.Column12.HeaderText = "注文書枝番";
+            this.Column12.Name = "Column12";
+            this.Column12.ReadOnly = true;
+            this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column12.Visible = false;
+            this.Column12.Width = 5;
+            // 
+            // FrmOrderEntryList
+            // 
+            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(1344, 692);
+            this.Controls.Add(this.btnTargetOut);
+            this.Controls.Add(this.btnDataEntry);
+            this.Controls.Add(this.groupBox2);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.panel1);
+            this.Controls.Add(this.label1);
+            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 = "FrmOrderEntryList";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.PurchaseOrderPrint_FormClosing);
+            this.Load += new System.EventHandler(this.PurchaseOrderPrint_Load);
+            this.panel1.ResumeLayout(false);
+            this.groupBox2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Label label17;
+        private System.Windows.Forms.Label label16;
+        private System.Windows.Forms.Label lblConstructionCodelabel;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label lblLabel03;
+        private System.Windows.Forms.Label lblLabel02;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label lblLabel04;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label lblLabel01;
+        //private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.Button btnDataEntry;
+        private CustomControls.GroupBoxEx groupBox2;
+        private CustomControls.DataGridViewEX dgvAllDisplay;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label lblDispCnt01;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Button btnTargetOut;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn Column10;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.cs	(revision 51)
@@ -0,0 +1,385 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+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.Master;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.CustomControls;
+
+//*---------------------------- 発注書作成一覧画面 ----------------------------*
+//  2017/02/02  Ver1.0.0.0      Create Source           
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmOrderEntryList : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        #region 発注明細グリッド定義
+        /// <summary>
+        /// 発注明細グリッド定義
+        /// </summary>
+        private enum GridColumn
+        {
+            /// <summary>
+            /// 番号
+            /// </summary>
+            No = 0,
+            /// <summary>
+            /// 注文書枝番
+            /// </summary>
+            SeqNo,
+            /// <summary>
+            /// 元工事名称
+            /// </summary>
+            SourceName,
+            /// <summary>
+            /// 発注会社名
+            /// </summary>
+            PurchaseName,
+            /// <summary>
+            /// 申請・承認回数
+            /// </summary>
+            RequestCount,
+            /// <summary>
+            /// 発注金額
+            /// </summary>
+            PurchasePrice,
+            /// <summary>
+            /// 注文書作成状態
+            /// </summary>
+            PurchaseExists,
+            /// <summary>
+            /// 作成対象外
+            /// </summary>
+            NotCreate,
+            /// <summary>
+            /// 選択チェック
+            /// </summary>
+            SelectExec,
+            /// <summary>
+            /// 元工事番号
+            /// </summary>
+            SourceCode,
+            /// <summary>
+            /// 発注業者番号
+            /// </summary>
+            CompanyCode,
+            /// <summary>
+            /// 受付番号
+            /// </summary>
+            OrderNo,
+            /// <summary>
+            /// 行番号
+            /// </summary>
+            LineCount,
+        }
+        #endregion
+
+        #region ラベル表示コントロール
+        /// <summary>
+        /// 表示コントロール
+        /// </summary>
+        private enum DspLblCtrlName
+        {
+            /// <summary>
+            /// 工事番号
+            /// </summary>
+            ConstCode = 0,
+            /// <summary>
+            /// 工事名称
+            /// </summary>
+            ConstName,
+            /// <summary>
+            /// 工事場所
+            /// </summary>
+            ConstPlace,
+            /// <summary>
+            /// 工事担当者名
+            /// </summary>
+            CreatorName,
+            /// <summary>
+            /// 工事種別
+            /// </summary>
+            ConstructionType,
+            /// <summary>
+            /// 受注金額
+            /// </summary>
+            OrderPrice,
+            /// <summary>
+            /// 注文書作成数
+            /// </summary>
+            PurchaseCount,
+        }
+        #endregion
+
+        #region データ状態区分
+        /// <summary>
+        /// データ状態区分
+        /// </summary>
+        private enum DataStatusNo
+        {
+            NoCreate = 0,
+            Making,
+            Request,
+            Approvals,
+            NotMaking,
+        }
+        private string[] DataStatusString = new string[] { "未作成", "作成中", "申請中", "承認済", "作成対象外" };
+        #endregion
+
+        #endregion
+
+        #region 変数
+
+        /// <summary>
+        /// 工事コード
+        /// </summary>
+        private int m_ConstructionCode = 0;
+
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        private DialogResult m_ComplateFlg = DialogResult.Cancel;
+        
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
+        /// ラベルコントロール保持配列
+        /// </summary>
+        private Control[] m_DspLabelCtrl;
+
+        /// <summary>
+        /// 該当工事基本情報
+        /// </summary>
+        private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
+
+        /// <summary>
+        /// 親フォームハンドル
+        /// </summary>
+        private FrmPurchaseOrderEntry m_OrderFrm = null;
+
+        #endregion
+
+        #region プロパティ
+
+        /// <summary>
+        /// 工事コード
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult ComplateFlg
+        {
+            get { return m_ComplateFlg; }
+            set { m_ComplateFlg = value; }
+        }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
+        /// <summary>
+        /// 親フォームハンドル
+        /// </summary>
+        public FrmPurchaseOrderEntry OrderFrm
+        {
+            get { return m_OrderFrm; }
+            set { m_OrderFrm = value; }
+        }
+
+        #endregion
+
+        #region コンストラクタ
+        public FrmOrderEntryList()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void PurchaseOrderPrint_Load(object sender, EventArgs e)
+        {
+            try
+            {
+                // 工事情報取得
+                if (!GetBaseInfoData())
+                {
+                    MessageBox.Show("工事基本情報が存在しません", "エラー表示", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    this.Close();
+                    return;
+                }
+                
+                // 表示コントロールオブジェクト取得
+                SetDisplayObject();
+
+                // ヘッダー情報表示
+                DispHeader();
+
+                // データ表示処理
+                DataDisplay();
+
+                //// 参照時は変更できない
+                //if (m_EditLock)
+                //{
+                //    // グリッドを読込専用にする
+                //    dgvAllDisplay.ReadOnly = true;
+                //    btnDataEntry.Enabled = 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 PurchaseOrderPrint_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            try
+            {
+            }
+            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 btnEnd_Click(object sender, EventArgs e)
+        {
+            m_ComplateFlg = DialogResult.Cancel;
+            this.Close();
+        }
+        #endregion
+
+        #region 実行ボタン押下
+        /// <summary>
+        /// 実行ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return;
+
+                // 対象データ選択
+                SelectRowData();
+
+                m_ComplateFlg = DialogResult.OK;
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 作成対象外セット押下
+        /// <summary>
+        /// 作成対象外セット押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnTargetOut_Click(object sender, EventArgs e)
+        {
+            // 工事詳細台帳明細データ更新
+            UpdateTargetOut();
+
+            // 再表示
+            DataDisplay();
+        }
+        #endregion
+
+        #region グリッドセルクリック
+        /// <summary>
+        /// グリッドセルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvAllDisplay_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                switch (e.ColumnIndex)
+                {
+                    case (int)GridColumn.SelectExec:
+                        // 選択処理
+                        bool bAns = (bool)dgv.Rows[e.RowIndex].Cells[(int)GridColumn.SelectExec].Value;
+                        dgv.Rows[e.RowIndex].Cells[(int)GridColumn.SelectExec].Value = !bAns;
+                        dgv.EndEdit();
+                        GridSelectData(e.RowIndex);
+                        break;
+                    default:
+                        break;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryList.resx	(revision 51)
@@ -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="Column3.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="Column1.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="Column10.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="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="Column4.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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryListAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmOrderEntryListAuxiliary.cs	(revision 51)
@@ -0,0 +1,732 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+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.Master;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmOrderEntryList
+    {
+        #region 表示オブジェクトの取得
+        /// <summary>
+        /// 表示オブジェクトの取得
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            int DspCtrlCnt = Enum.GetNames(typeof(DspLblCtrlName)).Length;
+            m_DspLabelCtrl = new Control[DspCtrlCnt];
+
+            // ヘッダー情報
+            m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode] = lblLabel01;
+            m_DspLabelCtrl[(int)DspLblCtrlName.ConstName] = lblLabel02;
+            m_DspLabelCtrl[(int)DspLblCtrlName.ConstPlace] = lblLabel03;
+
+            m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName] = lblLabel04;
+            m_DspLabelCtrl[(int)DspLblCtrlName.ConstructionType] = label17;
+
+            m_DspLabelCtrl[(int)DspLblCtrlName.OrderPrice] = label6;
+            m_DspLabelCtrl[(int)DspLblCtrlName.PurchaseCount] = lblDispCnt01;
+        }
+        #endregion
+
+        #region 工事情報取得処理
+        /// <summary>
+        /// 工事情報取得
+        /// </summary>
+        /// <returns></returns>
+        private bool GetBaseInfoData()
+        {
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            try
+            {
+                string strSQL = cbDB.CreatePrimarykeyString(m_ConstructionCode);
+                if (!cbDB.SelectAction(strSQL, ref m_ConstructionBaseInfo)) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+        }
+        #endregion
+
+        #region ヘッダー情報の表示
+        /// <summary>
+        /// ヘッダー情報の表示
+        /// </summary>
+        private void DispHeader()
+        {
+            IOConstructionBaseInfoDetail cbidDB = new IOConstructionBaseInfoDetail();
+            try
+            {
+                string strConstrCode = CommonMotions.cnvStringCodeFromInt(m_ConstructionCode, "-", 8);       // 工事コード
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode].Text = strConstrCode;
+
+                // 工事基本情報明細・担当者マスタ・工事種別マスタ取得
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILNO, B.DETAILSTRING, C.PERSONCODE, C.PERSONNAME, D.TYPECODE, D.NAMESTRING, A.ORDERSDECISIONPRICE";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A";
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFODETAIL B";
+                strSQL += " ON B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND (B.DETAILNO = {0} OR B.DETAILNO = {1} OR B.DETAILNO = {2} OR B.DETAILNO = {3})",
+                                        (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName,                          // 工事名称
+                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace1,                    // 工事場所１
+                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace2,                    // 工事場所２
+                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3);                   // 工事場所３
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += " LEFT JOIN CONSTRUCTIONTYPEMASTER D ON D.TYPECODE = A.CONSTRUCTIONTYPE";
+                strSQL += " LEFT JOIN CONSTRUCTIONLEDGER E ON E.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                strSQL += " ORDER BY B.DETAILNO ASC";
+
+                ArrayList workList = new ArrayList();
+                if (!cbidDB.ExecuteReader(strSQL, ref workList)) return;
+                string ConstrName = string.Empty;
+                string ConstrPlace = string.Empty;
+                string CreatorName = string.Empty;
+                string ConstructionType = string.Empty;
+                int OrderPrice = 0;
+                foreach (object[] wrkRec in workList)
+                {
+                    switch (CommonMotions.cnvInt(wrkRec[1]))
+                    {
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName:
+                            ConstrName = CommonMotions.cnvString(wrkRec[2]);
+                            break;
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace1:
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace2:
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3:
+                            ConstrPlace += CommonMotions.cnvString(wrkRec[2]);
+                            break;
+                    }
+                    CreatorName = CommonMotions.cnvString(wrkRec[4]);
+                    ConstructionType = CommonMotions.cnvString(wrkRec[6]);
+                    OrderPrice = CommonMotions.cnvInt(wrkRec[7]);
+                }
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstName].Text = ConstrName;                    // 工事名称
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstPlace].Text = ConstrPlace;                  // 工事場所
+                m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName].Text = CreatorName;                 // 工事担当者取得
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstructionType].Text = ConstructionType;       // 工事種別マスタ取得
+                m_DspLabelCtrl[(int)DspLblCtrlName.OrderPrice].Text = OrderPrice.ToString("#,0");   // 受注金額
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                cbidDB.close(); cbidDB = null;
+            }
+        }
+        #endregion
+
+        #region DB読込順
+        /// <summary>
+        /// DB読込順
+        /// </summary>
+        public enum ReadDBColumn
+        {
+            ConstructionCode = 0,
+            FirstString,
+            SecondString,
+            CompanyCode,
+            CompanyName,
+            ExecutionAmount,
+            SourceCode,
+            PurchaseOrderflg,
+            DetailString,
+            ApprovalStatus,
+            PurchaseSeqNo,
+            LedgerLine,
+            OrderNo,
+            PrintoutDate,
+        }
+        #endregion
+
+        #region 一覧検索ＳＱＬ作成
+        /// <summary>
+        /// 一覧検索ＳＱＬ作成
+        /// </summary>
+        /// <param name="strSQL"></param>
+        public void CreateSQL(ref string strSQL, int ParentCode, int SearchCode)
+        {
+            try
+            {
+                strSQL = "SELECT A.CONSTRUCTIONCODE";
+                strSQL += ", A.FIRSTSTRING";
+                strSQL += ", A.SECONDSTRING";
+                strSQL += ", A.COMPANYCODE";
+                strSQL += ", A.COMPANYNAME";
+                strSQL += ", A.EXECUTIONAMOUNT";
+                strSQL += ", A.SOURCECODE";
+                strSQL += ", A.PURCHASEORDERFLG";
+                strSQL += ", B.DETAILSTRING";
+                strSQL += ", IFNULL(C.APPROVALSTATUS, -1) APPVAL";
+                strSQL += ", F.SEQNO";
+                strSQL += ", A.LINECOUNT";
+                strSQL += ", IFNULL(C.ORDERNO, 0)";
+                strSQL += ", DATE_FORMAT(F.PRINTOUTDATE,'%Y/%m/%d')";
+                strSQL += " FROM CONSTRUCTIONLEDGERDETAIL A";
+
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFODETAIL B ON B.CONSTRUCTIONCODE = A.SOURCECODE";
+                strSQL += string.Format(" AND B.DETAILNO = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+
+                strSQL += " LEFT JOIN PURCHASEORDERDETAIL E ON E.CONSTRUCTIONCODE = A.SOURCECODE";
+
+                strSQL += " LEFT JOIN PURCHASEORDER F ON F.CONSTRUCTIONCODE = E.CONSTRUCTIONCODE AND F.COMPANYCODE = A.COMPANYCODE";
+
+                strSQL += " LEFT JOIN PROCESSAPPROVALDETAIL G ON G.CONSTRUCTIONCODE = F.CONSTRUCTIONCODE AND G.APPROVALCODE = 4 AND G.LINKCODE = F.SEQNO";
+
+                strSQL += " LEFT JOIN PROCESSAPPROVAL C ON C.CONSTRUCTIONCODE = G.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND C.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
+                strSQL += " AND C.ORDERNO = G.ORDERNO AND C.SEQNO = 1";
+
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", ParentCode);
+                if (SearchCode != 0) strSQL += string.Format(" AND A.SOURCECODE = {0}", SearchCode);
+
+                strSQL += string.Format(" AND A.GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                strSQL += " AND A.COMPANYCODE > 0";
+                strSQL += string.Format(" AND A.COMPANYTYPE <> {0}", (int)CommonDefine.CodeDataType.Person);
+                //strSQL += " AND A.EXECUTIONAMOUNT > 0";
+
+                strSQL += " AND (A.SOURCECODE, A.COMPANYCODE) IN ((SELECT SUMTBL.SOURCECODE, SUMTBL.COMPANYCODE FROM CONSTRUCTIONLEDGERDETAIL SUMTBL";
+                strSQL += string.Format(" WHERE SUMTBL.CONSTRUCTIONCODE = {0}", ParentCode);
+                strSQL += string.Format(" AND SUMTBL.GROUPCOUNT = {0} AND SUMTBL.COMPANYCODE > 0", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                strSQL += " GROUP BY SUMTBL.SOURCECODE, SUMTBL.COMPANYCODE";
+                strSQL += string.Format(" HAVING SUM(SUMTBL.EXECUTIONAMOUNT) >= {0})", CommonDefine.s_PrintOutPrice);
+                if (SearchCode == 0)
+                    strSQL += string.Format(" UNION (SELECT POR.CONSTRUCTIONCODE, POR.COMPANYCODE FROM PURCHASEORDER POR WHERE POR.CONSTRUCTIONCODE = {0}))", ParentCode);
+                else
+                    strSQL += string.Format(" UNION (SELECT POR.CONSTRUCTIONCODE, POR.COMPANYCODE FROM PURCHASEORDER POR WHERE POR.CONSTRUCTIONCODE = {0}))", SearchCode);
+
+                strSQL += " GROUP BY";
+                strSQL += " A.CONSTRUCTIONCODE";
+                strSQL += ", A.FIRSTSTRING";
+                strSQL += ", A.SECONDSTRING";
+                strSQL += ", A.COMPANYCODE";
+                strSQL += ", A.COMPANYNAME";
+                strSQL += ", A.EXECUTIONAMOUNT";
+                strSQL += ", A.SOURCECODE";
+                strSQL += ", A.PURCHASEORDERFLG";
+                strSQL += ", B.DETAILSTRING";
+                strSQL += ", C.APPROVALSTATUS";
+                strSQL += ", F.SEQNO";
+                strSQL += ", A.LINECOUNT";
+                strSQL += ", C.ORDERNO";
+                strSQL += ", F.PRINTOUTDATE";
+                strSQL += " ORDER BY A.PURCHASEORDERFLG ASC, A.SOURCECODE ASC, A.COMPANYCODE ASC, APPVAL ASC";
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 表示データ取得
+        /// <summary>
+        /// 表示データ取得
+        /// </summary>
+        /// <param name="arList"></param>
+        private void GetDisplayDataList(ref ArrayList arList)
+        {
+            IOConstructionBaseInfoDetail BaseDetailDB = new IOConstructionBaseInfoDetail();
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+                bool LimitedDisp = false;
+
+                string strSQL = "";
+                int ParentCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinParent)
+                {   // 結合の親工事
+                    ParentCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                    CreateSQL(ref strSQL, ParentCode, 0);
+                }
+                else if (m_ConstructionBaseInfo.JoinFlg == (int)CommonDefine.BaseInfoJoinFlg.JoinChildren)
+                {   // 結合の構成工事
+                    ParentCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                    CreateSQL(ref strSQL, ParentCode, m_ConstructionCode);
+                }
+                else if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard)
+                {   // 増減工事
+                    ParentCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                    CreateSQL(ref strSQL, ParentCode, m_ConstructionCode);
+                    LimitedDisp = true;
+                }
+                else
+                {   // 通常工事
+                    CreateSQL(ref strSQL, m_ConstructionCode, 0);               // SQL作成
+                    LimitedDisp = true;
+                }
+
+                // 工事基本情報取得
+                if (!BaseDetailDB.ExecuteReader(strSQL, ref arList)) return;
+
+                if (LimitedDisp)
+                {
+                    // 元工事フィールドを表示しない
+                    int VisbleCount = 0;
+                    foreach (DataGridViewColumn CurCol in dgv.Columns)
+                    {
+                        if (CurCol.Visible) VisbleCount++;
+                    }
+                    if (VisbleCount == 8)
+                    {
+                        dgv.Columns[(int)GridColumn.PurchaseName].Width += dgv.Columns[(int)GridColumn.SourceName].Width;
+                        dgv.Columns[(int)GridColumn.SourceName].Visible = false;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDetailDB.close(); BaseDetailDB = null;
+            }
+        }
+        #endregion
+
+        #region データ表示処理
+        /// <summary>
+        /// 一覧データ表示処理
+        /// </summary>
+        private void DataDisplay()
+        {
+            DataGridView dgv = dgvAllDisplay;
+            try
+            {
+                dgv.Rows.Clear();
+                m_OrderFrm.DetailList.Clear();
+
+                ArrayList arList = new ArrayList();
+                // 表示データ取得
+                GetDisplayDataList(ref arList);
+
+                int iNo = 1;
+                string brkConstrName = string.Empty;
+                string strConstrName = string.Empty;
+                string strCompanyName = string.Empty;
+                int SeqNo = 0;
+                int AppStat = 0;
+                int Orderflg = 0;
+                int ApprovalCnt = 0;
+                int BaseDataCnt = 0;
+                int OrderNo = 0;
+                int LineCount = 0;
+                DateTime Printout = DateTime.Now;
+                bool NotCreateFlg = false;
+                foreach (object[] objRec in arList)
+                {
+                    // 親フォームデータセット
+                    m_OrderFrm.DetailList.Add(objRec);
+
+                    SeqNo = CommonMotions.cnvInt(objRec[(int)ReadDBColumn.PurchaseSeqNo]);
+                    AppStat = CommonMotions.cnvInt(objRec[(int)ReadDBColumn.ApprovalStatus]);
+                    Orderflg = CommonMotions.cnvInt(objRec[(int)ReadDBColumn.PurchaseOrderflg]);
+                    OrderNo = CommonMotions.cnvInt(objRec[(int)ReadDBColumn.OrderNo]);
+                    Printout = CommonMotions.cnvDate(objRec[(int)ReadDBColumn.PrintoutDate]);
+                    LineCount = CommonMotions.cnvInt(objRec[(int)ReadDBColumn.LedgerLine]);
+
+                    strConstrName = CommonMotions.cnvString(objRec[(int)ReadDBColumn.DetailString]);
+                    strCompanyName = CommonMotions.cnvString(objRec[(int)ReadDBColumn.CompanyName]);
+
+                    if (!brkConstrName.Equals(strConstrName)) brkConstrName = strConstrName;
+                    else strConstrName = string.Empty;
+
+                    NotCreateFlg = false;
+                    if (Orderflg == (int)CommonDefine.PurchaseOrderFlg.NotMakingData)
+                    {
+                        NotCreateFlg = true;
+                    }
+
+                    int CurRowCnt = dgv.Rows.Add(iNo++,
+                                                    SeqNo,
+                                                    strConstrName,
+                                                    strCompanyName,
+                                                    "",
+                                                    CommonMotions.cnvInt(objRec[(int)ReadDBColumn.ExecutionAmount]).ToString("#,0"),
+                                                    "",
+                                                    NotCreateFlg,
+                                                    false,
+                                                    CommonMotions.cnvInt(objRec[(int)ReadDBColumn.SourceCode]),
+                                                    CommonMotions.cnvInt(objRec[(int)ReadDBColumn.CompanyCode]),
+                                                    OrderNo,
+                                                    LineCount
+                                                    );
+                    // 行状態セット
+                    ChageRowColor(CurRowCnt, Orderflg, AppStat, Printout, OrderNo, ref  ApprovalCnt, ref BaseDataCnt);
+                    // 対象外は選択できない
+                    if (Orderflg == (int)CommonDefine.PurchaseOrderFlg.NotMakingData)
+                    {
+                        dgv.Rows[CurRowCnt].Cells[(int)GridColumn.SelectExec].ReadOnly = true;
+                    }
+                }
+                m_DspLabelCtrl[(int)DspLblCtrlName.PurchaseCount].Text = string.Format("{0}/{1}", ApprovalCnt, BaseDataCnt);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                int NowRowCnt = dgv.RowCount;
+                if (NowRowCnt < 18) dgv.Rows.Add(18 - NowRowCnt);
+                for (int i = NowRowCnt; i < dgv.RowCount; i++)
+                {
+                    dgv.Rows[i].Cells[(int)GridColumn.NotCreate].ReadOnly = true;
+                    dgv.Rows[i].Cells[(int)GridColumn.SelectExec].ReadOnly = true;
+                }
+            }
+        }
+        #endregion
+
+        #region 行色・状態セット
+        /// <summary>
+        /// 行色・状態セット
+        /// </summary>
+        private void ChageRowColor(int CurRowCnt, int Orderflg, int AppStat, DateTime Printout, int OrderNo,
+                                    ref int ApprovalCnt, ref int BaseDataCnt)
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                // 作成回数作成
+                string strCount = string.Empty;
+                if (OrderNo > 0)
+                {
+                    strCount = string.Format("{0}回目", OrderNo);
+                }
+
+                // 注文書状態作成
+                string strCreate = string.Empty;
+                int i = 0;
+                Color wrkColor = Color.White;
+
+                int SeqNo = CommonMotions.cnvInt(dgv.Rows[CurRowCnt].Cells[(int)GridColumn.SeqNo].Value);
+                if (SeqNo == 0)
+                {
+                    if (Orderflg == (int)CommonDefine.PurchaseOrderFlg.NotMakingData)
+                    {
+                        strCreate = DataStatusString[(int)DataStatusNo.NotMaking];
+                        wrkColor = Color.White;
+                        strCount = string.Empty;
+                    }
+                    else
+                    {
+                        strCreate = DataStatusString[(int)DataStatusNo.NoCreate];
+                        wrkColor = Color.White;
+                        strCount = string.Empty;
+                        BaseDataCnt++;
+                    }
+                }
+                else if (SeqNo > 0)
+                {
+                    switch (AppStat)
+                    {
+                        case (int)CommonDefine.ApprovalStatus.Approval:
+                            strCreate = DataStatusString[(int)DataStatusNo.Approvals];
+                            wrkColor = Color.LightGray;
+                            break;
+                        case -1:
+                            strCreate = DataStatusString[(int)DataStatusNo.Making];
+                            wrkColor = Color.LightCyan;
+                            break;
+                        default:
+                            strCreate = DataStatusString[(int)DataStatusNo.Request];
+                            wrkColor = Color.LemonChiffon;
+                            break;
+                    }
+                    if (Printout != DateTime.MinValue.Date) ApprovalCnt++;
+                    BaseDataCnt++;
+                }
+
+                // 作成回数セット
+                dgv.Rows[CurRowCnt].Cells[(int)GridColumn.RequestCount].Value = strCount;
+
+                // 注文書状態セット
+                dgv.Rows[CurRowCnt].Cells[(int)GridColumn.PurchaseExists].Value = strCreate;
+
+                // 行色セット
+                foreach (DataGridViewCell CurCell in dgv.Rows[CurRowCnt].Cells)
+                {
+                    if (i++ < (int)GridColumn.SourceName) continue;
+                    CurCell.Style.BackColor = wrkColor;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region データ選択処理
+        /// <summary>
+        /// データ選択処理
+        /// </summary>
+        private void SelectRowData()
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                for (int ix = (m_OrderFrm.DetailList.Count - 1); ix > -1; ix--)
+                {
+                    object[] ObjRec = (object[])m_OrderFrm.DetailList[ix];
+
+                    foreach (DataGridViewRow ChkRow in dgv.Rows)
+                    {
+                        // 画面上でデータを探す
+                        if (CommonMotions.cnvInt(ObjRec[(int)ReadDBColumn.SourceCode])
+                            != CommonMotions.cnvInt(ChkRow.Cells[(int)GridColumn.SourceCode].Value)) continue;
+
+                        if (CommonMotions.cnvInt(ObjRec[(int)ReadDBColumn.CompanyCode])
+                            != CommonMotions.cnvInt(ChkRow.Cells[(int)GridColumn.CompanyCode].Value)) continue;
+
+                        // 作成対象外のチェック
+                        if (!CommonMotions.chkCellBlank(ChkRow.Cells[(int)GridColumn.NotCreate].Value))
+                        {
+                            if ((bool)ChkRow.Cells[(int)GridColumn.NotCreate].Value)
+                            {
+                                // 内部データ削除（親フォームのプロパティを編集する）
+                                m_OrderFrm.DetailList.RemoveAt(ix);
+                                break;
+                            }
+                        }
+
+                        // 選択フラグのチェック
+                        if (!CommonMotions.chkCellBlank(ChkRow.Cells[(int)GridColumn.SelectExec].Value))
+                        {
+                            if (!(bool)ChkRow.Cells[(int)GridColumn.SelectExec].Value)
+                            {
+                                // 内部データ削除（親フォームのプロパティを編集する）
+                                m_OrderFrm.DetailList.RemoveAt(ix);
+                                break;
+                            }
+                        }
+                        break;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 画面項目のチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+
+                // 選択エラーチェック
+                bool bNoCreateData = false;
+                bool bMakeingData = false;
+                bool bApprovalData = false;
+                bool bUnMatchOrderNO = false;
+                int OrderNo = -1;
+                int SelectCnt = 0;
+                string CreateStat = string.Empty;
+                foreach (DataGridViewRow CurRow in dgv.Rows)
+                {
+                    // チェック無は処理しない
+                    if (CommonMotions.chkCellBlank(CurRow.Cells[(int)GridColumn.SelectExec].Value)) continue;
+                    if (!(bool)CurRow.Cells[(int)GridColumn.SelectExec].Value) continue;
+
+                    // データ未作成・作成済のチェック
+                    CreateStat = CommonMotions.cnvString(CurRow.Cells[(int)GridColumn.PurchaseExists].Value);
+                    if (CreateStat.Equals(DataStatusString[(int)DataStatusNo.NoCreate])) bNoCreateData = true;
+                    else if (CreateStat.Equals(DataStatusString[(int)DataStatusNo.Approvals])) bApprovalData = true;
+                    else bMakeingData = true;
+
+                    // 受付番号の整合性チェック
+                    if (OrderNo != CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.OrderNo].Value))
+                    {
+                        if (OrderNo > -1) bUnMatchOrderNO = true;
+                        OrderNo = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.OrderNo].Value);
+                    }
+
+                    // データカウント取得
+                    SelectCnt++;
+                }
+
+                if (bNoCreateData && bMakeingData && bApprovalData)
+                {
+                    MessageBox.Show("注文書：新規作成・編集・閲覧は同時にできません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                if (bNoCreateData && bMakeingData)
+                {
+                    MessageBox.Show("注文書：新規作成・編集は同時にできません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                if (bMakeingData && bApprovalData)
+                {
+                    MessageBox.Show("注文書：編集・閲覧は同時にできません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+                if (bNoCreateData && bApprovalData)
+                {
+                    MessageBox.Show("注文書：新規作成・閲覧は同時にできません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                if (SelectCnt < 1)
+                {
+                    MessageBox.Show("データが選択されていません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                if (bUnMatchOrderNO)
+                {
+                    MessageBox.Show("作成・編集時に\r\n申請・承認が違うデータは一緒に選択できません。", "選択エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                // 新規データ作成フラグセット
+                if (bNoCreateData) m_OrderFrm.CreateData = true;
+                else m_OrderFrm.CreateData = false;
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 作成対象外フラグ更新
+        /// <summary>
+        /// 作成対象外フラグ更新
+        /// </summary>
+        private void UpdateTargetOut()
+        {
+            IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
+            try
+            {
+                int TargetCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                // まず作成対象外を元にもどす
+                string strUpdate = string.Format("UPDATE CONSTRUCTIONLEDGERDETAIL SET PURCHASEORDERFLG = {0}", (int)CommonDefine.PurchaseOrderFlg.NoCreate);
+                strUpdate += string.Format(" WHERE CONSTRUCTIONCODE = {0}", TargetCode);
+                strUpdate += string.Format(" AND GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                strUpdate += string.Format(" AND PURCHASEORDERFLG = {0}", (int)CommonDefine.PurchaseOrderFlg.NotMakingData);
+                DetailDB.ExecuteNonQuery(strUpdate);
+
+                // 次に作成対象外に設定されたものを更新する
+                strUpdate = string.Format("UPDATE CONSTRUCTIONLEDGERDETAIL SET PURCHASEORDERFLG = {0}", (int)CommonDefine.PurchaseOrderFlg.NotMakingData);
+                strUpdate += string.Format(" WHERE CONSTRUCTIONCODE = {0}", TargetCode);
+                strUpdate += string.Format(" AND GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                strUpdate += " AND LINECOUNT IN (";
+                int i = 0;
+                int LineCout = 0;
+
+                foreach (DataGridViewRow CurRow in dgvAllDisplay.Rows)
+                {
+                    if (CommonMotions.chkCellBlank(CurRow.Cells[(int)GridColumn.NotCreate].Value)) continue;
+                    if (!(bool)CurRow.Cells[(int)GridColumn.NotCreate].Value) continue;
+
+                    LineCout = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.LineCount].Value);
+
+                    if (i != 0) strUpdate += ",";
+                    strUpdate += string.Format(" {0}", LineCout);
+                    i++;
+                }
+                strUpdate += ")";
+                DetailDB.ExecuteNonQuery(strUpdate);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                DetailDB.close(); DetailDB = null;
+            }
+        }
+        #endregion
+
+        #region 同一回数行選択処理
+        /// <summary>
+        /// 同一回数行選択処理
+        /// </summary>
+        /// <param name="CurRowCnt"></param>
+        private void GridSelectData(int CurRowCnt)
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+                
+                // 未作成時は一斉チェックしない
+                if (CommonMotions.cnvString(dgv.Rows[CurRowCnt].Cells[(int)GridColumn.RequestCount].Value).Length == 0)
+                    return;
+                
+                string strExecCnt = CommonMotions.cnvString(dgv.Rows[CurRowCnt].Cells[(int)GridColumn.RequestCount].Value);
+                bool bSelect = (bool)dgv.Rows[CurRowCnt].Cells[(int)GridColumn.SelectExec].Value;
+
+                string CompWork = string.Empty;
+                foreach (DataGridViewRow GetRow in dgv.Rows)
+                {
+                    // 空白行は対象外
+                    if (CommonMotions.cnvString(GetRow.Cells[(int)GridColumn.PurchaseName].Value).Length == 0
+                        && CommonMotions.cnvString(GetRow.Cells[(int)GridColumn.SourceName].Value).Length == 0
+                        && CommonMotions.cnvInt(GetRow.Cells[(int)GridColumn.PurchasePrice].Value) == 0) continue;
+
+                    // 自行は対象外
+                    if (GetRow.Index == CurRowCnt) continue;
+
+                    CompWork = CommonMotions.cnvString(GetRow.Cells[(int)GridColumn.RequestCount].Value);
+                    // 同一申請回数ならばチェックする
+                    if (CompWork.Equals(strExecCnt))
+                    {
+                        GetRow.Cells[(int)GridColumn.SelectExec].Value = bSelect;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntry.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntry.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntry.Designer.cs	(revision 51)
@@ -544,7 +544,6 @@
             this.btnDataDelete.TabIndex = 52;
             this.btnDataDelete.Text = "削　除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
-            this.btnDataDelete.Visible = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
             // btnDataEntry
@@ -588,8 +587,7 @@
             // 
             // panel3
             // 
-            this.panel3.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
+            this.panel3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
             this.panel3.AutoScroll = true;
             this.panel3.Controls.Add(this.groupBox3);
@@ -605,7 +603,7 @@
             this.panel3.Controls.Add(this.label15);
             this.panel3.Location = new System.Drawing.Point(0, 0);
             this.panel3.Name = "panel3";
-            this.panel3.Size = new System.Drawing.Size(1322, 446);
+            this.panel3.Size = new System.Drawing.Size(1322, 472);
             this.panel3.TabIndex = 0;
             this.panel3.Scroll += new System.Windows.Forms.ScrollEventHandler(this.BasePanel_Scroll);
             // 
@@ -1545,7 +1543,7 @@
             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(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 95;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntry.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntry.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntry.cs	(revision 51)
@@ -82,7 +82,15 @@
             /// <summary>
             /// 金額
             /// </summary>
-            PriceValue
+            PriceValue,
+            /// <summary>
+            /// 元工事番号
+            /// </summary>
+            SourceCode,
+            /// <summary>
+            /// 工事台帳行
+            /// </summary>
+            LedgerLine,
         }
         #endregion
 
@@ -377,6 +385,11 @@
         private int m_ConstructionCode = 0;
 
         /// <summary>
+        /// 受付番号
+        /// </summary>
+        private int m_OrderNo = -1;
+
+        /// <summary>
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_CloseingProcessOn = true;
@@ -406,6 +419,16 @@
         /// </summary>
         private Control[] m_DspLabelCtrl = new Control[7];
 
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
+        /// 直接表示フラグ
+        /// </summary>
+        private bool m_DirectFlg = false;
+
         // *-----* 共通処理設定 *-----*
         /// <summary>
         /// サブフォームフラグ
@@ -417,6 +440,21 @@
         private bool m_ParentEnd = false;
         // *-----* 共通処理設定 *-----*
 
+        /// <summary>
+        /// 明細取得リスト
+        /// </summary>
+        private ArrayList m_DetailList = new ArrayList();
+
+        /// <summary>
+        /// 新規データ作成フラグ
+        /// </summary>
+        private bool m_CreateData = true;
+
+        /// <summary>
+        /// 協力会社変更リスト
+        /// </summary>
+        private List<KeyValuePair<int, int>> m_ChangeCompany = new List<KeyValuePair<int, int>>();
+
         #endregion
 
         #region プロパティ
@@ -429,6 +467,15 @@
             set { m_ConstructionCode = value; }
         }
 
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
         // *-----* 共通処理設定 *-----*
         /// <summary>
         /// サブフォームフラグ
@@ -448,6 +495,50 @@
         }
         // *-----* 共通処理設定 *-----*
 
+        /// <summary>
+        /// 受付番号
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+
+        /// <summary>
+        /// 明細取得リスト
+        /// </summary>
+        public ArrayList DetailList
+        {
+            get { return m_DetailList; }
+            set { m_DetailList = value; }
+        }
+
+        /// <summary>
+        /// 新規データ作成フラグ
+        /// </summary>
+        public bool CreateData
+        {
+            get { return m_CreateData; }
+            set { m_CreateData = value; }
+        }
+
+        /// <summary>
+        /// グリッドカラム数取得
+        /// </summary>
+        public static int GridColumnCount
+        {
+            get { return Enum.GetNames(typeof(FrmPurchaseOrderEntry.DispDetailGridColumn)).Length; }
+        }
+
+        /// <summary>
+        /// 直接表示フラグ
+        /// </summary>
+        public bool DirectFlg
+        {
+            get { return m_DirectFlg; }
+            set { m_DirectFlg = value; }
+        }
+
         #endregion
 
         #region コンストラクタ
@@ -465,46 +556,44 @@
         /// <param name="e"></param>
         private void FrmPurchaseOrderEntry_Load(object sender, EventArgs e)
         {
-            // 工事情報取得
-            if (!GetBaseInfoData())
+            try
             {
-                MessageBox.Show("工事基本情報が存在しません", "エラー表示", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                this.Close();
-                return;
-            }
+                // 工事情報取得
+                if (!GetBaseInfoData())
+                {
+                    MessageBox.Show("工事基本情報が存在しません", "エラー表示", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    this.Close();
+                    return;
+                }
 
-            // ラベルオブジェクト取得
-            SetDisplayObject();
+                // ラベルオブジェクト取得
+                SetDisplayObject();
 
-            // データ表示
-            InitDataLoad();
+                if (m_DirectFlg)
+                {
+                    // 対象リストを作成する
+                    SetOrderEntryList();
+                }
+                else
+                {
+                    // データ選択画面表示
+                    if (!DispOrderEntryList())
+                    {
+                        this.Close();
+                        return;
+                    }
+                }
 
-            // 申請・承認表示処理
-            InitApprovalDisplay();
-            
-            // *-----* 処理移動ボタン設定 *-----*
-            CreateProcessContextMenu(m_SubForm);
-            // *-----* 処理移動ボタン設定 *-----*
+                // 自画面初期表示
+                InitDataLoad();
 
-            // 承認画面の「承認対象データを見る」からの起動時は承認ボタンの表示がある
-            bool bApproval = ClsApprovalPermission.ExceApprovalScreen();
-            if (bApproval)
+                // データ変更フラグOFF
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
             {
-                // 工事案件の管理部署を取得する
-                int DepartmentCode = ClsApprovalPermission.GetFromConstructionTheDepartment(m_ConstructionCode);
-                // 承認対象コードを取得する
-                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
-                // 案件に対して申請がされているかを確認する
-                bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode);
-                // ログイン者が承認者かを確認する
-                bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
-                // 申請中でログイン者が承認者の場合は承認ボタンを表示する
-                if (Pettition && Approvaler)
-                {
-                    pnlApprovalButton.Visible = true;
-                }
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            m_bChengeAns = false;
         }
         #endregion
 
@@ -583,6 +672,8 @@
                 else
                     m_CloseingProcessOn = false;
 
+                CommonMotions.EntryEndMessage("注文書データ");
+
                 // 終了
                 this.Close();
             }
@@ -612,6 +703,8 @@
                 else
                     m_CloseingProcessOn = false;
 
+                CommonMotions.RemoveEndMessage("注文書データ");
+
                 // 終了
                 this.Close();
             }
@@ -631,9 +724,10 @@
         private void btnPetition_Click(object sender, EventArgs e)
         {
             IOPurchaseOrder OrderDB = new IOPurchaseOrder();
+            IOProcessApproval ProAppDB = new IOProcessApproval();
             try
             {
-                // 積算予算データが無い場合は登録する
+                // 注文書データが無い場合は登録する
                 string strSQL = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
                 PurchaseOrder DataRec = new PurchaseOrder();
                 if (!OrderDB.SelectAction(strSQL, ref DataRec)) m_bChengeAns = true;
@@ -657,6 +751,19 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // 受付番号
+                if (m_OrderNo < 1)
+                {
+                    m_OrderNo = ProAppDB.SelectMaxSeqNoCount(ProAppDB.CreatePrimarykeyString(m_ConstructionCode, iApprovalCode)) + 1;
+                }
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_OrderNo);
+
+                // 注文書枝番
+                for (int i = 0; i < m_TabPageList.Count; i++)
+                {
+                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_TabPageList[i].SeqNo);
+                }
+
                 // 親フォーム終了
                 m_ParentEnd = true;
 
@@ -672,6 +779,7 @@
             finally
             {
                 OrderDB.close(); OrderDB = null;
+                ProAppDB.close(); ProAppDB = null;
             }
         }
         #endregion
@@ -702,6 +810,9 @@
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
 
+                // 受付番号
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_OrderNo);
+
                 // 親フォーム終了
                 m_ParentEnd = true;
 
@@ -1271,6 +1382,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // 承認機能番号セット
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
+                // 受付番号セット
+                frm.OrderNo = m_OrderNo;
 
                 // 申請・承認レコード更新
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Approval, false))
@@ -1315,6 +1428,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // 承認機能番号セット
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
+                // 受付番号セット
+                frm.OrderNo = m_OrderNo;
 
                 // 申請・承認レコード更新
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.Pending, false))
@@ -1359,6 +1474,8 @@
                 frm.ConstructionCode = m_ConstructionCode;
                 // 承認機能番号セット
                 frm.ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
+                // 受付番号セット
+                frm.OrderNo = m_OrderNo;
 
                 // 申請・承認レコード更新
                 if (!frm.ApprovalDataUpDate((int)CommonDefine.ApprovalStatus.NotApproval, false))
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntryAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntryAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/FrmPurchaseOrderEntryAuxiliary.cs	(revision 51)
@@ -126,6 +126,104 @@
         }
         #endregion
 
+        #region 直接表示時の対象リストを作成する
+        /// <summary>
+        /// 直接表示時の対象リストを作成する
+        /// </summary>
+        private void SetOrderEntryList()
+        {
+            IOProcessApprovalDetail AppDetailDB = new IOProcessApprovalDetail();
+            try
+            {
+
+                //ConstructionCode = 0,
+                //FirstString,
+                //SecondString,
+                //CompanyCode,
+                //CompanyName,
+                //ExecutionAmount,
+                //SourceCode,
+                //PurchaseOrderflg,
+                //DetailString,
+                //ApprovalStatus,
+                //PurchaseSeqNo,
+                //LedgerLine,
+                //OrderNo,
+                //PrintoutDate,
+
+                m_DetailList.Clear();
+                // 一覧リストを作成する
+                string strSQL = AppDetailDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval, m_OrderNo);
+                strSQL += " ORDER BY ORDERNO";
+                List<ProcessApprovalDetail> DetailList = new List<ProcessApprovalDetail>();
+                if (!AppDetailDB.SelectAction(strSQL, ref DetailList)) return;
+
+                foreach (ProcessApprovalDetail CurRec in DetailList)
+                {
+                    m_DetailList.Add(new object[] { m_ConstructionCode,
+                                                    "",
+                                                    "",
+                                                    0,
+                                                    "",
+                                                    0,
+                                                    m_ConstructionCode,
+                                                    1,
+                                                    "",
+                                                    (int)CommonDefine.ApprovalStatus.Approval,
+                                                    CurRec.LinkCode,
+                                                    0,
+                                                    m_OrderNo,
+                                                    DateTime.Now });
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                AppDetailDB.close(); AppDetailDB = null;
+            }
+        }
+        #endregion
+
+        #region 注文書明細選択画面表示
+        /// <summary>
+        /// 注文書明細選択画面表示
+        /// </summary>
+        private bool DispOrderEntryList()
+        {
+            FrmOrderEntryList frm = new FrmOrderEntryList();
+            try
+            {
+                frm.OrderFrm = this;
+                this.Hide();
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.ShowDialog();
+
+                // 終了選択時
+                if (frm.ComplateFlg == DialogResult.Cancel) return false;
+
+                object[] objRec = (object[])m_DetailList[0];
+                m_OrderNo = CommonMotions.cnvInt(objRec[(int)FrmOrderEntryList.ReadDBColumn.OrderNo]);
+                if (m_OrderNo == 0) m_OrderNo = -1;
+
+                this.Show();
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
         #region 初期データ表示
         /// <summary>
         /// 初期データ表示
@@ -134,15 +232,53 @@
         {
             try
             {
+                // ----- データ表示
                 // ヘッダー情報表示
                 DispHeader();
 
-                // 注文書データを読み込む
+                // 注文書よりデータを取り込む
                 if (!SetPurchaseOrderData())
                 {
-                    // 無い場合は工事予算書よりデータを取り込む
+                    // 工事詳細台帳よりデータを取り込む
                     CreateNewOrderData();
+
+                    // 承認データ受付番号セット
+                    SetApprovalOrderNo();
                 }
+
+                // 申請・承認表示処理
+                InitApprovalDisplay();
+
+                // 参照時は変更できない
+                if (m_EditLock)
+                {
+                    DisplayReadOnly();
+                    btnApproval.Enabled = false;
+                    btnPetition.Enabled = false;
+                }
+
+                // *-----* 処理移動ボタン設定 *-----*
+                CreateProcessContextMenu(m_SubForm);
+                // *-----* 処理移動ボタン設定 *-----*
+
+                // 承認画面の「承認対象データを見る」からの起動時は承認ボタンの表示がある
+                bool bApproval = ClsApprovalPermission.ExceApprovalScreen();
+                if (bApproval)
+                {
+                    // 工事案件の管理部署を取得する
+                    int DepartmentCode = ClsApprovalPermission.GetFromConstructionTheDepartment(m_ConstructionCode);
+                    // 承認対象コードを取得する
+                    int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
+                    // 案件に対して申請がされているかを確認する
+                    bool Pettition = ClsApprovalPermission.CheckPetition(m_ConstructionCode, ApprovalCode, m_OrderNo);
+                    // ログイン者が承認者かを確認する
+                    bool Approvaler = ClsApprovalPermission.CheckUserForApprover(ApprovalCode, DepartmentCode);
+                    // 申請中でログイン者が承認者の場合は承認ボタンを表示する
+                    if (Pettition && Approvaler)
+                    {
+                        pnlApprovalButton.Visible = true;
+                    }
+                }
             }
             catch (System.Exception ex)
             {
@@ -253,6 +389,301 @@
         }
         #endregion
 
+        #region 承認データ受付番号セット
+        /// <summary>
+        /// 承認データ受付番号セット
+        /// </summary>
+        private void SetApprovalOrderNo()
+        {
+            IOProcessApproval ProAppDB = new IOProcessApproval();
+            try
+            {
+                // 受付番号を取得する
+                object[] objrec = (object[])m_DetailList[0];
+                m_OrderNo = CommonMotions.cnvInt(objrec[(int)FrmOrderEntryList.ReadDBColumn.OrderNo]);
+
+                // オーダー番号作成
+                if (m_OrderNo == 0)
+                {
+                    m_OrderNo = ProAppDB.SelectMaxOrderNoCount(ProAppDB.CreatePrimarykeyString(m_ConstructionCode,
+                                                            (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval));
+                    m_OrderNo++;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                ProAppDB.close(); ProAppDB = null;
+            }
+        }
+        #endregion
+
+        // ---------- 工事詳細台帳よりデータ作成　　　　↓↓
+        #region 工事詳細台帳より読み込むSQLを作成する
+        /// <summary>
+        /// 工事詳細台帳より読み込むSQLを作成する
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewDataSQL(ref string strSQL)
+        {
+            try
+            {
+                // 工事台帳コードのセット
+                object[] ParentRec = (object[])m_DetailList[0];
+                strSQL = string.Format(" WHERE CONSTRUCTIONCODE = {0}",
+                                        CommonMotions.cnvInt(ParentRec[(int)FrmOrderEntryList.ReadDBColumn.ConstructionCode]));
+
+                int SourceCode = 0;
+                int CompanyCode = 0;
+                int brkSourceCode = 0;
+                bool bFirstCode = true;
+                bool bFirstCompany = true;
+                foreach (object[] CurRec in m_DetailList)
+                {
+                    SourceCode = CommonMotions.cnvInt(CurRec[(int)FrmOrderEntryList.ReadDBColumn.SourceCode]);
+                    CompanyCode = CommonMotions.cnvInt(CurRec[(int)FrmOrderEntryList.ReadDBColumn.CompanyCode]);
+                    // 工事番号のセット
+                    if (brkSourceCode != SourceCode)
+                    {
+                        if (bFirstCode)
+                        {
+                            strSQL += " AND";
+                            bFirstCode = false;
+                        }
+                        else
+                        {
+                            strSQL += ")) OR";
+                        }
+
+                        strSQL += string.Format(" (SOURCECODE = {0} AND (", SourceCode);
+
+                        brkSourceCode = SourceCode;
+                        bFirstCompany = true;
+                    }
+                    // 会社番号のセット
+                    if (!bFirstCompany) strSQL += " OR";
+
+                    strSQL += string.Format(" COMPANYCODE = {0}", CompanyCode);
+                    
+                    bFirstCompany = false;
+                }
+                strSQL += ")) ORDER BY COMPANYCODE";
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 工事詳細台帳よりデータを取り込む
+        /// <summary>
+        /// 工事詳細台帳よりデータを取り込む
+        /// </summary>
+        /// <returns></returns>
+        private bool CreateNewOrderData()
+        {
+            //IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
+            IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
+            IOPurchaseOrder OrderDB = new IOPurchaseOrder();
+            try
+            {
+                //if (m_DetailList.Count == 0) return false;
+
+                // 対象データSQL作成
+                string strSQL = string.Empty;
+                CreateNewDataSQL(ref strSQL);
+                // 工事詳細台帳データ読込
+                //List<ConstructionBudgetDetail> DetailList = new List<ConstructionBudgetDetail>();
+                List<ConstructionLedgerDetail> DetailList = new List<ConstructionLedgerDetail>();
+                if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
+                if (DetailList.Count == 0) return false;
+
+                // デフォルトページを削除する
+                this.TabCollections.TabPages.RemoveAt(0);
+
+                int icnt = OrderDB.SelectMaxSeqNoCount(OrderDB.CreatePrimarykeyString(m_ConstructionCode));
+                int PageSeqNo = icnt;
+                bool binit = true;
+                int Break_CompanyCode = 0;
+                double Break_Total = 0;
+                //List<ConstructionBudgetDetail> SumBuffer = new List<ConstructionBudgetDetail>();
+                List<ConstructionLedgerDetail> SumBuffer = new List<ConstructionLedgerDetail>();
+                //foreach (ConstructionBudgetDetail DetailRec in DetailList)
+                foreach (ConstructionLedgerDetail DetailRec in DetailList)
+                {
+                    // 1件目はバッファへセットして処理しない
+                    if (binit)
+                    {
+                        Break_CompanyCode = DetailRec.CompanyCode;
+                        Break_Total = DetailRec.ExecutionAmount;
+                        SumBuffer.Add(DetailRec);
+                        binit = false;
+                        continue;
+                    }
+                    // 会社コードが変わればデータセットへ行く
+                    if (Break_CompanyCode != DetailRec.CompanyCode)
+                    {
+                        // 協力業者発注合計が30万以上に注文書を発行する
+                        if (Break_Total >= CommonDefine.s_PrintOutPrice)
+                        {
+                            // ページ追加
+                            PurchaseOrderInputPage inputpage = new PurchaseOrderInputPage();
+                            CreateNewPage(ref inputpage, icnt, (int)CommonDefine.OrderSheetType.SimpleType);
+                            m_TabPageList.Add(inputpage);
+
+                            // グループ５コンボボックスセット
+                            SetInitcmbPersonInCharge(inputpage);
+
+                            // 注文書枝番セット
+                            inputpage.SeqNo = ++PageSeqNo;
+                            // データをセットする
+                            SetConstructionBudget(inputpage, SumBuffer, icnt);
+                            icnt++;
+                        }
+                        // バッファクリア
+                        SumBuffer.Clear();
+                        // ブレイクキーセット
+                        Break_CompanyCode = DetailRec.CompanyCode;
+                        // 協力業者発注合計をクリア
+                        Break_Total = 0;
+                    }
+                    // データ退避
+                    SumBuffer.Add(DetailRec);
+                    // 協力業者発注合計に金額を加算
+                    Break_Total += DetailRec.ExecutionAmount;
+                }
+
+                // 協力業者発注合計が30万以上に注文書を発行する
+                if (Break_Total >= CommonDefine.s_PrintOutPrice)
+                {
+                    // ページ追加
+                    PurchaseOrderInputPage inputpage = new PurchaseOrderInputPage();
+                    CreateNewPage(ref inputpage, icnt, (int)CommonDefine.OrderSheetType.SimpleType);
+                    m_TabPageList.Add(inputpage);
+
+                    // 注文書枝番セット
+                    inputpage.SeqNo = ++PageSeqNo;
+                    // データをセットする
+                    SetConstructionBudget(inputpage, SumBuffer, icnt);
+                    icnt++;
+                }
+                //// 支払条件の初期設定
+                //if (!GetConstructionTypeToExecNo())
+                //{
+                //    // 注文書種別(簡易版)
+                //    radioButton1.Checked = true;
+                //}
+                //else
+                //{
+                //    // 注文書種別(正規版)
+                //    radioButton2.Checked = true;
+                //}
+                EventArgs e = new EventArgs();
+                radioButton1_CheckedChanged((object)radioButton1, e);
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                DetailDB.close(); DetailDB = null;
+                OrderDB.close(); OrderDB = null;
+            }
+        }
+        #endregion
+
+        #region 工事詳細台帳データより画面へデータをセットする
+        /// <summary>
+        /// 工事詳細台帳データより画面へデータをセットする
+        /// </summary>
+        /// <param name="inputpage"></param>
+        /// <param name="DetailRec"></param>
+        //private bool SetConstructionBudget(PurchaseOrderInputPage inputpage, List<ConstructionBudgetDetail> DetailList, int PageCount)
+        private bool SetConstructionBudget(PurchaseOrderInputPage inputpage, List<ConstructionLedgerDetail> DetailList, int PageCount)
+        {
+            try
+            {
+                // 協力会社コード
+                inputpage.OrderCompanyCode = DetailList[0].CompanyCode;
+                // 協力会社名セット
+                inputpage.EntryTab.Text = DetailList[0].CompanyName;
+                inputpage.PageValueItem[(int)PageValue.SubConstractorName].Text = DetailList[0].CompanyName;
+                // 発注番号セット
+                inputpage.PageValueItem[(int)PageValue.OrdersNo].Text = string.Format("{0}-{1}", m_ConstructionCode, (PageCount + 1).ToString("000"));
+
+                int Linecnt = 0;
+                double TotalPrice = 0;
+                DataGridView dgv = inputpage.Group1DataGridView;
+                //foreach (ConstructionBudgetDetail DetailRec in DetailList)
+                foreach (ConstructionLedgerDetail DetailRec in DetailList)
+                {
+                    // 15行以上は処理しない
+                    if (Linecnt > (dgv.RowCount - 1)) break;
+                    DataGridViewRow CurRow = dgv.Rows[Linecnt];
+                    // 番号
+                    CurRow.Cells[(int)DispDetailGridColumn.No].Value = (Linecnt + 1);
+                    // グループ番号
+                    CurRow.Cells[(int)DispDetailGridColumn.GroupNo].Value = DetailRec.GroupCount;
+                    // 構成コード
+                    CurRow.Cells[(int)DispDetailGridColumn.ComponentCode].Value = DetailRec.ComponentCode;
+                    // 工種コード
+                    CurRow.Cells[(int)DispDetailGridColumn.ItemCode].Value = DetailRec.ItemCode;
+                    // 項目・品名
+                    CurRow.Cells[(int)DispDetailGridColumn.FirstName].Value = DetailRec.FirstString;
+                    // 内容内訳
+                    CurRow.Cells[(int)DispDetailGridColumn.SecondName].Value = DetailRec.SecondString;
+                    // 数量
+                    CurRow.Cells[(int)DispDetailGridColumn.Quantity].Value = 1;
+                    // 単位
+                    CurRow.Cells[(int)DispDetailGridColumn.UnitName].Value = "式";
+                    // 金額
+                    CurRow.Cells[(int)DispDetailGridColumn.PriceValue].Value = DetailRec.ExecutionAmount.ToString("#,0");
+                    // 元工事番号
+                    CurRow.Cells[(int)DispDetailGridColumn.SourceCode].Value = DetailRec.ConstructionCode;
+                    TotalPrice += DetailRec.ExecutionAmount;
+                    Linecnt++;
+
+                }
+
+                // 支払条件の初期設定
+                if (!GetConstructionTypeToExecNo())
+                {
+                    // 簡易版支払い条件セット
+                    InitGroupBox2(inputpage);
+                }
+                else
+                {
+                    InitGroupBox3(inputpage);
+                }
+
+                // 発注金額
+                inputpage.PageValueItem[(int)PageValue.OrderPrice].Text = TotalPrice.ToString("#,0");
+                // グリッド合計表示
+                inputpage.Group1Label.Text = inputpage.PageValueItem[(int)PageValue.OrderPrice].Text;
+                // 発注書作成日
+                inputpage.PageTextBox.Text = DateTime.Now.ToShortDateString();
+
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+        // ---------- 工事詳細台帳よりデータ作成　　　　↑↑
+
+        // ---------- 注文書よりデータ作成          　↓↓
         #region 注文書データを取得
         /// <summary>
         /// 注文書データを取得して画面表示する
@@ -265,8 +696,17 @@
             try
             {
                 // 注文書データ読込
-                string strSQL = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += " ORDER BY SEQNO";
+                string strSQL = " WHERE";
+                bool bFirst = true;
+                foreach (object[] objRec in m_DetailList)
+                {
+                    if (!bFirst) strSQL += " Or";
+                    strSQL += string.Format(" (CONSTRUCTIONCODE = {0}", CommonMotions.cnvInt(objRec[(int)FrmOrderEntryList.ReadDBColumn.SourceCode]));
+                    strSQL += string.Format(" AND SEQNO = {0})", CommonMotions.cnvInt(objRec[(int)FrmOrderEntryList.ReadDBColumn.PurchaseSeqNo]));
+                    bFirst = false;
+                }
+                strSQL += " ORDER BY CONSTRUCTIONCODE, SEQNO";
+
                 List<PurchaseOrder> OrderList = new List<PurchaseOrder>();
                 if (!OrderDB.SelectAction(strSQL, ref OrderList)) return false;
                 if (OrderList.Count == 0) return false;
@@ -289,7 +729,7 @@
 
                     // グループ５コンボボックスセット
                     SetInitcmbPersonInCharge(inputpage);
-                    
+
                     // ページデータをセットする
                     SetPurchaseOrderPage(ref inputpage, OrderRec, icnt);
                     // 明細データをセットする
@@ -307,7 +747,7 @@
             finally
             {
                 OrderDB.close(); OrderDB = null;
-                DetailDB.close(); DetailDB=null;
+                DetailDB.close(); DetailDB = null;
             }
         }
         #endregion
@@ -323,11 +763,12 @@
             try
             {
                 inputpage.OrderCompanyCode = DataRec.CompanyCode;                                   // 協力会社コード
+                inputpage.SeqNo = DataRec.SeqNo;
 
                 SubContractorMaster SubRec = new SubContractorMaster();
                 string strSQL = SubCDB.CreatePrimarykeyString(DataRec.CompanyCode);
                 SubCDB.SelectAction(strSQL, ref SubRec);
-                 
+
                 // 協力会社名セット
                 inputpage.EntryTab.Text = SubRec.CompanyName;
                 inputpage.PageValueItem[(int)PageValue.SubConstractorName].Text = SubRec.CompanyName;
@@ -371,7 +812,7 @@
                         inputpage.Group3TextBox[(int)Group3TextBox.PrePaymentsDays].Enabled = true;
                         inputpage.Group3TextBox[(int)Group3TextBox.PrePaymentsPrice].Enabled = true;
                     }
-                    if(DataRec.PartialPayment == 1)                     // 部分払
+                    if (DataRec.PartialPayment == 1)                     // 部分払
                     {
                         inputpage.Group3CheckBox[(int)Group3CheckBox.Partial].Checked = true;
                         inputpage.Group3TextBox[(int)Group3TextBox.PartialPaymentMounth].Text = DataRec.PartialPaymentMounth.ToString("0");     // 部分払締切月
@@ -384,7 +825,7 @@
                         inputpage.Group3TextBox[(int)Group3TextBox.PartialPaymentDay2].Enabled = true;
                         inputpage.Group3TextBox[(int)Group3TextBox.PartialPaymentPrice].Enabled = true;
                     }
-                    if(DataRec.CompletionPayment == 1)	                                            // 引渡し時の支払
+                    if (DataRec.CompletionPayment == 1)	                                            // 引渡し時の支払
                     {
                         inputpage.Group3CheckBox[(int)Group3CheckBox.Complete].Checked = true;
                         inputpage.Group3TextBox[(int)Group3TextBox.CompletionPaymentDays].Text = DataRec.CompletionPaymentDays.ToString("0");   // 引渡し時の支払日数
@@ -444,10 +885,11 @@
                     GetRow.Cells[(int)DispDetailGridColumn.UnitName].Value = DetailRec.UnitName;                                // 単位
                     GetRow.Cells[(int)DispDetailGridColumn.UnitPrice].Value = DetailRec.UnitPrice.ToString("#,#");	            // 単価
                     GetRow.Cells[(int)DispDetailGridColumn.PriceValue].Value = DetailRec.OrdersLinePrice.ToString("#,0");       // 金額
-                    
+                    GetRow.Cells[(int)DispDetailGridColumn.SourceCode].Value = DetailRec.SourceCode;                            // 元工事番号
+
                     // 金額集計
                     PriceValueValue += DetailRec.OrdersLinePrice;
-                    
+
                     iRow++;
                 }
                 // グリッド合計表示
@@ -455,7 +897,7 @@
 
                 // 条件グリッド
                 iRow = CommonDefine.Group4GridStaticString.Length;
-                
+
                 foreach (PurchaseOrderDetail DetailRec in DetailList)
                 {
                     DataGridViewRow GetRow = inputpage.Group4DataGridView.Rows[iRow];
@@ -472,193 +914,8 @@
             }
         }
         #endregion
+        // ---------- 注文書よりデータ作成          　↑↑
 
-        #region 工事予算書よりデータを取り込む
-        /// <summary>
-        /// 工事予算書よりデータを取り込む
-        /// </summary>
-        /// <returns></returns>
-        private bool CreateNewOrderData()
-        {
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
-            try
-            {
-                // 注文書データ読込
-                string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += " AND CompanyCode <> 0";
-                strSQL += string.Format(" AND COMPANYTYPE <> {0}", (int)CommonDefine.SearchLogDataType.Person);
-                strSQL += " ORDER BY CompanyCode";
-                List<ConstructionBudgetDetail> DetailList = new List<ConstructionBudgetDetail>();
-                if (!DetailDB.SelectAction(strSQL, ref DetailList)) return false;
-                if (DetailList.Count == 0) return false;
-
-                // デフォルトページを削除する
-                this.TabCollections.TabPages.RemoveAt(0);
-
-                int icnt = 0;
-                bool binit = true;
-                int Break_CompanyCode = 0;
-                double Break_Total = 0;
-                List<ConstructionBudgetDetail> SumBuffer = new List<ConstructionBudgetDetail>();
-                foreach (ConstructionBudgetDetail DetailRec in DetailList)
-                {
-                    // 1件目はバッファへセットして処理しない
-                    if (binit)
-                    {
-                        Break_CompanyCode = DetailRec.CompanyCode;
-                        Break_Total = DetailRec.ExecutionAmount;
-                        SumBuffer.Add(DetailRec);
-                        binit = false;
-                        continue;
-                    }
-                    // 会社コードが変わればでデータセットへ行く
-                    if (Break_CompanyCode != DetailRec.CompanyCode)
-                    {
-                        // 協力業者発注合計が30万以上に注文書を発行する
-                        if (Break_Total >= 300000)
-                        {
-                            // ページ追加
-                            PurchaseOrderInputPage inputpage = new PurchaseOrderInputPage();
-                            CreateNewPage(ref inputpage, icnt, (int)CommonDefine.OrderSheetType.SimpleType);
-                            m_TabPageList.Add(inputpage);
-
-                            // グループ５コンボボックスセット
-                            SetInitcmbPersonInCharge(inputpage);
-
-                            // データをセットする
-                            SetConstructionBudget(inputpage, SumBuffer, icnt);
-                            icnt++;
-                        }
-                        // バッファクリア
-                        SumBuffer.Clear();
-                        // ブレイクキーセット
-                        Break_CompanyCode = DetailRec.CompanyCode;
-                        // 協力業者発注合計をクリア
-                        Break_Total = 0;
-                    }
-                    // データ退避
-                    SumBuffer.Add(DetailRec);
-                    // 協力業者発注合計に金額を加算
-                    Break_Total += DetailRec.ExecutionAmount;
-                }
-
-                // 協力業者発注合計が30万以上に注文書を発行する
-                if (Break_Total >= 300000)
-                {
-                    // ページ追加
-                    PurchaseOrderInputPage inputpage = new PurchaseOrderInputPage();
-                    CreateNewPage(ref inputpage, icnt, (int)CommonDefine.OrderSheetType.SimpleType);
-                    m_TabPageList.Add(inputpage);
-
-                    // データをセットする
-                    SetConstructionBudget(inputpage, SumBuffer, icnt);
-                    icnt++;
-                }
-                //// 支払条件の初期設定
-                //if (!GetConstructionTypeToExecNo())
-                //{
-                //    // 注文書種別(簡易版)
-                //    radioButton1.Checked = true;
-                //}
-                //else
-                //{
-                //    // 注文書種別(正規版)
-                //    radioButton2.Checked = true;
-                //}
-                EventArgs e = new EventArgs();
-                radioButton1_CheckedChanged((object)radioButton1, e);
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                DetailDB.close(); DetailDB = null;
-            }
-        }
-        #endregion
-
-        #region 工事予算書データより画面へデータをセットする
-        /// <summary>
-        /// 工事予算書データより画面へデータをセットする
-        /// </summary>
-        /// <param name="inputpage"></param>
-        /// <param name="DetailRec"></param>
-        private bool SetConstructionBudget(PurchaseOrderInputPage inputpage, List<ConstructionBudgetDetail> DetailList, int PageCount)
-        {
-            try
-            {
-                // 協力会社コード
-                inputpage.OrderCompanyCode = DetailList[0].CompanyCode;
-                // 協力会社名セット
-                inputpage.EntryTab.Text = DetailList[0].CompanyName;
-                inputpage.PageValueItem[(int)PageValue.SubConstractorName].Text = DetailList[0].CompanyName;
-                // 発注番号セット
-                inputpage.PageValueItem[(int)PageValue.OrdersNo].Text = string.Format("{0}-{1}", m_ConstructionCode, (PageCount + 1).ToString("000"));
-
-                int Linecnt = 0;
-                double TotalPrice = 0;
-                DataGridView dgv = inputpage.Group1DataGridView;
-                foreach (ConstructionBudgetDetail DetailRec in DetailList)
-                {
-                    // 15行以上は処理しない
-                    if(Linecnt > (dgv.RowCount-1)) break;
-                    DataGridViewRow CurRow = dgv.Rows[Linecnt];
-                    // 番号
-                    CurRow.Cells[(int)DispDetailGridColumn.No].Value = (Linecnt + 1);
-                    // グループ番号
-                    CurRow.Cells[(int)DispDetailGridColumn.GroupNo].Value = DetailRec.GroupCount;
-                    // 構成コード
-                    CurRow.Cells[(int)DispDetailGridColumn.ComponentCode].Value = DetailRec.ComponentCode;
-                    // 工種コード
-                    CurRow.Cells[(int)DispDetailGridColumn.ItemCode].Value = DetailRec.ItemCode;
-                    // 項目・品名
-                    CurRow.Cells[(int)DispDetailGridColumn.FirstName].Value = DetailRec.FirstString;
-                    // 内容内訳
-                    CurRow.Cells[(int)DispDetailGridColumn.SecondName].Value = DetailRec.SecondString;
-                    // 数量
-                    CurRow.Cells[(int)DispDetailGridColumn.Quantity].Value = 1;
-                    // 単位
-                    CurRow.Cells[(int)DispDetailGridColumn.UnitName].Value = "式";
-                    // 金額
-                    CurRow.Cells[(int)DispDetailGridColumn.PriceValue].Value = DetailRec.ExecutionAmount.ToString("#,0");
-                    TotalPrice += DetailRec.ExecutionAmount;
-                    Linecnt++;
-
-                    // 支払条件の初期設定
-                    if (!GetConstructionTypeToExecNo())
-                    {
-                        // 簡易版支払い条件セット
-                        InitGroupBox2(inputpage);
-                    }
-                    else
-                    {
-                        InitGroupBox3(inputpage);
-                    }
-                }
-
-                // 発注金額
-                inputpage.PageValueItem[(int)PageValue.OrderPrice].Text = TotalPrice.ToString("#,0");
-                // グリッド合計表示
-                inputpage.Group1Label.Text = inputpage.PageValueItem[(int)PageValue.OrderPrice].Text;
-                // 発注書作成日
-                inputpage.PageTextBox.Text = DateTime.Now.ToShortDateString();
-
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
         #region 簡易版支払条件の初期値セット
         /// <summary>
         /// 簡易版支払条件の初期値セット
@@ -776,6 +1033,7 @@
         {
             IOPurchaseOrder OrderDB = new IOPurchaseOrder();
             IOPurchaseOrderDetail DetailDB = new IOPurchaseOrderDetail();
+            IOConstructionLedgerDetail LDetailDB = new IOConstructionLedgerDetail();
             try
             {
                 //データチェック
@@ -786,21 +1044,17 @@
 
                 OrderDB.connect(); OrderDB.beginTran();
                 DetailDB.connect(); DetailDB.beginTran();
+                LDetailDB.connect(); LDetailDB.beginTran();
 
-                // まず削除する
-                string strDel = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
-                // 注文書データ削除
-                OrderDB.DeleteAction(strDel, false);
-                // 注文書明細データ削除
-                DetailDB.DeleteAction(strDel, false);
-
                 // データ登録
+                int SeqCnt = 0;
                 for (int i = 0; i < m_TabPageList.Count; i++)
                 {
                     PurchaseOrderInputPage DataTab = m_TabPageList[i];
+                    SeqCnt = DataTab.SeqNo;
 
                     // 注文書データ登録処理
-                    if (!EntryPurchaseOrder(ref OrderDB, DataTab, (i + 1)))
+                    if (!EntryPurchaseOrder(ref OrderDB, DataTab, SeqCnt))
                     {
                         OrderDB.rollback();
                         DetailDB.rollback();
@@ -808,16 +1062,26 @@
                     }
 
                     // 注文書明細データ登録処理
-                    if (!EntryPurchaseOrderDetail(ref DetailDB, DataTab, (i + 1)))
+                    if (!EntryPurchaseOrderDetail(ref DetailDB, DataTab, SeqCnt))
                     {
                         OrderDB.rollback();
                         DetailDB.rollback();
                         return false;
                     }
+
+                    // 工事台帳の注文書作成フラグ更新
+                    if (!UpdateLedgerDetail(LDetailDB, DataTab, SeqCnt))
+                    {
+                        OrderDB.rollback();
+                        DetailDB.rollback();
+                        LDetailDB.rollback();
+                        return false;
+                    }
                 }
 
                 OrderDB.commit();
                 DetailDB.commit();
+                LDetailDB.commit();
 
                 // フラグクリア
                 m_bChengeAns = false;
@@ -833,6 +1097,7 @@
             {
                 OrderDB.close(); OrderDB = null;
                 DetailDB.close(); DetailDB = null;
+                LDetailDB.close(); LDetailDB = null;
             }
         }
         #endregion
@@ -847,7 +1112,7 @@
             bool bRet = true;
             bool bPageAns = true;
             PurchaseOrderInputPage errPage = null;
-            IOConstructionBudgetDetail DetailDB = new IOConstructionBudgetDetail();
+            IOConstructionLedger LedgerDB = new IOConstructionLedger();
             try
             {
                 foreach (PurchaseOrderInputPage CurPage in m_TabPageList)
@@ -862,16 +1127,13 @@
                     bPageAns &= CommonMotions.DispFieldDateCheck(CurPage.Group1TextBox);
 
                     //// 注文書データ読込
-                    string strSQL = "SELECT SUM(EXECUTIONAMOUNT) FROM CONSTRUCTIONBUDGETDETAIL";
-                    strSQL += DetailDB.CreatePrimarykeyString(m_ConstructionCode);
-                    strSQL += string.Format("AND COMPANYCODE = {0}", CurPage.OrderCompanyCode);
-                    ArrayList arList = new ArrayList();
-                    if (!DetailDB.ExecuteReader(strSQL, ref arList)) continue;
-                    object[] objList = (object[])arList[0];
+                    string strSQL = LedgerDB.CreatePrimarykeyString(m_ConstructionCode);
+                    ConstructionLedger LedgerRec = new ConstructionLedger();
+                    if (!LedgerDB.SelectAction(strSQL, ref LedgerRec)) continue;
 
                     // 発注金額・合計金額のチェック(入力金額が大きくなった場合はエラー)
                     bool bNotErr = true;
-                    if (CommonMotions.cnvDouble(objList[0]) < CommonMotions.cnvDouble(CurPage.Group1Label.Text))
+                    if (LedgerRec.OrdersDecisionPrice < CommonMotions.cnvDouble(CurPage.Group1Label.Text))
                     {
                         bNotErr = false;
                         bPageAns = false;
@@ -1060,7 +1322,7 @@
             }
             finally
             {
-                DetailDB.close(); DetailDB = null;
+                LedgerDB.close(); LedgerDB = null;
             }
         }
         #endregion
@@ -1085,49 +1347,55 @@
         /// 注文書データの登録処理
         /// </summary>
         /// <returns></returns>
-        private bool EntryPurchaseOrder(ref IOPurchaseOrder OrderDB, PurchaseOrderInputPage DataTab, int Datacnt)
+        private bool EntryPurchaseOrder(ref IOPurchaseOrder OrderDB, PurchaseOrderInputPage DataTab, int SeqNo)
         {
             try
             {
+                // データ存在確認
+                bool DataExists = false;
+                PurchaseOrder DataRec = new PurchaseOrder();
+                string strSQL = OrderDB.CreatePrimarykeyString(m_ConstructionCode, SeqNo);
+                if (OrderDB.SelectAction(strSQL, ref DataRec, false)) DataExists = true;
+
+                if (!DataExists)
+                {
+                    DataRec.ConstructionCode = m_ConstructionCode;                                  // 工事番号
+                    DataRec.SeqNo = SeqNo;                                                          // 注文書枝番
+                }
+
                 // データセット
-                PurchaseOrder DataRec = new PurchaseOrder();
+                DataRec.CompanyCode = DataTab.OrderCompanyCode;                                                         // 協力会社コード
+
+                DataRec.CreateDate = CommonMotions.cnvDate(DataTab.PageTextBox.Text);                                   // 作成日付
                 
-                DataRec.ConstructionCode = m_ConstructionCode;                                      // 工事番号
-                
-                DataRec.SeqNo = Datacnt;                                                            // 注文書枝番
-                
-                DataRec.CompanyCode	= DataTab.OrderCompanyCode;                                     // 協力会社コード
-                
-                DataRec.CreateDate = CommonMotions.cnvDate(DataTab.PageTextBox.Text);               // 作成日付
-                
                 DataRec.OrderPrice = CommonMotions.cnvDouble(DataTab.PageValueItem[(int)PageValue.OrderPrice].Text);    // 発注金額
 
-                DataRec.LastRowStringDate = CommonMotions.cnvDate(DataTab.Group1TextBox.Text);      // 最終行表示日付
+                DataRec.LastRowStringDate = CommonMotions.cnvDate(DataTab.Group1TextBox.Text);                          // 最終行表示日付
 
                 // 簡易版と正規版では登録内容が違う
                 if (radioButton1.Checked)
                 {   // 簡易版データ
-                    DataRec.OrderSheetType = (int)CommonDefine.OrderSheetType.SimpleType;                        // 簡易・本式フラグ
+                    DataRec.OrderSheetType = (int)CommonDefine.OrderSheetType.SimpleType;                               // 簡易・本式フラグ
 
                     if (DataTab.Group2RadioButton[(int)Group2CheckBox.Chk1].Checked)
-                        DataRec.PaymentTerms = (int)Group2CheckBox.Chk1;                            // 支払い条件
+                        DataRec.PaymentTerms = (int)Group2CheckBox.Chk1;                                                // 支払い条件
                     else
-                        DataRec.PaymentTerms = (int)Group2CheckBox.Chk2;                            // 支払い条件
+                        DataRec.PaymentTerms = (int)Group2CheckBox.Chk2;                                                // 支払い条件
 
-                    DataRec.CashRatio = CommonMotions.cnvDouble(DataTab.Group2TextBox[(int)Group2Item.CachRatio].Text);     // 現金割合（％）
+                    DataRec.CashRatio = CommonMotions.cnvDouble(DataTab.Group2TextBox[(int)Group2Item.CachRatio].Text); // 現金割合（％）
                 }
                 else
                 {   // 正規版データ
-                    DataRec.OrderSheetType = (int)CommonDefine.OrderSheetType.RegularType;                       // 簡易・本式フラグ
+                    DataRec.OrderSheetType = (int)CommonDefine.OrderSheetType.RegularType;                              // 簡易・本式フラグ
 
                     if (DataTab.Group3CheckBox[(int)Group3CheckBox.Previous].Checked) {
-                        DataRec.PrePayments = 1;                                                    // 前金払
+                        DataRec.PrePayments = 1;                                                                        // 前金払
                         DataRec.PrePaymentsDays	= CommonMotions.cnvInt(DataTab.Group3TextBox[(int)Group3TextBox.PrePaymentsDays].Text);         // 前金払日数
                         DataRec.PrePaymentsPrice = CommonMotions.cnvDouble(DataTab.Group3TextBox[(int)Group3TextBox.PrePaymentsPrice].Text);    // 前金払金額
                     }
                     if (DataTab.Group3CheckBox[(int)Group3CheckBox.Partial].Checked)
                     {
-                        DataRec.PartialPayment = 1;                                                 // 部分払
+                        DataRec.PartialPayment = 1;                                                                     // 部分払
                         DataRec.PartialPaymentMounth = CommonMotions.cnvInt(DataTab.Group3TextBox[(int)Group3TextBox.PartialPaymentMounth].Text);   // 部分払締切月
                         DataRec.PartialPaymentDay1 = CommonMotions.cnvInt(DataTab.Group3TextBox[(int)Group3TextBox.PartialPaymentDay1].Text);       // 部分払締切日
                         DataRec.PartialPaymentDay2 = CommonMotions.cnvInt(DataTab.Group3TextBox[(int)Group3TextBox.PartialPaymentDay2].Text);       // 部分払支払日
@@ -1135,7 +1403,7 @@
                     }
                     if (DataTab.Group3CheckBox[(int)Group3CheckBox.Complete].Checked)
                     {
-                        DataRec.CompletionPayment = 1;	                                            // 引渡し時の支払
+                        DataRec.CompletionPayment = 1;	                                                                // 引渡し時の支払
                         DataRec.CompletionPaymentDays = CommonMotions.cnvInt(DataTab.Group3TextBox[(int)Group3TextBox.CompletionPaymentDays].Text);	// 引渡し時の支払日数
                         DataRec.CompletionPaymentPrice = CommonMotions.cnvDouble(DataTab.Group3TextBox[(int)Group3TextBox.CompletionPaymentPrice].Text);    // 引渡し時の支払金額
                     }
@@ -1151,12 +1419,24 @@
                     DataRec.WorkersCount = CommonMotions.cnvInt(DataTab.Group5TextBox.Text);                                                    // 作業員数
                 }
 
-                // データ登録
-                if (!OrderDB.InsertAction(DataRec, false))
+                if (DataExists)
                 {
-                    LogicalErrorMessage("注文書データ：登録に失敗しました。", "登録エラー", CommonMotions.GetMethodName());
-                    return false;
+                    // データ更新
+                    if (!OrderDB.UpdateAction(strSQL, DataRec, false))
+                    {
+                        LogicalErrorMessage("注文書データ：更新に失敗しました。", "更新エラー", CommonMotions.GetMethodName());
+                        return false;
+                    }
                 }
+                else
+                {
+                    // データ登録
+                    if (!OrderDB.InsertAction(DataRec, false))
+                    {
+                        LogicalErrorMessage("注文書データ：登録に失敗しました。", "登録エラー", CommonMotions.GetMethodName());
+                        return false;
+                    }
+                }
 
                 return true;
             }
@@ -1173,10 +1453,14 @@
         /// 注文書明細データの登録処理
         /// </summary>
         /// <returns></returns>
-        private bool EntryPurchaseOrderDetail(ref IOPurchaseOrderDetail DetailDB, PurchaseOrderInputPage DataTab, int Datacnt)
+        private bool EntryPurchaseOrderDetail(ref IOPurchaseOrderDetail DetailDB, PurchaseOrderInputPage DataTab, int SeqNo)
         {
             try
             {
+                // データ削除
+                string strSQL = DetailDB.CreatePrimarykeyString(m_ConstructionCode, SeqNo);
+                DetailDB.DeleteAction(strSQL, false);
+
                 // 明細グリッド書込み
                 for (int i = 0; i < DataTab.Group1DataGridView.RowCount; i++)
                 {
@@ -1186,10 +1470,10 @@
                         CommonMotions.cnvString(GetRow.Cells[(int)DispDetailGridColumn.SecondName].Value).Length == 0) continue;
 
                     PurchaseOrderDetail DatailRec = new PurchaseOrderDetail();
-                    DatailRec.ConstructionCode = m_ConstructionCode;	// 工事番号
-                    DatailRec.SeqNo = Datacnt;                          // 注文書枝番
-                    DatailRec.GroupCount = 0;                           // グループ番号
-                    DatailRec.LineCount = (i + 1);                      // 行番号
+                    DatailRec.ConstructionCode = m_ConstructionCode;	                                                            // 工事番号
+                    DatailRec.SeqNo = SeqNo;                                                                                        // 注文書枝番
+                    DatailRec.GroupCount = 0;                                                                                       // グループ番号
+                    DatailRec.LineCount = (i + 1);                                                                                  // 行番号
                     DatailRec.ComponentCode = CommonMotions.cnvInt(GetRow.Cells[(int)DispDetailGridColumn.ComponentCode].Value);    // 構成キー
                     DatailRec.ItemCode = CommonMotions.cnvInt(GetRow.Cells[(int)DispDetailGridColumn.ItemCode].Value);              // 工種キー
                     DatailRec.FirstString = CommonMotions.cnvString(GetRow.Cells[(int)DispDetailGridColumn.FirstName].Value);       // 工種・品名
@@ -1198,6 +1482,7 @@
                     DatailRec.UnitName = CommonMotions.cnvString(GetRow.Cells[(int)DispDetailGridColumn.UnitName].Value);           // 単位
                     DatailRec.UnitPrice = CommonMotions.cnvInt(GetRow.Cells[(int)DispDetailGridColumn.UnitPrice].Value);	        // 単価
                     DatailRec.OrdersLinePrice = CommonMotions.cnvDouble(GetRow.Cells[(int)DispDetailGridColumn.PriceValue].Value);  // 金額
+                    DatailRec.SourceCode = CommonMotions.cnvInt(GetRow.Cells[(int)DispDetailGridColumn.SourceCode].Value);          // 元工事番号
 
                     // データ書込み
                     if (!DetailDB.InsertAction(DatailRec, false)) return false;
@@ -1222,11 +1507,11 @@
                     if (GetRow.ReadOnly) continue;
 
                     PurchaseOrderDetail DatailRec = new PurchaseOrderDetail();
-                    DatailRec.ConstructionCode = m_ConstructionCode;	// 工事番号
-                    DatailRec.SeqNo = Datacnt;                          // 注文書枝番
-                    DatailRec.GroupCount = GroupCount;                  // グループ番号
-                    DatailRec.LineCount = (i + 1);                      // 行番号
-                    DatailRec.FirstString = CommonMotions.cnvString(GetRow.Cells[(int)DispTermsGridColumn.Terms].Value);     // 条件文字列
+                    DatailRec.ConstructionCode = m_ConstructionCode;	                                                    // 工事番号
+                    DatailRec.SeqNo = SeqNo;                                                                                // 注文書枝番
+                    DatailRec.GroupCount = GroupCount;                                                                      // グループ番号
+                    DatailRec.LineCount = (i + 1);                                                                          // 行番号
+                    DatailRec.FirstString = CommonMotions.cnvString(GetRow.Cells[(int)DispTermsGridColumn.Terms].Value);    // 条件文字列
 
                     // データ書込み
                     if (!DetailDB.InsertAction(DatailRec, false))
@@ -1249,6 +1534,119 @@
         }
         #endregion
 
+        #region 工事台帳更新処理
+        /// <summary>
+        /// 工事台帳更新処理
+        /// </summary>
+        /// <returns></returns>
+        private bool UpdateLedgerDetail(IOConstructionLedgerDetail LDetailDB, PurchaseOrderInputPage DataTab, int SeqNo)
+        {
+            try
+            {
+                int QuantityVal = 0;
+                int PriceVal = 0;
+                int LedgerLine = 0;
+                bool ChangeCompany = false;
+                int BeforeCode = 0;
+                string strSQL = string.Empty;
+                int TargetCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                int TargetField = 0;
+
+                // 協力会社の変更チェック
+                ChangeCompany = ChangeCompanyTab(DataTab, ref  BeforeCode);
+
+                DataGridView dgv = DataTab.Group1DataGridView;
+                foreach (DataGridViewRow CurRow in dgv.Rows)
+                {
+                    // 数量
+                    QuantityVal = CommonMotions.cnvInt(CurRow.Cells[(int)DispDetailGridColumn.Quantity].Value);
+                    // 金額
+                    PriceVal = CommonMotions.cnvInt(CurRow.Cells[(int)DispDetailGridColumn.PriceValue].Value);
+                    // 工事台帳行
+                    LedgerLine = CommonMotions.cnvInt(CurRow.Cells[(int)DispDetailGridColumn.LedgerLine].Value);
+                    // 数量金額無は処理しない
+                    if (QuantityVal == 0 && PriceVal == 0) continue;
+
+                    // 変更がある場合は協力会社を変更する
+                    if (ChangeCompany)
+                    {
+                        // 協力会社名変更
+                        TargetField = (int)IOConstructionLedgerDetail.DataColumn.CompanyName;
+                        strSQL = LDetailDB.CreatePrimarykeyString(TargetCode);
+                        strSQL += string.Format(" AND SOURCECODE = {0}", m_ConstructionCode);
+                        strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                        strSQL += string.Format(" AND COMPANYCODE = {0}", BeforeCode);
+                        strSQL += string.Format(" AND EXECUTIONAMOUNT = {0}", PriceVal);
+                        if (LedgerLine != 0) strSQL += string.Format(" AND LINECOUNT = {0}", LedgerLine);
+                        if (!LDetailDB.UpdateFeild(strSQL, TargetField, DataTab.EntryTab.Text, false))
+                        {
+                            LDetailDB.rollback();
+                            return false;
+                        }
+                        // 協力会社コード変更
+                        TargetField = (int)IOConstructionLedgerDetail.DataColumn.CompanyCode;
+                        if (!LDetailDB.UpdateFeild(strSQL, TargetField, DataTab.OrderCompanyCode, false))
+                        {
+                            LDetailDB.rollback();
+                            return false;
+                        }
+                    }
+                    // 注文書作成フラグON
+                    TargetField = (int)IOConstructionLedgerDetail.DataColumn.PurchaseOrderFlg;
+                    strSQL = LDetailDB.CreatePrimarykeyString(TargetCode);
+                    strSQL += string.Format(" AND SOURCECODE = {0}", m_ConstructionCode);
+                    strSQL += string.Format(" AND GROUPCOUNT = {0}", (int)FrmConstructionLedger.DataGroup.ConstructionCosts);
+                    strSQL += string.Format(" AND COMPANYCODE = {0}", DataTab.OrderCompanyCode);
+                    strSQL += string.Format(" AND EXECUTIONAMOUNT = {0}", PriceVal);
+                    if (LedgerLine != 0) strSQL += string.Format(" AND LINECOUNT = {0}", LedgerLine);
+                    if (!LDetailDB.UpdateFeild(strSQL, TargetField, 1, false))
+                    {
+                        LDetailDB.rollback();
+                        return false;
+                    }
+                }
+
+                LDetailDB.commit();
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 協力会社変更確認
+        /// <summary>
+        /// 協力会社変更確認
+        /// </summary>
+        /// <returns></returns>
+        private bool ChangeCompanyTab(PurchaseOrderInputPage DataTab, ref int BeforeCode)
+        {
+            try
+            {
+                bool bMatch = false;
+                // 変更リストを検索する
+                foreach (KeyValuePair<int, int> CurVal in m_ChangeCompany)
+                {
+                    if (DataTab.OrderCompanyCode != CurVal.Value) continue;
+                    bMatch = true;
+                    BeforeCode = CurVal.Key;
+                    break;
+                }
+
+                return bMatch;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region データ削除処理
         /// <summary>
         /// 削除ボタン押下後の削除処理
@@ -1269,7 +1667,7 @@
                 OrderDB.connect(); OrderDB.beginTran();
                 DetailDB.connect(); DetailDB.beginTran();
 
-                // まず削除する
+                // 削除する
                 string strDel = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
                 if (!OrderDB.DeleteAction(strDel, false))
                 {
@@ -1366,7 +1764,7 @@
                 btnPetition.Size = new Size(250, btnPetition.Size.Height);
 
                 // ----- 工事コード・承認機能番号取得（申請レコードがなお場合は未申請）
-                if (!ClsApprovalPermission.CheckPetition(m_ConstructionCode, iApprovalCode)) return;
+                if (!ClsApprovalPermission.CheckPetition(m_ConstructionCode, iApprovalCode, m_OrderNo)) return;
 
                 // ----- 申請済の場合
                 // 申請ボタンの表示
@@ -1379,7 +1777,7 @@
                 btnApproval.Visible = true;
 
                 // ----- 承認済の場合
-                if (ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode))
+                if (ClsApprovalPermission.CheckApproval(m_ConstructionCode, iApprovalCode, m_OrderNo))
                 {
                     btnApproval.Text = CommonDefine.ApprovalButtonString[1];
                     btnApproval.ForeColor = Color.Black;
@@ -1401,7 +1799,7 @@
 
         #region 書込み禁止処理
         /// <summary>
-        /// 予算入力を変更禁止にする
+        /// 入力を変更禁止にする
         /// </summary>
         private void DisplayReadOnly()
         {
@@ -1462,13 +1860,12 @@
                 lblApprovalCount.Text = "";
 
                 // 工事コード・承認機能番号取得
-                int iConstructionCode = m_ConstructionBaseInfo.ConstructionCode;
                 int iApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
                 // 担当部署取得
-                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionBaseInfo.ConstructionCode, iApprovalCode);
+                int DepartmentCode = ClsApprovalPermission.GetFromConstructionAndApprovalTheDepartment(m_ConstructionCode, iApprovalCode, m_OrderNo);
 
                 // 承認データ取得
-                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(iConstructionCode, iApprovalCode);
+                int ApprovalCount = ClsApprovalPermission.GetApprovalDataCount(m_ConstructionCode, iApprovalCode, m_OrderNo);
 
                 // 承認経路マスタ取得
                 int MasterCount = ClsApprovalPermission.GetApprovalMasterCount(iApprovalCode, DepartmentCode);
@@ -2188,6 +2585,9 @@
                 int TabCnt = TabCollections.SelectedIndex;
                 PurchaseOrderInputPage DataTab = m_TabPageList[TabCnt];
 
+                // 協力会社変更リストへ追加
+                m_ChangeCompany.Add(new KeyValuePair<int, int>(DataTab.OrderCompanyCode, selRec.CompanyCode));
+
                 // 協力会社コード
                 DataTab.OrderCompanyCode = selRec.CompanyCode;
                 // 協力会社名セット
@@ -2248,5 +2648,52 @@
         }
         #endregion
 
+        #region 直接表示データリスト作成
+        /// <summary>
+        /// 直接表示データリスト作成
+        /// </summary>
+        private bool CreateDirectData()
+        {
+            IOProcessApprovalDetail ProAppDDB = new IOProcessApprovalDetail();
+            try
+            {
+                string strSQL = ProAppDDB.CreatePrimarykeyString(m_ConstructionCode
+                                                                , (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval
+                                                                , m_OrderNo);
+                List<ProcessApprovalDetail> DetailList = new List<ProcessApprovalDetail>();
+                if (!ProAppDDB.SelectAction(strSQL, ref DetailList)) return false;
+
+                m_DetailList.Clear();
+                foreach (ProcessApprovalDetail CurRec in DetailList)
+                {
+                    m_DetailList.Add(new object[] {m_ConstructionCode,      // ConstructionCode
+                                                    "",                     // FirstString,
+                                                    "",                     // SecondString,
+                                                    0,                      // CompanyCode,
+                                                    "",                     // CompanyName,
+                                                    0,                      // ExecutionAmount,
+                                                    m_ConstructionCode,     // SourceCode,
+                                                    0,                      // PurchaseOrderflg,
+                                                    "",                     // DetailString,
+                                                    0,                      // ApprovalStatus,
+                                                    CurRec.LinkCode,        // PurchaseSeqNo,
+                                                    0,                      // LedgerLine,
+                                                    CurRec.LinkCode         // OrderNo,
+                                                    });
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                ProAppDDB.close(); ProAppDDB = null;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmPurchaseOrderEntry
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        //private Form[] m_SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -114,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -202,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -235,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -279,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -296,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -312,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -323,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -340,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -356,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -367,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -384,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -400,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -411,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -428,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -444,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -455,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -472,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -488,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -499,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -516,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -531,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -542,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -559,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -575,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -586,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -603,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -619,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -652,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -696,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -712,7 +858,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -947,11 +1093,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1120,6 +1267,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/PurchaseOrderInputPage.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/PurchaseOrderInputPage.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderEntry/PurchaseOrderInputPage.cs	(revision 51)
@@ -20,7 +20,11 @@
         /// 発注先会社コード
         /// </summary>
         private int                             m_OrderCompanyCode = 0;
-        
+        /// <summary>
+        /// 注文書枝番
+        /// </summary>
+        private int                             m_SeqNo = 0;
+
         #region ベースタブ
         /// <summary>
         /// タブページ
@@ -87,12 +91,12 @@
         /// <summary>
         /// グリッドテキストボックスカラム
         /// </summary>
-        private DataGridViewTextBoxColumn[]     m_Group1TextBoxColumn = new DataGridViewTextBoxColumn[10];
+        private DataGridViewTextBoxColumn[]     m_Group1TextBoxColumn = new DataGridViewTextBoxColumn[FrmPurchaseOrderEntry.GridColumnCount];
 
         /// <summary>
         /// セルスタイル
         /// </summary>
-        private DataGridViewCellStyle[]         m_Group1CellStyle = new DataGridViewCellStyle[10];
+        private DataGridViewCellStyle[]         m_Group1CellStyle = new DataGridViewCellStyle[FrmPurchaseOrderEntry.GridColumnCount];
         #endregion
 
         #region 簡易版支払い条件グループ
@@ -181,7 +185,15 @@
             get { return m_OrderCompanyCode; }
             set { m_OrderCompanyCode = value; }
         }
-        
+        /// <summary>
+        /// 注文書枝番
+        /// </summary>
+        public int SeqNo
+        {
+            get { return m_SeqNo; }
+            set { m_SeqNo = value; }
+        }
+
         #region ベースタブ
         /// <summary>
         /// タブページ
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.Designer.cs	(revision 51)
@@ -33,6 +33,7 @@
             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.panel1 = new System.Windows.Forms.Panel();
             this.label2 = new System.Windows.Forms.Label();
@@ -56,6 +57,7 @@
             this.btnOtherProc = new System.Windows.Forms.Button();
             this.btnCancel = new System.Windows.Forms.Button();
             this.btnPrint = new System.Windows.Forms.Button();
+            this.lblNoLook = new System.Windows.Forms.Label();
             this.groupBox2 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
             this.PrintProgress = new System.Windows.Forms.ProgressBar();
             this.dgvAllDisplay = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
@@ -63,10 +65,10 @@
             this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
-            this.lblNoLook = new System.Windows.Forms.Label();
             this.panel1.SuspendLayout();
             this.groupBox2.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvAllDisplay)).BeginInit();
@@ -213,6 +215,7 @@
             this.label6.TabIndex = 35;
             this.label6.Text = "注文書作成日";
             this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label6.Visible = false;
             // 
             // label14
             // 
@@ -268,6 +271,7 @@
             this.label7.Size = new System.Drawing.Size(114, 25);
             this.label7.TabIndex = 36;
             this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label7.Visible = false;
             // 
             // label11
             // 
@@ -322,7 +326,7 @@
             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(200, 30);
+            this.btnOtherProc.Size = new System.Drawing.Size(160, 30);
             this.btnOtherProc.TabIndex = 95;
             this.btnOtherProc.TabStop = false;
             this.btnOtherProc.Text = "他の画面へ";
@@ -356,6 +360,17 @@
             this.btnPrint.UseVisualStyleBackColor = false;
             this.btnPrint.Click += new System.EventHandler(this.btnPrint_Click);
             // 
+            // lblNoLook
+            // 
+            this.lblNoLook.AutoSize = true;
+            this.lblNoLook.BackColor = System.Drawing.Color.White;
+            this.lblNoLook.Location = new System.Drawing.Point(12, 9);
+            this.lblNoLook.Name = "lblNoLook";
+            this.lblNoLook.Size = new System.Drawing.Size(127, 16);
+            this.lblNoLook.TabIndex = 98;
+            this.lblNoLook.Text = "見えないラベル";
+            this.lblNoLook.Visible = false;
+            // 
             // groupBox2
             // 
             this.groupBox2.BackColor = System.Drawing.Color.WhiteSmoke;
@@ -401,6 +416,7 @@
             this.dataGridViewTextBoxColumn3,
             this.Column5,
             this.Column6,
+            this.Column4,
             this.Column1,
             this.Column3,
             this.Column2});
@@ -456,13 +472,23 @@
             this.Column6.Name = "Column6";
             this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column6.Width = 550;
+            this.Column6.Width = 400;
             // 
+            // Column4
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle5;
+            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 = 150;
+            // 
             // Column1
             // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle5;
-            this.Column1.Frozen = true;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle6;
             this.Column1.HeaderText = "発注金額";
             this.Column1.Name = "Column1";
             this.Column1.ReadOnly = true;
@@ -471,7 +497,6 @@
             // 
             // Column3
             // 
-            this.Column3.Frozen = true;
             this.Column3.HeaderText = "支払条件";
             this.Column3.Name = "Column3";
             this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
@@ -479,21 +504,9 @@
             // 
             // Column2
             // 
-            this.Column2.Frozen = true;
             this.Column2.HeaderText = "印刷";
             this.Column2.Name = "Column2";
             // 
-            // lblNoLook
-            // 
-            this.lblNoLook.AutoSize = true;
-            this.lblNoLook.BackColor = System.Drawing.Color.White;
-            this.lblNoLook.Location = new System.Drawing.Point(12, 9);
-            this.lblNoLook.Name = "lblNoLook";
-            this.lblNoLook.Size = new System.Drawing.Size(127, 16);
-            this.lblNoLook.TabIndex = 98;
-            this.lblNoLook.Text = "見えないラベル";
-            this.lblNoLook.Visible = false;
-            // 
             // FrmPurchaseOrderPrint
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -551,16 +564,17 @@
         private CustomControls.DataGridViewEX dgvAllDisplay;
         private System.Windows.Forms.Button btnCancel;
         private System.Windows.Forms.Button btnPrint;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.ProgressBar PrintProgress;
+        private System.Windows.Forms.Label lblNoLook;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewCheckBoxColumn Column2;
-        private System.Windows.Forms.Label label6;
-        private System.Windows.Forms.Label label7;
-        private System.Windows.Forms.ProgressBar PrintProgress;
-        private System.Windows.Forms.Label lblNoLook;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.cs	(revision 51)
@@ -41,7 +41,7 @@
         /// <summary>
         /// 発注明細グリッド定義
         /// </summary>
-        private enum DispDetailGridColumn
+        private enum GridColumn
         {
             /// <summary>
             /// 番号
@@ -48,41 +48,33 @@
             /// </summary>
             No = 0,
             /// <summary>
-            /// グループ番号
+            /// 注文書枝番
             /// </summary>
-            GroupNo,
+            SeqNo,
             /// <summary>
-            /// 構成コード
+            /// 注文書番号
             /// </summary>
-            ComponentCode,
+            PurchaseNo,
             /// <summary>
-            /// 工種コード
+            /// 発注会社名
             /// </summary>
-            ItemCode,
+            PurchaseName,
             /// <summary>
-            /// 項目・品名名
+            /// 注文書作成日
             /// </summary>
-            FirstName,
+            CreateDate,
             /// <summary>
-            /// 内容内訳
+            /// 発注金額
             /// </summary>
-            SecondName,
+            PurchasePrice,
             /// <summary>
-            /// 数量
+            /// 発注条件
             /// </summary>
-            Quantity,
+            PurchaseTerms,
             /// <summary>
-            /// 単位
+            /// 印刷チェック
             /// </summary>
-            UnitName,
-            /// <summary>
-            /// 単価
-            /// </summary>
-            UnitPrice,
-            /// <summary>
-            /// 金額
-            /// </summary>
-            PriceValue
+            PrintExec,
         }
         #endregion
 
@@ -405,6 +397,11 @@
         private int m_ConstructionCode = 0;
 
         /// <summary>
+        /// 機能承認回数
+        /// </summary>
+        private int m_OrderNo = 1;
+
+        /// <summary>
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_CloseingProcessOn = true;
@@ -422,8 +419,13 @@
         /// <summary>
         /// ラベルコントロール保持配列
         /// </summary>
-        private Control[] m_DspLabelCtrl = new Control[9];
+        private Control[] m_DspLabelCtrl;
 
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
         // *-----* 共通処理設定 *-----*
         /// <summary>
         /// サブフォームフラグ
@@ -435,6 +437,15 @@
         private bool m_ParentEnd = false;
         // *-----* 共通処理設定 *-----*
 
+        /// <summary>
+        /// 機能承認回数
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+
         #endregion
 
         #region プロパティ
@@ -447,6 +458,15 @@
             set { m_ConstructionCode = value; }
         }
 
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
         // *-----* 共通処理設定 *-----*
         /// <summary>
         /// サブフォームフラグ
@@ -497,6 +517,13 @@
             // データ表示
             InitDataLoad();
 
+            // 参照時は印刷できない
+            if (m_EditLock)
+            {
+                btnPrint.Enabled = false;
+                btnCancel.Enabled = false;
+            }
+
             // *-----* 処理移動ボタン設定 *-----*
             CreateProcessContextMenu(m_SubForm);
             // *-----* 処理移動ボタン設定 *-----*
@@ -564,108 +591,8 @@
         /// <param name="e"></param>
         private void btnPrint_Click(object sender, EventArgs e)
         {
-            FrmSaveFilePath frm = new FrmSaveFilePath();
-            FrmStatusAndDate frmStatus = new FrmStatusAndDate();
-            try
-            {
-
-                // 工事番号のセット
-                frmStatus.ConstructionCode = m_ConstructionCode;
-
-                // 変更進捗状態
-                int iProgressCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("施工準備")).Key;
-                frmStatus.ProgressStatus = iProgressCode;
-
-                // 消費税は使用しない
-                frmStatus.TaxDisplayFlg = false;
-                // 作成日付のセット
-                DateTime CreateDate = CommonMotions.cnvDate(lblNoLook.Text);
-                if (CreateDate == DateTime.MinValue)
-                {
-                    frmStatus.ExcuteDate = DateTime.Now;
-                }
-                else
-                {
-                    frmStatus.ExcuteDate = CreateDate;
-                }
-
-                // ウィンドウ表示
-                //frmStatus.ShowInTaskbar = false;
-                frmStatus.ShowDialog();
-
-                // 終了状態
-                m_PrintresRet = frmStatus.EndButton;
-
-                // 日付印刷フラグ
-                m_PrintDate = frmStatus.DatePrintFlg;
-
-                // 作成日付の更新
-                if (frmStatus.ExcuteDate != CreateDate)
-                {
-                    if (!PurchaseOrderUpdate(frmStatus.ExcuteDate)) return;
-                    m_DspLabelCtrl[(int)DspLblCtrlName.CreateDate].Text = frmStatus.ExcuteDate.ToShortDateString();
-                }
-
-                // キャンセルは処理しない
-                if (m_PrintresRet == DialogResult.Cancel) return;
-
-                bool bSimplePrint = true;
-                if (!m_DspLabelCtrl[(int)DspLblCtrlName.OrderSheetType].Text.Equals(s_OrderSheetTypeString[0])) bSimplePrint = false;
-
-                // EXCEL保存時選択
-                if (m_PrintresRet == DialogResult.No)
-                {
-                    // 保存先を選択する
-                    if (bSimplePrint) frm.SaveType = (int)CommonDefine.SaveFileType.ExcelFile;
-                    else frm.SaveType = (int)CommonDefine.SaveFileType.WordFile;
-
-                    //frm.ShowInTaskbar = false;
-                    
-                    frm.ShowDialog();
-                    if (frm.EndButton == DialogResult.Cancel) return;
-                    m_SelectSaveExcel = frm.SelectPath;
-                    m_SelectSaveWord = frm.SelectPath;
-                }
-
-
-                // 印刷プロセス数取得
-                m_ProcessCount = GetProcessCount() + 2;       // 枚数＋ＥＸＣＥＬオブジェクト取得(2)
-                PrintProgress.Visible = true;
-                groupBox2.Update();
-                PrintProgress.Minimum = 0;
-                PrintProgress.Maximum = m_ProcessCount;
-                PrintProgress.Value = 0;
-
-                m_Canceled = false;
-                // ボタンの変更
-                PrintButtonVisbleControl(true);
-
-                //印刷を別スレッドで実行する
-                m_ProgressCount = 0;
-                if (bSimplePrint)
-                {   // 簡易版
-                    workerThread = new System.Threading.Thread(new System.Threading.ThreadStart(SimplePrintMain));
-                }
-                else
-                {
-                    // 印刷クラス
-                    m_UsedWord = new UsedWord();
-                    // 正規版
-                    workerThread = new System.Threading.Thread(new System.Threading.ThreadStart(RegularPrintMain));
-                }
-                workerThread.IsBackground = true;
-                workerThread.Start();
-
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                frm.Close(); frm = null;
-                frmStatus.Close(); frmStatus = null;
-            }
+            // 印刷処理
+            PrintProcess();
         }
         #endregion
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrint.resx	(revision 51)
@@ -120,6 +120,9 @@
   <metadata name="Column5.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="Column1.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/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/FrmPurchaseOrderPrintAuxiliary.cs	(revision 51)
@@ -59,6 +59,9 @@
         /// </summary>
         private void SetDisplayObject()
         {
+            int DspCtrlCnt = Enum.GetNames(typeof(DspLblCtrlName)).Length;
+            m_DspLabelCtrl = new Control[DspCtrlCnt];
+
             // ヘッダー情報
             m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode] = lblLabel01;
             m_DspLabelCtrl[(int)DspLblCtrlName.ConstName] = lblLabel02;
@@ -107,46 +110,54 @@
         private void DispHeader()
         {
             IOConstructionBaseInfoDetail cbidDB = new IOConstructionBaseInfoDetail();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            IOMConstructionType ctypeDB = new IOMConstructionType();
             IOPurchaseOrder OrderDB = new IOPurchaseOrder();
             try
             {
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode].Text = CommonMotions.cnvStringCodeFromInt(m_ConstructionBaseInfo.ConstructionCode, "-", 8);       // 工事コード
+                string strConstrCode = CommonMotions.cnvStringCodeFromInt(m_ConstructionBaseInfo.ConstructionCode, "-", 8);       // 工事コード
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstCode].Text = strConstrCode;
 
                 // 工事基本情報明細取得
-                string strSQL = cbidDB.CreatePrimarykeyString(m_ConstructionCode, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-                ConstructionBaseInfoDetail workRec = new ConstructionBaseInfoDetail();
-                if (!cbidDB.SelectAction(strSQL, ref workRec)) return;
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstName].Text = workRec.DetailString;                                                                      // 工事名称
-                strSQL = cbidDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += string.Format(" And (DetailNo = {0} Or DetailNo = {1} Or DetailNo = {2})",
-                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace1,                                   // 工事場所１
-                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace2,                                   // 工事場所２
-                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3);                                  // 工事場所３
-                strSQL += " Order By DetailNo";
-                List<ConstructionBaseInfoDetail> workList = new List<ConstructionBaseInfoDetail>();
-                cbidDB.SelectAction(strSQL, ref workList);
-                string Place = string.Empty;
-                foreach (ConstructionBaseInfoDetail wrkRec in workList)
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILNO, B.DETAILSTRING, C.PERSONCODE, C.PERSONNAME, D.TYPECODE, D.NAMESTRING";
+                strSQL += " FROM CONSTRUCTIONBASEINFO A";
+                strSQL += " LEFT JOIN CONSTRUCTIONBASEINFODETAIL B";
+                strSQL += " ON B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND (B.DETAILNO = {0} OR B.DETAILNO = {1} OR B.DETAILNO = {2} OR B.DETAILNO = {3})",
+                                        (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName,                          // 工事名称
+                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace1,                    // 工事場所１
+                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace2,                    // 工事場所２
+                                            (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3);                   // 工事場所３
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += " LEFT JOIN CONSTRUCTIONTYPEMASTER D ON D.TYPECODE = A.CONSTRUCTIONTYPE";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                strSQL += " ORDER BY B.DETAILNO ASC";
+
+                ArrayList workList = new ArrayList();
+                if (!cbidDB.ExecuteReader(strSQL, ref workList)) return;
+                string ConstrName = string.Empty;
+                string ConstrPlace = string.Empty;
+                string CreatorName = string.Empty;
+                string ConstructionType = string.Empty;
+                foreach (object[] wrkRec in workList)
                 {
-                    Place += wrkRec.DetailString;
+                    switch (CommonMotions.cnvInt(wrkRec[1]))
+                    {
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName:
+                            ConstrName = CommonMotions.cnvString(wrkRec[2]);
+                            break;
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace1:
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace2:
+                        case (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3:
+                            ConstrPlace += CommonMotions.cnvString(wrkRec[2]);
+                            break;
+                    }
+                    CreatorName = CommonMotions.cnvString(wrkRec[4]);
+                    ConstructionType = CommonMotions.cnvString(wrkRec[6]);
                 }
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstPlace].Text = Place;                                                                                    // 工事場所
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstName].Text = ConstrName;                    // 工事名称
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstPlace].Text = ConstrPlace;                  // 工事場所
+                m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName].Text = CreatorName;                 // 工事担当者取得
+                m_DspLabelCtrl[(int)DspLblCtrlName.ConstructionType].Text = ConstructionType;       // 工事種別マスタ取得
 
-                // 工事担当者取得
-                strSQL = picDB.CreatePrimarykeyString(m_ConstructionBaseInfo.ConstructionPersonCode);
-                PersonInChargeMaster personRec = new PersonInChargeMaster();
-                picDB.SelectAction(strSQL, ref personRec);
-
-                m_DspLabelCtrl[(int)DspLblCtrlName.CreatorName].Text = personRec.PersonName;                                                                    // 工事担当者
-
-                // 工事種別マスタ取得
-                strSQL = ctypeDB.CreatePrimarykeyString(m_ConstructionBaseInfo.ConstructionType);
-                ConstructionTypeMaster ctypeRec = new ConstructionTypeMaster();
-                ctypeDB.SelectAction(strSQL, ref ctypeRec);
-                m_DspLabelCtrl[(int)DspLblCtrlName.ConstructionType].Text = ctypeRec.NameString;                                                                // 工事種別
-
                 DateTime StDate = m_ConstructionBaseInfo.ConstructionPeriodStart;
                 DateTime EdDate = m_ConstructionBaseInfo.ConstructionPeriodEnd;
                 if (StDate != DateTime.MinValue && EdDate != DateTime.MinValue)
@@ -182,8 +193,6 @@
             finally
             {
                 cbidDB.close(); cbidDB = null;
-                picDB.close(); picDB = null;
-                ctypeDB.close(); ctypeDB = null;
                 OrderDB.close();OrderDB=null;
             }
         }
@@ -197,22 +206,30 @@
         private bool SetPurchaseOrderData()
         {
             IOPurchaseOrder OrderDB = new IOPurchaseOrder();
-            IOMSubContractor SubConDB=new IOMSubContractor();
+            IOMSubContractor SubConDB = new IOMSubContractor();
             try
             {
                 // 注文書データ読込
-                string strSQL = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
-                strSQL += " ORDER BY SEQNO";
-                List<PurchaseOrder> OrderList = new List<PurchaseOrder>();
-                if (!OrderDB.SelectAction(strSQL, ref OrderList)) return false;
-                if (OrderList.Count == 0) return false;
-                
-                // 印刷日付を取得する
-                lblNoLook.Text = OrderList[0].PrintoutDate.ToShortDateString();
-                
+                string strSQL = "SELECT A.* FROM PURCHASEORDER A, PROCESSAPPROVALDETAIL B, PROCESSAPPROVAL C";
+                strSQL += string.Format(" WHERE A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.APPROVALCODE = {0}", (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
+                strSQL += string.Format(" AND B.ORDERNO = {0}", m_OrderNo);
+                strSQL += " AND B.LINKCODE = A.SEQNO";
+                strSQL += " AND C.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND C.APPROVALCODE = B.APPROVALCODE AND C.ORDERNO = B.ORDERNO AND C.SEQNO = 1";
+                strSQL += string.Format(" AND C.APPROVALSTATUS = {0}", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " ORDER BY A.SEQNO";
+
+                ArrayList arList = new ArrayList();
+                if (!OrderDB.ExecuteReader(strSQL, ref arList)) return false;
+                if (arList.Count == 0) return false;
+
                 int icnt = 1;
-                foreach (PurchaseOrder OrderRec in OrderList)
+                PurchaseOrder OrderRec = new PurchaseOrder();
+                foreach (object[] objRec in arList)
                 {
+                    OrderDB.Reader2Struct(objRec, ref OrderRec);
+
                     // 協力会社検索
                     string SubSQL = SubConDB.CreatePrimarykeyString(OrderRec.CompanyCode);
                     SubContractorMaster SubConRec = new SubContractorMaster();
@@ -243,10 +260,14 @@
                                             OrderRec.SeqNo,
                                             string.Format("{0}-{1}", OrderRec.ConstructionCode, OrderRec.SeqNo.ToString("000")),    // 発注番号セット
                                             SubConRec.CompanyName,                                                                  // 発注先会社名
+                                            OrderRec.CreateDate.ToShortDateString(),                                              // 注文書作成日
                                             OrderRec.OrderPrice.ToString("#,0"),                                                    // 発注金額
                                             PurchaseString,                                                                         // 支払条件
                                             true);
                     icnt++;
+
+                    // 印刷日付を取得する
+                    //lblNoLook.Text = OrderRec.PrintoutDate.ToShortDateString();
                 }
 
                 return true;
@@ -307,12 +328,26 @@
                 {
                     bRet = true;
                 }
-                // システム管理者・最高機密管理者は全てのデータにデータアクセス出来る
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement ||
-                CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    bRet = true;
+                    // システム管理者・最高機密管理者は全てのデータにデータアクセス出来る
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement ||
+                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                    {
+                        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;
             }
@@ -358,14 +393,31 @@
             IOPurchaseOrder OrderDB = new IOPurchaseOrder();
             try
             {
-                string strWhere = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
-                List<PurchaseOrder> OrderList = new List<PurchaseOrder>();
-                if (!OrderDB.SelectAction(strWhere, ref OrderList)) return false;
+                //string strWhere = OrderDB.CreatePrimarykeyString(m_ConstructionCode);
+                //List<PurchaseOrder> OrderList = new List<PurchaseOrder>();
+                //if (!OrderDB.SelectAction(strWhere, ref OrderList)) return false;
 
-                string strSQL = string.Format("UPDATE PurchaseOrder SET PrintoutDate = DATE_FORMAT('{0}','%Y/%m/%d')", CreateDate.ToShortDateString());
-                strSQL += string.Format(" {0}", strWhere);
-                if (!OrderDB.ExecuteNonQuery(strSQL)) return false;
+                //string strSQL = string.Format("UPDATE PurchaseOrder SET PrintoutDate = TO_DATE('{0}','YYYY/MM/DD')", CreateDate.ToShortDateString());
+                //strSQL += string.Format(" {0}", strWhere);
+                //if (!OrderDB.ExecuteNonQuery(strSQL)) return false;
 
+                OrderDB.connect(); OrderDB.beginTran();
+                int GridSeqNo = 0;
+                foreach(DataGridViewRow GridCurRow in dgvAllDisplay.Rows)
+                {
+                    // 選択無は対象外
+                    if (CommonMotions.chkCellBlank(GridCurRow.Cells[(int)GridColumn.PrintExec].Value)) continue;
+                    if (!(bool)GridCurRow.Cells[(int)GridColumn.PrintExec].Value) continue;
+                    // 枝番取得
+                    GridSeqNo=CommonMotions.cnvInt(GridCurRow.Cells[(int)GridColumn.SeqNo].Value);
+                    // 印刷日セット
+                    if (!OrderDB.UpdateFeild(m_ConstructionCode,(int)IOPurchaseOrder.TableColumn.PrintoutDate, CreateDate, false, GridSeqNo))
+                    {
+                        OrderDB.rollback();
+                        return false;
+                    }
+                }
+
                 return true;
             }
             catch (System.Exception ex)
@@ -375,9 +427,152 @@
             }
             finally
             {
+                OrderDB.commit();
                 OrderDB.close(); OrderDB = null;
             }
         }
         #endregion
+
+        #region 印刷処理
+        /// <summary>
+        /// 印刷処理
+        /// </summary>
+        private void PrintProcess()
+        {
+            FrmSaveFilePath frm = new FrmSaveFilePath();
+            FrmStatusAndDate frmStatus = new FrmStatusAndDate();
+            try
+            {
+                // 工事番号のセット
+                frmStatus.ConstructionCode = m_ConstructionCode;
+
+                // 印刷対象取得
+                GetDispToPrintTarget();
+
+                // 変更進捗状態
+                int iProgressCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("施工準備")).Key;
+                frmStatus.ProgressStatus = iProgressCode;
+
+                // 消費税は使用しない
+                frmStatus.TaxDisplayFlg = false;
+                // 印刷処理番号セット
+                frmStatus.ExecuteProcNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+
+                // 作成日付のセット
+                DateTime CreateDate = CommonMotions.cnvDate(lblNoLook.Text);
+                if (CreateDate == DateTime.MinValue)
+                {
+                    frmStatus.ExcuteDate = DateTime.Now;
+                }
+                else
+                {
+                    frmStatus.ExcuteDate = CreateDate;
+                }
+
+                // ウィンドウ表示
+                //frmStatus.ShowInTaskbar = false;
+                frmStatus.ShowDialog();
+
+                // 終了状態
+                m_PrintresRet = frmStatus.EndButton;
+
+                // 日付印刷フラグ
+                m_PrintDate = frmStatus.DatePrintFlg;
+
+                // 作成日付の更新
+                if (frmStatus.ExcuteDate != CreateDate)
+                {
+                    if (!PurchaseOrderUpdate(frmStatus.ExcuteDate)) return;
+                    m_DspLabelCtrl[(int)DspLblCtrlName.CreateDate].Text = frmStatus.ExcuteDate.ToShortDateString();
+                }
+
+                // キャンセルは処理しない
+                if (m_PrintresRet == DialogResult.Cancel) return;
+
+                bool bSimplePrint = true;
+                if (!m_DspLabelCtrl[(int)DspLblCtrlName.OrderSheetType].Text.Equals(s_OrderSheetTypeString[0])) bSimplePrint = false;
+
+                // EXCEL保存時選択
+                if (m_PrintresRet == DialogResult.No)
+                {
+                    // 保存先を選択する
+                    if (bSimplePrint) frm.SaveType = (int)CommonDefine.SaveFileType.ExcelFile;
+                    else frm.SaveType = (int)CommonDefine.SaveFileType.WordFile;
+
+                    //frm.ShowInTaskbar = false;
+
+                    frm.ShowDialog();
+                    if (frm.EndButton == DialogResult.Cancel) return;
+                    m_SelectSaveExcel = frm.SelectPath;
+                    m_SelectSaveWord = frm.SelectPath;
+                }
+
+
+                // 印刷プロセス数取得
+                m_ProcessCount = GetProcessCount() + 2;       // 枚数＋ＥＸＣＥＬオブジェクト取得(2)
+                PrintProgress.Visible = true;
+                groupBox2.Update();
+                PrintProgress.Minimum = 0;
+                PrintProgress.Maximum = m_ProcessCount;
+                PrintProgress.Value = 0;
+
+                m_Canceled = false;
+                // ボタンの変更
+                PrintButtonVisbleControl(true);
+
+                //印刷を別スレッドで実行する
+                m_ProgressCount = 0;
+                if (bSimplePrint)
+                {   // 簡易版
+                    workerThread = new System.Threading.Thread(new System.Threading.ThreadStart(SimplePrintMain));
+                }
+                else
+                {
+                    // 印刷クラス
+                    m_UsedWord = new UsedWord();
+                    // 正規版
+                    workerThread = new System.Threading.Thread(new System.Threading.ThreadStart(RegularPrintMain));
+                }
+                workerThread.IsBackground = true;
+                workerThread.Start();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Close(); frm = null;
+                frmStatus.Close(); frmStatus = null;
+            }
+        }
+        #endregion
+
+        #region 印刷対象コード取得
+        /// <summary>
+        /// 印刷対象コード取得
+        /// </summary>
+        private void GetDispToPrintTarget()
+        {
+            try
+            {
+                DataGridView dgv = dgvAllDisplay;
+                m_PrintList.Clear();
+
+                foreach (DataGridViewRow CurRow in dgv.Rows)
+                {
+                    // Offは処理しない
+                    if (CurRow.Cells[(int)GridColumn.PrintExec].Value == null) continue;
+                    if (!(bool)CurRow.Cells[(int)GridColumn.PrintExec].Value) continue;
+
+                    m_PrintList.Add(CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.SeqNo].Value));
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintCommon.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintCommon.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintCommon.cs	(revision 51)
@@ -169,6 +169,11 @@
         /// 終了コード
         /// </summary>
         private CommonDefine.RetunAnswer m_rtAns = CommonDefine.RetunAnswer.Answer0;
+
+        /// <summary>
+        /// 印刷対象リスト
+        /// </summary>
+        private List<int> m_PrintList = new List<int>();
         #endregion
 
         #region プログレスバーの値を変更する
@@ -266,5 +271,34 @@
         }
         #endregion
 
+        #region 印刷対象のチェック
+        /// <summary>
+        /// 印刷対象のチェック
+        /// </summary>
+        /// <param name="TargetCode"></param>
+        /// <returns></returns>
+        private bool PrintTargetCheck(int TargetCode)
+        {
+            try
+            {
+                bool bRet = false;
+                foreach (int CurCode in m_PrintList)
+                {
+                    if (TargetCode == CurCode)
+                    {
+                        bRet = true;
+                        break;
+                    }
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintFormat1.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintFormat1.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintFormat1.cs	(revision 51)
@@ -133,34 +133,6 @@
         }
         #endregion
 
-        #region 今の年号を取得する
-        /// <summary>
-        /// 今の年号を取得する
-        /// </summary>
-        /// <returns></returns>
-        private string GetNameOfAnEra()
-        {
-            try
-            {
-                string strRet = string.Empty;
-
-                CultureInfo culture = new CultureInfo("ja-JP", true);
-                culture.DateTimeFormat.Calendar = new JapaneseCalendar();
-
-                string result = DateTime.Now.ToString("ggyy年M月d日", culture);
-
-                strRet = result.Substring(0, 2);
-
-                return strRet;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return string.Empty;
-            }
-        }
-        #endregion
-
         #region 表紙印鑑表示
         /// <summary>
         ///  表紙印鑑表示
@@ -171,16 +143,15 @@
             IOProcessApproval paDB = new IOProcessApproval();
             try
             {
-                // 承認データ読込
-                string strSQLSeal = paDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
-                strSQLSeal += " AND SEQNO != 1 Order By SeqNo Asc";
-                List<ProcessApproval> paList = new List<ProcessApproval>();
-                if (!paDB.SelectAction(strSQLSeal, ref paList)) return;
-
                 // 印刷テーブル作成
                 int[] PorsonTable = new int[4] { 0, 0, 0, 0 };
+                List<string> TitleTable = new List<string>();
                 List<string> NameTable = new List<string>();
-                for (int i = 0; i < PorsonTable.Length; i++) NameTable.Add("");
+                for (int i = 0; i < PorsonTable.Length; i++)
+                {
+                    TitleTable.Add("");
+                    NameTable.Add("");
+                }
 
                 // 担当者をセットする                
                 PorsonTable[3] = ChargePersonCode;
@@ -189,48 +160,39 @@
                 picDB.SelectAction(strSales, ref SalesRec);
                 NameTable[3] = SalesRec.SealPrintName;
 
+                // 承認データ読込
+                //string strSQLSeal = paDB.CreatePrimarykeyString(m_ConstructionCode, (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
+                //strSQLSeal += " AND SEQNO != 1 Order By SeqNo Asc";
+                //List<ProcessApproval> paList = new List<ProcessApproval>();
+                //if (!paDB.SelectAction(strSQLSeal, ref paList)) return;
+
+                string strSQLSeal = "SELECT * FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B, SECURITYMASTER C";
+                strSQLSeal += string.Format(" Where A.ConstructionCode = {0}", ConstructionCode.ToString());
+                strSQLSeal += string.Format(" And A.ApprovalCode = {0}", (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval);
+                strSQLSeal += string.Format(" AND A.ORDERNO = {0}", m_OrderNo);
+                strSQLSeal += " AND A.SEQNO != 1";
+                strSQLSeal += " AND B.PERSONCODE = A.PERSONCODE";
+                strSQLSeal += " AND C.SECCODE = B.SECCODE";
+                strSQLSeal += " Order By C.SECRANK ASC, B.DISPLAYORDER ASC";
+
+                ArrayList arList = new ArrayList();
+                if (!paDB.ExecuteReader(strSQLSeal, ref arList)) return;
+
+                int ProcAppCnt = Enum.GetNames(typeof(IOProcessApproval.ColumnName)).Length;
                 // 承認データより担当者その他を取得する
-                foreach (ProcessApproval readRec in paList)
+                int PrintCnt = 0;
+                foreach (object[] curRec in arList)
                 {
+                    // 枠のセットは３つまで
+                    if (PrintCnt > 2) break;
 
-                    PersonInChargeMaster PersonRec = new PersonInChargeMaster();
-                    string strSQL = picDB.CreatePrimarykeyString(readRec.PersonCode);
-                    if (!picDB.SelectAction(strSQL, ref PersonRec)) continue;
-                    // 社長かどうかを調べる
-                    if (PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        // コードと名前を取得する
-                        PorsonTable[0] = readRec.PersonCode;
-                        NameTable[0] = PersonRec.SealPrintName;
-                    }
-                    // 専務かどうかを調べる
-                    else if (PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                    {
-                        // ちょっとズルをする(専務のコードを直書き)
-                        if (readRec.PersonCode != 20010103) continue;
-                        if (PorsonTable[1] == 0)
-                        {
-                            // コードと名前と役職を取得する
-                            PorsonTable[1] = readRec.PersonCode;
-                            NameTable[1] = PersonRec.SealPrintName;
-                        }
-                    }
-                    // 所属長かどうかを調べる
-                    else if (PersonRec.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                    {
-                        if (PorsonTable[2] == 0)
-                        {
-                            // コードと名前と役職を取得する
-                            PorsonTable[2] = readRec.PersonCode;
-                            NameTable[2] = PersonRec.SealPrintName;
-                        }
-                    }
-                    else 
-                    {   // 担当者
-                        // コードと名前を取得する
-                        PorsonTable[3] = readRec.PersonCode;
-                        NameTable[3] = PersonRec.SealPrintName;
-                    }
+                    ProcessApproval parec = new ProcessApproval();
+                    paDB.Reader2Struct(curRec, ref parec);
+                    PorsonTable[PrintCnt] = parec.PersonCode;
+                    NameTable[PrintCnt] = CommonMotions.cnvString(curRec[ProcAppCnt + (int)IOMPersonInCharge.ColumnCnt.SealPrintName]);
+                    TitleTable[PrintCnt] = CommonMotions.cnvString(curRec[ProcAppCnt + (int)IOMPersonInCharge.ColumnCnt.DisplayString]);
+
+                    PrintCnt++;
                 }
                 // テーブル内に同じコードが無いか後から調べる
                 for (int i = PorsonTable.Length - 1; i >= 0; i--)
@@ -253,7 +215,8 @@
                 shapedef.ShapeWidth = s_ShapeSize[0, 0];        // 図形描画サイズ Width
                 shapedef.ShapeHeight = s_ShapeSize[0, 1];       // 図形描画サイズ Height
 
-                for (int i = 0; i < 4; i++)
+                int PrintPos = 9;   // Jは9
+                for (int i = 0; i < 4; i++, PrintPos += 2)
                 {
                     if (PorsonTable[i] == 0) continue;
 
@@ -265,6 +228,10 @@
                     shapedef.FontSize = s_EstimateSeal1FontSize[ifontSize];     // フォントサイズ
                     // 図形描画
                     m_UsedExcel.ExcelCopyShape(shapedef);
+
+                    // タイトル印字
+                    string strChar = CommonMotions.cnvNumberToAlphaCharacter(PrintPos);
+                    if (TitleTable[i].Length != 0) m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString(strChar, 14), TitleTable[i]);
                 }
             }
             catch (Exception ex)
@@ -307,6 +274,9 @@
                 string strPageName = string.Empty;
                 foreach (PurchaseOrder OrderRec in OrderList)
                 {
+                    // 印刷対象チェック
+                    if (!PrintTargetCheck(OrderRec.SeqNo)) continue;
+
                     // 協力会社名取得
                     strSQL = ContractorDB.CreatePrimarykeyString(OrderRec.CompanyCode);
                     SubContractorMaster ContractorRec = new SubContractorMaster();
@@ -565,7 +535,7 @@
                 if (m_PrintDate)                                                                                                                // 作成日付
                     m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("N", (21 + startLine)), OrderRec.CreateDate.ToShortDateString());
                 else
-                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("N", (21 + startLine)), GetNameOfAnEra() + "   年   月   日");
+                    m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("N", (21 + startLine)), CommonMotions.GetNameOfAnEra(DateTime.Now) + "   年   月   日");
 
                 m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", (22 + startLine)), PlaceString);                                     // 施工及び納入場所
                 m_UsedExcel.ExcelCellSet(m_UsedExcel.CreateCellString("D", (23 + startLine)), m_ConstructionCode.ToString());                   // 工事番号
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintFormat2.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintFormat2.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/PrintFormat2.cs	(revision 51)
@@ -216,6 +216,9 @@
                 int PageCnt = 0;
                 foreach (PurchaseOrder OrderRec in OrderList)
                 {
+                    // 印刷対象チェック
+                    if (!PrintTargetCheck(OrderRec.SeqNo)) continue;
+
                     // 先頭以外はページコピー
                     //if (PageCnt != 0) m_UsedWord.WordDocumentAdd(System.Environment.CurrentDirectory + s_InsertDocumentName);
                     if (PageCnt != 0) m_UsedWord.WordDocumentNewPage();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/ProcessControl.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderPrint/ProcessControl.cs	(revision 51)
@@ -26,10 +26,12 @@
 {
     partial class FrmPurchaseOrderPrint
     {
+        #region 自プロセスの番号
         /// <summary>
         /// 自プロセスの番号を持つ
         /// </summary>
         private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+ 		#endregion
 
         #region プロセスコンテキストメニュー変数
         /// <summary>
@@ -38,13 +40,6 @@
         private ContextMenuStrip m_ProcessContextMenuStrip;
         #endregion
 
-        #region 他プロセスフォーム配列変数
-        /// <summary>
-        /// 他プロセスフォーム配列
-        /// </summary>
-        // private Form[] m_SubFormHandleList = null;
-        #endregion
-
         #region 別プロセス移動メニュー作成
         /// <summary>
         /// 別プロセス移動メニュー作成
@@ -114,6 +109,7 @@
                             handle = ProcessExecute_ConstructionBudget;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            if (m_EditLock) continue;
                             handle = ProcessExecute_ConstructionCopyList;
                             break;
                         case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
@@ -202,6 +198,7 @@
 
                     // 画面クローズ
                     Handle.SubFormHandle.Close();
+                    if (Handle.SubFormHandle != null) Handle.SubFormHandle.Dispose();
                     ClsExcute.SubFormHandleList[i].SubFormHandle = null;
                 }
             }
@@ -235,7 +232,7 @@
         }
         #endregion
 
-        #region ---------- 他プロセス起動ハンドラ群　START
+        #region    // ---------- 他プロセス起動ハンドラ群　START
         #region 一気にメニューへ戻る
         /// <summary>
         /// 一気にメニューへ戻る
@@ -279,6 +276,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
@@ -296,11 +294,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事情報入力起動
                 frm = new FrmConstructionBaseInfo();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -312,6 +324,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -323,6 +339,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateInput(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
@@ -340,11 +357,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書入力起動
                 frm = new FrmEstimateInput();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -356,6 +386,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -367,6 +401,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimatePrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
@@ -384,11 +419,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算見積書印刷起動
                 frm = new FrmEstimatePrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -400,6 +448,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -411,6 +463,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_EstimateBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
@@ -428,11 +481,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 積算予算書入力起動
                 frm = new FrmEstimateBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -444,6 +510,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -455,6 +525,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionBudget(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
@@ -472,11 +543,24 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事予算書入力起動
                 frm = new FrmConstructionBudget();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -488,6 +572,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -499,6 +587,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
@@ -516,11 +605,23 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 工事案件コピー起動
                 frm = new FrmNewOrContinueCopy();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
                 frm.ShowInTaskbar = true;
 
                 // クロースドハンドラをこちらで定義する
@@ -531,6 +632,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -542,6 +647,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
@@ -559,11 +665,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書入力起動
                 frm = new FrmPurchaseOrderEntry();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -575,6 +695,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -586,6 +710,7 @@
         /// <param name="e"></param>
         private void ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
         {
+            FrmTyingConstrDiag frmTying = new FrmTyingConstrDiag();
             try
             {
                 int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
@@ -603,11 +728,25 @@
                     if (!DataEntryProcess()) return;
                 }
 
+                // 増減工事はサブフォームを表示する
+                int SelConstrCode = m_ConstructionCode;
+                if (m_ConstructionBaseInfo.TyingFlg != (int)CommonDefine.BaseInfoTyingFlg.Standard ||
+                    m_ConstructionBaseInfo.JoinFlg != (int)CommonDefine.BaseInfoJoinFlg.Standard)
+                {
+                    frmTying.ParentAdd = true;
+                    frmTying.OperationProcess = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                    frmTying.ConstructionCode = m_ConstructionCode;
+                    frmTying.ShowDialog();
+                    if (frmTying.EndButton == DialogResult.No) return;
+                    SelConstrCode = frmTying.ConstructionCode;
+                }
+
                 // 注文書印刷起動
                 frm = new FrmPurchaseOrderPrint();
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
-                frm.ConstructionCode = m_ConstructionCode;
+                frm.ConstructionCode = SelConstrCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -619,6 +758,10 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                frmTying.Dispose(); frmTying = null;
+            }
         }
         #endregion
 
@@ -652,6 +795,7 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -696,6 +840,8 @@
                 ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
                 ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
                 frm.ConstructionCode = m_ConstructionCode;
+                frm.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frm.EditLock = m_EditLock;
                 frm.SubForm = true;
                 frm.ShowInTaskbar = true;
 
@@ -712,7 +858,7 @@
 
         #endregion // ---------- 他プロセス起動ハンドラ群　END
 
-        #region ---------- 他プロセス終了ハンドラ群　START
+        #region    // ---------- 他プロセス終了ハンドラ群　START
         #region 工事情報入力のクローズを取得する
         /// <summary>
         /// 工事情報入力のクローズを取得する
@@ -947,11 +1093,12 @@
                 // コピー作成データフラグセット
                 ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
 
-                this.Activate();
+                //this.Activate();
 
                 // 終了処理フラグOff
                 m_CloseingProcessOn = false;
 
+                this.Close();
             }
             catch (Exception ex)
             {
@@ -1120,6 +1267,5 @@
         #endregion
 
         #endregion // ---------- 他プロセス終了ハンドラ群　END
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.cs	(revision 51)
@@ -0,0 +1,398 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*---------------------------- �����������󋵉�� ----------------------------*
+//  2017/01/06  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmPurchaseOrderStatus : Form
+    {
+        #region �g�p��`
+        //log4net���O���g�p����
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region �萔
+        /// <summary>
+        /// �\���J����
+        /// </summary>
+        private enum DispColumn
+        {
+            No = 0,
+            ConstructionDepartment,
+            ConstructionPerson,
+            ConstructionName,
+            PrintOut,
+            Status,
+            ConstructionPeriod,
+            ConstructionCode,
+            PrintOutDate,
+            MailingDate,
+            ReturnDate,
+            ReturnCheckDate,
+        }
+
+        #endregion
+
+        #region �ϐ�
+        /// <summary>
+        /// �t�B�[���h�l�ω��t���O
+        /// </summary>
+        //private bool m_bChengeAns = false;
+
+        /// <summary>
+        /// �������t���O
+        /// </summary>
+        private bool m_initDataLoad = true;
+
+        /// <summary>
+        /// �����Ǎ����f�[�^�J�E���g
+        /// </summary>
+        private int m_initDataCount = 0;
+
+        /// <summary>
+        /// �N���t���O
+        /// </summary>
+        //private int m_ExecuteFlg = 0;
+
+        /// <summary>
+        /// �f�[�^�ǉ��{�^���\���t���O
+        /// </summary>
+        private bool m_DataAddtionButton = false;
+        /// <summary>
+        /// �I���{�^�������t���O
+        /// </summary>
+        private bool m_CloseingProcessOff = false;
+
+        /// <summary>
+        /// Cell���T�C�Y
+        /// </summary>
+        private int[] m_CellSize;
+
+        #region �t�H�[����
+        /// <summary>
+        /// �t�H�[����
+        /// </summary>
+        private int m_FormWidthSize = 0;
+        #endregion
+
+        #region �O���b�h���T�C�Y
+        /// <summary>
+        /// �O���b�h���T�C�Y
+        /// </summary>
+        private int m_GridWidthSize = 0;
+        #endregion
+        #endregion
+
+        #region �v���p�e�B
+        //public int ExecuteFlg
+        //{
+        //    get { return m_ExecuteFlg; }
+        //    set { m_ExecuteFlg = value; }
+        //}
+        /// <summary>
+        /// �f�[�^�ǉ��{�^���\��
+        /// </summary>
+        public bool DataAddtionButton
+        {
+            get { return m_DataAddtionButton; }
+            set { m_DataAddtionButton = value; }
+        }
+        #endregion
+
+        #region �R���X�g���N�^
+        public FrmPurchaseOrderStatus()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region �f�X�g���N�^
+        ~FrmPurchaseOrderStatus()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �~�{�^��
+        /// <summary>
+        /// �~�{�^����������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmPurchaseOrderStatus_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (m_CloseingProcessOff) return;
+
+            // �O�v���Z�X�ɖ߂�
+            ClsExcute.BackProcess();
+        }
+        #endregion
+
+        #region �I���{�^��
+        /// <summary>
+        /// �I���{�^���N���b�N
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            // �O�v���Z�X�ɖ߂�
+            ClsExcute.BackProcess();
+
+            m_CloseingProcessOff = true;
+            
+            this.Close();
+        }
+        #endregion
+
+        #region �ǉ��{�^��
+        /// <summary>
+        /// �f�[�^�ǉ��{�^������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            // �e�����N��
+            SubProcessExecute();
+
+            // �����\��
+            //InitDataLoad();
+        }
+        #endregion
+
+        #region �I���{�^��
+        /// <summary>
+        /// �H���I���{�^������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataSelect_Click(object sender, EventArgs e)
+        {
+            // �f�[�^���Ȃ��ꍇ�͔�����
+            if (dgvMaster.RowCount == 0) return;
+            if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)DispColumn.ConstructionName].Value)) return;
+
+            // �e�����N��
+            SubProcessExecute(CommonMotions.cnvIntFromStringCode(dgvMaster.CurrentRow.Cells[(int)DispColumn.ConstructionCode].Value.ToString(), "-"));
+        }
+        #endregion
+
+        #region �X�V�{�^��
+        /// <summary>
+        /// �f�[�^�X�V�{�^������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataUpDate_Click(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+            // �\���f�[�^�X�V
+            DataDisplay();
+        }
+        #endregion
+
+        #region �t�H�[�����[�h
+        /// <summary>
+        /// �����t�H�[�����[�h
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionBaseInfoList_Load(object sender, EventArgs e)
+        {
+            // �R���{�{�b�N�X�Z�b�g
+            SetcmbDepartment();
+            SetcmbPersons();
+
+            // �R���{�{�b�N�X�����\��
+            InitCombBox();
+
+            // �\���X�^�C���̕ύX
+            InitDisplayStyle();
+
+            // �����\��
+            InitDataLoad();
+
+            m_initDataLoad = false;
+        }
+        #endregion
+
+        #region �Z���_�u���N���b�N
+        /// <summary>
+        /// �Z���_�u���N���b�N
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            if (e.RowIndex < 0) return;
+            // �f�[�^���Ȃ��ꍇ�͔�����
+            if (dgvMaster.RowCount == 0) return;
+            if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)DispColumn.ConstructionName].Value)) return;
+
+            // �e�����N��
+            SubProcessExecute(CommonMotions.cnvIntFromStringCode(dgvMaster.CurrentRow.Cells[(int)DispColumn.ConstructionCode].Value.ToString(), "-"));
+        }
+        #endregion
+
+        #region �t�H�[��KeyDown
+        /// <summary>
+        /// Entry�L�[�ł̈ړ�����
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionBaseInfoList_KeyDown(object sender, KeyEventArgs e)
+        {
+            //Enter�L�[��������Ă��邩�m�F
+            //Alt��Ctrl�L�[��������Ă��鎞�͖�������
+            if ((e.KeyCode == Keys.Enter) && !e.Alt && !e.Control)
+            {
+                //��������Tab�L�[�������ꂽ���̂悤�ɂ���
+                //Shift��������Ă��鎞�͑O�̃R���g���[���̃t�H�[�J�X���ړ�
+                this.ProcessTabKey(!e.Shift);
+
+                e.Handled = true;
+                //.NET Framework 2.0�ȍ~
+                e.SuppressKeyPress = true;
+            }
+        }
+        #endregion
+
+        #region �f�[�^�R�s�[
+        /// <summary>
+        /// �f�[�^�R�s�[�@�\
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataCopy_Click(object sender, EventArgs e)
+        {
+            // ���N���v���Z�X�Z�b�g
+            int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionCopyList);
+            // �����H���ꗗ
+            ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(0);
+
+            // �N���[�Y������OFF�ɂ���B
+            m_CloseingProcessOff = true;
+            // ��ʃN���[�Y
+            this.Close();
+        }
+        #endregion
+
+        #region �c�Ɗ��R���{�{�b�N�X�ύX
+        /// <summary>
+        /// �c�Ɗ��ύX
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void numUDConstPro_ValueChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+            // �f�[�^�\��
+            DataDisplay();
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X�ύX
+        /// <summary>
+        /// �����R���{�{�b�N�X�ύX
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            // �S���҃R���{�{�b�N�X�ύX
+            SetcmbPersons();
+
+            // �f�[�^�\��
+            DataDisplay();
+        }
+        #endregion
+
+        #region �S���҃R���{�{�b�N�X�ύX
+        /// <summary>
+        /// �S���ҕύX
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            // �S���ґI���������I����ݒ肷��
+            SetPerosonToDepartment();
+
+            // �f�[�^�\��
+            DataDisplay();
+        }
+        #endregion
+
+        #region �t�H�[���T�C�Y�ύX
+        /// <summary>
+        /// �t�H�[���T�C�Y�ύX
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmPurchaseOrderStatus_SizeChanged(object sender, EventArgs e)
+        {
+            if (this.WindowState == FormWindowState.Minimized)
+            {
+                // �ŏ���
+            }
+            else if (this.WindowState == FormWindowState.Maximized)
+            {
+                // �ő剻
+                CellSizeChangesWhenChangingScreenSize(false);
+            }
+            else if (this.WindowState == FormWindowState.Normal)
+            {
+                // �W����
+                CellSizeChangesWhenChangingScreenSize(true);
+            }
+        }
+        #endregion
+
+        #region �c�ƁE�H���S���Ґ؂�ւ�
+        /// <summary>
+        /// �c�ƁE�H���S���Ґ؂�ւ�
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void radioButton_CheckedChanged(object sender, EventArgs e)
+        {
+            if (m_initDataLoad) return;
+
+            // �f�[�^�\��
+            DataDisplay();
+        }
+        #endregion
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.designer.cs	(revision 51)
@@ -0,0 +1,525 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmPurchaseOrderStatus
+    {
+        /// <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 dataGridViewCellStyle15 = 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();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.radioButton1 = new System.Windows.Forms.RadioButton();
+            this.label4 = new System.Windows.Forms.Label();
+            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.cmbConstructionPerson = new System.Windows.Forms.ComboBox();
+            this.cmbDepartment = new System.Windows.Forms.ComboBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.btnDataUpDate = new System.Windows.Forms.Button();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.groupBox1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1150, 619);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 8;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // label1
+            // 
+            this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(440, 10);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(400, 20);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "注　文　書　状　況　確　認";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.groupBox1.BackColor = System.Drawing.Color.Linen;
+            this.groupBox1.Controls.Add(this.label3);
+            this.groupBox1.Controls.Add(this.radioButton2);
+            this.groupBox1.Controls.Add(this.radioButton1);
+            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.numUDConstPro);
+            this.groupBox1.Controls.Add(this.label5);
+            this.groupBox1.Controls.Add(this.label7);
+            this.groupBox1.Controls.Add(this.cmbConstructionPerson);
+            this.groupBox1.Controls.Add(this.cmbDepartment);
+            this.groupBox1.Controls.Add(this.label2);
+            this.groupBox1.ForeColor = System.Drawing.Color.White;
+            this.groupBox1.Location = new System.Drawing.Point(10, 40);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(1260, 55);
+            this.groupBox1.TabIndex = 0;
+            this.groupBox1.TabStop = false;
+            // 
+            // label3
+            // 
+            this.label3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(747, 19);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(120, 25);
+            this.label3.TabIndex = 4;
+            this.label3.Text = "担　当　者";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // radioButton2
+            // 
+            this.radioButton2.AutoSize = true;
+            this.radioButton2.BackColor = System.Drawing.Color.Transparent;
+            this.radioButton2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton2.ForeColor = System.Drawing.Color.Black;
+            this.radioButton2.Location = new System.Drawing.Point(662, 32);
+            this.radioButton2.Name = "radioButton2";
+            this.radioButton2.Size = new System.Drawing.Size(77, 20);
+            this.radioButton2.TabIndex = 44;
+            this.radioButton2.Text = "工　事";
+            this.radioButton2.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
+            this.radioButton2.UseVisualStyleBackColor = false;
+            this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
+            // 
+            // radioButton1
+            // 
+            this.radioButton1.AutoSize = true;
+            this.radioButton1.BackColor = System.Drawing.Color.Transparent;
+            this.radioButton1.Checked = true;
+            this.radioButton1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.radioButton1.ForeColor = System.Drawing.Color.Black;
+            this.radioButton1.Location = new System.Drawing.Point(662, 12);
+            this.radioButton1.Name = "radioButton1";
+            this.radioButton1.Size = new System.Drawing.Size(77, 20);
+            this.radioButton1.TabIndex = 43;
+            this.radioButton1.TabStop = true;
+            this.radioButton1.Text = "営　業";
+            this.radioButton1.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+            this.radioButton1.UseVisualStyleBackColor = false;
+            this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(20, 19);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(120, 25);
+            this.label4.TabIndex = 42;
+            this.label4.Text = "営業期";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDConstPro
+            // 
+            this.numUDConstPro.BackColor = System.Drawing.Color.White;
+            this.numUDConstPro.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDConstPro.ForeColor = System.Drawing.Color.Black;
+            this.numUDConstPro.Location = new System.Drawing.Point(173, 20);
+            this.numUDConstPro.Name = "numUDConstPro";
+            this.numUDConstPro.ReadOnly = true;
+            this.numUDConstPro.Size = new System.Drawing.Size(80, 23);
+            this.numUDConstPro.TabIndex = 0;
+            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
+            // 
+            // label5
+            // 
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(253, 23);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(25, 16);
+            this.label5.TabIndex = 39;
+            this.label5.Text = "期";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label7
+            // 
+            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label7.ForeColor = System.Drawing.Color.Black;
+            this.label7.Location = new System.Drawing.Point(148, 23);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(25, 16);
+            this.label7.TabIndex = 40;
+            this.label7.Text = "第";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbConstructionPerson
+            // 
+            this.cmbConstructionPerson.BackColor = System.Drawing.Color.White;
+            this.cmbConstructionPerson.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbConstructionPerson.FormattingEnabled = true;
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(875, 20);
+            this.cmbConstructionPerson.Name = "cmbConstructionPerson";
+            this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 23);
+            this.cmbConstructionPerson.TabIndex = 2;
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
+            // 
+            // cmbDepartment
+            // 
+            this.cmbDepartment.BackColor = System.Drawing.Color.White;
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(422, 20);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(200, 23);
+            this.cmbDepartment.TabIndex = 1;
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(294, 19);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(120, 25);
+            this.label2.TabIndex = 4;
+            this.label2.Text = "部　　署";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnDataUpDate
+            // 
+            this.btnDataUpDate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataUpDate.BackColor = System.Drawing.Color.Aquamarine;
+            this.btnDataUpDate.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataUpDate.ForeColor = System.Drawing.Color.Black;
+            this.btnDataUpDate.Location = new System.Drawing.Point(1150, 4);
+            this.btnDataUpDate.Name = "btnDataUpDate";
+            this.btnDataUpDate.Size = new System.Drawing.Size(120, 30);
+            this.btnDataUpDate.TabIndex = 7;
+            this.btnDataUpDate.Text = "最新状態に更新";
+            this.btnDataUpDate.UseVisualStyleBackColor = false;
+            this.btnDataUpDate.Click += new System.EventHandler(this.btnDataUpDate_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMaster.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column10,
+            this.Column6,
+            this.Column4,
+            this.Column12,
+            this.Column7,
+            this.Column3,
+            this.Column2,
+            this.Column8,
+            this.Column5,
+            this.Column9,
+            this.Column11});
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle15.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle15.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMaster.DefaultCellStyle = dataGridViewCellStyle15;
+            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvMaster.Location = new System.Drawing.Point(10, 103);
+            this.dgvMaster.MultiSelect = false;
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(1260, 508);
+            this.dgvMaster.TabIndex = 5;
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            // 
+            // 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;
+            // 
+            // Column10
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column10.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column10.Frozen = true;
+            this.Column10.HeaderText = "工事部署";
+            this.Column10.Name = "Column10";
+            this.Column10.ReadOnly = true;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle5;
+            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;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "工　事　名　称";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column4.Width = 370;
+            // 
+            // Column12
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle7;
+            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 = 30;
+            // 
+            // Column7
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle8;
+            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 = 110;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle9;
+            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;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle10;
+            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;
+            this.Column2.Visible = false;
+            this.Column2.Width = 5;
+            // 
+            // Column8
+            // 
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle11;
+            this.Column8.Frozen = true;
+            this.Column8.HeaderText = "発給日";
+            this.Column8.Name = "Column8";
+            this.Column8.ReadOnly = true;
+            this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column8.Width = 120;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle12;
+            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;
+            // 
+            // Column9
+            // 
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle13;
+            this.Column9.Frozen = true;
+            this.Column9.HeaderText = "返送日";
+            this.Column9.Name = "Column9";
+            this.Column9.ReadOnly = true;
+            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column9.Width = 120;
+            // 
+            // Column11
+            // 
+            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column11.DefaultCellStyle = dataGridViewCellStyle14;
+            this.Column11.Frozen = true;
+            this.Column11.HeaderText = "返送確認日";
+            this.Column11.Name = "Column11";
+            this.Column11.ReadOnly = true;
+            this.Column11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column11.Width = 120;
+            // 
+            // FrmPurchaseOrderStatus
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1280, 657);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnDataUpDate);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dgvMaster);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+            this.KeyPreview = true;
+            this.MinimizeBox = false;
+            this.Name = "FrmPurchaseOrderStatus";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmPurchaseOrderStatus_FormClosing);
+            this.Load += new System.EventHandler(this.FrmConstructionBaseInfoList_Load);
+            this.SizeChanged += new System.EventHandler(this.FrmPurchaseOrderStatus_SizeChanged);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmConstructionBaseInfoList_KeyDown);
+            this.groupBox1.ResumeLayout(false);
+            this.groupBox1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.ComboBox cmbDepartment;
+        private CustomControls.DataGridViewEX dgvMaster;
+        private System.Windows.Forms.ComboBox cmbConstructionPerson;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Button btnDataUpDate;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.NumericUpDown numUDConstPro;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.RadioButton radioButton2;
+        private System.Windows.Forms.RadioButton radioButton1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.resx	(revision 51)
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column10.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="Column12.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column8.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="Column9.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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatusAuxiliary.cs	(revision 51)
@@ -0,0 +1,1162 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*---------------------------- �H����{���ꗗ��� --------------------------*
+//  2015/07/13  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmPurchaseOrderStatus
+    {
+        #region �萔
+        #region �擾SQL
+        /// <summary>
+        /// �擾SQL�Œ蕔
+        /// </summary>
+        private static string[] s_SQLPart4Tying = new string[] { " WHERE A.CONSTRUCTIONPERIOD = {0}",
+                                                            string.Format(" AND A.TyingFlg != {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying),
+                                                            " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE",
+                                                            " AND B.DETAILNO = {1}" };
+
+        private static string[] s_SQLPart5 = new string[] { " ORDER BY A.CONSTRUCTIONSTATUSFLG ASC,",
+                                                            " D.DEPDISPORDER ASC, D.MANDISPORDER ASC, A.CONSTRUCTIONCODE DESC" };
+        #endregion
+
+        #endregion
+
+        #region �ϐ�
+        #endregion
+
+        #region �v���p�e�B
+        #endregion
+
+        #region ���v���Z�X�N��
+        /// <summary>
+        /// �H���ꗗ���N������v���Z�X�I������
+        /// </summary>
+        /// <param name="para_ConstructionCode"></param>
+        private void SubProcessExecute(int para_ConstructionCode = 0)
+        {
+            IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
+            try
+            {
+                DataGridView dgv = dgvMaster;
+
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // ���ݐݒ�l�N���A
+                ClsExcute.ClearSaveParameter(NowPoint);
+                // ----- ��ʏ��ޔ�
+                // �����N
+                ClsExcute.ProcControlPara[NowPoint].StringSaveParameter.Add(numUDConstPro.Value.ToString());
+                // �S���ґI���敪�ޔ�
+                if (radioButton2.Checked) ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter.Add(true);
+                // ��������
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(cmbDepartment.SelectedValue));
+                // �����S����
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue));
+
+                // �\���擪�s
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(dgv.FirstDisplayedScrollingRowIndex);
+
+                // ���ݓ��s
+                ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add(dgv.CurrentRow.Index);
+
+                // �\�[�g���
+                if (dgv.SortedColumn != null)
+                {
+                    ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add((int)dgv.SortedColumn.Index);
+                    ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Add((int)dgv.SortOrder);
+                }
+
+                // ���N���v���Z�X�Z�b�g
+                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo);
+                // �I���H���ԍ��Z�b�g
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(para_ConstructionCode);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                cbiDB.close(); cbiDB = null;
+                // �N���[�Y������OFF�ɂ���B
+                m_CloseingProcessOff = true;
+                // ��ʃN���[�Y
+                this.Close();
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    CreateOldSecuritySQL(ref strSQL);
+                }
+                else
+                {
+                    CreateNewSecuritySQL(ref strSQL);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�V�Ή��j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateNewSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �L�[�l�擾
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // �S����
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // ��������
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                // �f�[�^�A�N�Z�X�Ɍ����ɂ�萧��������
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // ���ׂđΏہi����SQL���j
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Multiple].Key
+                        || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[Only].Key)
+                {
+                    // �ꕔ�����L
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+
+                    strSQL += " And (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1";
+                    strSQL += string.Format(" Where A1.DepartmentCode IN (SELECT A2.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A2 WHERE A2.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0}", iStatus);
+
+                    strSQL += " And (A.ConstructionPersonCode IN (Select A3.PersonCode From PersonInChargeMaster A3";
+                    strSQL += string.Format(" Where A3.DepartmentCode IN (SELECT A4.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A4 WHERE A4.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.CONSTRSUBPERSONCODE IN (Select A5.PersonCode From PersonInChargeMaster A5";
+                    strSQL += string.Format(" Where A5.DepartmentCode IN (SELECT A6.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A6 WHERE A6.PERSONCODE = {0}))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += " Or A.ConstructionInstructor IN (Select A7.PersonCode From PersonInChargeMaster A7";
+                    strSQL += string.Format(" Where A7.DepartmentCode IN (SELECT A8.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A8 WHERE A8.PERSONCODE = {0}))))", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And A.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg = {0}", iStatus2);                                            // �������p���͈��p�����̂��̂͌�����
+                    strSQL += string.Format(" And A.TransferConstruction = {0}))", CommonMotions.LoginUserData.DepartmentCode);
+                }
+                else if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    // ��ʎg�p��
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+
+                    strSQL += string.Format(" And (A.SalesPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg > {0}", iStatus);
+
+                    strSQL += string.Format(" And (A.ConstructionPersonCode = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.CONSTRSUBPERSONCODE = {0}", CommonMotions.LoginUserData.PersonCode);
+
+                    strSQL += string.Format(" Or A.ConstructionInstructor = {0})))", CommonMotions.LoginUserData.PersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// <summary>
+        /// ����SQL�̃Z�L�����e�B���蕔�����쐬����i�����j
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CreateOldSecuritySQL(ref string strSQL)
+        {
+            try
+            {
+                // �����������҂̓f�[�^�Q�Əo���鏈��������
+                //if (ClsSecurityPermission.PermitGeneralAffairsDevision(m_ExecuteFlg)) return;
+
+                // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                {
+                    // �V�X�e���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                {
+                    // �ō��@���Ǘ��ҁi���ׂđΏہj
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
+                {
+                    // �����@���Ǘ��ҁi�@�\�����j
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // �@���Ǘ��ҁi�������̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("���ϒ�o")).Key;
+                    int iStatus2 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("�������p")).Key;
+                    strSQL += string.Format(" And (A.SalesPersonCode IN (Select A1.PersonCode From PersonInChargeMaster A1 Where A1.DepartmentCode = {0})", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And (A.ConstructionPersonCode IN (Select A2.PersonCode From PersonInChargeMaster A2 Where A2.DepartmentCode = {1})",
+                                                                                iStatus, CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" Or A.ConstructionInstructor IN (Select A3.PersonCode From PersonInChargeMaster A3 Where A3.DepartmentCode = {0})))", CommonMotions.LoginUserData.DepartmentCode);
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg >= {0} And A.ConstructionPersonCode = 0)", iStatus);          // �������͌��ϒ�o��ōH���S���҂������Ă��Ȃ��ꍇ�\��
+                    strSQL += string.Format(" Or (A.ConstructionStatusFlg = {0} And A.TransferConstruction = {1}))",
+                                                                                iStatus2, CommonMotions.LoginUserData.DepartmentCode); // �������p
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // ��ʎg�p�ҁi���f�[�^�̂݁j
+                    int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("��ʕ�C�H��")).Key;
+                    int iPersonCode = CommonMotions.LoginUserData.PersonCode;
+                    strSQL += string.Format(" And ((A.TyingFlg != {0} AND (A.SalesPersonCode = {1} Or (A.ConstructionStatusFlg >= {2}", (int)CommonDefine.BaseInfoTyingFlg.Tying, iPersonCode, iStatus);
+                    strSQL += string.Format(" And (A.ConstructionPersonCode = {0} Or A.ConstrSubPersonCode = {0} Or A.ConstructionInstructor = {0}))))", iPersonCode);
+                    strSQL += string.Format(" Or (A.TyingFlg = {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                    strSQL += string.Format(" AND (A.SalesPersonCode = {0} Or A.ConstructionPersonCode = {0} Or A.ConstrSubPersonCode = {0} Or A.ConstructionInstructor = {0})))", iPersonCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message, strSQL);
+            }
+        }
+        #endregion
+
+        #region �S���҂��I������Ă���ꍇ
+        /// <summary>
+        /// �S���҂��I������Ă���ꍇ
+        /// </summary>
+        /// <returns></returns>
+        private string GetPersonString()
+        {
+            try
+            {
+                string strRet = string.Empty;
+
+                // �c�ƒS���҂��I������Ă���ꍇ
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode == 0) return strRet;
+
+                if (radioButton1.Visible)
+                {
+                    if (radioButton1.Checked)
+                        strRet = string.Format(" AND A.SalesPersonCode = {0}", PersonCode);
+                    else
+                        strRet = string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstrSubPersonCode = {0} OR A.ConstructionInstructor = {0})", PersonCode);
+                }
+                return strRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region �������I������Ă���ꍇ
+        /// <summary>
+        /// �������I������Ă���ꍇ
+        /// </summary>
+        /// <returns></returns>
+        private string GetDepartmentString()
+        {
+            try
+            {
+                string strRet = string.Empty;
+
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0) return strRet;
+                    
+                strRet += string.Format(" AND D.DEPARTMENTCODE = {0}", DepartmentCode);
+
+                return strRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region �擾���`
+        /// <summary>
+        /// �擾���`
+        /// </summary>
+        private enum GetData
+        {
+            CONSTRUCTIONCODE,
+            CONSTRUCTIONPERIOD,
+            CONSTRUCTIONNAME,
+            CONSTRUCTIONSTATUSFLG,
+            CONSTCODE,
+            CONSTNAME,
+            CONSTDEPCODE,
+            CONSTDEPNAME,
+            CONSTMANDISPORDER,
+            CONSTDEPDISPORDER,
+            PRINTOUTDATE,
+            PURCHASEORDERMAILINGDATE,
+            PURCHASEORDERRETURNDATE,
+            PURCHASEORDERRETURNCHECKDATE,
+            ORDERNO,
+        }
+        #endregion
+
+        #region �f�[�^�擾SQL�쐬
+        /// <summary>
+        /// �\���p�f�[�^�擾SQL�쐬
+        /// </summary>
+        private void CreateInitSQL(ref string strSQL)
+        {
+            string strSubSQL = "";
+            try
+            {
+                // �����������F����Ă������
+                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("���������F")).Key;
+
+                // �Z�L�����e�B������擾
+                string wrkBuff = string.Empty;
+                CreateSecuritySQL(ref wrkBuff);
+
+                string wrkFormat = string.Empty;
+                wrkFormat = "SELECT A.CONSTRUCTIONCODE, A.CONSTRUCTIONPERIOD, B.DETAILSTRING, A.CONSTRUCTIONSTATUSFLG,";
+                wrkFormat += " D.PERSONCODE, D.PERSONNAME, D.DEPARTMENTCODE, D.DEPARTMENTNAME, D.MANDISPORDER, D.DEPDISPORDER,";
+                //wrkFormat += " TO_CHAR(A2.PRINTOUTDATE, 'YYYY/MM/DD'), TO_CHAR(A.PURCHASEORDERMAILINGDATE, 'YYYY/MM/DD'),";
+                //wrkFormat += " TO_CHAR(A.PURCHASEORDERRETURNDATE, 'YYYY/MM/DD'), TO_CHAR(A.PURCHASEORDERRETURNCHECKDATE, 'YYYY/MM/DD'),";
+                wrkFormat += " DATE_FORMAT(A2.PRINTOUTDATE, '%Y/%m/%d'), DATE_FORMAT(A.PURCHASEORDERMAILINGDATE, '%Y/%m/%d'),";
+                wrkFormat += " DATE_FORMAT(A.PURCHASEORDERRETURNDATE, '%Y/%m/%d'), DATE_FORMAT(A.PURCHASEORDERRETURNCHECKDATE, '%Y/%m/%d'),";
+                wrkFormat += " A1.ORDERNO";
+                wrkFormat += " FROM CONSTRUCTIONBASEINFO A";
+
+                wrkFormat += " LEFT JOIN (SELECT DA.CONSTRUCTIONCODE, DA.CONSTRUCTIONPERSONCODE PERSONCODE, DB.PERSONNAME PERSONNAME,";
+                wrkFormat += " DB.DEPARTMENTCODE DEPARTMENTCODE, DC.DEPARTMENTSTRING DEPARTMENTNAME,";
+                wrkFormat += " DB.DISPLAYORDER MANDISPORDER, DC.DISPLAYORDER DEPDISPORDER";
+                wrkFormat += " FROM CONSTRUCTIONBASEINFO DA";
+                wrkFormat += " LEFT JOIN PERSONINCHARGEMASTER DB ON DA.CONSTRUCTIONPERSONCODE = DB.PERSONCODE";
+                wrkFormat += " LEFT JOIN DEPARTMENTMASTER DC ON DB.DEPARTMENTCODE = DC.DEPARTMENTCODE";
+                wrkFormat += " WHERE DA.CONSTRUCTIONPERIOD = {0}) D ON A.CONSTRUCTIONCODE = D.CONSTRUCTIONCODE";
+                wrkFormat += ", CONSTRUCTIONBASEINFODETAIL B, PROCESSAPPROVAL A1, PURCHASEORDER A2";
+
+                wrkFormat += " WHERE A.CONSTRUCTIONPERIOD = {0}";
+                wrkFormat += " AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+                wrkFormat += " AND B.DETAILNO = {1}";
+
+                strSQL = string.Format(wrkFormat, numUDConstPro.Value, (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                strSQL += " AND EXISTS (SELECT * FROM PURCHASEORDER B1 WHERE B1.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                strSQL += " And (A.ConstructionCode = A1.ConstructionCode";
+                strSQL += string.Format(" And A1.ApprovalCode = {0}", ApprovalCode);
+                strSQL += string.Format(" And A1.SeqNo = 1 And A1.APPROVALSTATUS = {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " AND (A.CONSTRUCTIONCODE = A2.CONSTRUCTIONCODE AND A2.SEQNO = 1)";
+
+                // �������I������Ă���ꍇ
+                strSQL += GetDepartmentString();
+
+                // �S���҂��I������Ă���ꍇ
+                strSQL += GetPersonString();
+
+                // �Z�L�����e�B������Z�b�g
+                strSQL += wrkBuff;
+
+                // ORDER BY �ǉ�
+                strSQL += string.Format(" ORDER BY {0} ASC, {1} ASC, {2} ASC, {3} DESC, {4} DESC",
+                                                    (int)GetData.CONSTRUCTIONSTATUSFLG + 1,
+                                                    (int)GetData.CONSTDEPDISPORDER + 1,
+                                                    (int)GetData.CONSTMANDISPORDER + 1,
+                                                    (int)GetData.CONSTRUCTIONCODE + 1,
+                                                    (int)GetData.ORDERNO + 1);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}�F{2}", ex.Message, strSQL, strSubSQL);
+            }
+        }
+        #endregion
+
+        #region ������������擾
+        /// <summary>
+        /// ������������擾
+        /// </summary>
+        /// <param name="AllCount"></param>
+        /// <param name="PrintCount"></param>
+        private void GetPrintCount(int TargetCode, ref int AllCount, ref int PrintCount)
+        {
+            IOPurchaseOrder OrderDB = new IOPurchaseOrder();
+            try
+            {
+                string strSQL = "SELECT * FROM";
+                strSQL += string.Format(" (SELECT COUNT(*) FROM PURCHASEORDER A1 WHERE CONSTRUCTIONCODE = {0}) A,", TargetCode);
+                //strSQL += string.Format(" (SELECT COUNT(*) FROM PURCHASEORDER B1 WHERE CONSTRUCTIONCODE = {0} AND PRINTOUTDATE != TO_DATE('0001/01/01')) B", TargetCode);
+                strSQL += string.Format(" (SELECT COUNT(*) FROM PURCHASEORDER B1 WHERE CONSTRUCTIONCODE = {0} AND PRINTOUTDATE != STR_TO_DATE('0001/01/01')) B", TargetCode);
+                ArrayList arList = new ArrayList();
+                if (!OrderDB.ExecuteReader(strSQL, ref arList)) return;
+
+                object[] objRec = (object[])arList[0];
+                AllCount = CommonMotions.cnvInt(objRec[0]);
+                PrintCount = CommonMotions.cnvInt(objRec[1]);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                OrderDB.close(); OrderDB = null;
+            }
+        }
+        #endregion
+
+        #region �O���b�h�փf�[�^���Z�b�g����
+        /// <summary>
+        /// �O���b�h�փf�[�^���Z�b�g����
+        /// </summary>
+        /// <param name="arData"></param>
+        private void SetToGridData(ArrayList arData)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+
+                // �f�[�^�\��
+                int ino = 1;
+                int StatusFlg = -1;
+                bool initFlg = true;
+                string FlgString = string.Empty;
+                string[] strConstDepName = new string[2];
+                string[] strConstName = new string[2];
+                string strStatus = string.Empty;
+                string[] strStatusDate = new string[4];
+                int ConstrCode = 0;
+                foreach (object[] objwrk in arData)
+                {
+                    Array.Clear(strStatusDate, 0, 4);
+                    if (CommonMotions.cnvDate(objwrk[(int)GetData.PRINTOUTDATE])!= DateTime.MinValue)
+                        strStatusDate[0] = CommonMotions.cnvDate(objwrk[(int)GetData.PRINTOUTDATE]).ToShortDateString();
+                    if (CommonMotions.cnvDate(objwrk[(int)GetData.PURCHASEORDERMAILINGDATE]) != DateTime.MinValue)
+                        strStatusDate[1] = CommonMotions.cnvDate(objwrk[(int)GetData.PURCHASEORDERMAILINGDATE]).ToShortDateString();
+                    if (CommonMotions.cnvDate(objwrk[(int)GetData.PURCHASEORDERRETURNDATE]) != DateTime.MinValue)
+                        strStatusDate[2] = CommonMotions.cnvDate(objwrk[(int)GetData.PURCHASEORDERRETURNDATE]).ToShortDateString();
+                    if (CommonMotions.cnvDate(objwrk[(int)GetData.PURCHASEORDERRETURNCHECKDATE]) != DateTime.MinValue)
+                        strStatusDate[3] = CommonMotions.cnvDate(objwrk[(int)GetData.PURCHASEORDERRETURNCHECKDATE]).ToShortDateString();
+
+                    // �X�e�[�^�X�t���O���Ⴆ��1�s�J����
+                    if (StatusFlg != CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONSTATUSFLG]))
+                    {
+                        StatusFlg = CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONSTATUSFLG]);
+                        strStatus = CommonDefine.ProjectsStatus[StatusFlg];
+                        if (!initFlg) dgv.Rows.Add(1);
+                        initFlg = false;
+                    }
+
+                    if (!CommonMotions.cnvString(objwrk[(int)GetData.CONSTDEPNAME]).Equals(strConstDepName[0]))
+                    {
+                        strConstDepName[0] = CommonMotions.cnvString(objwrk[(int)GetData.CONSTDEPNAME]);
+                        strConstDepName[1] = CommonMotions.cnvString(objwrk[(int)GetData.CONSTDEPNAME]);
+                    }
+                    if (!CommonMotions.cnvString(objwrk[(int)GetData.CONSTNAME]).Equals(strConstName[0]))
+                    {
+                        strConstName[0] = CommonMotions.cnvString(objwrk[(int)GetData.CONSTNAME]);
+                        strConstName[1] = CommonMotions.cnvString(objwrk[(int)GetData.CONSTNAME]);
+                    }
+
+                    ConstrCode = CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONCODE]);
+
+                    // ����t���O
+                    int AllCount = 0;
+                    int PrintCount = 0;
+                    GetPrintCount(ConstrCode, ref AllCount, ref PrintCount);
+                    if (AllCount != 0 && AllCount == PrintCount) FlgString = "��";
+
+                    dgv.Rows.Add((ino++)
+                                        , strConstDepName[1]
+                                        , strConstName[1]
+                                        , CommonMotions.cnvString(objwrk[(int)GetData.CONSTRUCTIONNAME])
+                                        , FlgString
+                                        , strStatus
+                                        , CommonMotions.cnvInt(objwrk[(int)GetData.CONSTRUCTIONPERIOD])
+                                        , CommonMotions.cnvStringCodeFromInt(ConstrCode, "-", 8)
+                                        , strStatusDate[0]
+                                        , strStatusDate[1]
+                                        , strStatusDate[2]
+                                        , strStatusDate[3]
+                                        );
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �f�[�^�\������
+        /// <summary>
+        /// �ꗗ�f�[�^�\������
+        /// </summary>
+        private void DataDisplay()
+        {
+            IOConstructionBaseInfo cbiDB = new IOConstructionBaseInfo();
+            try
+            {
+                foreach (DataGridViewColumn wrkCol in dgvMaster.Columns) wrkCol.SortMode = DataGridViewColumnSortMode.NotSortable;
+                dgvMaster.Rows.Clear();
+                string strSQL = "";
+                // SQL�쐬
+                CreateInitSQL(ref strSQL);
+                ArrayList arData = new ArrayList();
+                // �H����{���擾
+                if (cbiDB.ExecuteReader(strSQL, ref arData))
+                {
+                    // �O���b�h�փZ�b�g�Ƃ���
+                    SetToGridData(arData);
+                }
+
+                // �f�[�^�������Ȃ�΃\�[�g�ł���
+                if (CommonDefine.s_MaxInitLineCount < dgvMaster.RowCount)
+                {
+                    foreach (DataGridViewColumn wrkCol in dgvMaster.Columns)
+                        wrkCol.SortMode = DataGridViewColumnSortMode.Automatic;
+                }
+                else
+                {
+                    // �b��Ń\�[�g������
+                    foreach (DataGridViewColumn wrkCol in dgvMaster.Columns)
+                        wrkCol.SortMode = DataGridViewColumnSortMode.Automatic;
+                    // �Ǎ����f�[�^�J�E���g�擾
+                    m_initDataCount = arData.Count;
+                    dgvMaster.RowCount += (CommonDefine.s_MaxInitLineCount - m_initDataCount);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                cbiDB.close(); cbiDB = null;
+            }
+        }
+        #endregion
+
+        #region �������f�[�^�擾
+        /// <summary>
+        /// �������f�[�^�擾
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+
+                // �����N�x�Z�b�g
+                // �f�[�^�ɂ��鎖�Ɗ��ƌ��݂̎��ƃZ�b�g
+                int minval = 0;
+                int maxval = 0;
+                CommonMotions.GetPeriodYear(ref minval, ref maxval);
+                numUDConstPro.Minimum = minval;
+                numUDConstPro.Maximum = maxval;
+                numUDConstPro.Value = CommonMotions.SystemMasterData.BusinessPeriod;
+
+                // ----- �ޔ������f�[�^���������ꍇ�̓Z�b�g����
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                //�@�N�x
+                if (ClsExcute.ProcControlPara[NowPoint].StringSaveParameter.Count > 0)
+                    numUDConstPro.Value = CommonMotions.cnvInt(ClsExcute.ProcControlPara[NowPoint].StringSaveParameter[0]);
+
+                // �S���ґI���敪�ޔ�
+                if (ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter.Count > 0)
+                    if (ClsExcute.ProcControlPara[NowPoint].BoolSaveParameter[0]) radioButton2.Checked = true;
+
+                // �����E�S����
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 0)
+                {
+                    cmbDepartment.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[0];
+                    SetcmbPersons();
+                    cmbConstructionPerson.SelectedValue = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[1];
+                }
+
+                // �O���b�h�̍s��0�ɖ߂�
+                dgv.Rows.Clear();
+
+                // �f�[�^�\��
+                DataDisplay();
+
+                // �\���擪�s
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 3)
+                {
+                    dgv.FirstDisplayedScrollingRowIndex = ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[2];
+
+                    // ���ݓ��s
+                    dgv.Rows[ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[3]].Selected = true;
+                }
+                // �\�[�g���
+                if (ClsExcute.ProcControlPara[NowPoint].IntSaveParameter.Count > 4)
+                {
+                    // �J�����擾
+                    DataGridViewColumn wrksortcolumn = dgv.Columns[ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[4]];
+                    // �\�[�g�I�[�_�[�擾
+                    ListSortDirection sortDirection = ((SortOrder)ClsExcute.ProcControlPara[NowPoint].IntSaveParameter[5]) == SortOrder.Ascending ?
+                                                                        ListSortDirection.Ascending : ListSortDirection.Descending;
+                    dgv.Sort(wrksortcolumn, sortDirection);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����\���̃X�^�C����ύX
+        /// <summary>
+        /// �����\���̃X�^�C����ύX����
+        /// </summary>
+        private void InitDisplayStyle()
+        {
+            // �t�H�[���T�C�Y�擾
+            m_FormWidthSize = this.Width;
+
+            DataGridView dgv = dgvMaster;
+            // �O���b�h�̏����擾����
+            m_GridWidthSize = dgv.Width;
+
+            int CellCount = dgv.ColumnCount;
+            m_CellSize = new int[CellCount];
+            foreach (DataGridViewColumn col in dgv.Columns)
+            {
+                m_CellSize[col.Index] = col.Width;
+            }
+
+            // �H���S���Z�b�g
+            radioButton2.Checked = true;
+        }
+        #endregion
+
+        #region ��ʃT�C�Y�ύX���̃Z���T�C�Y�ύX
+        /// <summary>
+        /// ��ʃT�C�Y�ύX���̃Z���T�C�Y�ύX
+        /// </summary>
+        private void CellSizeChangesWhenChangingScreenSize(bool bNormal)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+                int idifference = 0;
+                // �ő剻�̏ꍇ
+                if (!bNormal)
+                {
+                    // �J�����̃T�C�Y�����߂�
+                    int ColumnCount = 0;
+                    int TotalWidth = 0;
+                    int NotVisibleSize = 0;
+                    for (int i = 0; i < m_CellSize.Length; i++)
+                    {
+                        TotalWidth += m_CellSize[i];
+                        if (dgv.Columns[i].Visible)
+                        {
+                            ColumnCount++;
+                        }
+                        else
+                        {
+                            NotVisibleSize += m_CellSize[i];
+                        }
+                    }
+
+                    // �傫���Ȃ����T�C�Y
+                    int formdiff = (dgv.Width - (m_GridWidthSize - NotVisibleSize));
+
+                    idifference = formdiff / ColumnCount;
+                }
+
+                for (int i = 0; i < dgv.ColumnCount; i++)
+                {
+                    DataGridViewColumn wrkCol = dgv.Columns[i];
+                    wrkCol.Width = m_CellSize[i] + idifference;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{���S���҃R�[�h���擾����
+        /// <summary>
+        /// �����R���{���S���҃R�[�h���擾����
+        /// </summary>
+        /// <returns></returns>
+        private int GetDepartmentCode()
+        {
+            try
+            {
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbDepartment.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{���S���҃R�[�h���擾����
+        /// <summary>
+        /// �S���҃R���{���S���҃R�[�h���擾����
+        /// </summary>
+        /// <returns></returns>
+        private int GetConstructionPersonCode()
+        {
+            try
+            {
+                // �\������Ă��Ȃ��ꍇ�͑I��
+                //if (!cmbConstructionPerson.Visible) return 0;
+
+                return CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}", ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region �R���{�{�b�N�X�����\��
+        /// <summary>
+        /// �R���{�{�b�N�X�����\��
+        /// </summary>
+        private void InitCombBox()
+        {
+            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;                 // �������̂�
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // ���S���҂̂�
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // �����E�S���҃R���{�\��
+                    DispAllCombBoxControl(true);
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // �����R���{��\��
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // �����E�S���҃R���{�\��
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // �����Ɩ��g�p�҂����O�C�����Ă���ꍇ�̓R���{���󔒂ɂ���
+                if (CommonMotions.LoginUserSecurity.GeneralAffairs == (int)CommonDefine.GeneralAffairs.GeneralDep) return;
+
+                // �����ݒ�Ώۂ��R���{�{�b�N�X�f�[�^�ɂ���΃Z�b�g����
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X�̔�\������
+        /// <summary>
+        /// �����R���{�{�b�N�X�̔�\������
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // �����R���{��\��
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // �\���ʒu�̃Z�b�g
+                Point loc1 = radioButton1.Location;
+                Point loc2 = radioButton2.Location;
+                loc1.X = label2.Location.X;
+                loc2.X = label2.Location.X;
+                radioButton1.Location = loc1;
+                radioButton2.Location = loc2;
+                
+                Point loc3 = label3.Location;
+                loc3.X = loc1.X + radioButton1.Width + 10;
+                label3.Location = loc3;
+                
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �S�R���{�{�b�N�X�\����ON/OFF����
+        /// <summary>
+        /// �S�R���{�{�b�N�X�\����ON/OFF����
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // �����E�S���҃R���{��\��
+                radioButton1.Visible = bDsp;
+                radioButton2.Visible = bDsp;
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����R���{�{�b�N�X���Z�b�g����
+        /// <summary>
+        /// �����R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private void SetcmbDepartment()
+        {
+            IOMDepartment depDB = new IOMDepartment();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
+
+                string strSQL = string.Empty;
+                // �����}�X�^����������
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // �V�X�e�������ɂ���ăf�[�^�A�N�Z�X�ɐ���������
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // ������
+                        // ��ʎg�p�ҁi�����̂݃A�N�Z�X�\�j
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // �Q�ƕ����}�X�^���擾����
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
+
+                // �����}�X�^�Ǎ�
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (object[] work in arList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // �R���{�{�b�N�X�����\��
+                ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // �����������҈ȊO
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                depDB.close(); depDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{�{�b�N�X���Z�b�g����
+        /// <summary>
+        /// �S���҃R���{�{�b�N�X�֕������Z�b�g����
+        /// </summary>
+        private void SetcmbPersons()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+            bool bSave = m_initDataLoad;
+            m_initDataLoad = true;
+            try
+            {
+                cmbConstructionPerson.DataSource = null;
+                cmbConstructionPerson.Items.Clear();
+                cmbConstructionPerson.Text = "";
+
+                string strSQL = string.Empty;
+                int DepartmentCode = GetDepartmentCode();
+                if (DepartmentCode == 0)
+                    strSQL = " WHERE DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC";
+                else
+                    strSQL = string.Format(" WHERE DEPARTMENTCODE = {0} AND DeleteFlg = 0 Order By EmployeeClassFlg ASC, DisplayOrder ASC", DepartmentCode);
+
+                // �S���҃}�X�^�Ǎ�
+                if (!picDB.SelectAction(strSQL, ref workList)) return;
+
+                List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
+                ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
+
+                foreach (PersonInChargeMaster work in workList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.PersonCode, work.PersonName);
+
+                    ConstructionDataList.Add(keyval);
+                }
+
+                // �R���{�{�b�N�X�����\��
+                ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
+
+                // �V�Z�L�����e�B�f�[�^�Ή��ς݂����m�F����
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // ��ʃ��[�U�[�ő����������҂ł͂Ȃ��ꍇ�A���O�C���҂̃R�[�h���Z�b�g����
+                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+
+                return;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                m_initDataLoad = bSave;
+            }
+        }
+        #endregion
+
+        #region �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// <summary>
+        /// �S���҃R���{�{�b�N�X�Z�b�g���������Z�b�g����
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // �R���{�{�b�N�X���I��S���҂��擾����
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = GetDepartmentCode();
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // �����R���{�{�b�N�X�֕����R�[�h�Z�b�g
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_initDataLoad;
+                    m_initDataLoad = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // �S���҃R���{�{�b�N�X�ύX
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_initDataLoad = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.Designer.cs	(revision 51)
@@ -0,0 +1,350 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmRegField
+    {
+        /// <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 dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = 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.tboxCompany = new System.Windows.Forms.TextBox();
+            this.btnAdd = new System.Windows.Forms.Button();
+            this.btnDelete = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.dgv2 = new System.Windows.Forms.DataGridView();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col99 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dgv1 = new System.Windows.Forms.DataGridView();
+            this.ConstructionCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col000 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col001 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col002 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ReadOnly = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.btnAccept = new System.Windows.Forms.Button();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.Yellow;
+            this.label1.Location = new System.Drawing.Point(13, 11);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(106, 25);
+            this.label1.TabIndex = 2;
+            this.label1.Text = "業　者";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tboxCompany
+            // 
+            this.tboxCompany.Location = new System.Drawing.Point(122, 12);
+            this.tboxCompany.Name = "tboxCompany";
+            this.tboxCompany.ReadOnly = true;
+            this.tboxCompany.Size = new System.Drawing.Size(267, 23);
+            this.tboxCompany.TabIndex = 3;
+            // 
+            // btnAdd
+            // 
+            this.btnAdd.BackColor = System.Drawing.Color.Cyan;
+            this.btnAdd.Location = new System.Drawing.Point(12, 270);
+            this.btnAdd.Name = "btnAdd";
+            this.btnAdd.Size = new System.Drawing.Size(120, 32);
+            this.btnAdd.TabIndex = 5;
+            this.btnAdd.Text = "現場追加";
+            this.btnAdd.UseVisualStyleBackColor = false;
+            this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
+            // 
+            // btnDelete
+            // 
+            this.btnDelete.BackColor = System.Drawing.Color.Magenta;
+            this.btnDelete.Enabled = false;
+            this.btnDelete.ForeColor = System.Drawing.Color.Black;
+            this.btnDelete.Location = new System.Drawing.Point(138, 270);
+            this.btnDelete.Name = "btnDelete";
+            this.btnDelete.Size = new System.Drawing.Size(120, 32);
+            this.btnDelete.TabIndex = 6;
+            this.btnDelete.Text = "現場削除";
+            this.btnDelete.UseVisualStyleBackColor = false;
+            this.btnDelete.Click += new System.EventHandler(this.btnDelete_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.Transparent;
+            this.btnEnd.Location = new System.Drawing.Point(502, 270);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 32);
+            this.btnEnd.TabIndex = 7;
+            this.btnEnd.Text = "閉じる";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // dgv2
+            // 
+            this.dgv2.AllowUserToAddRows = false;
+            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.dgv2.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgv2.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgv2.ColumnHeadersVisible = false;
+            this.dgv2.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column2,
+            this.dataGridViewTextBoxColumn1,
+            this.dataGridViewTextBoxColumn2,
+            this.dataGridViewTextBoxColumn3,
+            this.col99});
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle3.BackColor = System.Drawing.Color.Coral;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.Coral;
+            dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgv2.DefaultCellStyle = dataGridViewCellStyle3;
+            this.dgv2.Location = new System.Drawing.Point(12, 228);
+            this.dgv2.Name = "dgv2";
+            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.dgv2.RowHeadersDefaultCellStyle = dataGridViewCellStyle4;
+            this.dgv2.RowHeadersVisible = false;
+            this.dgv2.RowTemplate.Height = 21;
+            this.dgv2.ScrollBars = System.Windows.Forms.ScrollBars.None;
+            this.dgv2.Size = new System.Drawing.Size(610, 24);
+            this.dgv2.TabIndex = 9;
+            // 
+            // Column2
+            // 
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "ConstructionCode";
+            this.Column2.Name = "Column2";
+            this.Column2.Visible = false;
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "No";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn1.Width = 40;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            this.dataGridViewTextBoxColumn2.Frozen = true;
+            this.dataGridViewTextBoxColumn2.HeaderText = "現　場　名";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn2.Width = 400;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dataGridViewTextBoxColumn3.Frozen = true;
+            this.dataGridViewTextBoxColumn3.HeaderText = "金　額";
+            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
+            this.dataGridViewTextBoxColumn3.ReadOnly = true;
+            this.dataGridViewTextBoxColumn3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn3.Width = 150;
+            // 
+            // col99
+            // 
+            this.col99.Frozen = true;
+            this.col99.HeaderText = "col99";
+            this.col99.Name = "col99";
+            this.col99.ReadOnly = true;
+            this.col99.Width = 24;
+            // 
+            // dgv1
+            // 
+            this.dgv1.AllowUserToAddRows = false;
+            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.dgv1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            this.dgv1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgv1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.ConstructionCode,
+            this.col000,
+            this.col001,
+            this.col002,
+            this.ReadOnly});
+            this.dgv1.Location = new System.Drawing.Point(12, 51);
+            this.dgv1.Name = "dgv1";
+            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.dgv1.RowHeadersDefaultCellStyle = dataGridViewCellStyle8;
+            this.dgv1.RowHeadersVisible = false;
+            this.dgv1.RowTemplate.Height = 21;
+            this.dgv1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgv1.Size = new System.Drawing.Size(610, 172);
+            this.dgv1.TabIndex = 8;
+            this.dgv1.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.dgv1_CellBeginEdit);
+            this.dgv1.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.dgv1_CellFormatting);
+            this.dgv1.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv1_CellValueChanged);
+            this.dgv1.SelectionChanged += new System.EventHandler(this.dgv1_SelectionChanged);
+            // 
+            // ConstructionCode
+            // 
+            this.ConstructionCode.HeaderText = "ConstructionCode";
+            this.ConstructionCode.Name = "ConstructionCode";
+            this.ConstructionCode.Visible = false;
+            // 
+            // col000
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.col000.DefaultCellStyle = dataGridViewCellStyle6;
+            this.col000.HeaderText = "No";
+            this.col000.Name = "col000";
+            this.col000.ReadOnly = true;
+            this.col000.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col000.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col000.Width = 40;
+            // 
+            // col001
+            // 
+            this.col001.HeaderText = "現　場　名";
+            this.col001.Name = "col001";
+            this.col001.ReadOnly = true;
+            this.col001.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col001.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col001.Width = 400;
+            // 
+            // col002
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.col002.DefaultCellStyle = dataGridViewCellStyle7;
+            this.col002.HeaderText = "金　額";
+            this.col002.Name = "col002";
+            this.col002.ReadOnly = true;
+            this.col002.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col002.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col002.Width = 150;
+            // 
+            // ReadOnly
+            // 
+            this.ReadOnly.HeaderText = "ReadOnly";
+            this.ReadOnly.Name = "ReadOnly";
+            this.ReadOnly.ReadOnly = true;
+            this.ReadOnly.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.ReadOnly.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ReadOnly.Visible = false;
+            // 
+            // btnAccept
+            // 
+            this.btnAccept.BackColor = System.Drawing.Color.Lime;
+            this.btnAccept.ForeColor = System.Drawing.Color.Black;
+            this.btnAccept.Location = new System.Drawing.Point(376, 270);
+            this.btnAccept.Name = "btnAccept";
+            this.btnAccept.Size = new System.Drawing.Size(120, 32);
+            this.btnAccept.TabIndex = 10;
+            this.btnAccept.Text = "登　録";
+            this.btnAccept.UseVisualStyleBackColor = false;
+            this.btnAccept.Click += new System.EventHandler(this.btnAccept_Click);
+            // 
+            // FrmRegField
+            // 
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(632, 313);
+            this.Controls.Add(this.btnAccept);
+            this.Controls.Add(this.btnDelete);
+            this.Controls.Add(this.dgv2);
+            this.Controls.Add(this.btnAdd);
+            this.Controls.Add(this.dgv1);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.tboxCompany);
+            this.Controls.Add(this.label1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmRegField";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "現場登録";
+            this.Load += new System.EventHandler(this.FrmRegField_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgv2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv1)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox tboxCompany;
+        private System.Windows.Forms.Button btnAdd;
+        private System.Windows.Forms.Button btnDelete;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.DataGridView dgv2;
+        private System.Windows.Forms.DataGridView dgv1;
+        private System.Windows.Forms.Button btnAccept;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col99;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ConstructionCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col000;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col001;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col002;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ReadOnly;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.cs	(revision 51)
@@ -0,0 +1,591 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using ProcessManagement.DataModel;
+using ProcessManagement.Common;
+using ProcessManagement.Forms.SubForms;
+using System.Collections;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmRegField : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 列インデックスenum
+        /// </summary>
+        private enum ColumnIndex
+        {
+            ConstructionCode,           // 現場コード (非表示)
+            No,                         // 行番号
+            ConstructionName,           // 現場名
+            BillPrice,                  // 金額
+            ReadOnly,
+        }
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 請求書データ
+        /// </summary>
+        private ConstructionFieldNameHeader m_ConstructionFieldNameHeader = new ConstructionFieldNameHeader();
+
+        /// <summary>
+        /// 請求書明細のConstructionCodeをキーとしたハッシュテーブル
+        /// </summary>
+        private Hashtable m_HtDetailLineCount = new Hashtable();
+
+        /// <summary>
+        /// 他担当の現場割当済金額
+        /// </summary>
+        private int m_UnknownReservedPrice = 0;
+
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// Grid行のハッシュテーブル
+        /// </summary>
+        private Hashtable m_HtGridRowConstructionCode = new Hashtable();
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 請求書データ
+        /// </summary>
+        public ConstructionFieldNameHeader ConstructionFieldNameHeader
+        {
+            get { return m_ConstructionFieldNameHeader; }
+            set { m_ConstructionFieldNameHeader = value; }
+        }
+
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+        #endregion
+
+        #region フォーム初期化
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmRegField()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmRegField_Load(object sender, EventArgs e)
+        {
+            //フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+            // 初期表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 現場追加ボタン押下
+        /// <summary>
+        /// 現場追加ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAdd_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                // 現場選択画面を初期化
+                FrmConstructionDiag frmConstructionDiag = new FrmConstructionDiag();
+                frmConstructionDiag.PersonCode = CommonMotions.LoginUserData.PersonCode;
+                frmConstructionDiag.PersonCharge = (int)FrmConstructionDiag.PersonChargePoint.Construction; //関連工事のみ表示する
+
+                // 現場選択画面表示
+                frmConstructionDiag.ShowDialog();
+
+                // 選択結果判定 OKなら以下の処理を実行する
+                if (frmConstructionDiag.EndButton == DialogResult.OK)
+                {
+                    // 同じ現場コードの行を探す
+                    if (!m_HtGridRowConstructionCode.ContainsKey(frmConstructionDiag.ConstructionCode))
+                    {
+                        // 見つからなかった場合は現場を追加
+
+                        // 行番号付番
+                        int rowCount = dgv1.RowCount - 1;
+
+                        // 現場の追加
+                        dgv1.Rows.Add(frmConstructionDiag.ConstructionCode, rowCount, frmConstructionDiag.ConstructionName, 0, false);
+                        dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+                        dgv1[(int)ColumnIndex.BillPrice, dgv1.RowCount - 1].ReadOnly = false;
+                        //dgv1[(int)ColumnIndex.BillPrice, dgv1.RowCount - 1].Style.Format = "#,0";
+
+                        // ハッシュテーブルに追加
+                        m_HtGridRowConstructionCode.Add(frmConstructionDiag.ConstructionCode, dgv1.Rows[dgv1.RowCount - 1]);
+                    }
+
+                }
+
+                // イベントハンドラ再登録
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+
+            }
+            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 btnDelete_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                foreach (DataGridViewRow gridRow in dgv1.SelectedRows)
+                {
+                    // ハッシュテーブルから選択行を削除する
+                    m_HtGridRowConstructionCode.Remove((int)gridRow.Cells[(int)ColumnIndex.ConstructionCode].Value);
+
+                    // Gridから選択行を削除する
+                    dgv1.Rows.Remove(gridRow);
+
+                }
+
+                // 不明行を再計算して表示
+                CalcUnknownBillPrice();
+
+                // 行番号を再付番
+                for (int rowIndex = 0; rowIndex < dgv1.RowCount - 2; rowIndex++ )
+                {
+                    dgv1.Rows[rowIndex + 2].Cells[(int)ColumnIndex.No].Value = rowIndex + 1;
+                }
+
+                // イベントハンドラ再登録
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+
+                dgv1.ClearSelection();
+
+            }
+            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 btnAccept_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                int maxLineCount = 0;
+
+                if (CommonMotions.cnvInt(dgv2.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value) < 0)
+                {
+                    MessageBox.Show("入力金額が請求書金額を超えています。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                    return;
+                }
+
+                // 初期化時に受け取ったデータからの変更を検出する処理
+                foreach (var detail in m_ConstructionFieldNameHeader.ConstructionFieldNameDetails)
+                {
+                    // 最大LineCountを取得
+                    maxLineCount = (maxLineCount < detail.LineCount) ? detail.LineCount : maxLineCount;
+
+                    // 不明のデータ
+                    if(detail.ConstructionCode == 0)
+                    {
+                        // 不明のデータは後回し
+                        continue;
+                    }
+
+                    if (m_HtGridRowConstructionCode.ContainsKey(detail.ConstructionCode))
+                    {
+                        var gridRow = m_HtGridRowConstructionCode[detail.ConstructionCode] as DataGridViewRow;
+
+                        // 見つかったら 金額を取得、行を削除する
+                        detail.BillPrice = CommonMotions.cnvInt(gridRow.Cells[(int)ColumnIndex.BillPrice].Value);
+                        if (detail.BillPrice == 0)
+                        {
+                            // 金額が0となっている場合は削除フラグをtrueにする
+                            detail.DeleteFlag = true;
+                        }
+                        dgv1.Rows.Remove(gridRow);
+                    }
+                    else
+                    {
+                        // 見つからない場合は、削除フラグをtrueにする
+                        detail.DeleteFlag = true;
+                        detail.BillPrice = 0;
+                    }
+
+                }
+
+                // 新規に追加されたデータの処理
+                for (int rowIndex = 0; rowIndex < dgv1.RowCount - 2; rowIndex++ )
+                {
+                    // 他担当者の割当済行の次の行からを対象とする
+                    var rowData = dgv1.Rows[rowIndex + 2];
+
+                    // 金額が0のものは処理対象外
+                    if (CommonMotions.cnvInt(rowData.Cells[(int)ColumnIndex.BillPrice].Value) != 0)
+                    {
+                        // 画面上で追加された現場データを追加
+                        var detail = new ConstructionFieldNameDetail(
+                                                            0,
+                                                            (int)rowData.Cells[(int)ColumnIndex.ConstructionCode].Value,
+                                                            (string)rowData.Cells[(int)ColumnIndex.ConstructionName].Value,
+                                                            CommonMotions.cnvInt(rowData.Cells[(int)ColumnIndex.BillPrice].Value),
+                                                            false,
+                                                            false,
+                                                            true
+                        );
+
+                        m_ConstructionFieldNameHeader.ConstructionFieldNameDetails.Add(detail);
+
+                    }
+                }
+
+                // 不明行データの処理
+                if (m_HtDetailLineCount.ContainsKey(0))
+                {
+                    // 不明データが存在する場合は、不明行の金額をセットする
+                    ((ConstructionFieldNameDetail)m_HtDetailLineCount[0]).BillPrice = (int)dgv2.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value;
+                    if (CommonMotions.cnvInt(dgv2.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value) == 0)
+                    {
+                        // 不明金額が0の場合は、削除フラグをtrueにする
+                        ((ConstructionFieldNameDetail)m_HtDetailLineCount[0]).DeleteFlag = true;
+                    }
+                }
+                else if((int)dgv2.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value != 0)
+                {
+                    // 不明データが存在しないが、不明金額が0ではない場合、不明データを追加する
+                    m_ConstructionFieldNameHeader.ConstructionFieldNameDetails.Add(
+                        new ConstructionFieldNameDetail(
+                            //1,                                                                      // LineCount(不明なので1で固定)
+                            0,                                                                      // LineCount(不明なので1で固定)
+                            0,                                                                      // 現場コード
+                            "不明",                                                                       // 現場名
+                            CommonMotions.cnvInt(dgv2.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value)));  // 金額
+                }
+
+                // 結果をOKにして画面を閉じる
+                m_EndButton = DialogResult.OK;
+                this.Close();
+            }
+            catch(Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+        #region 終了ボタン押下
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                m_EndButton = DialogResult.No;
+                this.Close();
+            }
+            catch(Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 一覧選択行変更時処理
+        /// <summary>
+        /// 一覧選択行変更時処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgv1_SelectionChanged(object sender, EventArgs e)
+        {
+            try
+            {
+                if (dgv1.SelectedRows.Count != 0)
+                {
+                    btnDelete.Enabled = true;
+                    foreach (DataGridViewRow gridRow in dgv1.SelectedRows)
+                    {
+                        // 選択された行のReadOnlyカラム(非表示)を参照して、trueの場合は削除ボタンを無効、falseの場合は有効にする
+                        btnDelete.Enabled &= !((bool)gridRow.Cells[(int)ColumnIndex.ReadOnly].Value);
+                    }
+                }
+                else
+                {
+                    // 選択行が一つもない場合は、削除ボタンを無効にする
+                    btnDelete.Enabled = false;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region Gridセル値変更時処理
+        /// <summary>
+        /// Gridセル値変更時処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgv1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                // 行が追加されたときではなく、セルの内容が変更されているときだけ処理を実行する。また金額以外の変更は処理を抜ける。
+                if (e.RowIndex == dgv1.NewRowIndex || !dgv1.IsCurrentCellDirty || e.ColumnIndex != (int)ColumnIndex.BillPrice)
+                {
+                    return;
+                }
+
+                var targetCell = dgv1.Rows[e.RowIndex].Cells[e.ColumnIndex] as DataGridViewCell;
+                // 対象セルの値がstringのときに処理を行う
+                if (targetCell.Value.GetType() == typeof(string))
+                {
+                    // stringをintへparseしてセットしなおす
+                    int dest = 0;
+                    int.TryParse((string)targetCell.Value, out dest);
+                    targetCell.Value = dest;
+                }
+
+                // 不明行を再計算して表示
+                CalcUnknownBillPrice();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 初期表示処理
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // 業者名を表示
+                tboxCompany.Text = m_ConstructionFieldNameHeader.CompanyName;
+
+                // 一覧表示
+                ItemListDisplay();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 不明金額を再計算して表示
+        /// <summary>
+        /// 不明金額の再計算および表示
+        /// </summary>
+        private void CalcUnknownBillPrice()
+        {
+            try
+            {
+                // 請求金額合計を取得
+                m_UnknownReservedPrice = m_ConstructionFieldNameHeader.BillPrice;
+
+                for (int rowIndex = 0; rowIndex < dgv1.RowCount - 1; rowIndex++)
+                {
+                    // 表の他担当者割当済金額と現場毎の金額を差し引く
+                    m_UnknownReservedPrice -= CommonMotions.cnvInt(dgv1.Rows[rowIndex + 1].Cells[(int)ColumnIndex.BillPrice].Value);
+                }
+
+                // 不明行の金額欄に値をセット
+                dgv2.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value = m_UnknownReservedPrice;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 現場一覧表の表示 
+        /// <summary>
+        /// 現場一覧表表示
+        /// </summary>
+        private void ItemListDisplay()
+        {
+            try
+            {
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                // DataGridを一旦クリア
+                dgv1.Rows.Clear();
+                dgv2.Rows.Clear();
+
+                // 金額行のフォーマットを指定
+                //dgv1.Columns[(int)ColumnIndex.BillPrice].DefaultCellStyle.Format = "#,0";
+                dgv2.Columns[(int)ColumnIndex.BillPrice].DefaultCellStyle.Format = "#,0";
+
+                // 他担当の現場割当済金額を算出
+                int reservedPrice = m_ConstructionFieldNameHeader.BillPrice;
+                foreach (var detail in m_ConstructionFieldNameHeader.ConstructionFieldNameDetails)
+                {
+                    reservedPrice -= detail.BillPrice;
+                }
+
+                // 請求書金額行を追加
+                dgv1.Rows.Add(0, "", "請求書金額", m_ConstructionFieldNameHeader.BillPrice, true);
+                dgv1.Rows[dgv1.RowCount - 1].DefaultCellStyle.BackColor = Color.Yellow;
+                dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+
+
+                //　他担当の現場割当済行を追加
+                dgv1.Rows.Add(0, "", "他担当の現場割当済", reservedPrice, true);
+                dgv1.Rows[dgv1.RowCount - 1].DefaultCellStyle.BackColor = Color.Yellow;
+                dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+
+                // 不明の行を追加
+                dgv2.Rows.Add(0, "", "不明", 0);
+
+                // 各現場の行を追加
+                int rowCount = 0;
+                foreach (var detail in m_ConstructionFieldNameHeader.ConstructionFieldNameDetails)
+                {
+                    if(detail.ConstructionCode != 0 )
+                    {
+                        // 各個現場の行を追加
+                        dgv1.Rows.Add(detail.ConstructionCode, ++rowCount, detail.FieldName, detail.BillPrice, detail.ReadOnly);
+                        dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+                        dgv1.Rows[dgv1.RowCount - 1].Cells[(int)ColumnIndex.BillPrice].ReadOnly = detail.ReadOnly;         // ReadOnlyフラグがtrueなら金額のセルを編集不可にする
+                    }
+
+                    // ハッシュテーブルの追加
+                    //m_HtDetailLineCount.Add(detail.LineCount, detail); //Update Mjurakami
+                    m_HtDetailLineCount.Add(detail.ConstructionCode, detail);
+                    m_HtGridRowConstructionCode.Add(detail.ConstructionCode, dgv1.Rows[dgv1.RowCount - 1]);
+                }
+
+                // 不明行を再計算して表示
+                CalcUnknownBillPrice();
+
+                // イベントハンドラ再登録
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #endregion
+
+        /// <summary>
+        /// CellBeginEdit
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgv1_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+
+            if (e.ColumnIndex == (int)ColumnIndex.BillPrice)
+            {
+                dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value);
+                dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
+
+            }
+        }
+
+        /// <summary>
+        /// CellFormatting
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgv1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+
+            try
+            {
+                if (dgv.RowCount == 0)
+                    return;
+
+                if (e.ColumnIndex == (int)ColumnIndex.BillPrice)
+                {
+                    // マイナス値は赤
+                    if (CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value) < 0)
+                    {
+                        dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = Color.Red;
+                    }
+                    else
+                    {
+                        dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
+                    }
+
+                    dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value).ToString("#,0");
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmRegField.resx	(revision 51)
@@ -0,0 +1,150 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <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="col99.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ConstructionCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col000.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col001.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col002.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ReadOnly.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.Designer.cs	(revision 51)
@@ -0,0 +1,266 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmSelectField
+    {
+        /// <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()
+        {
+            this.label2 = new System.Windows.Forms.Label();
+            this.comboBox1 = new System.Windows.Forms.ComboBox();
+            this.label1 = new System.Windows.Forms.Label();
+            this.comboBox2 = new System.Windows.Forms.ComboBox();
+            this.button1 = new System.Windows.Forms.Button();
+            this.dataGridView1 = new System.Windows.Forms.DataGridView();
+            this.col1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col5 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.btnSelect = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.CausesValidation = false;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.Location = new System.Drawing.Point(12, 9);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(120, 25);
+            this.label2.TabIndex = 7;
+            this.label2.Text = "発注者区分";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // comboBox1
+            // 
+            this.comboBox1.BackColor = System.Drawing.Color.White;
+            this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBox1.DropDownWidth = 240;
+            this.comboBox1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.comboBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBox1.FormattingEnabled = true;
+            this.comboBox1.Items.AddRange(new object[] {
+            "法人（建設会社）",
+            "法人（民間企業）",
+            "神戸市・神戸市関連",
+            "神戸市立小・中・高学校",
+            "兵庫県・兵庫県関連",
+            "兵庫県警察",
+            "兵庫県立高校",
+            "大学法人",
+            "神戸市・兵庫県住宅指定管理会社（市住・県住）",
+            "公共団体（各省庁）",
+            "建築士事務所",
+            "個人（一般）"});
+            this.comboBox1.Location = new System.Drawing.Point(138, 10);
+            this.comboBox1.Name = "comboBox1";
+            this.comboBox1.Size = new System.Drawing.Size(400, 24);
+            this.comboBox1.TabIndex = 8;
+            this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
+            // 
+            // 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.CausesValidation = false;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.Location = new System.Drawing.Point(12, 47);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(120, 25);
+            this.label1.TabIndex = 9;
+            this.label1.Text = "発注者名称";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // comboBox2
+            // 
+            this.comboBox2.BackColor = System.Drawing.Color.White;
+            this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBox2.DropDownWidth = 240;
+            this.comboBox2.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.comboBox2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBox2.FormattingEnabled = true;
+            this.comboBox2.Items.AddRange(new object[] {
+            "株式会社 大木工務店 本社",
+            "株式会社 伊吹工務店",
+            "株式会社 播磨工業所",
+            "株式会社 益田工務店",
+            "株式会社 鍛冶田工務店 大阪支店",
+            "大和ハウス工業 株式会社 神戸支店",
+            "株式会社 鴻池組 大阪本店",
+            "株式会社 新井組 本社",
+            "株式会社 カデックス",
+            "株式会社 テン",
+            ""});
+            this.comboBox2.Location = new System.Drawing.Point(138, 47);
+            this.comboBox2.Name = "comboBox2";
+            this.comboBox2.Size = new System.Drawing.Size(400, 24);
+            this.comboBox2.TabIndex = 10;
+            // 
+            // button1
+            // 
+            this.button1.BackColor = System.Drawing.Color.Blue;
+            this.button1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.button1.ForeColor = System.Drawing.Color.White;
+            this.button1.Location = new System.Drawing.Point(544, 45);
+            this.button1.Name = "button1";
+            this.button1.Size = new System.Drawing.Size(120, 28);
+            this.button1.TabIndex = 11;
+            this.button1.Text = "現場表示";
+            this.button1.UseVisualStyleBackColor = false;
+            this.button1.Click += new System.EventHandler(this.button1_Click);
+            // 
+            // dataGridView1
+            // 
+            this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.col1,
+            this.col2,
+            this.col3,
+            this.col4,
+            this.col5});
+            this.dataGridView1.Location = new System.Drawing.Point(12, 82);
+            this.dataGridView1.Name = "dataGridView1";
+            this.dataGridView1.RowHeadersVisible = false;
+            this.dataGridView1.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dataGridView1.RowTemplate.Height = 21;
+            this.dataGridView1.RowTemplate.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridView1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
+            this.dataGridView1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dataGridView1.Size = new System.Drawing.Size(704, 375);
+            this.dataGridView1.TabIndex = 12;
+            // 
+            // col1
+            // 
+            this.col1.Frozen = true;
+            this.col1.HeaderText = "No";
+            this.col1.Name = "col1";
+            this.col1.ReadOnly = true;
+            this.col1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // col2
+            // 
+            this.col2.Frozen = true;
+            this.col2.HeaderText = "現場名";
+            this.col2.Name = "col2";
+            this.col2.ReadOnly = true;
+            this.col2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // col3
+            // 
+            this.col3.Frozen = true;
+            this.col3.HeaderText = "請求書発行日";
+            this.col3.Name = "col3";
+            this.col3.ReadOnly = true;
+            // 
+            // col4
+            // 
+            this.col4.Frozen = true;
+            this.col4.HeaderText = "入金予定日";
+            this.col4.Name = "col4";
+            this.col4.ReadOnly = true;
+            // 
+            // col5
+            // 
+            this.col5.Frozen = true;
+            this.col5.HeaderText = "選択";
+            this.col5.Name = "col5";
+            this.col5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            // 
+            // btnSelect
+            // 
+            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(468, 467);
+            this.btnSelect.Name = "btnSelect";
+            this.btnSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnSelect.TabIndex = 13;
+            this.btnSelect.Text = "選　択";
+            this.btnSelect.UseVisualStyleBackColor = false;
+            this.btnSelect.Click += new System.EventHandler(this.btnSelect_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(596, 467);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 14;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // FrmSelectField
+            // 
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(728, 509);
+            this.Controls.Add(this.btnSelect);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dataGridView1);
+            this.Controls.Add(this.button1);
+            this.Controls.Add(this.comboBox2);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.comboBox1);
+            this.Controls.Add(this.label2);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmSelectField";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "請求先／現場選択";
+            this.Load += new System.EventHandler(this.FrmSelectFiled_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.ComboBox comboBox1;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox comboBox2;
+        private System.Windows.Forms.Button button1;
+        private System.Windows.Forms.DataGridView dataGridView1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col4;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn col5;
+        private System.Windows.Forms.Button btnSelect;
+        private System.Windows.Forms.Button btnEnd;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.cs	(revision 51)
@@ -0,0 +1,128 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmSelectField : Form
+    {
+        public FrmSelectField()
+        {
+            InitializeComponent();
+        }
+
+        private void FrmSelectFiled_Load(object sender, EventArgs e)
+        {
+            // DataGridViewの各項目の値・プロパティを設定
+            // タイトル
+            String[] title = { "No", " 現　場　名", " 請求日\r\n 発行日", " 入金\r\n 予定日", "選　択" };
+
+            // 幅
+            int[] wd = { 40,            // No
+                         320,           // 現場名
+                         120,           // 請求日発行日
+                         120,           // 入金予定日
+                         84             // 選択
+                       };
+
+            // 読み取り専用(0:編集可,1:読み取り専用)
+            int[] rd = { 1,             // No
+                         1,             // 現場名
+                         1,             // 請求日発行日
+                         1,             // 入金予定日
+                         0              // 選択
+                       };
+
+            // セル内の文字配置(0:左詰め 1:右詰 2:中央揃え)
+            int[] al = { 2,             // No
+                         0,             // 現場名
+                         2,             // 請求日発行日
+                         2,             // 入金予定日
+                         2              // 選択
+                       };
+
+            this.dataGridView1.ColumnHeadersHeight = this.dataGridView1.ColumnHeadersHeight + 10;
+            this.dataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridView1.RowHeadersVisible = false;
+            this.dataGridView1.AllowUserToAddRows = false;
+ 
+            // DataGridViewの各ヘッダー項目の設定
+            for (int i = 0; i < 5; i++)
+            {
+                this.dataGridView1.Columns[i].HeaderText = title[i];
+                this.dataGridView1.Columns[i].Width = wd[i];
+
+                // 読み取り専用か否かを設定
+                if (rd[i] == 1)
+                {
+                    this.dataGridView1.Columns[i].ReadOnly = true;
+                }
+
+                // 文字列の配置を設定
+                if (al[i] == 0)
+                {
+                    this.dataGridView1.Columns[i].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft;
+                }
+                else if (al[i] == 1)
+                {
+                    this.dataGridView1.Columns[i].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
+                }
+                else
+                {
+                    this.dataGridView1.Columns[i].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
+                }
+            }
+        }
+
+        // DataGridViewに各項目の値を設定
+        private void setDataGridView( DataGridView dvg)
+        {
+            dvg.Rows.Clear();
+            
+            // DataGridViewの1行目
+            dvg.Rows.Add(new Object[] { "-", "不明", "", "", false });
+
+            // DataGridViewの2行目以降(仮)
+            for (int i = 0; i < 20; i++)
+            {
+                dvg.Rows.Add(new Object[] { (i + 1).ToString(), "工事案件" + (i + 1).ToString(), "2016/11/10", "2016/11/30", false });
+            }
+
+        }
+
+        // 「選択」ボタン押下時
+        private void btnSelect_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        //　「終了」ボタン押下時
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        // 「発注者区分」コンボボックスの選択項目が変更された時
+        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            this.comboBox2.Enabled = true;
+            this.comboBox2.SelectedIndex = 0;
+            this.button1.Enabled = true;
+        }
+
+        // 「現場表示」ボタン押下時
+        private void button1_Click(object sender, EventArgs e)
+        {
+            setDataGridView(this.dataGridView1);
+            this.dataGridView1.Enabled = true;
+            this.dataGridView1.Rows[0].Selected = false;
+        }
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectField.resx	(revision 51)
@@ -0,0 +1,120 @@
+﻿<?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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.Designer.cs	(revision 51)
@@ -0,0 +1,368 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmSelectRegField
+    {
+        /// <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 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 dataGridViewCellStyle8 = 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 dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.label1 = new System.Windows.Forms.Label();
+            this.tboxCompany = new System.Windows.Forms.TextBox();
+            this.btnAdd = new System.Windows.Forms.Button();
+            this.btnDelete = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.dgv2 = new System.Windows.Forms.DataGridView();
+            this.dgv1 = new System.Windows.Forms.DataGridView();
+            this.btnAccept = new System.Windows.Forms.Button();
+            this.ConstructionCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col000 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col001 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col002 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ReadOnly = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ConstructionCode2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderNo2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col99 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.Yellow;
+            this.label1.Location = new System.Drawing.Point(13, 11);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(106, 25);
+            this.label1.TabIndex = 2;
+            this.label1.Text = "発注者名";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tboxCompany
+            // 
+            this.tboxCompany.Location = new System.Drawing.Point(122, 12);
+            this.tboxCompany.Name = "tboxCompany";
+            this.tboxCompany.ReadOnly = true;
+            this.tboxCompany.Size = new System.Drawing.Size(267, 23);
+            this.tboxCompany.TabIndex = 3;
+            // 
+            // btnAdd
+            // 
+            this.btnAdd.BackColor = System.Drawing.Color.Cyan;
+            this.btnAdd.Location = new System.Drawing.Point(12, 270);
+            this.btnAdd.Name = "btnAdd";
+            this.btnAdd.Size = new System.Drawing.Size(120, 32);
+            this.btnAdd.TabIndex = 5;
+            this.btnAdd.Text = "現場追加";
+            this.btnAdd.UseVisualStyleBackColor = false;
+            this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
+            // 
+            // btnDelete
+            // 
+            this.btnDelete.BackColor = System.Drawing.Color.Magenta;
+            this.btnDelete.Enabled = false;
+            this.btnDelete.ForeColor = System.Drawing.Color.Black;
+            this.btnDelete.Location = new System.Drawing.Point(138, 270);
+            this.btnDelete.Name = "btnDelete";
+            this.btnDelete.Size = new System.Drawing.Size(120, 32);
+            this.btnDelete.TabIndex = 6;
+            this.btnDelete.Text = "現場削除";
+            this.btnDelete.UseVisualStyleBackColor = false;
+            this.btnDelete.Click += new System.EventHandler(this.btnDelete_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.Transparent;
+            this.btnEnd.Location = new System.Drawing.Point(502, 270);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 32);
+            this.btnEnd.TabIndex = 7;
+            this.btnEnd.Text = "閉じる";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // dgv2
+            // 
+            this.dgv2.AllowUserToAddRows = false;
+            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.dgv2.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgv2.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgv2.ColumnHeadersVisible = false;
+            this.dgv2.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.ConstructionCode2,
+            this.OrderNo2,
+            this.dataGridViewTextBoxColumn1,
+            this.dataGridViewTextBoxColumn2,
+            this.dataGridViewTextBoxColumn3,
+            this.col99});
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle3.BackColor = System.Drawing.Color.Coral;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.Coral;
+            dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgv2.DefaultCellStyle = dataGridViewCellStyle3;
+            this.dgv2.Location = new System.Drawing.Point(12, 228);
+            this.dgv2.Name = "dgv2";
+            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.dgv2.RowHeadersDefaultCellStyle = dataGridViewCellStyle4;
+            this.dgv2.RowHeadersVisible = false;
+            this.dgv2.RowTemplate.Height = 21;
+            this.dgv2.ScrollBars = System.Windows.Forms.ScrollBars.None;
+            this.dgv2.Size = new System.Drawing.Size(610, 24);
+            this.dgv2.TabIndex = 9;
+            // 
+            // dgv1
+            // 
+            this.dgv1.AllowUserToAddRows = false;
+            this.dgv1.AllowUserToDeleteRows = false;
+            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.dgv1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            this.dgv1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgv1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.ConstructionCode,
+            this.OrderNo,
+            this.col000,
+            this.col001,
+            this.col002,
+            this.ReadOnly});
+            this.dgv1.Location = new System.Drawing.Point(12, 51);
+            this.dgv1.Name = "dgv1";
+            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.dgv1.RowHeadersDefaultCellStyle = dataGridViewCellStyle8;
+            this.dgv1.RowHeadersVisible = false;
+            this.dgv1.RowTemplate.Height = 21;
+            this.dgv1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgv1.Size = new System.Drawing.Size(610, 172);
+            this.dgv1.TabIndex = 8;
+            this.dgv1.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv1_CellValueChanged);
+            this.dgv1.SelectionChanged += new System.EventHandler(this.dgv1_SelectionChanged);
+            // 
+            // btnAccept
+            // 
+            this.btnAccept.BackColor = System.Drawing.Color.Lime;
+            this.btnAccept.ForeColor = System.Drawing.Color.Black;
+            this.btnAccept.Location = new System.Drawing.Point(376, 270);
+            this.btnAccept.Name = "btnAccept";
+            this.btnAccept.Size = new System.Drawing.Size(120, 32);
+            this.btnAccept.TabIndex = 10;
+            this.btnAccept.Text = "登　録";
+            this.btnAccept.UseVisualStyleBackColor = false;
+            this.btnAccept.Click += new System.EventHandler(this.btnAccept_Click);
+            // 
+            // ConstructionCode
+            // 
+            this.ConstructionCode.HeaderText = "■工事番号";
+            this.ConstructionCode.Name = "ConstructionCode";
+            this.ConstructionCode.Visible = false;
+            // 
+            // OrderNo
+            // 
+            this.OrderNo.HeaderText = "■連番";
+            this.OrderNo.Name = "OrderNo";
+            this.OrderNo.Visible = false;
+            // 
+            // col000
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.col000.DefaultCellStyle = dataGridViewCellStyle6;
+            this.col000.HeaderText = "No";
+            this.col000.Name = "col000";
+            this.col000.ReadOnly = true;
+            this.col000.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col000.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col000.Width = 40;
+            // 
+            // col001
+            // 
+            this.col001.HeaderText = "現　場　名";
+            this.col001.Name = "col001";
+            this.col001.ReadOnly = true;
+            this.col001.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col001.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col001.Width = 400;
+            // 
+            // col002
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.col002.DefaultCellStyle = dataGridViewCellStyle7;
+            this.col002.HeaderText = "金　額";
+            this.col002.Name = "col002";
+            this.col002.ReadOnly = true;
+            this.col002.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col002.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col002.Width = 150;
+            // 
+            // ReadOnly
+            // 
+            this.ReadOnly.HeaderText = "ReadOnly";
+            this.ReadOnly.Name = "ReadOnly";
+            this.ReadOnly.ReadOnly = true;
+            this.ReadOnly.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.ReadOnly.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ReadOnly.Visible = false;
+            // 
+            // ConstructionCode2
+            // 
+            this.ConstructionCode2.Frozen = true;
+            this.ConstructionCode2.HeaderText = "■工事番号";
+            this.ConstructionCode2.Name = "ConstructionCode2";
+            this.ConstructionCode2.Visible = false;
+            // 
+            // OrderNo2
+            // 
+            this.OrderNo2.Frozen = true;
+            this.OrderNo2.HeaderText = "■連番";
+            this.OrderNo2.Name = "OrderNo2";
+            this.OrderNo2.Visible = false;
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "No";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn1.Width = 40;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            this.dataGridViewTextBoxColumn2.Frozen = true;
+            this.dataGridViewTextBoxColumn2.HeaderText = "現　場　名";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn2.Width = 400;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dataGridViewTextBoxColumn3.Frozen = true;
+            this.dataGridViewTextBoxColumn3.HeaderText = "金　額";
+            this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
+            this.dataGridViewTextBoxColumn3.ReadOnly = true;
+            this.dataGridViewTextBoxColumn3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn3.Width = 150;
+            // 
+            // col99
+            // 
+            this.col99.Frozen = true;
+            this.col99.HeaderText = "col99";
+            this.col99.Name = "col99";
+            this.col99.ReadOnly = true;
+            this.col99.Width = 24;
+            // 
+            // FrmSelectRegField
+            // 
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(632, 313);
+            this.Controls.Add(this.btnAccept);
+            this.Controls.Add(this.btnDelete);
+            this.Controls.Add(this.dgv2);
+            this.Controls.Add(this.btnAdd);
+            this.Controls.Add(this.dgv1);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.tboxCompany);
+            this.Controls.Add(this.label1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmSelectRegField";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "現場登録";
+            this.Load += new System.EventHandler(this.FrmRegField_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgv2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv1)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.TextBox tboxCompany;
+        private System.Windows.Forms.Button btnAdd;
+        private System.Windows.Forms.Button btnDelete;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.DataGridView dgv2;
+        private System.Windows.Forms.DataGridView dgv1;
+        private System.Windows.Forms.Button btnAccept;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ConstructionCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderNo;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col000;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col001;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col002;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ReadOnly;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ConstructionCode2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderNo2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col99;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.cs	(revision 51)
@@ -0,0 +1,525 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Collections;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmSelectRegField : Form
+    {
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+
+        // 列インデックスenum ※■は非表示
+        private enum ColumnIndex
+        {
+            ConstructionCode,           // ■工事番号
+            OrderNo,                    // ■連番
+            No,                         // 行番号
+            ConstructionName,           // 現場名
+            BillPrice,                  // 金額
+            ReadOnly,
+        }
+
+        // 取得するデータ項目
+        private enum ClickGetData
+        {
+            RequestNo = 0,
+            OrderNo,
+            OrderersDivision,
+            OrderersCode,
+            BillCreationDate,
+            BillTotalPrice,
+            BillPrice,
+            TaxPrice,
+            DetailString,
+            PersonCode,
+            PersonName,
+            DepartmentCode,
+        }
+
+        // 発注者区分
+        public int m_OrderersDivision = 0;
+
+        // 発注者コード
+        public int m_OrderersCode = 0;
+
+        public class MyFieldData
+        {
+            public int PersonCode { set; get; }
+            public int OrderersDivision { set; get; }
+            public int OrderersCode { set; get; }
+            public int RequestNo { set; get; }
+            public int OrderNo { set; get; }
+            public string ConstructionName { set; get; }
+            public string ConstructionName_Raw { set; get; }
+            public int DepartmentCode { set; get; }
+            public string BillCreationDate { set; get; }
+            public int BillPrice { set; get; }
+            public int TaxPrice { set; get; }
+            public int DepositAmount { set; get; }
+            public bool DeleteFlg { set; get; }
+            public bool ReadOnly { set; get; }
+        }
+
+        public List<MyFieldData> m_lstMyField = new List<MyFieldData>();
+
+        // 終了状態フラグ
+        private DialogResult m_EndButton = DialogResult.None;
+
+        // 終了ボタン押下
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        // フォーム初期化
+        public FrmSelectRegField()
+        {
+            InitializeComponent();
+        }
+
+        // フォームロード
+        private void FrmRegField_Load(object sender, EventArgs e)
+        {
+            //フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // 発注者名表示
+            DispOrdersName();
+
+            // 現場名表示
+            ItemListDisplay();
+        }
+
+        // 現場追加ボタン押下
+        private void btnAdd_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                FrmSelectRequest f = new FrmSelectRequest(FrmSelectRequest.OpenMode.AddFld);
+                f.m_OrderDiv = m_OrderersDivision;
+                f.m_OrderCode = m_OrderersCode;
+
+                f.FormClosed += new FormClosedEventHandler(NotifyEditFld_FormClosed);
+                f.ShowDialog(this);
+
+                // イベントハンドラ再登録
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 現場削除ボタン押下
+        private void btnDelete_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                if (dgv1.CurrentCell.RowIndex <= 1) return;
+
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                // 内部データを更新
+                foreach (MyFieldData MyData in m_lstMyField)
+                {
+                    if ((MyData.RequestNo == CommonMotions.cnvInt(dgv1.Rows[dgv1.CurrentCell.RowIndex].Cells[(int)ColumnIndex.ConstructionCode].Value)) &&
+                        (MyData.OrderNo == CommonMotions.cnvInt(dgv1.Rows[dgv1.CurrentCell.RowIndex].Cells[(int)ColumnIndex.OrderNo].Value)))
+                    {
+                        MyData.DeleteFlg = true;
+                    }
+                }
+
+                foreach (DataGridViewRow gridRow in dgv1.SelectedRows)
+                {
+                    // Gridから選択行を削除する
+                    dgv1.Rows.Remove(gridRow);
+                }
+
+                // 不明行を再計算して表示
+                CalcUnknownBillPrice();
+
+                // 行番号を再付番
+                for (int rowIndex = 2; rowIndex < dgv1.RowCount; rowIndex++)
+                {
+                    dgv1.Rows[rowIndex].Cells[(int)ColumnIndex.No].Value = rowIndex + 1;
+                }
+
+                // イベントハンドラ再登録
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 登録ボタン押下
+        private void btnAccept_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 結果をOKにして画面を閉じる
+                m_EndButton = DialogResult.OK;
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 終了ボタン押下
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                m_EndButton = DialogResult.No;
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 一覧選択行変更時処理
+        private void dgv1_SelectionChanged(object sender, EventArgs e)
+        {
+            try
+            {
+                if (dgv1.CurrentCell.RowIndex >= 2)
+                {
+                    btnDelete.Enabled = true;
+                    foreach (DataGridViewRow gridRow in dgv1.SelectedRows)
+                    {
+                        // 選択された行のReadOnlyカラム(非表示)を参照して、trueの場合は削除ボタンを無効、falseの場合は有効にする
+                        btnDelete.Enabled &= !((bool)gridRow.Cells[(int)ColumnIndex.ReadOnly].Value);
+                    }
+                }
+                else
+                {
+                    // 選択行が一つもない場合は、削除ボタンを無効にする
+                    btnDelete.Enabled = false;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // Gridセル値変更時処理
+        private void dgv1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                // 行が追加されたときではなく、セルの内容が変更されているときだけ処理を実行する。また金額以外の変更は処理を抜ける。
+                if (e.RowIndex == dgv1.NewRowIndex || !dgv1.IsCurrentCellDirty || e.ColumnIndex != (int)ColumnIndex.BillPrice)
+                {
+                    return;
+                }
+
+                // 内部データを更新
+                foreach (MyFieldData FldData in m_lstMyField)
+                {
+                    if ((FldData.RequestNo == CommonMotions.cnvInt(dgv1.Rows[e.RowIndex].Cells[(int)ColumnIndex.ConstructionCode].Value)) &&
+                        (FldData.OrderNo == CommonMotions.cnvInt(dgv1.Rows[e.RowIndex].Cells[(int)ColumnIndex.OrderNo].Value)))
+                    {
+                        FldData.DepositAmount = CommonMotions.cnvInt(dgv1.Rows[e.RowIndex].Cells[(int)ColumnIndex.BillPrice].Value);
+                        break;
+                    }
+                }
+
+                // 不明行を再計算して表示
+                CalcUnknownBillPrice();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 発注者名表示
+        private void DispOrdersName()
+        {
+            IOMOrderers IoOm = new IOMOrderers();
+            List<OrderersMaster> lstOm = new List<OrderersMaster>();
+
+            try
+            {
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                string sSql = string.Format(" where OrderCotegory = {0} and OrderersCode = {1}", m_OrderersDivision, m_OrderersCode);
+                if (!IoOm.SelectAction(sSql, ref lstOm)) return;
+
+                string OrderName = "";
+                foreach (OrderersMaster OmInfo in lstOm)
+                {
+                    // 発注社名１△発注者名２
+                    if (OmInfo.CorporateStatusPoint == 0)
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.OrderersName1;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    // 法人格名称△発注者名１△発注者名２
+                    else if (OmInfo.CorporateStatusPoint == 1)
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName1;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName1 + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    // 発注者名１△法人格名称△発注者名２
+                    else
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.CorporateStatusName;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    if (OmInfo.OrderCotegory == 8)
+                    {
+                        OrderName += "様";
+                    }
+                }
+
+                tboxCompany.Text = OrderName;
+
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoOm = null;
+            }
+        }
+
+        // 不明金額の再計算および表示
+        private void CalcUnknownBillPrice()
+        {
+            try
+            {
+                // 請求金額合計を算出
+                int UnknownPrice = CommonMotions.cnvInt(dgv1.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value);
+                for (int rowIndex = 1; rowIndex < dgv1.RowCount; rowIndex++)
+                {
+                    UnknownPrice -= CommonMotions.cnvInt(dgv1.Rows[rowIndex].Cells[(int)ColumnIndex.BillPrice].Value);
+                }
+
+                // 不明行の金額欄に値をセット
+                dgv2.Rows[0].Cells[(int)ColumnIndex.BillPrice].Value = UnknownPrice.ToString("#,0");
+
+                foreach (MyFieldData MyData in m_lstMyField)
+                {
+                    if ((MyData.ConstructionName == "不明") &&
+                        (MyData.ConstructionName_Raw == ""))
+                    {
+                        MyData.DepositAmount = UnknownPrice;
+                    }
+
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 現場一覧表表示
+        private void ItemListDisplay()
+        {
+            try
+            {
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                // DataGridを一旦クリア
+                dgv1.Rows.Clear();
+                dgv2.Rows.Clear();
+
+                // 金額行のフォーマットを指定
+                dgv1.Columns[(int)ColumnIndex.BillPrice].DefaultCellStyle.Format = "#,0";
+                dgv2.Columns[(int)ColumnIndex.BillPrice].DefaultCellStyle.Format = "#,0";
+
+                // 入金金額合計、他担当割り当て済み金額を算出
+                int TotalPrice = 0;
+                int OtherParsonPrice = 0;
+                foreach(MyFieldData MyData in m_lstMyField)
+                {
+                    TotalPrice += MyData.DepositAmount;
+                    if ((MyData.PersonCode != CommonMotions.LoginUserData.PersonCode) &&
+                        (MyData.PersonCode != 0))
+                    {
+                        OtherParsonPrice += MyData.DepositAmount;
+                    }
+                }
+
+                // 請求書金額行を追加
+                dgv1.Rows.Add(0, 0, "", "入金金額", TotalPrice, true);
+                dgv1.Rows[dgv1.RowCount - 1].DefaultCellStyle.BackColor = Color.Yellow;
+                dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+
+                //　他担当の現場割当済行を追加
+                dgv1.Rows.Add(0, 0, "", "他担当の現場割当済", OtherParsonPrice, true);
+                dgv1.Rows[dgv1.RowCount - 1].DefaultCellStyle.BackColor = Color.Yellow;
+                dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+
+                int rowCount = 0;
+
+                foreach (MyFieldData MyData in m_lstMyField)
+                {
+                    if (MyData.PersonCode == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        // 各現場の行を追加
+                        dgv1.Rows.Add(MyData.RequestNo, MyData.OrderNo, ++rowCount, MyData.ConstructionName, MyData.DepositAmount, MyData.ReadOnly);
+                        dgv1.Rows[dgv1.RowCount - 1].Cells[(int)ColumnIndex.BillPrice].ReadOnly = MyData.ReadOnly;
+                        dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+                    }
+                }
+
+                // 不明の行を追加
+                dgv2.Rows.Add(0, 0, "", "不明", 0);
+
+                // 不明行を再計算して表示
+                CalcUnknownBillPrice();
+
+                // イベントハンドラ再登録
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 現場登録ダイアログクローズ通知
+        private void NotifyEditFld_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            FrmSelectRequest f = (FrmSelectRequest)sender;
+
+            try
+            {
+                // 一旦セルの値変更と行選択変更イベントを無効にする
+                dgv1.CellValueChanged -= dgv1_CellValueChanged;
+                dgv1.SelectionChanged -= dgv1_SelectionChanged;
+
+                if (f.m_lstAddFldData.Count() == 0) return;
+
+                // 現場追加あり
+                foreach(FrmSelectRequest.AddFldData AddInfo in f.m_lstAddFldData)
+                {
+                    bool isExist = false;
+                    foreach (MyFieldData FldData in m_lstMyField)
+                    {
+                        if ((FldData.RequestNo == AddInfo.RequestNo) &&
+                            (FldData.OrderNo == AddInfo.OrderNo) &&
+                            (FldData.DeleteFlg == false))
+                        {
+                            isExist = true;
+                            break;
+                        }
+                    }
+                    if (!isExist)
+                    {
+                        // 不明データを末尾にして挿入すること！
+                        int InsPos = m_lstMyField.Count;
+                        if ((m_lstMyField[m_lstMyField.Count - 1].ConstructionName == "不明") &&
+                            (m_lstMyField[m_lstMyField.Count - 1].ConstructionName_Raw == ""))
+                        {
+                            InsPos = m_lstMyField.Count - 1;
+                        }
+
+                        m_lstMyField.Insert(InsPos, new MyFieldData()
+                        {
+                            PersonCode = CommonMotions.LoginUserData.PersonCode,
+                            OrderersDivision = AddInfo.OrderersDivision,
+                            OrderersCode = AddInfo.OrderersCode,
+                            RequestNo = AddInfo.RequestNo,
+                            OrderNo = AddInfo.OrderNo,
+                            ConstructionName = AddInfo.FieldName,
+                            ConstructionName_Raw = AddInfo.FieldName,
+                            DepartmentCode = AddInfo.DepartmentCode,
+                            BillCreationDate = AddInfo.BillCreationDate,
+                            BillPrice = AddInfo.BillPrice,
+                            TaxPrice = AddInfo.TaxPrice,
+                            DepositAmount = AddInfo.BillTotalPrice,
+                            DeleteFlg = false,
+                            ReadOnly = false,
+                        });
+                        // 各現場の行を追加
+                        dgv1.Rows.Add(AddInfo.RequestNo, AddInfo.OrderNo, dgv1.RowCount - 1, AddInfo.FieldName, AddInfo.BillTotalPrice, false);
+                        dgv1.Rows[dgv1.RowCount - 1].Cells[(int)ColumnIndex.BillPrice].ReadOnly = false;
+                        dgv1.Rows[dgv1.RowCount - 1].Resizable = DataGridViewTriState.False;
+                    }
+                }
+
+                // 不明行を再計算して表示
+                CalcUnknownBillPrice();
+
+                // イベントハンドラ再登録
+                dgv1.CellValueChanged += dgv1_CellValueChanged;
+                dgv1.SelectionChanged += dgv1_SelectionChanged;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRegField.resx	(revision 51)
@@ -0,0 +1,156 @@
+﻿<?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="ConstructionCode2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderNo2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <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="col99.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ConstructionCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col000.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col001.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col002.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ReadOnly.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.Designer.cs	(revision 51)
@@ -0,0 +1,339 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmSelectRequest
+    {
+        /// <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 dataGridViewCellStyle5 = 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();
+            this.label2 = new System.Windows.Forms.Label();
+            this.comboBoxKbn = new System.Windows.Forms.ComboBox();
+            this.label1 = new System.Windows.Forms.Label();
+            this.comboBoxName = new System.Windows.Forms.ComboBox();
+            this.dgvmaster = new System.Windows.Forms.DataGridView();
+            this.btnSelect = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.No = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.RequestNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderersDivision = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderersCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.FieldName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.BillCreationDate = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.BillTotalPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.BillPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.TaxPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SelectCheckBox = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.PersonName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.DepartmentCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvmaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.CausesValidation = false;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.Location = new System.Drawing.Point(8, 8);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(120, 24);
+            this.label2.TabIndex = 7;
+            this.label2.Text = "発注者区分";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // comboBoxKbn
+            // 
+            this.comboBoxKbn.BackColor = System.Drawing.Color.White;
+            this.comboBoxKbn.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBoxKbn.DropDownWidth = 240;
+            this.comboBoxKbn.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.comboBoxKbn.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBoxKbn.FormattingEnabled = true;
+            this.comboBoxKbn.Location = new System.Drawing.Point(136, 8);
+            this.comboBoxKbn.Name = "comboBoxKbn";
+            this.comboBoxKbn.Size = new System.Drawing.Size(400, 24);
+            this.comboBoxKbn.TabIndex = 8;
+            this.comboBoxKbn.SelectedIndexChanged += new System.EventHandler(this.comboBoxKbn_SelectedIndexChanged);
+            // 
+            // 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.CausesValidation = false;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.Location = new System.Drawing.Point(8, 38);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(120, 24);
+            this.label1.TabIndex = 9;
+            this.label1.Text = "発注者名称";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // comboBoxName
+            // 
+            this.comboBoxName.BackColor = System.Drawing.Color.White;
+            this.comboBoxName.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBoxName.DropDownWidth = 240;
+            this.comboBoxName.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.comboBoxName.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBoxName.FormattingEnabled = true;
+            this.comboBoxName.Location = new System.Drawing.Point(136, 39);
+            this.comboBoxName.Name = "comboBoxName";
+            this.comboBoxName.Size = new System.Drawing.Size(400, 24);
+            this.comboBoxName.TabIndex = 10;
+            this.comboBoxName.SelectedIndexChanged += new System.EventHandler(this.comboBoxName_SelectedIndexChanged);
+            // 
+            // dgvmaster
+            // 
+            this.dgvmaster.AllowUserToAddRows = false;
+            this.dgvmaster.AllowUserToDeleteRows = false;
+            this.dgvmaster.AllowUserToResizeColumns = false;
+            this.dgvmaster.AllowUserToResizeRows = false;
+            this.dgvmaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dgvmaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.No,
+            this.RequestNo,
+            this.OrderersDivision,
+            this.OrderNo,
+            this.OrderersCode,
+            this.FieldName,
+            this.BillCreationDate,
+            this.BillTotalPrice,
+            this.BillPrice,
+            this.TaxPrice,
+            this.SelectCheckBox,
+            this.PersonName,
+            this.DepartmentCode});
+            this.dgvmaster.Location = new System.Drawing.Point(8, 69);
+            this.dgvmaster.Name = "dgvmaster";
+            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.dgvmaster.RowHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            this.dgvmaster.RowHeadersVisible = false;
+            this.dgvmaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvmaster.RowTemplate.Height = 21;
+            this.dgvmaster.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
+            this.dgvmaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvmaster.Size = new System.Drawing.Size(744, 236);
+            this.dgvmaster.TabIndex = 12;
+            // 
+            // btnSelect
+            // 
+            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(506, 311);
+            this.btnSelect.Name = "btnSelect";
+            this.btnSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnSelect.TabIndex = 13;
+            this.btnSelect.Text = "選　択";
+            this.btnSelect.UseVisualStyleBackColor = false;
+            this.btnSelect.Click += new System.EventHandler(this.btnSelect_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(632, 311);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 14;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // No
+            // 
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.No.DefaultCellStyle = dataGridViewCellStyle1;
+            this.No.Frozen = true;
+            this.No.HeaderText = "No";
+            this.No.Name = "No";
+            this.No.ReadOnly = true;
+            this.No.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.No.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.No.Width = 40;
+            // 
+            // RequestNo
+            // 
+            this.RequestNo.Frozen = true;
+            this.RequestNo.HeaderText = "■請求番号";
+            this.RequestNo.Name = "RequestNo";
+            this.RequestNo.Visible = false;
+            // 
+            // OrderersDivision
+            // 
+            this.OrderersDivision.Frozen = true;
+            this.OrderersDivision.HeaderText = "■発注先区分";
+            this.OrderersDivision.Name = "OrderersDivision";
+            this.OrderersDivision.Visible = false;
+            // 
+            // OrderNo
+            // 
+            this.OrderNo.Frozen = true;
+            this.OrderNo.HeaderText = "■受付番号";
+            this.OrderNo.Name = "OrderNo";
+            this.OrderNo.Visible = false;
+            // 
+            // OrderersCode
+            // 
+            this.OrderersCode.Frozen = true;
+            this.OrderersCode.HeaderText = "■発注先コード";
+            this.OrderersCode.Name = "OrderersCode";
+            this.OrderersCode.Visible = false;
+            // 
+            // FieldName
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.FieldName.DefaultCellStyle = dataGridViewCellStyle2;
+            this.FieldName.Frozen = true;
+            this.FieldName.HeaderText = "現　場　名";
+            this.FieldName.Name = "FieldName";
+            this.FieldName.ReadOnly = true;
+            this.FieldName.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.FieldName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.FieldName.Width = 320;
+            // 
+            // BillCreationDate
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.BillCreationDate.DefaultCellStyle = dataGridViewCellStyle3;
+            this.BillCreationDate.Frozen = true;
+            this.BillCreationDate.HeaderText = "請求書発行日";
+            this.BillCreationDate.Name = "BillCreationDate";
+            this.BillCreationDate.ReadOnly = true;
+            this.BillCreationDate.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.BillCreationDate.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.BillCreationDate.Width = 140;
+            // 
+            // BillTotalPrice
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.BillTotalPrice.DefaultCellStyle = dataGridViewCellStyle4;
+            this.BillTotalPrice.Frozen = true;
+            this.BillTotalPrice.HeaderText = "請求金額";
+            this.BillTotalPrice.Name = "BillTotalPrice";
+            this.BillTotalPrice.ReadOnly = true;
+            this.BillTotalPrice.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.BillTotalPrice.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.BillTotalPrice.Width = 140;
+            // 
+            // BillPrice
+            // 
+            this.BillPrice.Frozen = true;
+            this.BillPrice.HeaderText = "■請求金額 (税抜)";
+            this.BillPrice.Name = "BillPrice";
+            this.BillPrice.Visible = false;
+            // 
+            // TaxPrice
+            // 
+            this.TaxPrice.Frozen = true;
+            this.TaxPrice.HeaderText = "■消費税";
+            this.TaxPrice.Name = "TaxPrice";
+            this.TaxPrice.Visible = false;
+            // 
+            // SelectCheckBox
+            // 
+            this.SelectCheckBox.Frozen = true;
+            this.SelectCheckBox.HeaderText = "選　択";
+            this.SelectCheckBox.Name = "SelectCheckBox";
+            this.SelectCheckBox.ReadOnly = true;
+            this.SelectCheckBox.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.SelectCheckBox.Width = 84;
+            // 
+            // PersonName
+            // 
+            this.PersonName.HeaderText = "■担当者名";
+            this.PersonName.Name = "PersonName";
+            this.PersonName.Visible = false;
+            // 
+            // DepartmentCode
+            // 
+            this.DepartmentCode.HeaderText = "■担当部署コード";
+            this.DepartmentCode.Name = "DepartmentCode";
+            this.DepartmentCode.Visible = false;
+            // 
+            // FrmSelectRequest
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 16F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(760, 348);
+            this.Controls.Add(this.btnSelect);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dgvmaster);
+            this.Controls.Add(this.comboBoxName);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.comboBoxKbn);
+            this.Controls.Add(this.label2);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmSelectRequest";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "請求書選択";
+            this.Load += new System.EventHandler(this.FrmSelectRequest_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvmaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.ComboBox comboBoxKbn;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox comboBoxName;
+        private System.Windows.Forms.DataGridView dgvmaster;
+        private System.Windows.Forms.Button btnSelect;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.DataGridViewTextBoxColumn No;
+        private System.Windows.Forms.DataGridViewTextBoxColumn RequestNo;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderersDivision;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderNo;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderersCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn FieldName;
+        private System.Windows.Forms.DataGridViewTextBoxColumn BillCreationDate;
+        private System.Windows.Forms.DataGridViewTextBoxColumn BillTotalPrice;
+        private System.Windows.Forms.DataGridViewTextBoxColumn BillPrice;
+        private System.Windows.Forms.DataGridViewTextBoxColumn TaxPrice;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn SelectCheckBox;
+        private System.Windows.Forms.DataGridViewTextBoxColumn PersonName;
+        private System.Windows.Forms.DataGridViewTextBoxColumn DepartmentCode;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.cs	(revision 51)
@@ -0,0 +1,633 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Collections;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    // 「請求先／現場選択」画面
+    public partial class FrmSelectRequest : Form
+    {
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+
+        public enum OpenMode
+        {
+            AddCmp,         // 発注先追加
+            AddFld,         // 現場追加
+        }
+
+        // 表示カラム ※■は非表示セル
+        private enum DispColumn
+        {
+            No = 0,                                                             // No.
+            RequestNo,                                                          // ■工事番号
+            OrderNo,                                                            // ■受付番号
+            OrderersDivision,                                                   // ■発注先区分
+            OrderersCode,                                                       // ■発注者コード
+            FieldName,                                                          // 現場名
+            BillCreationDate,                                                   // 請求書発行日
+            BillTotalPrice,                                                     // 請求書金額合計
+            BillPrice,                                                          // ■請求金額
+            TaxPrice,                                                           // ■消費税
+            Select,                                                             // 選択チェックBOX
+            PersonName,                                                         // ■担当者
+            DepartmentCode,                                                     // ■所属部署コード
+        }
+
+        // 取得するデータ項目
+        private enum ClickGetData
+        {
+            RequestNo = 0,
+            OrderNo,
+            OrderersDivision,
+            OrderersCode,
+            BillCreationDate,
+            BillTotalPrice,
+            BillPrice,
+            TaxPrice,
+            DetailString,
+            PersonName,
+            DepartmentCode,
+        }
+
+        // オープンモード
+        public OpenMode m_mode = OpenMode.AddCmp;
+
+        // 発注者追加：発注者区分情報
+        List<int> m_lstOrderDiv = new List<int>();
+
+        // 発注者追加：発注者情報
+        List<int> m_lstOrderCode = new List<int>();
+
+        // 発注者追加：編集データクラス
+        public class AddCmpData
+        {
+            public bool isEdit { set; get; }
+            public int OrderersDivision { set; get; }
+            public int OrderersCode { set; get; }
+            public string OrderersName { set; get; }
+        }
+
+        // 発注者追加：編集データ
+        public AddCmpData m_AddCmpData = new AddCmpData();
+
+
+        // 現場追加：発注者区分情報
+        public int m_OrderDiv = 0;
+
+        // 現場追加：発注者情報
+        public int m_OrderCode = 0;
+
+        // 現場追加：編集データクラス
+        public class AddFldData
+        {
+            public int RequestNo { set; get; }
+            public int OrderNo { set; get; }
+            public int OrderersDivision { set; get; }
+            public int OrderersCode { set; get; }
+            public string FieldName { set; get; }
+            public string BillCreationDate { set; get; }
+            public int BillTotalPrice { set; get; }
+            public int BillPrice { set; get; }
+            public int TaxPrice { set; get; }
+            public string PersonName { set; get; }
+            public int DepartmentCode { set; get; }
+        }
+
+        // 現場追加：編集データ
+        public List<AddFldData> m_lstAddFldData = new List<AddFldData>();
+
+        public FrmSelectRequest()
+        {
+            InitializeComponent();
+        }
+
+        public FrmSelectRequest(OpenMode mode)
+        {
+            InitializeComponent();
+
+            m_mode = mode;
+            // 発注者追加
+            if (m_mode == OpenMode.AddCmp)
+            {
+                this.Text = "請求先選択";
+            }
+            // 現場追加
+            else
+            {
+                this.Text = "請求書選択";
+            }
+        }
+
+        // フォームロード時
+        private void FrmSelectRequest_Load(object sender, EventArgs e)
+        {
+            try
+            {
+                // DataGridViewDataGridViewのヘッダー部分のプロパティの設定
+                this.dgvmaster.ColumnHeadersHeight = this.dgvmaster.ColumnHeadersHeight + 10;
+                this.dgvmaster.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
+
+                // 発注者追加
+                if (m_mode == OpenMode.AddCmp)
+                {
+                    // 仮で20行だけ空行を作成
+                    for(int i=0;i<20;i++){
+                        this.dgvmaster.Rows.Add();
+                    }
+
+                    this.comboBoxName.Enabled = false;
+                    this.dgvmaster.Enabled = false;
+                    this.dgvmaster.Columns[5].Width = 404;
+
+                    List<string> lstDiv = new List<string>();
+                    if (!GetDivName(ref lstDiv)) return;
+
+                    this.comboBoxKbn.Items.AddRange(lstDiv.ToArray());
+                    this.comboBoxKbn.SelectedIndex = -1;
+
+                    this.SelectCheckBox.Visible = false;
+                }
+                // 現場追加
+                else
+                {
+                    string Name = "";
+
+                    if (!GetDivName(m_OrderDiv, ref Name)) return;
+                    this.comboBoxKbn.Items.AddRange(new object[]{ Name });
+                    this.comboBoxKbn.SelectedIndex = 0;
+                    this.comboBoxKbn.Enabled = false;
+
+                    if (!GetOrderName(m_OrderDiv, m_OrderCode, ref Name)) return;
+                    this.comboBoxName.Items.AddRange(new object[] { Name });
+                    this.comboBoxName.SelectedIndex = 0;
+                    this.comboBoxName.Enabled = false;
+
+                    this.SelectCheckBox.Visible = true;
+                    this.SelectCheckBox.ReadOnly = false;
+
+                    this.dgvmaster.Enabled = true;
+
+                    // 現場表示
+                    if (!DispFieldName(m_OrderDiv, m_OrderCode)) return;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 選択ボタン押下時
+        private void btnSelect_Click(object sender, EventArgs e)
+        {
+            DataGridView dgv = this.dgvmaster;
+
+            try
+            {
+                // 発注者追加
+                if (m_mode == OpenMode.AddCmp)
+                {
+                    // 親Windowに通知するパラメータを設定
+                    m_AddCmpData.isEdit = true;
+                    m_AddCmpData.OrderersDivision = m_lstOrderDiv[comboBoxKbn.SelectedIndex];
+                    m_AddCmpData.OrderersCode = m_lstOrderCode[comboBoxName.SelectedIndex];
+
+                    m_AddCmpData.OrderersName = CommonMotions.cnvString(this.comboBoxName.SelectedItem);
+                }
+                // 現場追加
+                else
+                {
+                    for(int Index = 0; Index < dgv.Rows.Count; Index++)
+                    {
+                        DataGridViewCheckBoxCell cb = (DataGridViewCheckBoxCell)dgv.Rows[Index].Cells[(int)DispColumn.Select];
+                        if ((bool)cb.Value == true)
+                        {
+                            m_lstAddFldData.Add(new AddFldData()
+                            {
+                                RequestNo = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.RequestNo].Value),
+                                OrderNo = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.OrderNo].Value),
+                                OrderersDivision = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.OrderersDivision].Value),
+                                OrderersCode = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.OrderersCode].Value),
+                                FieldName = CommonMotions.cnvString(dgv.Rows[Index].Cells[(int)DispColumn.FieldName].Value),
+                                BillCreationDate = CommonMotions.cnvString(dgv.Rows[Index].Cells[(int)DispColumn.BillCreationDate].Value),
+                                BillTotalPrice = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.BillTotalPrice].Value),
+                                BillPrice = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.BillPrice].Value),
+                                TaxPrice = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.TaxPrice].Value),
+                                PersonName = CommonMotions.cnvString(dgv.Rows[Index].Cells[(int)DispColumn.PersonName].Value),
+                                DepartmentCode = CommonMotions.cnvInt(dgv.Rows[Index].Cells[(int)DispColumn.DepartmentCode].Value),
+                            });
+                        }
+                    }
+                }
+                this.Close();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 終了ボタン押下時
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            DataGridView dgv = this.dgvmaster;
+
+            try
+            {
+                // 発注者追加
+                if (m_mode == OpenMode.AddCmp)
+                {
+                    // 親Windowに通知するパラメータを設定
+                    m_AddCmpData.isEdit = false;
+                }
+                // 現場追加
+                else
+                {
+                    // NOP
+                }
+
+                this.Close();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 発注者区分コンボボックスの選択項目変更時
+        private void comboBoxKbn_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            try
+            {
+                // 発注者追加の場合のみ有効
+                if (m_mode != OpenMode.AddCmp) return;
+
+                // インデックス (表示順) から発注者名称を取得
+                List<string> lstOdr = new List<string>();
+                ComboBox Cb = (ComboBox)sender;
+                if (!GetOrderName(m_lstOrderDiv[Cb.SelectedIndex], ref lstOdr)) return;
+
+                // 発注者名称コンボボックス表示
+                this.comboBoxName.Items.Clear();
+                this.comboBoxName.Items.AddRange(lstOdr.ToArray());
+                this.comboBoxName.Enabled = true;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 発注者名称コンボボックスの選択項目変更時
+        private void comboBoxName_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            try
+            {
+                // 発注者追加の場合のみ有効
+                if (m_mode != OpenMode.AddCmp) return;
+
+                ComboBox Cb = (ComboBox)sender;
+                if (!DispFieldName(m_lstOrderDiv[this.comboBoxKbn.SelectedIndex], m_lstOrderCode[Cb.SelectedIndex])) return;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        // 発注者追加：発注者区分取得
+        private bool GetDivName(ref List<string> lstDiv)
+        {
+            IOMDivision IoDm = new IOMDivision();
+            List<DivisionMaster> lstDm = new List<DivisionMaster>(); 
+
+            try
+            {
+                string sSql = string.Format(" where DivisionCode = 1 group by NameString order by DisplayOrder");
+                if (!IoDm.SelectAction(sSql, ref lstDm)) return false;
+
+                foreach(DivisionMaster DmInfo in lstDm)
+                {
+                    lstDiv.Add(DmInfo.NameString);
+                    m_lstOrderDiv.Add(DmInfo.NameCode);
+                }
+                // 発注者コード情報クリア
+                m_lstOrderCode.Clear();
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoDm = null;
+            }
+        }
+
+        // 発注者追加：発注者名称取得
+        private bool GetOrderName(int NameCode, ref List<string> lstOdr)
+        {
+            IOMOrderers IoOm = new IOMOrderers();
+            List<OrderersMaster> lstOm = new List<OrderersMaster>();
+
+            try
+            {
+                string sSql = string.Format(" where OrderCotegory = {0} order by DisplayOrder", NameCode);
+                if (!IoOm.SelectAction(sSql, ref lstOm)) return false;
+
+                string OrderName = "";
+                foreach (OrderersMaster OmInfo in lstOm)
+                {
+                    // 発注社名１△発注者名２
+                    if (OmInfo.CorporateStatusPoint == 0)
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.OrderersName1;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    // 法人格名称△発注者名１△発注者名２
+                    else if (OmInfo.CorporateStatusPoint == 1)
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName1;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName1 + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    // 発注者名１△法人格名称△発注者名２
+                    else
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.CorporateStatusName;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    if (OmInfo.OrderCotegory == 8)
+                    {
+                        OrderName += "様";
+                    }
+
+                    lstOdr.Add(OrderName);
+                    m_lstOrderCode.Add(OmInfo.OrderersCode);
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoOm = null;
+            }
+        }
+
+        // 発注者追加：現場リスト表示
+        public bool DispFieldName(int OrderDiv, int OrderCode)
+        {
+            IORequestTotalData IoRtd = new IORequestTotalData();
+            ArrayList arData = new ArrayList();
+            StringBuilder sql;
+            DataGridView dgv = this.dgvmaster;
+
+            try
+            {
+                // SQL作成
+                sql = new StringBuilder();
+                sql.AppendLine("select  ");
+                sql.AppendLine("Rtd.RequestNo, ");                              // 請求合計データ       ：請求No.
+                sql.AppendLine("Rtd.OrderNo, ");                                //                      ：受付番号
+                sql.AppendLine("Rtd.OrderersDivision, ");                       //                      ：発注者区分
+                sql.AppendLine("Rtd.OrderersCode, ");                           //                      ：発注者コード
+                sql.AppendLine("DATE_FORMAT(Rtd.BillCreationDate, '%Y/%m/%d') as BillCreationDate, "); //：請求書作成日
+                sql.AppendLine("Rtd.BillTotalPrice, ");                              //                 ：請求書合計金額
+                sql.AppendLine("Rtd.BillPrice, ");                              //                      ：請求金額
+                sql.AppendLine("Rtd.TaxPrice, ");                               //                      ：消費税
+
+                sql.AppendLine("CbiD.DetailString, ");                          // 工事基本情報明細     ：明細内容
+
+                sql.AppendLine("PicM.PersonName, ");                            // 担当者マスタ         ：担当者名
+                sql.AppendLine("PicM.DepartmentCode ");                         //                      ：所属部署コード
+
+                sql.AppendLine("from RequestTotalData as Rtd ");
+                sql.AppendLine("left join ConstructionBaseInfoDetail as CbiD on Rtd.RequestNo = CbiD.ConstructionCode and CbiD.DetailNo = 2 ");
+                sql.AppendLine("left join ");
+                sql.AppendLine("    (ConstructionBaseInfo as Cbi left join ");
+                sql.AppendLine("        (PersonInChargeMaster as PicM left join ApprovalMaster as Am on PicM.DepartmentCode = Am.DepartmentCode and Am.ApprovalCode = 3 and Am.ApprovalAuthority = 1) ");
+                sql.AppendLine("    on Cbi.ConstructionPersonCode = PicM.PersonCode) ");
+                sql.AppendLine("on Rtd.RequestNo = Cbi.ConstructionCode ");
+
+                sql.AppendFormat("where Rtd.OrderersDivision = {0} and Rtd.OrderersCode = {1} and Rtd.AssignedFlg = 0 ", OrderDiv, OrderCode);
+                // 現場追加の場合はログインユーザでフィルタ
+                if (m_mode == OpenMode.AddFld)
+                {
+                    sql.AppendFormat("and PicM.PersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                }
+
+                sql.AppendLine("group by ");
+                sql.AppendLine("Rtd.RequestNo, ");
+                sql.AppendLine("Rtd.OrderNo, ");
+                sql.AppendLine("Rtd.OrderersDivision, ");
+                sql.AppendLine("Rtd.OrderersCode, ");
+                sql.AppendLine("Rtd.BillCreationDate, ");
+                sql.AppendLine("Rtd.BillTotalPrice, ");
+                sql.AppendLine("Rtd.BillPrice, ");
+                sql.AppendLine("Rtd.TaxPrice, ");
+                sql.AppendLine("CbiD.DetailString, ");
+                sql.AppendLine("PicM.PersonName, ");
+                sql.AppendLine("PicM.DepartmentCode ");
+
+                sql.AppendLine("order by Rtd.RequestNo, Rtd.OrderNo ");
+
+                // データ取得
+                if (!IoRtd.ExecuteReader(sql.ToString(), ref arData)) return false;
+
+                int LineCnt = 0;
+                
+                // グリッドの行を一旦初期化
+                dgv.Rows.Clear();
+                foreach (object[] work in arData)
+                {
+                    dgv.Rows.Add();
+
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.No].Value = LineCnt + 1;
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.RequestNo].Value = CommonMotions.cnvInt(work[(int)ClickGetData.RequestNo]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.OrderNo].Value = CommonMotions.cnvInt(work[(int)ClickGetData.OrderNo]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.OrderersDivision].Value = CommonMotions.cnvInt(work[(int)ClickGetData.OrderersDivision]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.OrderersCode].Value = CommonMotions.cnvInt(work[(int)ClickGetData.OrderersCode]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.FieldName].Value = CommonMotions.cnvString(work[(int)ClickGetData.DetailString]);
+                    if (CommonMotions.cnvInt(work[(int)ClickGetData.OrderNo]) > 1 )
+                    {
+                        dgv.Rows[LineCnt].Cells[(int)DispColumn.FieldName].Value += "（" + CommonMotions.cnvInt(work[(int)ClickGetData.OrderNo]).ToString() + "回目）";
+                    }
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.BillCreationDate].Value = CommonMotions.cnvString(work[(int)ClickGetData.BillCreationDate]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.BillTotalPrice].Value = CommonMotions.cnvInt(work[(int)ClickGetData.BillTotalPrice]).ToString("#,###,###,##0");
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.BillPrice].Value = CommonMotions.cnvInt(work[(int)ClickGetData.BillPrice]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.TaxPrice].Value = CommonMotions.cnvInt(work[(int)ClickGetData.TaxPrice]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.Select].Value = false;
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.PersonName].Value = CommonMotions.cnvString(work[(int)ClickGetData.PersonName]);
+                    dgv.Rows[LineCnt].Cells[(int)DispColumn.DepartmentCode].Value = CommonMotions.cnvInt(work[(int)ClickGetData.DepartmentCode]);
+
+                    LineCnt++;
+                }
+
+                if (LineCnt > 0)
+                {
+                    // データグリッド有効化
+                    dgv.Enabled = true;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoRtd = null;
+            }
+        }
+
+        // 現場追加：発注者区分取得
+        private bool GetDivName(int OrderDiv, ref string DivName)
+        {
+            IOMDivision IoDm = new IOMDivision();
+            List<DivisionMaster> lstDm = new List<DivisionMaster>();
+
+            try
+            {
+                string sSql = string.Format(" where DivisionCode = 1 and NameCode = {0} ", OrderDiv);
+                if (!IoDm.SelectAction(sSql, ref lstDm)) return false;
+
+                foreach (DivisionMaster DmInfo in lstDm)
+                {
+                    DivName = DmInfo.NameString;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoDm = null;
+            }
+        }
+
+        // 現場追加：発注者名称取得
+        private bool GetOrderName(int OrderDiv, int OrderCode, ref string OdrName)
+        {
+            IOMOrderers IoOm = new IOMOrderers();
+            List<OrderersMaster> lstOm = new List<OrderersMaster>();
+
+            try
+            {
+                string sSql = string.Format(" where OrderCotegory = {0} and OrderersCode = {1} ", OrderDiv, OrderCode);
+                if (!IoOm.SelectAction(sSql, ref lstOm)) return false;
+
+                string OrderName = "";
+                foreach (OrderersMaster OmInfo in lstOm)
+                {
+                    // 発注社名１△発注者名２
+                    if (OmInfo.CorporateStatusPoint == 0)
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.OrderersName1;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    // 法人格名称△発注者名１△発注者名２
+                    else if (OmInfo.CorporateStatusPoint == 1)
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName1;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName1 + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    // 発注者名１△法人格名称△発注者名２
+                    else
+                    {
+                        if (OmInfo.OrderersName2 == "")
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.CorporateStatusName;
+                        }
+                        else
+                        {
+                            OrderName = OmInfo.OrderersName1 + "　" + OmInfo.CorporateStatusName + "　" + OmInfo.OrderersName2;
+                        }
+                    }
+                    if (OmInfo.OrderCotegory == 8)
+                    {
+                        OrderName += "様";
+                    }
+
+                    OdrName = OrderName;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoOm = null;
+            }
+        }
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/FrmSelectRequest.resx	(revision 51)
@@ -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="No.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="RequestNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderersDivision.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderersCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="FieldName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="BillCreationDate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="BillTotalPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="BillPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="TaxPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="SelectCheckBox.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="PersonName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="DepartmentCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.Designer.cs	(revision 51)
@@ -0,0 +1,364 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmRequestInput
+    {
+        /// <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 dataGridViewCellStyle64 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle65 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle66 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle67 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle68 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle69 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle70 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle71 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle72 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.label3 = new System.Windows.Forms.Label();
+            this.dgv1 = new System.Windows.Forms.DataGridView();
+            this.GridSectionIndex = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.GridRowKind = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.GridConstructionCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col0 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.col11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label1 = new System.Windows.Forms.Label();
+            this.button3 = new System.Windows.Forms.Button();
+            this.button2 = new System.Windows.Forms.Button();
+            this.btnAdd = new System.Windows.Forms.Button();
+            this.btnOtherProc = new System.Windows.Forms.Button();
+            this.lblStatus = new System.Windows.Forms.Label();
+            ((System.ComponentModel.ISupportInitialize)(this.dgv1)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label3
+            // 
+            this.label3.BackColor = System.Drawing.Color.White;
+            this.label3.Font = new System.Drawing.Font("ＭＳ Ｐゴシック", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.Location = new System.Drawing.Point(495, 20);
+            this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(340, 38);
+            this.label3.TabIndex = 3;
+            this.label3.Text = "請　　求　　入　　力";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dgv1
+            // 
+            this.dgv1.AllowUserToAddRows = false;
+            this.dgv1.ColumnHeadersHeight = 34;
+            this.dgv1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgv1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.GridSectionIndex,
+            this.GridRowKind,
+            this.GridConstructionCode,
+            this.col0,
+            this.col1,
+            this.col3,
+            this.col4,
+            this.col5,
+            this.col6,
+            this.col7,
+            this.col8,
+            this.col11});
+            this.dgv1.Location = new System.Drawing.Point(12, 108);
+            this.dgv1.Name = "dgv1";
+            this.dgv1.RowHeadersWidth = 24;
+            this.dgv1.RowTemplate.Height = 21;
+            this.dgv1.Size = new System.Drawing.Size(1306, 547);
+            this.dgv1.TabIndex = 4;
+            this.dgv1.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv1_CellContentClick);
+            this.dgv1.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv1_CellValueChanged);
+            this.dgv1.CurrentCellChanged += new System.EventHandler(this.dgv1_CurrentCellChanged);
+            this.dgv1.SelectionChanged += new System.EventHandler(this.dgv1_SelectionChanged);
+            // 
+            // GridSectionIndex
+            // 
+            this.GridSectionIndex.Frozen = true;
+            this.GridSectionIndex.HeaderText = "";
+            this.GridSectionIndex.Name = "GridSectionIndex";
+            this.GridSectionIndex.Visible = false;
+            // 
+            // GridRowKind
+            // 
+            this.GridRowKind.Frozen = true;
+            this.GridRowKind.HeaderText = "";
+            this.GridRowKind.Name = "GridRowKind";
+            this.GridRowKind.Visible = false;
+            // 
+            // GridConstructionCode
+            // 
+            this.GridConstructionCode.Frozen = true;
+            this.GridConstructionCode.HeaderText = "";
+            this.GridConstructionCode.Name = "GridConstructionCode";
+            this.GridConstructionCode.Visible = false;
+            // 
+            // col0
+            // 
+            this.col0.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            dataGridViewCellStyle64.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle64.BackColor = System.Drawing.SystemColors.Control;
+            this.col0.DefaultCellStyle = dataGridViewCellStyle64;
+            this.col0.Frozen = true;
+            this.col0.HeaderText = "";
+            this.col0.Name = "col0";
+            this.col0.ReadOnly = true;
+            this.col0.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.col0.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col0.Width = 80;
+            // 
+            // col1
+            // 
+            dataGridViewCellStyle65.BackColor = System.Drawing.Color.White;
+            this.col1.DefaultCellStyle = dataGridViewCellStyle65;
+            this.col1.Frozen = true;
+            this.col1.HeaderText = "工事名";
+            this.col1.Name = "col1";
+            this.col1.ReadOnly = true;
+            this.col1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col1.Width = 340;
+            // 
+            // col3
+            // 
+            dataGridViewCellStyle66.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle66.BackColor = System.Drawing.Color.White;
+            this.col3.DefaultCellStyle = dataGridViewCellStyle66;
+            this.col3.Frozen = true;
+            this.col3.HeaderText = "受注金額";
+            this.col3.Name = "col3";
+            this.col3.ReadOnly = true;
+            this.col3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col3.Width = 120;
+            // 
+            // col4
+            // 
+            dataGridViewCellStyle67.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle67.BackColor = System.Drawing.SystemColors.Control;
+            this.col4.DefaultCellStyle = dataGridViewCellStyle67;
+            this.col4.Frozen = true;
+            this.col4.HeaderText = "";
+            this.col4.Name = "col4";
+            this.col4.ReadOnly = true;
+            this.col4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col4.Width = 120;
+            // 
+            // col5
+            // 
+            dataGridViewCellStyle68.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.col5.DefaultCellStyle = dataGridViewCellStyle68;
+            this.col5.FillWeight = 120F;
+            this.col5.Frozen = true;
+            this.col5.HeaderText = "合計";
+            this.col5.Name = "col5";
+            this.col5.ReadOnly = true;
+            this.col5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col5.Width = 120;
+            // 
+            // col6
+            // 
+            dataGridViewCellStyle69.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.col6.DefaultCellStyle = dataGridViewCellStyle69;
+            this.col6.HeaderText = "1回目";
+            this.col6.Name = "col6";
+            this.col6.ReadOnly = true;
+            this.col6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col6.Width = 120;
+            // 
+            // col7
+            // 
+            dataGridViewCellStyle70.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.col7.DefaultCellStyle = dataGridViewCellStyle70;
+            this.col7.HeaderText = "2回目";
+            this.col7.Name = "col7";
+            this.col7.ReadOnly = true;
+            this.col7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col7.Width = 120;
+            // 
+            // col8
+            // 
+            dataGridViewCellStyle71.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.col8.DefaultCellStyle = dataGridViewCellStyle71;
+            this.col8.HeaderText = "3回目";
+            this.col8.Name = "col8";
+            this.col8.ReadOnly = true;
+            this.col8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col8.Width = 120;
+            // 
+            // col11
+            // 
+            dataGridViewCellStyle72.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.col11.DefaultCellStyle = dataGridViewCellStyle72;
+            this.col11.HeaderText = "残り";
+            this.col11.Name = "col11";
+            this.col11.ReadOnly = true;
+            this.col11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.col11.Width = 120;
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.CausesValidation = false;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.Location = new System.Drawing.Point(12, 72);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(80, 25);
+            this.label2.TabIndex = 7;
+            this.label2.Text = "請求先";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.Location = new System.Drawing.Point(98, 72);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(400, 25);
+            this.label1.TabIndex = 8;
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // button3
+            // 
+            this.button3.BackColor = System.Drawing.Color.GreenYellow;
+            this.button3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.button3.ForeColor = System.Drawing.Color.Black;
+            this.button3.Location = new System.Drawing.Point(1073, 671);
+            this.button3.Name = "button3";
+            this.button3.Size = new System.Drawing.Size(120, 28);
+            this.button3.TabIndex = 16;
+            this.button3.Text = "登　録";
+            this.button3.UseVisualStyleBackColor = false;
+            this.button3.Click += new System.EventHandler(this.button3_Click);
+            // 
+            // button2
+            // 
+            this.button2.BackColor = System.Drawing.Color.Magenta;
+            this.button2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.button2.ForeColor = System.Drawing.Color.Black;
+            this.button2.Location = new System.Drawing.Point(1199, 671);
+            this.button2.Name = "button2";
+            this.button2.Size = new System.Drawing.Size(120, 28);
+            this.button2.TabIndex = 15;
+            this.button2.Text = "終　了";
+            this.button2.UseVisualStyleBackColor = false;
+            this.button2.Click += new System.EventHandler(this.button2_Click);
+            // 
+            // btnAdd
+            // 
+            this.btnAdd.BackColor = System.Drawing.Color.Orange;
+            this.btnAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAdd.ForeColor = System.Drawing.Color.Black;
+            this.btnAdd.Location = new System.Drawing.Point(158, 671);
+            this.btnAdd.Name = "btnAdd";
+            this.btnAdd.Size = new System.Drawing.Size(120, 28);
+            this.btnAdd.TabIndex = 17;
+            this.btnAdd.Text = "回数追加";
+            this.btnAdd.UseVisualStyleBackColor = false;
+            this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
+            // 
+            // btnOtherProc
+            // 
+            this.btnOtherProc.BackColor = System.Drawing.Color.Lime;
+            this.btnOtherProc.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOtherProc.ForeColor = System.Drawing.Color.Black;
+            this.btnOtherProc.Location = new System.Drawing.Point(12, 671);
+            this.btnOtherProc.Name = "btnOtherProc";
+            this.btnOtherProc.Size = new System.Drawing.Size(140, 28);
+            this.btnOtherProc.TabIndex = 18;
+            this.btnOtherProc.Text = "他の画面へ";
+            this.btnOtherProc.UseVisualStyleBackColor = false;
+            this.btnOtherProc.Click += new System.EventHandler(this.btnOtherProc_Click);
+            // 
+            // lblStatus
+            // 
+            this.lblStatus.BackColor = System.Drawing.Color.GreenYellow;
+            this.lblStatus.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblStatus.Location = new System.Drawing.Point(1177, 72);
+            this.lblStatus.Name = "lblStatus";
+            this.lblStatus.Size = new System.Drawing.Size(141, 26);
+            this.lblStatus.TabIndex = 20;
+            this.lblStatus.Text = "請求準備";
+            this.lblStatus.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // FrmRequestInput
+            // 
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1330, 710);
+            this.Controls.Add(this.lblStatus);
+            this.Controls.Add(this.dgv1);
+            this.Controls.Add(this.btnOtherProc);
+            this.Controls.Add(this.btnAdd);
+            this.Controls.Add(this.button3);
+            this.Controls.Add(this.button2);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label3);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmRequestInput";
+            this.Load += new System.EventHandler(this.Form1_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgv1)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.DataGridView dgv1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Button button3;
+        private System.Windows.Forms.Button button2;
+        private System.Windows.Forms.Button btnAdd;
+        private System.Windows.Forms.Button btnOtherProc;
+        private System.Windows.Forms.Label lblStatus;
+        private System.Windows.Forms.DataGridViewTextBoxColumn GridSectionIndex;
+        private System.Windows.Forms.DataGridViewTextBoxColumn GridRowKind;
+        private System.Windows.Forms.DataGridViewTextBoxColumn GridConstructionCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col0;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn col11;
+    }
+}
+
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.cs	(revision 51)
@@ -0,0 +1,365 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Collections;
+
+using ProcessManagement.Common;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.Forms.SubForms;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmRequestInput : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 2016017301;
+
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// 一括/分割
+        /// </summary>
+        private int m_BillingSplitFlg = 0;
+
+        // *-----* 共通処理設定 *-----*
+        /// <summary>
+        /// サブフォームフラグ
+        /// </summary>
+        private bool m_SubForm = false;
+        /// <summary>
+        /// 呼出元終了フラグ
+        /// </summary>
+        private bool m_ParentEnd = false;
+        // *-----* 共通処理設定 *-----*
+
+        private bool m_CloseingProcessOn = false;
+
+        private bool m_bChengeAns = false;
+
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        /// <summary>
+        /// 検索タイプ       Add BIT 2017/02/22
+        /// </summary>
+        public int BillingSplitFlg
+        {
+            get { return m_BillingSplitFlg; }
+            set { m_BillingSplitFlg = value; }
+        }
+
+        #endregion
+
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        public FrmRequestInput()
+        {
+            InitializeComponent();
+        }
+
+        private void Form1_Load(object sender, EventArgs e)
+        {
+            dgv1.CellValueChanged -= dgv1_CellValueChanged;
+
+            // DataGridViewに項目名を設定
+            SetGridDisplay();
+
+            dgv1.Visible = true;
+
+            dgv1.CellValueChanged += dgv1_CellValueChanged;
+            dgv1.CellDoubleClick += dgv1_CellDoubleClicked;
+
+            // [回数追加]ボタンの制御
+            btnAdd.Enabled = GetbtnAddEnabled();
+
+            // *-----* 処理移動ボタン設定 *-----*
+            CreateProcessContextMenu(m_SubForm);
+            // *-----* 処理移動ボタン設定 *-----*
+
+        }
+
+        // 
+        private void dgv1_SelectionChanged(object sender, EventArgs e)
+        {
+            
+        }
+
+        private void dgv1_CurrentCellChanged(object sender, EventArgs e)
+        {
+            DataGridView dgv = sender as DataGridView;
+            DataGridViewCell cell = dgv.CurrentCell;
+
+            int cnt = dgv.ColumnCount;
+        }
+
+        // DataGridViewのセルクリック時
+        private void dgv1_CellContentClick(object sender, DataGridViewCellEventArgs e)
+        {
+
+        }
+
+        /// <summary>
+        /// セルの値が変更された際のコールバック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgv1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            dgv1.CellValueChanged -= dgv1_CellValueChanged;
+
+            try
+            {
+                if ((e.RowIndex >= 0) && (e.ColumnIndex >= 0))
+                {
+                    // 請求明細列以外は無視
+                    int minIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, 1);
+                    int maxIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, m_RequestColumnCount);
+                    if ((e.ColumnIndex >= minIndex) && (e.ColumnIndex <= maxIndex))
+                    {
+                        var targetCell = dgv1.Rows[e.RowIndex].Cells[e.ColumnIndex] as DataGridViewCell;
+                        RowSectionIndex sectionIndex = (RowSectionIndex)dgv1.Rows[e.RowIndex].Cells[GetColumnIndexNum(ColumnIndex.SectionIndex)].Value;
+
+                        // 本工事セクションか増減工事セクション以外は無視
+                        if ((sectionIndex == RowSectionIndex.OriginalConstruction) || (sectionIndex == RowSectionIndex.ChildConstruction))
+                        {
+                            if (targetCell.Value.GetType() == typeof(string))
+                            {
+                                double dest = 0;
+                                double.TryParse((string)targetCell.Value, out dest);
+                                targetCell.Value = dest;
+                                targetCell.Style.ForeColor = (dest < 0) ? Color.Red : Color.Black;
+                            }
+
+                            // 自動計算セル再計算
+                            SetAutoCalcCell(dgv1.Rows[e.RowIndex]);
+
+                            // 該当列の合計セクションを計算
+                            SetTotalInfoColumn(e.ColumnIndex);
+
+                            // 合計セクションの合計列および残り列の計算
+                            SetTotalSectionInfo();
+
+                        }
+
+                    }
+
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+            dgv1.CellValueChanged += dgv1_CellValueChanged;
+
+        }
+
+        /// <summary>
+        /// 「回数追加」ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAdd_Click(object sender, EventArgs e)
+        {
+            dgv1.CellValueChanged -= dgv1_CellValueChanged;
+
+            try
+            {
+                AddRequest();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+            dgv1.CellValueChanged += dgv1_CellValueChanged;
+        }
+
+        /// <summary>
+        /// 「他の画面へ」ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        //private void btnOtherProc_Click(object sender, EventArgs e)
+        //{
+        //    // 暫定的に直接印刷画面を表示する
+        //    FrmRequestPrint frmRequestPrint = new FrmRequestPrint();
+
+        //    // パラメータを渡す
+        //    frmRequestPrint.RequestNo = m_RequestData.RequestNo;
+        //    frmRequestPrint.ConstructionCode = m_ConstructionCode;
+
+        //    frmRequestPrint.ShowDialog();
+           
+
+        //}
+
+        /// <summary>
+        /// セルダブルクリック時の処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgv1_CellDoubleClicked(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                // 確認のためのインデックス取得
+                int statRowIndex = GetRowIndexNum(RowSectionIndex.Header, RowKind.ApprobalStatus);
+                int minStatColIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, 1);
+                int maxStatColIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, m_LstRequestTotalData.Count);
+
+                // 対象セルがステータス行であることを確認
+                if (e.RowIndex == statRowIndex)
+                {
+                    // 対象セルが請求明細列であることを確認
+                    if ((e.ColumnIndex >= minStatColIndex) && (e.ColumnIndex <= maxStatColIndex))
+                    {
+                        int orderNo = m_LstRequestTotalData[e.ColumnIndex - minStatColIndex].OrderNo;
+
+                        // 請求書申請チェックを実施
+                        if (checkApproval(orderNo))
+                        {
+                            // チェック結果がOKなら以下の処理を実施
+
+                            // 承認画面を表示
+                            FrmApprovalScreen frmApprovalScreen = new FrmApprovalScreen();
+                            frmApprovalScreen.ConstructionCode = m_ConstructionCode;
+                            frmApprovalScreen.ApprovalCode = 5;
+                            frmApprovalScreen.OrderNo = orderNo;
+                            frmApprovalScreen.ShowDialog();
+
+                        }
+
+                        // 承認データを再取得
+                        m_DicProcessApproval.Clear();
+                        GetProcessApproval(m_ConstructionCode, ref m_DicProcessApproval);
+
+                        // 対象の請求明細列を再表示
+                        SetRequestInfoColumn(orderNo - 1);
+
+                    }
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// 登録ボタン押下時処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void button3_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // データ登録処理
+                AcceptData();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 終了ボタン押下時処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void button2_Click(object sender, EventArgs e)
+        {
+
+            m_EndButton = DialogResult.Cancel;
+
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+            
+            Close();
+        }
+
+        /// <summary>
+        /// [回数追加]ボタン活性状態の取得
+        /// </summary>
+        private bool GetbtnAddEnabled()
+        {
+            // 入金が完了している場合
+            if (m_ConstructionLedger.ComplateFlg == 1)
+            {
+                return false;
+            }
+
+            // 分割払いの場合
+            if (m_BillingSplitFlg == 1)
+            {
+                return true;
+            }
+
+            double totalDiff = 0;
+
+            // 繰越金額がある場合
+            // 合計値を計算
+            foreach (var detail in m_LstRequestTotalData)
+            {
+                if (m_DicDepositDataDetail.ContainsKey(detail.OrderNo))
+                {
+                    var depDetail = m_DicDepositDataDetail[detail.OrderNo];
+                    totalDiff += depDetail.CarryAmount;
+                }
+            }
+
+            // 繰越金が存在する場合
+            if (totalDiff > 0)
+            {
+                return true;
+            }
+
+            return false;
+        }
+
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInput.resx	(revision 51)
@@ -0,0 +1,192 @@
+﻿<?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="GridSectionIndex.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="GridRowKind.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="GridConstructionCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col0.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col11.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="GridSectionIndex.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="GridRowKind.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="GridConstructionCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col0.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="col11.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInputAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInputAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInputAuxiliary.cs	(revision 51)
@@ -0,0 +1,2225 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Collections;
+using System.Drawing;
+
+using ProcessManagement.Common;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.IOAccess;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmRequestInput : Form
+    {
+        #region 変数
+        /// <summary>
+        /// 増減工事表示行数
+        /// </summary>
+        private int m_ChildConstructionRowCount = 4;
+
+        /// <summary>
+        /// 請求明細表示列数
+        /// </summary>
+        private int m_RequestColumnCount = 3;
+
+        /// <summary>
+        /// DataGridViewRowオブジェクトハッシュテーブル
+        /// </summary>
+        private Hashtable m_HtRowObject = new Hashtable();
+
+        /// <summary>
+        /// 消費税率
+        /// </summary>
+        private double m_TaxRate = (CommonMotions.SystemMasterData.ConsumptionTax / 100);
+
+        /// <summary>
+        /// 工事基本情報
+        /// </summary>
+        private ConstructionBaseInfo m_ConstructionData = new ConstructionBaseInfo();
+
+        /// <summary>
+        /// 工事詳細台帳データ
+        /// </summary>
+        private ConstructionLedger m_ConstructionLedger = new ConstructionLedger();
+
+        /// <summary>
+        /// 工事基本明細情報
+        /// </summary>
+        private Dictionary<int,string> m_DicConstructionDetail = new Dictionary<int, string>();
+
+        /// <summary>
+        /// 請求情報
+        /// </summary>
+        private RequestData m_RequestData = new RequestData();
+
+        /// <summary>
+        /// 請求合計情報
+        /// </summary>
+        private List<RequestTotalData> m_LstRequestTotalData = new List<RequestTotalData>();
+
+        /// <summary>
+        /// 請求明細情報
+        /// </summary>
+        private Dictionary<int,Dictionary<int,RequestDataDetail>> m_DicRequestDataDetail = new Dictionary<int, Dictionary<int, RequestDataDetail>>();
+
+        /// <summary>
+        /// 入金明細情報
+        /// </summary>
+        private Dictionary<int,DepositDataDetail> m_DicDepositDataDetail = new Dictionary<int, DepositDataDetail>();
+
+        /// <summary>
+        /// 工事増減情報リスト
+        /// </summary>
+        private List<int> m_LstConstructionLink = new List<int>();
+
+        /// <summary>
+        /// 増減工事・基本情報
+        /// </summary>
+        private List<ConstructionBaseInfo> m_LstChldContructionData = new List<ConstructionBaseInfo>();
+
+        /// <summary>
+        /// 増減工事・明細情報
+        /// </summary>
+        private Dictionary<int,Dictionary<int,string>> m_DicChldConstructionDetail = new Dictionary<int,Dictionary<int, string>>();
+
+        /// <summary>
+        /// 増減工事・詳細台帳データ
+        /// </summary>
+        private Dictionary<int,ConstructionLedger> m_DicChldConstructionLedger = new Dictionary<int, ConstructionLedger>();
+
+        /// <summary>
+        /// 承認データ
+        /// </summary>
+        private Dictionary<int,List<ProcessApproval>> m_DicProcessApproval = new Dictionary<int, List<ProcessApproval>>();
+
+        /// <summary>
+        /// 承認経路データ
+        /// </summary>
+        private Dictionary<int,ApprovalMaster> m_DicApprovalMaster = new Dictionary<int, ApprovalMaster>();
+
+        /// <summary>
+        /// 請求合計レコード更新追加確認ディクショナリ
+        /// </summary>
+        private Dictionary<RequestTotalData, bool> m_DicReqTotalRec = new Dictionary<RequestTotalData, bool>();
+
+        /// <summary>
+        /// 請求明細レコード更新追加確認ディクショナリ
+        /// </summary>
+        private Dictionary<RequestDataDetail, bool> m_DicReqDetailRec = new Dictionary<RequestDataDetail, bool>();
+
+        /// <summary>
+        /// 案件進捗日付データ
+        /// </summary>
+        private Dictionary<int, ConstructionProgressDate> m_DicConstProgressDate = new Dictionary<int, ConstructionProgressDate>();
+        #endregion
+
+        /// <summary>
+        /// 請求データ未登録フラグ
+        /// </summary>
+        private bool isEmptyConstructionBaseInfo = false;
+
+        /// <summary>
+        /// 請求書申請チェックと確認メッセージボックスの表示
+        /// </summary>
+        /// <param name="orderNo"></param>
+        /// <returns></returns>
+        private bool checkApproval(int orderNo)
+        {
+            bool chkResult = true;
+
+            // 合計セクションの請求金額行を取得
+            var totalRow = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.BillPrice);
+
+            // 工事金額と請求金額を取得
+            double constPrice = (double)totalRow.Cells[GetColumnIndexNum(ColumnIndex.ConstructionPrice)].Value;
+            double billPrice = (double)totalRow.Cells[GetColumnIndexNum(ColumnIndex.Total)].Value;
+
+            // 一括請求の場合
+            if ((m_ConstructionData.BillingSplitFlg == 0) && (orderNo == 1))
+            {
+                if (m_ConstructionData.ConstructionStatusFlg < 8)
+                {
+                    // 工事のステータスが施工完了未満の場合はエラー
+                    MessageBox.Show(this, s_MessageNotCompletionConstruction, s_RequestApprovalDialogTitle, MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    chkResult = false;
+                }
+                else if (constPrice > billPrice)
+                {
+                    // 請求金額合計が工事金額に満たないので、確認ダイアログを表示
+                    DialogResult res = MessageBox.Show(this, s_MessageNotCompletionRequest, s_RequestApprovalDialogTitle, MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
+                    chkResult = (res == DialogResult.Yes);
+                }
+            }
+            else if (constPrice < billPrice)
+            {
+                // 請求金額合計が工事金額を超えているので、確認ダイアログを表示
+                DialogResult res = MessageBox.Show(this, s_MessageOverRequest, s_RequestApprovalDialogTitle, MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
+                chkResult = (res == DialogResult.Yes);
+            }
+            else
+            {
+                // 承認データチェック
+                RequestApprovalStatus stat = RequestApprovalStatus.NowInput;
+                if (m_DicProcessApproval.ContainsKey(orderNo))
+                {
+                    stat = CheckApprovalStatus(m_DicProcessApproval[orderNo], m_DicApprovalMaster);
+                }
+
+                if (stat == RequestApprovalStatus.NowInput)
+                {
+                    DialogResult res = MessageBox.Show(this, s_MessageComfirmRequest, s_RequestApprovalDialogTitle, MessageBoxButtons.YesNo, MessageBoxIcon.Question);
+                    chkResult = (res == DialogResult.Yes);
+                }
+
+            }
+
+            return chkResult;
+        }
+
+        /// <summary>
+        /// DataGridViewでのカラムインデックス番号を取得
+        /// </summary>
+        /// <param name="cEnum">カラム種別</param>
+        /// <param name="count">請求情報の回数。請求情報以外のカラム種別を指定する際は省略可</param>
+        /// <returns></returns>
+        private int GetColumnIndexNum(ColumnIndex cEnum, int count = 1)
+        {
+            int cIndex = -1;
+            try
+            {
+                if (cEnum < ColumnIndex.RequestInfo)
+                {
+                    cIndex = (int)cEnum;
+                }
+                else if (cEnum == ColumnIndex.RequestInfo)
+                {
+                    cIndex = (int)ColumnIndex.RequestInfo + count - 1;
+                }
+                else
+                {
+                    cIndex = (int)cEnum + m_RequestColumnCount - 1;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+            return cIndex;
+        }
+
+        /// <summary>
+        /// DataGridViewでの行インデックス番号を取得
+        /// </summary>
+        /// <param name="cEnum">カラム種別</param>
+        /// <param name="count">請求情報の回数。請求情報以外のカラム種別を指定する際は省略可</param>
+        /// <returns></returns>
+        private int GetRowIndexNum(RowSectionIndex section, RowKind kind, int childIndex = 0)
+        {
+            int rIndex = -1;
+            try
+            {
+                var row = GetDataGridViewRowObject(section, kind, childIndex);
+                rIndex = (row != null) ? row.Index : -1;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+            return rIndex;
+        }
+
+        /// <summary>
+        /// DataGridViewRowオブジェクトをハッシュテーブルより取得する
+        /// </summary>
+        /// <param name="sectIndex"></param>
+        /// <param name="kind"></param>
+        /// <param name="childIndex"></param>
+        /// <returns></returns>
+        private DataGridViewRow GetDataGridViewRowObject(RowSectionIndex sectIndex, RowKind kind, int childIndex = 0)
+        {
+            DataGridViewRow dataGridRow = null;
+
+            try
+            {
+                if (m_HtRowObject.ContainsKey(sectIndex))
+                {
+                    var lst = m_HtRowObject[sectIndex] as List<Hashtable>;
+
+                    if (childIndex < lst.Count)
+                    {
+                        var htInSection = lst[childIndex] as Hashtable;
+
+                        if (htInSection.ContainsKey(kind))
+                        {
+                            dataGridRow = (DataGridViewRow)htInSection[kind];
+                        }
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+            return dataGridRow;
+        }
+
+        /// <summary>
+        /// DataGridViewRowオブジェクトをハッシュテーブルに設定する
+        /// </summary>
+        /// <param name="gridRow"></param>
+        /// <param name="sectIndex"></param>
+        /// <param name="kind"></param>
+        /// <param name="childIndex"></param>
+        private void SetDataGridViewRowObject(DataGridViewRow gridRow, RowSectionIndex sectIndex, RowKind kind, int childIndex = 0)
+        {
+            try
+            {
+                List<Hashtable> lst;
+                if (!m_HtRowObject.ContainsKey(sectIndex))
+                {
+                    // ハッシュテーブルのリストを追加
+                    lst = new List<Hashtable>();
+                    m_HtRowObject.Add(sectIndex, lst);
+                }
+                else
+                {
+                    lst = m_HtRowObject[sectIndex] as List<Hashtable>;
+                }
+
+                Hashtable htInSection;
+                if (lst.Count <= childIndex)
+                {
+                    htInSection = new Hashtable();
+                    lst.Add(htInSection);
+                }
+                else
+                {
+                    htInSection = lst[childIndex] as Hashtable;
+                }
+
+                if (!htInSection.ContainsKey(kind))
+                {
+                    htInSection.Add(kind, gridRow);
+                }
+                else
+                {
+                    htInSection[kind] = gridRow;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// DataGridViewの初期表示設定
+        /// </summary>
+        private void SetGridDisplay()
+        {
+            try
+            {
+                // DataGrid全体のプロパティ設定
+                dgv1.EnableHeadersVisualStyles = false;
+                dgv1.AutoGenerateColumns = false;
+                dgv1.ColumnHeadersHeight = this.dgv1.ColumnHeadersHeight + 5;
+                dgv1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
+                dgv1.ColumnHeadersDefaultCellStyle.BackColor = Color.Aquamarine;
+                dgv1.AllowUserToAddRows = false;
+                dgv1.RowTemplate.Height = 22;
+                dgv1.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+
+                // 列タイトル設定
+                foreach (ColumnIndex cIndex in s_HtColumnTitles.Keys)
+                {
+                    if (s_HtColumnTitles[cIndex].GetType() == typeof(string))
+                    {
+                        dgv1.Columns[GetColumnIndexNum(cIndex)].HeaderText = (string)s_HtColumnTitles[cIndex];
+                    }
+                    else if (s_HtColumnTitles[cIndex].GetType() == typeof(List<string>))
+                    {
+                        var lst = s_HtColumnTitles[cIndex] as List<string>;
+                        foreach (var strTitle in lst)
+                        {
+                            int colIndex = GetColumnIndexNum(cIndex, lst.IndexOf(strTitle) + 1);
+                            dgv1.Columns[colIndex].HeaderText = strTitle;
+                            dgv1.Columns[colIndex].HeaderCell.Style.ForeColor = Color.DarkGray;
+                        }
+                    }
+                }
+
+                // 行追加処理
+                int rIndex = 0;
+                foreach (RowSectionIndex sectionIndex in Enum.GetValues(typeof(RowSectionIndex)))
+                {
+                    // セクションごとの処理
+
+                    for (int sectLoop = 0; sectLoop < ((sectionIndex == RowSectionIndex.ChildConstruction) ? 4 : 1); sectLoop++)
+                    {
+                        // 増減工事セクションは4回繰り返す
+
+                        foreach (RowKind kindIndex in s_HtRowSections[sectionIndex])
+                        {
+                            // セクション内の行の追加
+                            dgv1.Rows.Add();
+                            dgv1.Rows[dgv1.RowCount - 1].Cells[GetColumnIndexNum(ColumnIndex.SectionIndex)].Value = sectionIndex;
+                            dgv1.Rows[dgv1.RowCount - 1].Cells[GetColumnIndexNum(ColumnIndex.RowKind)].Value = kindIndex;
+
+                            // ハッシュデータに行オブジェクトを追加
+                            SetDataGridViewRowObject(dgv1.Rows[rIndex], sectionIndex, kindIndex, sectLoop);
+
+                            // 固定表示ラベルの設定
+                            if (s_HtLabels.ContainsKey(sectionIndex) && s_HtLabels[sectionIndex].ContainsKey(kindIndex))
+                            {
+                                foreach (ColumnIndex cIndex in s_HtLabels[sectionIndex][kindIndex].Keys)
+                                {
+                                    int cNum = GetColumnIndexNum(cIndex);
+                                    dgv1.Rows[rIndex].Cells[cNum].Value = s_HtLabels[sectionIndex][kindIndex][cIndex];
+                                    dgv1.Rows[rIndex].Cells[cNum].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
+                                }
+                            }
+
+                            // 背景色の設定
+                            SetRowBackgroundColor(sectionIndex, dgv1.Rows[rIndex], sectLoop);
+
+                            if (sectionIndex == RowSectionIndex.ChildConstruction)
+                            {
+                                // 増減工事行は一旦文字色をDarkGrayに設定
+                                dgv1.Rows[rIndex].DefaultCellStyle.ForeColor = Color.DarkGray;
+
+                            }
+                            rIndex++;
+                        }
+                    }
+                }
+
+                dgv1.Rows[2].Frozen = true;
+
+                GetDisplayDatas();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 増減工事行の追加処理
+        /// </summary>
+        /// <param name="stbIndex"></param>
+        private void AddChildConstructionInfoRow(int stbIndex)
+        {
+            try
+            {
+                // 増減工事最終行のオブジェクトを取得
+                var lastChldConstRow = GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, RowKind.TaxPrice, m_ChildConstructionRowCount - 1);
+
+                // 増減工事最終行の行番号を取得
+                int lastChldConstRowIndex = dgv1.Rows.IndexOf(lastChldConstRow);
+
+                // 行を追加
+                foreach (RowKind kindIndex in s_HtRowSections[RowSectionIndex.ChildConstruction])
+                {
+                    // 行オブジェクト作成
+                    var rowObject = new DataGridViewRow();
+
+                    // セクション内の行の挿入
+                    dgv1.Rows.Insert(++lastChldConstRowIndex, rowObject);
+
+                    dgv1.Rows[lastChldConstRowIndex].Cells[GetColumnIndexNum(ColumnIndex.SectionIndex)].Value = RowSectionIndex.ChildConstruction;
+                    dgv1.Rows[lastChldConstRowIndex].Cells[GetColumnIndexNum(ColumnIndex.RowKind)].Value = kindIndex;
+
+                    // 行の背景色を設定
+                    SetRowBackgroundColor(RowSectionIndex.ChildConstruction, dgv1.Rows[lastChldConstRowIndex], stbIndex);
+
+                    // ハッシュデータに行オブジェクトを追加
+                    SetDataGridViewRowObject(dgv1.Rows[lastChldConstRowIndex], RowSectionIndex.ChildConstruction, kindIndex, stbIndex);
+
+                    // 固定ラベルの表示
+                    if (s_HtLabels.ContainsKey(RowSectionIndex.ChildConstruction))
+                    {
+                        if (s_HtLabels[RowSectionIndex.ChildConstruction].ContainsKey(kindIndex))
+                        {
+                            foreach (var colIndex in s_HtLabels[RowSectionIndex.ChildConstruction][kindIndex].Keys)
+                            {
+                                int cIndex = GetColumnIndexNum(colIndex);
+                                dgv1.Rows[lastChldConstRowIndex].Cells[cIndex].Value = s_HtLabels[RowSectionIndex.ChildConstruction][kindIndex][colIndex];
+                            }
+                        }
+                    }
+
+                }
+
+                m_ChildConstructionRowCount++;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 行の背景色の設定
+        /// </summary>
+        /// <param name="sectionIndex"></param>
+        /// <param name="gridRow"></param>
+        /// <param name="sectLoop"></param>
+        private void SetRowBackgroundColor(RowSectionIndex sectionIndex, DataGridViewRow gridRow, int sectLoop = 0)
+        {
+            try
+            {
+                // 行の背景色の設定
+                if (s_HtRowColors.ContainsKey(sectionIndex))
+                {
+                    if (s_HtRowColors[sectionIndex].GetType() == typeof(Color))
+                    {
+                        // セクションごとの色を設定
+                        gridRow.DefaultCellStyle.BackColor = (Color)s_HtRowColors[sectionIndex];
+                    }
+                    else if (s_HtRowColors[sectionIndex].GetType() == typeof(List<Color>))
+                    {
+                        var lst = s_HtRowColors[sectionIndex] as List<Color>;
+                        gridRow.DefaultCellStyle.BackColor = lst[(sectLoop % lst.Count)];
+                    }
+                    else
+                    {
+                        gridRow.DefaultCellStyle.BackColor = Color.White;
+                    }
+
+                    if (gridRow.DefaultCellStyle.BackColor == Color.White)
+                    {
+                        gridRow.Cells[GetColumnIndexNum(ColumnIndex.Headline)].Style.BackColor = System.Drawing.SystemColors.Control;
+                        gridRow.Cells[GetColumnIndexNum(ColumnIndex.Label)].Style.BackColor = System.Drawing.SystemColors.Control;
+                    }
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// データベースよりデータを取得し、画面表示に反映する
+        /// </summary>
+        private void GetDisplayDatas()
+        {
+            try
+            {
+                // 工事基本情報取得
+                if (GetConstructionBaseInfo(m_ConstructionCode, ref m_ConstructionData))
+                {
+                    // 請求データ取得
+                    if (GetRequestData(ref m_RequestData))
+                    {
+                        // 請求合計データ取得
+                        if (GetRequestTotalDatas(m_RequestData.RequestNo, ref m_LstRequestTotalData))
+                        {
+                            // 請求明細データ取得
+                            GetRequestDataDetails(m_RequestData.RequestNo, ref m_DicRequestDataDetail);
+
+                            // 入金明細データ取得
+                            GetDepositDataDetail(m_RequestData.RequestNo, ref m_DicDepositDataDetail);
+
+                            // 承認データ取得
+                            GetProcessApproval(m_ConstructionCode, ref m_DicProcessApproval);
+                        }
+                    }
+                    else
+                    {
+                        isEmptyConstructionBaseInfo = true;
+                        // 工事番号から工事基本情報を取得
+                        m_RequestData.RequestNo = m_ConstructionCode;
+                        m_RequestData.ConstructionCode = m_ConstructionCode;
+                        if (!GetRequestDataFromConstructionBase(ref m_RequestData)) return;
+                    }
+
+                    // 工事基本情報明細取得
+                    GetConstructionBaseInfoDetail(m_ConstructionCode, ref m_DicConstructionDetail);
+
+                    // 工事詳細台帳データ取得
+                    GetConstructionLedger(m_ConstructionCode, ref m_ConstructionLedger);
+
+                    // 工事増減情報取得
+                    if (GetConstructionLink(ref m_LstConstructionLink))
+                    {
+                        // 増減工事の工事基本情報をすべて取得
+                        if (GetChildConstructionBaseInfo(m_LstConstructionLink, ref m_LstChldContructionData))
+                        {
+                            // 増減工事の工事明細情報をすべて取得
+                            GetChildConstructionBaseInfoDetail(m_LstConstructionLink, ref m_DicChldConstructionDetail);
+
+                            // 増減工事の工事詳細台帳データを取得
+                            GetChildConstructionLedger(m_LstConstructionLink, ref m_DicChldConstructionLedger);
+                        }
+                    }
+
+                    // 案件進捗日付データを取得
+                    GetConstructionProgressDate(m_ConstructionCode, ref m_DicConstProgressDate);
+
+                    // 承認経路マスタを取得
+                    GetApprovalMaster(m_ConstructionData.ConstructionPersonCode, ref m_DicApprovalMaster);
+
+                }
+
+                // 請求先名ラベル設定
+                if (m_DicConstructionDetail.ContainsKey((int)ConstructionBaseInfoDetail.DetailDataNo.OrderersName))
+                {
+                    label1.Text = (string)m_DicConstructionDetail[(int)ConstructionBaseInfoDetail.DetailDataNo.OrderersName];
+                }
+                label1.TextAlign = ContentAlignment.MiddleLeft;
+
+                // 工事状態表示
+                SetConstructionStatus();
+
+                // 本工事行表示
+                SetOriginalConstructionInfo();
+
+                // 増減工事行表示
+                SetChildConstructionInfo();
+
+                // 請求明細列表示
+                foreach (var total in m_LstRequestTotalData)
+                {
+                    SetRequestInfoColumn(total.OrderNo - 1);
+                }
+
+                // 入金情報行表示
+                SetDepositInfo();
+
+                // 自動計算セル表示
+                SetAutoCalcRow();
+
+                // 合計行表示
+                SetTotalInfo();
+
+                // 入金情報行表示
+                SetDepositInfo();
+
+                // データが存在しない場合
+                if (m_LstRequestTotalData.Count == 0)
+                {
+                    // 1回目を追加
+                    AddRequest();
+                }
+
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// 工事状態表示設定
+        /// </summary>
+        private void SetConstructionStatus()
+        {
+            // 状態フラグが10(請求完了)が存在すれば
+            if (m_DicConstProgressDate.ContainsKey(10))
+            {
+                lblStatus.Text = "請求完了";
+                lblStatus.BackColor = Color.Blue;
+                lblStatus.ForeColor = Color.White;
+            }
+            // 状態フラグが9(請求準備)が存在すれば
+            else if(m_DicConstProgressDate.ContainsKey(9))
+            {
+                lblStatus.Text = "請求準備";
+                lblStatus.BackColor = Color.GreenYellow;
+                lblStatus.ForeColor = Color.Black;
+            }
+            // その他
+            else
+            {
+                lblStatus.Text = "";
+                lblStatus.BackColor = Color.Black;
+                lblStatus.ForeColor = Color.White;
+            }
+
+        }
+
+        /// <summary>
+        /// 本工事行表示設定
+        /// </summary>
+        /// <param name="m_HtConstructionDetail"></param>
+        /// <param name="m_ConstructionLedger"></param>
+        private void SetOriginalConstructionInfo()
+        {
+            try
+            {
+                var gridRowBillPrice = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.BillPrice);
+                var gridRowTaxPrice = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.TaxPrice);
+                var gridRowAmount = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.AmountPrice);
+
+                // 工事金額の消費税額を計算
+                double constructionTaxPrice = Math.Truncate(m_ConstructionLedger.OrdersDecisionPrice * m_TaxRate);
+
+                int cIndex;
+
+                // 工事番号
+                cIndex = GetColumnIndexNum(ColumnIndex.ConstructionCode);
+                gridRowBillPrice.Cells[cIndex].Value = m_ConstructionCode;
+                gridRowTaxPrice.Cells[cIndex].Value = m_ConstructionCode;
+                gridRowAmount.Cells[cIndex].Value = m_ConstructionCode;
+
+                // 工事名
+                cIndex = GetColumnIndexNum(ColumnIndex.ConstructionName);
+                gridRowBillPrice.Cells[cIndex].Value = m_DicConstructionDetail[(int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName];
+
+                // 工事金額
+                cIndex = GetColumnIndexNum(ColumnIndex.ConstructionPrice);
+                SetDataGridCellDecimal(gridRowBillPrice.Cells[cIndex], m_ConstructionLedger.OrdersDecisionPrice);
+                SetDataGridCellDecimal(gridRowTaxPrice.Cells[cIndex], constructionTaxPrice);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// 入金情報行表示設定
+        /// </summary>
+        /// <param name="m_HtRequestDataDetail"></param>
+        /// <param name="m_HtDepositDataDetail"></param>
+        private void SetDepositInfo ()
+        {
+            try
+            {
+                var gridPrice = GetDataGridViewRowObject(RowSectionIndex.DepositInfo, RowKind.DepositPrice);
+                var gridDiff = GetDataGridViewRowObject(RowSectionIndex.DepositInfo, RowKind.DifferencePrice);
+
+                int cIndex;
+                double totalDeposit = 0;
+                double totalDiff = 0;
+
+                // 合計値を計算
+                foreach (var detail in m_LstRequestTotalData)
+                {
+                    if (m_DicDepositDataDetail.ContainsKey(detail.OrderNo))
+                    {
+                        var depDetail = m_DicDepositDataDetail[detail.OrderNo];
+                        totalDeposit += depDetail.DepositAmount;
+                        totalDiff += depDetail.CarryAmount;
+                    }
+                }
+
+                // 工事金額総計を計算
+                double totalOrderDecisionPrice = m_ConstructionLedger.OrdersDecisionPrice;
+                foreach (int constCode in m_LstConstructionLink)
+                {
+                    totalOrderDecisionPrice += m_DicChldConstructionLedger[constCode].OrdersDecisionPrice;
+                }
+
+                // 合計列
+                cIndex = GetColumnIndexNum(ColumnIndex.Total);
+                SetDataGridCellDecimal(gridPrice.Cells[cIndex], totalDeposit);
+                SetDataGridCellDecimal(gridDiff.Cells[cIndex], totalDiff);
+
+                // 残り列
+                cIndex = GetColumnIndexNum(ColumnIndex.Amount);
+                double amountDeposit = totalOrderDecisionPrice * (m_TaxRate + 1) - totalDeposit + totalDiff;
+                SetDataGridCellDecimal(gridPrice.Cells[cIndex], amountDeposit);
+                SetDataGridCellDecimal(gridDiff.Cells[cIndex], -totalDiff);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 増減工事行表示設定
+        /// </summary>
+        /// <param name="m_LstChldContructionData"></param>
+        /// <param name="m_HtChldConstructionDetail"></param>
+        private void SetChildConstructionInfo()
+        {
+            try
+            {
+                int cIndex;
+
+                // 増減工事の数分繰り返し
+                foreach (var info in m_LstChldContructionData)
+                {
+                    int rowIndex = m_LstChldContructionData.IndexOf(info);
+
+                    if (m_ChildConstructionRowCount <= rowIndex)
+                    {
+                        // 増減工事行が足りない場合は行を追加
+                        AddChildConstructionInfoRow(rowIndex);
+                    }
+
+                    var gridRowBillPrice = GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, RowKind.BillPrice, rowIndex);
+                    var gridRowTaxPrice = GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, RowKind.TaxPrice, rowIndex);
+
+                    // 各行の文字色を設定
+                    gridRowBillPrice.DefaultCellStyle.ForeColor = Color.Black;
+                    gridRowTaxPrice.DefaultCellStyle.ForeColor = Color.Black;
+
+                    // 工事番号
+                    cIndex = GetColumnIndexNum(ColumnIndex.ConstructionCode);
+                    gridRowBillPrice.Cells[cIndex].Value = info.ConstructionCode;
+                    gridRowTaxPrice.Cells[cIndex].Value = info.ConstructionCode;
+
+                    if (m_DicChldConstructionDetail.ContainsKey(info.ConstructionCode))
+                    {
+                        var detail = m_DicChldConstructionDetail[info.ConstructionCode] as Dictionary<int,string>;
+
+                        // 工事名
+                        if (detail.ContainsKey((int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName))
+                        {
+                            cIndex = GetColumnIndexNum(ColumnIndex.ConstructionName);
+                            gridRowBillPrice.Cells[cIndex].Value = detail[(int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName] as string;
+                        }
+
+                    }
+
+                    // 工事金額
+                    cIndex = GetColumnIndexNum(ColumnIndex.ConstructionPrice);
+                    double ordersDecisionPrice = 0;
+                    double taxPrice = 0;
+                    if (m_DicChldConstructionLedger.ContainsKey(info.ConstructionCode))
+                    {
+                        var ledger = m_DicChldConstructionLedger[info.ConstructionCode] as ConstructionLedger;
+                        ordersDecisionPrice = ledger.OrdersDecisionPrice;
+                        taxPrice = Math.Truncate(ledger.OrdersDecisionPrice * m_TaxRate);
+                    }
+                    SetDataGridCellDecimal(gridRowBillPrice.Cells[cIndex], ordersDecisionPrice);
+                    SetDataGridCellDecimal(gridRowTaxPrice.Cells[cIndex], taxPrice);
+
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 本工事セクションおよび増減工事セクションの、すべての自動計算カラムを計算する
+        /// </summary>
+        private void SetAutoCalcRow()
+        {
+            try
+            {
+                // 本工事セクション
+                if (m_DicRequestDataDetail.ContainsKey(m_ConstructionCode))
+                {
+                    foreach (RowKind kind in s_HtRowSections[RowSectionIndex.OriginalConstruction])
+                    {
+                        var gridRow = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, kind);
+                        SetAutoCalcCell(gridRow);
+
+                    }
+                }
+
+                // 増減工事セクション
+                foreach (int constCode in m_LstConstructionLink)
+                {
+                    foreach (RowKind kind in s_HtRowSections[RowSectionIndex.ChildConstruction])
+                    {
+                        var gridRow = GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, kind, m_LstConstructionLink.IndexOf(constCode));
+                        SetAutoCalcCell(gridRow);
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 指定行の自動計算カラムを計算する
+        /// </summary>
+        /// <param name="row"></param>
+        private void SetAutoCalcCell(DataGridViewRow row)
+        {
+            try
+            {
+                var sectionIndex = (RowSectionIndex)row.Cells[GetColumnIndexNum(ColumnIndex.SectionIndex)].Value;
+                var rowKind = (RowKind)row.Cells[GetColumnIndexNum(ColumnIndex.RowKind)].Value;
+                var constCode = (int)row.Cells[GetColumnIndexNum(ColumnIndex.ConstructionCode)].Value;
+
+                if (m_DicRequestDataDetail.ContainsKey(constCode))
+                {
+                    double total = 0;
+                    foreach (var orderNo in m_DicRequestDataDetail[constCode].Keys)
+                    {
+                        int colIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, orderNo);
+                        switch (rowKind)
+                        {
+                            case RowKind.BillPrice:
+                                m_DicRequestDataDetail[constCode][orderNo].BillPrice = Convert.ToInt32(row.Cells[colIndex].Value);
+                                total += m_DicRequestDataDetail[constCode][orderNo].BillPrice;
+                                break;
+                            case RowKind.TaxPrice:
+                                m_DicRequestDataDetail[constCode][orderNo].TaxPrice = Convert.ToInt32(row.Cells[colIndex].Value);
+                                total += m_DicRequestDataDetail[constCode][orderNo].TaxPrice;
+                                break;
+                            case RowKind.AmountPrice:
+                                m_DicRequestDataDetail[constCode][orderNo].AmountBlance = Convert.ToInt32(row.Cells[colIndex].Value);
+                                total += m_DicRequestDataDetail[constCode][orderNo].AmountBlance;
+                                break;
+                            default:
+                                break;
+                        }
+                    }
+
+                    // 合計列
+                    int totalColIndex = GetColumnIndexNum(ColumnIndex.Total);
+                    SetDataGridCellDecimal(row.Cells[totalColIndex], total);
+
+                    // 残り列
+                    int amountColIndex = GetColumnIndexNum(ColumnIndex.Amount);
+                    if (rowKind != RowKind.AmountPrice)
+                    {
+                        // 未入金分以外
+                        // 工事金額を取得
+                        int constPriceColIndex = GetColumnIndexNum(ColumnIndex.ConstructionPrice);
+                        double constPrice = Convert.ToDouble(row.Cells[constPriceColIndex].Value ?? 0);
+
+                        // 残り列に残り金額をセット
+                        SetDataGridCellDecimal(row.Cells[amountColIndex], constPrice - total);
+                    }
+                    else
+                    {
+                        var gridRowDiff = GetDataGridViewRowObject(RowSectionIndex.DepositInfo, RowKind.DifferencePrice);
+                        double diffPrice = Convert.ToDouble(gridRowDiff.Cells[totalColIndex].Value ?? 0);
+
+                        // 残り列に未入金残り金額をセット
+                        SetDataGridCellDecimal(row.Cells[amountColIndex], diffPrice - total);
+
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 合計セクション表示設定
+        /// </summary>
+        private void SetTotalInfo()
+        {
+            try
+            {
+                // 工事金額列
+                SetTotalInfoColumn(ColumnIndex.ConstructionPrice);
+
+                // 請求回数分繰り返し
+                foreach (var record in m_LstRequestTotalData)
+                {
+                    // 請求明細列
+                    SetTotalInfoColumn(ColumnIndex.RequestInfo, m_LstRequestTotalData.IndexOf(record) + 1);
+                }
+
+                SetTotalSectionInfo();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 合計セクションの合計および残り列表示設定
+        /// </summary>
+        private void SetTotalSectionInfo()
+        {
+            try
+            {
+                double totalBillPrice = 0;
+                double totalNonTaxedPrice = 0;
+                double totalTaxPrice = 0;
+                double totalAmount = 0;
+
+                var gridRowBillPrice = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.BillPrice);
+                var gridRowNonTaxedPrice = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.NonTaxedPrice);
+                var gridRowTaxPrice = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.TaxPrice);
+                var gridRowAmount = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.AmountPrice);
+
+                int cIndex;
+
+                // 請求回数分繰り返し
+                foreach (var record in m_LstRequestTotalData)
+                {
+                    // 合計計算
+                    cIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, m_LstRequestTotalData.IndexOf(record) + 1);
+                    totalBillPrice += Convert.ToDouble(gridRowBillPrice.Cells[cIndex].Value);
+                    totalNonTaxedPrice += Convert.ToDouble(gridRowNonTaxedPrice.Cells[cIndex].Value);
+                    totalTaxPrice += Convert.ToDouble(gridRowTaxPrice.Cells[cIndex].Value);
+                    totalAmount += Convert.ToDouble(gridRowAmount.Cells[cIndex].Value);
+                }
+
+                // 合計列
+                cIndex = GetColumnIndexNum(ColumnIndex.Total);
+                SetDataGridCellDecimal(gridRowBillPrice.Cells[cIndex], totalBillPrice);
+                SetDataGridCellDecimal(gridRowNonTaxedPrice.Cells[cIndex], totalNonTaxedPrice);
+                SetDataGridCellDecimal(gridRowTaxPrice.Cells[cIndex], totalTaxPrice);
+                SetDataGridCellDecimal(gridRowAmount.Cells[cIndex], totalAmount);
+
+                // 残り列
+                int constPriceIndex = GetColumnIndexNum(ColumnIndex.ConstructionPrice);
+                cIndex = GetColumnIndexNum(ColumnIndex.Amount);
+                SetDataGridCellDecimal(gridRowNonTaxedPrice.Cells[cIndex], Convert.ToDouble(gridRowNonTaxedPrice.Cells[constPriceIndex].Value) - totalNonTaxedPrice);
+                SetDataGridCellDecimal(gridRowTaxPrice.Cells[cIndex], Convert.ToDouble(gridRowTaxPrice.Cells[constPriceIndex].Value) - totalTaxPrice);
+
+                double amountBalance = Convert.ToDouble(GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.AmountPrice).Cells[cIndex].Value);
+                SetDataGridCellDecimal(gridRowAmount.Cells[cIndex], amountBalance);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 合計行列表示設定
+        /// </summary>
+        /// <param name="colIndex"></param>
+        /// <param name="count"></param>
+        private void SetTotalInfoColumn(ColumnIndex colIndex, int count = 1)
+        {
+            // カラムインデックス取得
+            int cIndex = GetColumnIndexNum(colIndex, count);
+
+            SetTotalInfoColumn(cIndex);
+        }
+
+        /// <summary>
+        /// 合計行列表示設定
+        /// </summary>
+        /// <param name="cIndex"></param>
+        private void SetTotalInfoColumn(int cIndex)
+        { 
+            try
+            {
+                // DataGridViewRowのオブジェクトを取得
+                var gridRowBillPrice = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.BillPrice);
+                var gridRowNonTaxed = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.NonTaxedPrice);
+                var gridRowTaxPrice = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.TaxPrice);
+
+                // 税抜き価格と消費税額を計算
+                double nonTaxedPrice = Convert.ToDouble(GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.BillPrice).Cells[cIndex].Value);
+                double taxPrice = Convert.ToDouble(GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.TaxPrice).Cells[cIndex].Value);
+                for (int childRow = 0; childRow < m_ChildConstructionRowCount; childRow++)
+                {
+                    nonTaxedPrice += Convert.ToDouble(GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, RowKind.BillPrice, childRow).Cells[cIndex].Value ?? 0.0);
+                    taxPrice += Convert.ToDouble(GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, RowKind.TaxPrice, childRow).Cells[cIndex].Value ?? 0.0);
+                }
+
+                // 行に表示設定
+                SetDataGridCellDecimal(gridRowNonTaxed.Cells[cIndex], nonTaxedPrice);
+                SetDataGridCellDecimal(gridRowTaxPrice.Cells[cIndex], taxPrice);
+                SetDataGridCellDecimal(gridRowBillPrice.Cells[cIndex], nonTaxedPrice + taxPrice);
+
+                // 処理中の列が工事金額列以外であれば以下の処理
+                if (GetColumnIndexNum(ColumnIndex.ConstructionPrice) != cIndex)
+                {
+                    // 未入金分
+                    var gridRowAmount = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.AmountPrice);
+
+                    SetDataGridCellDecimal(gridRowAmount.Cells[cIndex], Convert.ToDouble(GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.AmountPrice).Cells[cIndex].Value ?? 0.0));
+                    gridRowAmount.Cells[cIndex].Value = Convert.ToDouble(GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.AmountPrice).Cells[cIndex].Value ?? 0.0);
+
+                    // ヘッダセクションの請求書金額
+                    var gridRowBillTotalPrice = GetDataGridViewRowObject(RowSectionIndex.Header, RowKind.RequestSheetPrice);
+                    SetDataGridCellDecimal(gridRowBillTotalPrice.Cells[cIndex], nonTaxedPrice + taxPrice);
+
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        
+        /// <summary>
+        /// 承認状態を確認する
+        /// </summary>
+        /// <param name="lstProcApproval"></param>
+        /// <param name="dicApprovalMaster"></param>
+        /// <returns></returns>
+        private RequestApprovalStatus CheckApprovalStatus(List<ProcessApproval> lstProcApproval, Dictionary<int,ApprovalMaster> dicApprovalMaster)
+        {
+            // 「入力中」で初期化する
+            RequestApprovalStatus stat = RequestApprovalStatus.NowInput;
+
+            try
+            {
+                // 承認データをすべて参照する
+                foreach (var procApproval in lstProcApproval)
+                {
+
+                    if ((procApproval.ApprovalStatus == (int)CommonDefine.ApprovalStatus.Approval)
+                         && dicApprovalMaster.ContainsKey(procApproval.PersonCode)
+                         && dicApprovalMaster[procApproval.PersonCode].ApprovalAuthority == 1)
+                    {
+                        // 承認ステータスが「承認」で承認者が最終決裁者の場合、「承認済み」とし、ループを離脱する
+                        stat = RequestApprovalStatus.Approval;
+                        break;
+                    }
+                    else if (procApproval.ApprovalStatus == (int)CommonDefine.ApprovalStatus.NotApproval)
+                    {
+                        // 不承認
+                        stat = RequestApprovalStatus.NotApproval;
+                    }
+                    else if ((procApproval.ApprovalStatus == (int)CommonDefine.ApprovalStatus.Pending)
+                        && (stat > RequestApprovalStatus.Pending))
+                    {
+                        // 保留
+                        stat = RequestApprovalStatus.Pending;
+                    }
+                    else if ((procApproval.ApprovalStatus == (int)CommonDefine.ApprovalStatus.Approval)
+                        && (stat > RequestApprovalStatus.NowApproval))
+                    {
+                        // 承認中
+                        stat = RequestApprovalStatus.NowApproval;
+                    }
+                    else if ((procApproval.ApprovalStatus == (int)CommonDefine.ApprovalStatus.Petition)
+                        && (stat > RequestApprovalStatus.Petition))
+                    {
+                        // 申請中
+                        stat = RequestApprovalStatus.Petition;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            return stat;
+        }
+
+        /// <summary>
+        /// 請求明細列を表示設定
+        /// </summary>
+        /// <param name="reqIndex"></param>
+        private void SetRequestInfoColumn(int reqIndex)
+        {
+            try
+            {
+                int cIndex;
+                int orderNo = m_LstRequestTotalData[reqIndex].OrderNo;
+
+                // 列が足りない場合は追加する
+                if (reqIndex + 1 > m_RequestColumnCount)
+                {
+                    cIndex = GetColumnIndexNum(ColumnIndex.Amount);
+                    DataGridViewColumn colObj = new DataGridViewTextBoxColumn();
+                    colObj.ReadOnly = true;
+                    colObj.Width = 120;
+                    dgv1.Columns.Insert(cIndex, colObj);
+                    m_RequestColumnCount++;
+                    dgv1.Columns[cIndex].HeaderText = string.Format("{0}回目", reqIndex + 1);
+                }
+                else
+                {
+                    cIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, reqIndex + 1);
+                }
+                dgv1.Columns[cIndex].HeaderCell.Style.ForeColor = Color.Black;
+
+                var requestTotalData = m_LstRequestTotalData[reqIndex];
+
+                // 請求書作成日
+                if (requestTotalData.BillCreationDate != DateTime.MinValue)
+                {
+                    var gridRowRequestCreateDate = GetDataGridViewRowObject(RowSectionIndex.Header, RowKind.RequestSheetCreateDate);
+                    gridRowRequestCreateDate.Cells[cIndex].Value = requestTotalData.BillCreationDate.ToShortDateString();
+                    gridRowRequestCreateDate.Cells[cIndex].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
+                }
+
+                // 承認状態
+                var gridRowApprovalStatus = GetDataGridViewRowObject(RowSectionIndex.Header, RowKind.ApprobalStatus);
+                RequestApprovalStatus stat = RequestApprovalStatus.NowInput;
+                if (m_DicProcessApproval.ContainsKey(orderNo))
+                {
+                    stat = CheckApprovalStatus(m_DicProcessApproval[orderNo], m_DicApprovalMaster);
+                }
+                gridRowApprovalStatus.Cells[cIndex].Value = s_DictApprovalStatusString[stat];
+                gridRowApprovalStatus.Cells[cIndex].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
+
+                // 本工事行
+                if (m_DicRequestDataDetail.ContainsKey(m_ConstructionCode))        // 本工事分の明細があることを確認
+                {
+                    RequestDataDetail detail;
+                    if (m_DicRequestDataDetail[m_ConstructionCode].ContainsKey(orderNo))
+                    {
+                        detail = m_DicRequestDataDetail[m_ConstructionCode][orderNo];
+                    }
+                    else
+                    {
+                        detail = m_DicRequestDataDetail[m_ConstructionCode][orderNo] = new RequestDataDetail();
+                        detail.RequestNo = m_RequestData.RequestNo;
+                        detail.ConstructionCode = m_ConstructionCode;
+                        detail.OrderNo = orderNo;
+                        detail.ConstructionKind = 0;
+                    }
+
+                    // 請求金額
+                    var gridRowOrgBillPrice = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.BillPrice);
+                    SetDataGridCellDecimal(gridRowOrgBillPrice.Cells[cIndex], (double)detail.BillPrice);
+                    gridRowOrgBillPrice.Cells[cIndex].ReadOnly = (stat == RequestApprovalStatus.Approval) ? true : false;
+
+                    // 消費税
+                    var gridRowOrgTaxPrice = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.TaxPrice);
+                    SetDataGridCellDecimal(gridRowOrgTaxPrice.Cells[cIndex], (double)detail.TaxPrice);
+                    gridRowOrgTaxPrice.Cells[cIndex].ReadOnly = (stat == RequestApprovalStatus.Approval) ? true : false;
+
+                    // 未入金分
+                    var gridRowOrgAmount = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.AmountPrice);
+                    SetDataGridCellDecimal(gridRowOrgAmount.Cells[cIndex], (double)detail.AmountBlance);
+                    gridRowOrgAmount.Cells[cIndex].ReadOnly = (stat == RequestApprovalStatus.Approval) ? true : false;
+
+                }
+
+                // 増減工事行
+                foreach (int constCode in m_LstConstructionLink)
+                {
+                    Dictionary<int, RequestDataDetail> dicRequestDataDetail;
+                    if (m_DicRequestDataDetail.ContainsKey(constCode))
+                    {
+                        dicRequestDataDetail = m_DicRequestDataDetail[constCode];
+                    }
+                    else
+                    {
+                        dicRequestDataDetail = m_DicRequestDataDetail[constCode] = new Dictionary<int, RequestDataDetail>();
+                    }
+
+                    RequestDataDetail detail;
+                    if (dicRequestDataDetail.ContainsKey(orderNo))
+                    {
+                        detail = dicRequestDataDetail[orderNo];
+                    }
+                    else
+                    {
+                        detail = dicRequestDataDetail[orderNo] = new RequestDataDetail();
+                        detail.RequestNo = m_RequestData.RequestNo;
+                        detail.ConstructionCode = constCode;
+                        detail.OrderNo = orderNo;
+                        detail.ConstructionKind = 1;
+                    }
+
+                    // 請求金額
+                    var gridRowChldBillPrice = GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, RowKind.BillPrice, m_LstConstructionLink.IndexOf(constCode));
+                    SetDataGridCellDecimal(gridRowChldBillPrice.Cells[cIndex], (double)detail.BillPrice);
+                    gridRowChldBillPrice.Cells[cIndex].ReadOnly = (stat == RequestApprovalStatus.Approval) ? true : false;
+
+                    // 消費税
+                    var gridRowChldTaxPrice = GetDataGridViewRowObject(RowSectionIndex.ChildConstruction, RowKind.TaxPrice, m_LstConstructionLink.IndexOf(constCode));
+                    SetDataGridCellDecimal(gridRowChldTaxPrice.Cells[cIndex], (double)detail.TaxPrice);
+                    gridRowChldTaxPrice.Cells[cIndex].ReadOnly = (stat == RequestApprovalStatus.Approval) ? true : false;
+
+                }
+
+                // OrderNoで入金明細があるかを確認
+                var depositDetail = m_DicDepositDataDetail.ContainsKey(orderNo) ? m_DicDepositDataDetail[orderNo] : new DepositDataDetail();
+
+                if (m_DicDepositDataDetail.ContainsKey(orderNo))
+                {
+                    // あったら入金データを取得
+                    var depositData = new DepositData();
+                    if (GetDepositData(depositDetail.OrderersDivision,
+                                        depositDetail.OrderersCode,
+                                        depositDetail.TargetDate,
+                                        depositDetail.SeqNo,
+                                        ref depositData))
+                    {
+                        // 取得できたら表示設定
+
+                        // 入金日
+                        var gridRowDepositDate = GetDataGridViewRowObject(RowSectionIndex.DepositInfo, RowKind.DepositDate);
+                        gridRowDepositDate.Cells[cIndex].Value = depositData.DepositDate.ToShortDateString();
+
+                    }
+
+                    // 入金金額
+                    var gridRowDepositPrice = GetDataGridViewRowObject(RowSectionIndex.DepositInfo, RowKind.DepositPrice);
+                    SetDataGridCellDecimal(gridRowDepositPrice.Cells[cIndex], (double)depositDetail.DepositAmount);
+
+                    // 差額
+                    var gridRowDepositDiff = GetDataGridViewRowObject(RowSectionIndex.DepositInfo, RowKind.DifferencePrice);
+                    SetDataGridCellDecimal(gridRowDepositDiff.Cells[cIndex], (double)depositDetail.CarryAmount);
+
+                    // 入金確認
+                    var gridRowDepositCheck = GetDataGridViewRowObject(RowSectionIndex.DepositInfo, RowKind.DepositCheck);
+                    gridRowDepositCheck.Cells[cIndex].Value = depositDetail.ApprovalEndFlg ? "確認済" : "";
+                    gridRowDepositCheck.Cells[cIndex].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// DataGridViewCellに数値を表示設定する
+        /// </summary>
+        /// <param name="cell"></param>
+        /// <param name="value"></param>
+        private void SetDataGridCellDecimal(DataGridViewCell cell, double value)
+        {
+            try
+            {
+                if (cell != null)
+                {
+                    cell.Value = value;
+                    cell.Style.Format = "#,0";
+                    cell.Style.ForeColor = (value < 0) ? Color.Red : Color.Black;
+                    cell.Style.Alignment = DataGridViewContentAlignment.MiddleRight;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// 請求回数追加
+        /// </summary>
+        private void AddRequest()
+        {
+            try
+            {
+                // 請求合計データを追加
+                var totalData = new RequestTotalData();
+                totalData.RequestNo = m_RequestData.RequestNo;
+                totalData.OrderNo = m_LstRequestTotalData.Count + 1;
+                totalData.OrderersDivision = m_RequestData.OrderersDivision;
+                totalData.OrderersCode = m_RequestData.OrderersCode;
+                totalData.BillCreationDate = DateTime.MinValue;
+
+                m_LstRequestTotalData.Add(totalData);
+
+                // 請求明細データの追加の対象となる工事番号を収集
+                List<int> lstConstCodes = new List<int>();
+                lstConstCodes.Add(m_ConstructionCode);
+                lstConstCodes.AddRange(m_LstConstructionLink);
+
+                // 請求明細データを追加
+                foreach (int code in lstConstCodes)
+                {
+                    if (!m_DicRequestDataDetail.ContainsKey(code))
+                    {
+                        m_DicRequestDataDetail[code] = new Dictionary<int, RequestDataDetail>();
+                    }
+
+                    var detail = new RequestDataDetail();
+                    detail.RequestNo = m_RequestData.RequestNo;
+                    detail.OrderNo = totalData.OrderNo;
+                    detail.ConstructionCode = code;
+                    detail.ConstructionKind = (code == m_ConstructionCode) ? 0 : 1;
+
+                    m_DicRequestDataDetail[code][detail.OrderNo] = detail;
+                }
+
+                // 追加した請求明細列表示
+                SetRequestInfoColumn(totalData.OrderNo - 1);
+
+                // 自動計算セル表示
+                SetAutoCalcRow();
+
+                // 合計セクション表示
+                SetTotalInfoColumn(ColumnIndex.RequestInfo, m_LstRequestTotalData.Count());
+
+                // 合計セクション合計列および残り列表示
+                SetTotalSectionInfo();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 登録処理
+        /// </summary>
+        private bool AcceptData()
+        {
+            bool ret;
+
+            var reqDB = new IORequestData();
+            var reqTotalDB = new IORequestTotalData();
+            var reqDetailDB = new IORequestDataDetail();
+
+            ret = true;
+
+            try
+            {
+                // ---------- 行インデックス ----------------
+                // 工事金額列インデックス
+                int constPriceColIndex = GetColumnIndexNum(ColumnIndex.ConstructionPrice);
+
+                // 合計列インデックス
+                int totalColIndex = GetColumnIndexNum(ColumnIndex.Total);
+
+                // 残り列インデックス
+                int amountColIndex = GetColumnIndexNum(ColumnIndex.Amount);
+
+
+                // ---------- 行オブジェクト ----------------
+                var billPriceRow = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.BillPrice);
+                var nonTaxedRow = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.NonTaxedPrice);
+                var taxPriceRow = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.TaxPrice);
+                var amountRow = GetDataGridViewRowObject(RowSectionIndex.Total, RowKind.AmountPrice);
+                var orgAmountRow = GetDataGridViewRowObject(RowSectionIndex.OriginalConstruction, RowKind.AmountPrice);
+
+                // 更新用データ収集処理
+                m_RequestData.AmountPaid = 0;
+                m_RequestData.PricePaid = 0;
+                m_RequestData.TaxPricePaid = 0;
+                m_RequestData.AmountBlance = 0;
+                int totalAmountPaid = 0;
+                int totalPricePaid = 0;
+                int totalTaxPaid = 0;
+
+                foreach (var totalData in m_LstRequestTotalData)
+                {
+                    int cIndex = GetColumnIndexNum(ColumnIndex.RequestInfo, m_LstRequestTotalData.IndexOf(totalData) + 1);
+
+                    // 承認データチェック
+                    RequestApprovalStatus stat = RequestApprovalStatus.NowInput;
+                    if (m_DicProcessApproval.ContainsKey(totalData.OrderNo))
+                    {
+                        stat = CheckApprovalStatus(m_DicProcessApproval[totalData.OrderNo], m_DicApprovalMaster);
+                    }
+
+                    if (stat < RequestApprovalStatus.NowInput)
+                    {
+                        // 請求済金額
+                        m_RequestData.AmountPaid += Convert.ToInt32(billPriceRow.Cells[cIndex].Value);
+
+                        // 請求済工事金額
+                        m_RequestData.PricePaid += Convert.ToInt32(nonTaxedRow.Cells[cIndex].Value);
+
+                        // 請求済消費税金額
+                        m_RequestData.TaxPricePaid += Convert.ToInt32(taxPriceRow.Cells[cIndex].Value);
+
+                        // 未入金額
+                        m_RequestData.AmountBlance -= Convert.ToInt32(orgAmountRow.Cells[cIndex].Value);
+                    }
+
+                    // 請求合計データ
+                    totalData.BillTotalPrice = Convert.ToInt32(billPriceRow.Cells[cIndex].Value);
+                    totalData.BillPrice = Convert.ToInt32(nonTaxedRow.Cells[cIndex].Value);
+                    totalData.TaxPrice = Convert.ToInt32(taxPriceRow.Cells[cIndex].Value);
+                    totalData.AmountBlance = Convert.ToInt32(amountRow.Cells[cIndex].Value);
+                    totalData.AmountPaid = (totalAmountPaid += Convert.ToInt32(billPriceRow.Cells[cIndex].Value));
+                    totalData.PricePaid = (totalPricePaid += Convert.ToInt32(nonTaxedRow.Cells[cIndex].Value));
+                    totalData.TaxPricePaid = (totalTaxPaid += Convert.ToInt32(taxPriceRow.Cells[cIndex].Value));
+                    totalData.PriceBalance = Convert.ToInt32(nonTaxedRow.Cells[constPriceColIndex].Value) - totalPricePaid;
+                    totalData.TaxBalance = Convert.ToInt32(taxPriceRow.Cells[constPriceColIndex].Value) - totalTaxPaid;
+
+                    // 請求合計データテーブル更新および追加処理
+                    if (m_DicReqTotalRec.ContainsKey(totalData))
+                    {
+                        // データ読み込み時に存在したレコードなら更新
+                        reqTotalDB.UpdateAction("", totalData);
+                    }
+                    else
+                    {
+                        // データ読み込み時に存在しなかったレコードなら追加
+                        reqTotalDB.InsertAction(totalData);
+                        m_DicReqTotalRec[totalData] = true;
+                    }
+
+                    foreach (var constCode in m_DicRequestDataDetail.Keys)
+                    {
+                        if (m_DicReqDetailRec.ContainsKey(m_DicRequestDataDetail[constCode][totalData.OrderNo]))
+                        {
+                            // データ読み込み時に存在したレコードなら更新
+                            reqDetailDB.UpdateAction("", m_DicRequestDataDetail[constCode][totalData.OrderNo]);
+                        }
+                        else
+                        {
+                            // データ読み込み時に存在しなかったレコードなら追加
+                            reqDetailDB.InsertAction(m_DicRequestDataDetail[constCode][totalData.OrderNo]);
+                            m_DicReqDetailRec[m_DicRequestDataDetail[constCode][totalData.OrderNo]] = true;
+                        }
+                    }
+
+                }
+
+                // 請求残工事金額
+                m_RequestData.PriceBalance = Convert.ToInt32(nonTaxedRow.Cells[constPriceColIndex].Value) - m_RequestData.PricePaid;
+
+                // 請求残消費税金額
+                m_RequestData.TaxBalance = Convert.ToInt32(taxPriceRow.Cells[constPriceColIndex].Value) - m_RequestData.TaxPricePaid;
+
+                // 未入金額
+                m_RequestData.AmountBlance += Convert.ToInt32(orgAmountRow.Cells[amountColIndex].Value) + Convert.ToInt32(orgAmountRow.Cells[totalColIndex].Value);
+
+                // 請求データが登録されていない場合はレコード作成
+                if (isEmptyConstructionBaseInfo)
+                {
+                    // 請求データ追加処理
+                    reqDB.InsertAction(m_RequestData);
+                } else
+                {
+                    // 請求データ更新処理
+                    reqDB.UpdateAction("", m_RequestData);
+                }
+
+                reqDB.commit();
+                reqTotalDB.commit();
+                reqDetailDB.commit();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+
+                ret = false;
+            }
+            finally
+            {
+                reqDB.close();
+                reqTotalDB.close();
+                reqDetailDB.close();
+                reqDB = null;
+                reqTotalDB = null;
+                reqDetailDB = null;
+            }
+
+            return ret;
+
+        }
+        #region データベースアクセスメソッド
+
+        #region 工事基本情報
+        /// <summary>
+        /// 工事基本情報を工事基本情報テーブルから工事番号をキーに取得する関数
+        /// </summary>
+        /// <param name="data"></param>
+        /// <returns>true：成功 false：失敗</returns>
+        private bool GetConstructionBaseInfo(int constructionCode, ref ConstructionBaseInfo data)
+        {
+            var sbDB = new IOConstructionBaseInfo();
+            try
+            {
+                // 工事基本情報取得クラス領域
+                var wrk = new ConstructionBaseInfo();
+
+                // 工事基本情報取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(constructionCode);
+
+                // 工事基本情報取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                data = wrk;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 増減工事用工事基本情報
+        /// <summary>
+        /// 増減工事分のすべての工事基本情報を取得する
+        /// </summary>
+        /// <param name="constructionCode">本工事番号</param>
+        /// <param name="data"></param>
+        /// <returns>true：成功 false：失敗</returns>
+        private bool GetChildConstructionBaseInfo(List<int> lstConstructionCode, ref List<ConstructionBaseInfo> datas)
+        {
+            var sbDB = new IOConstructionBaseInfo();
+            try
+            {
+                // 工事基本情報取得クラス領域
+                var wrk = new List<ConstructionBaseInfo>();
+
+                // 工事基本情報取得SQL
+                string strSQL = " WHERE ConstructionCode IN ";
+                strSQL += "( ";
+                foreach (int code in lstConstructionCode)
+                {
+                    strSQL += code.ToString();
+                    strSQL += (lstConstructionCode.IndexOf(code) != lstConstructionCode.Count - 1) ? ", " : string.Empty;
+                }
+                strSQL += " ) ";
+                strSQL += "ORDER BY ConstructionCode ";
+
+                // 工事基本情報取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                datas = wrk;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 工事基本情報明細
+        /// <summary>
+        /// 工事基本情報明細を工事基本情報明細テーブルから工事番号をキーに取得する関数
+        /// </summary>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetConstructionBaseInfoDetail(int constructionCode, ref Dictionary<int,string> datas)
+        {
+            var sbDB = new IOConstructionBaseInfoDetail();
+            try
+            {
+                // 工事基本情報明細取得クラス領域
+                var wrk = new List<ConstructionBaseInfoDetail>();
+
+                // 工事基本情報明細取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(constructionCode);
+
+                // 工事基本情報明細取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                foreach (var detail in wrk)
+                {
+                    datas.Add(detail.DetailNo, detail.DetailString);
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 増減工事用工事基本情報明細取得
+        /// <summary>
+        /// 本工事の工事番号をキーに増減工事分のすべての工事基本明細情報を取得する
+        /// </summary>
+        /// <param name="constructionCode">本工事番号</param>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetChildConstructionBaseInfoDetail(List<int> lstConstructionCode, ref Dictionary<int,Dictionary<int,string>> datas)
+        {
+            var sbDB = new IOConstructionBaseInfoDetail();
+            try
+            {
+                // 工事基本情報明細取得クラス領域
+                var wrk = new List<ConstructionBaseInfoDetail>();
+
+                // 工事基本情報明細取得SQL
+                string strSQL = " WHERE ConstructionCode IN ";
+                strSQL += "( ";
+                foreach (int code in lstConstructionCode)
+                {
+                    strSQL += code.ToString();
+                    strSQL += (lstConstructionCode.IndexOf(code) != lstConstructionCode.Count - 1) ? ", " : string.Empty;
+                }
+                strSQL += " ) ";
+
+                // 工事基本情報明細取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                foreach (var detail in wrk)
+                {
+                    if (!datas.ContainsKey(detail.ConstructionCode))
+                    {
+                        datas[detail.ConstructionCode] = new Dictionary<int, string>();
+                    }
+                    datas[detail.ConstructionCode][detail.DetailNo] = detail.DetailString;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 工事増減情報
+        /// <summary>
+        /// 工事増減情報を工事増減情報テーブルから本工事番号をキーに取得する関数
+        /// </summary>
+        /// <param name="lstChldConstructionCode"></param>
+        /// <returns></returns>
+        private bool GetConstructionLink(ref List<int> lstChldConstructionCode)
+        {
+            var sbDB = new IOConstructionLink();
+            try
+            {
+                // 工事増減情報取得クラス領域
+                var wrk = new List<ConstructionLink>();
+
+                // 工事増減情報取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(m_ConstructionCode);
+
+                // ソート条件を設定
+                strSQL += " ORDER BY FLUCTUATIONCODE";
+
+                // 工事増減情報取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                // 工事増減情報をリストにセット
+                lstChldConstructionCode.Clear();
+                foreach (var detail in wrk)
+                {
+                    lstChldConstructionCode.Add(detail.FluctuationCode);
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 工事詳細台帳データ
+        /// <summary>
+        /// 工事詳細台帳データを工事詳細台帳データテーブルから工事番号をキーに取得する関数
+        /// </summary>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        private bool GetConstructionLedger(int constructionCode, ref ConstructionLedger data)
+        {
+            var sbDB = new IOConstructionLedger();
+            try
+            {
+                // 工事詳細台帳データ取得クラス領域
+                var wrk = new ConstructionLedger();
+
+                // 工事詳細台帳データ取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(constructionCode);
+
+                // 工事詳細台帳データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                data = wrk;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+
+        }
+        #endregion
+
+        #region 増減工事用工事詳細台帳データ
+        /// <summary>
+        /// 本工事の工事番号をキーに増減工事分のすべての工事詳細台帳データを取得する
+        /// </summary>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        private bool GetChildConstructionLedger(List<int> lstConstructionCode, ref Dictionary<int,ConstructionLedger> datas)
+        {
+            var sbDB = new IOConstructionLedger();
+            try
+            {
+                // 工事詳細台帳データ取得クラス領域
+                var wrk = new List<ConstructionLedger>();
+
+                // 工事詳細台帳データ取得SQL
+                string strSQL = " WHERE ConstructionCode IN ";
+                strSQL += "( ";
+                foreach (int code in lstConstructionCode)
+                {
+                    strSQL += code.ToString();
+                    strSQL += (lstConstructionCode.IndexOf(code) != lstConstructionCode.Count - 1) ? ", " : string.Empty;
+                }
+                strSQL += " ) ";
+
+                // 工事詳細台帳データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                foreach (var record in wrk)
+                {
+                    datas[record.ConstructionCode] = record;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+
+        }
+        #endregion
+
+        #region 請求データ
+        /// <summary>
+        /// 請求データを請求データテーブルから工事番号をキーに取得する関数
+        /// </summary>
+        /// <param name="data"></param>
+        /// <returns>true：成功 false：失敗</returns>
+        private bool GetRequestData(ref RequestData data)
+        {
+            var sbDB = new IORequestData();
+            try
+            {
+                // 請求データ取得クラス領域
+                var wrk = new List<RequestData>();
+
+                // 請求データ取得SQL
+                string strSQL = sbDB.CreateSubkeyString(m_ConstructionCode);
+
+                // 請求データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                if (wrk.Count != 1) return false;
+
+                data = wrk[0];
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 請求データ (from 工事基本情報)
+        /// <summary>
+        /// 請求データに登録する情報を工事基本情報から取得
+        /// </summary>
+        /// <param name="data"></param>
+        private bool GetRequestDataFromConstructionBase(ref RequestData data)
+        {
+            var sbDB = new IOConstructionBaseInfo();
+
+            try
+            {
+                // 工事基本情報取得クラス領域
+                List<ConstructionBaseInfo> wrk = new List<ConstructionBaseInfo>();
+
+                // 工事基本情報取得SQL
+                string strSQL = string.Format(" where ConstructionCode = {0} ", data.RequestNo);
+
+                // 読み込み
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                foreach(ConstructionBaseInfo info in wrk)
+                {
+                    data.OrderersDivision = info.OrderersDivision;
+                    data.OrderersCode = info.OrderersCode;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+            return true;
+        }
+        #endregion
+
+        #region 請求合計データ
+        /// <summary>
+        /// 請求合計データを請求合計データテーブルから請求Noをキーに取得する関数
+        /// </summary>
+        /// <param name="RequestNo">請求No</param>
+        /// <param name="data"></param>
+        /// <returns>true：成功 false：失敗</returns>
+        private bool GetRequestTotalDatas(int RequestNo, ref List<RequestTotalData> data)
+        {
+            var sbDB = new IORequestTotalData();
+            try
+            {
+                // 請求合計データ取得クラス領域
+                var wrk = new List<RequestTotalData>();
+
+                // 請求合計データ取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(RequestNo);
+
+                // ソート条件を追加
+                strSQL += " ORDER BY REQUESTNO, ORDERNO";
+
+                // 請求合計データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                foreach (var record in wrk)
+                {
+                    m_DicReqTotalRec[record] = true;
+                }
+                data = wrk;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+
+        }
+        #endregion
+
+        #region 請求明細データ
+        /// <summary>
+        /// 請求明細データを請求明細データテーブルから請求Noをキーに取得する関数
+        /// </summary>
+        /// <param name="RequestNo"></param>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        private bool GetRequestDataDetails(int RequestNo, ref Dictionary<int,Dictionary<int,RequestDataDetail>> datas)
+        {
+            var sbDB = new IORequestDataDetail();
+            try
+            {
+                // 請求明細データ取得クラス領域
+                var wrk = new List<RequestDataDetail>();
+
+                // 請求明細データ取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(RequestNo);
+
+                // ソート条件を追加
+                strSQL += " ORDER BY REQUESTNO, ORDERNO, CONSTRUCTIONCODE";
+
+                // 請求明細データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                // 取得したデータをハッシュテーブルにセット
+                foreach (var detail in wrk)
+                {
+                    if (!datas.ContainsKey(detail.ConstructionCode))
+                    {
+                        datas[detail.ConstructionCode] = new Dictionary<int, RequestDataDetail>();
+                    }
+                    datas[detail.ConstructionCode][detail.OrderNo] = detail;
+                    m_DicReqDetailRec[detail] = true;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+
+        }
+        #endregion
+
+        #region 承認データ
+        /// <summary>
+        /// 承認データを承認データテーブルから工事番号をキーに取得する関数
+        /// </summary>
+        /// <param name="constructionCode"></param>
+        /// <param name="htProcessApproval"></param>
+        /// <returns></returns>
+        private bool GetProcessApproval(int constructionCode, ref Dictionary<int,List<ProcessApproval>> datas)
+        {
+            var sbDB = new IOProcessApproval();
+            try
+            {
+                // 承認データ取得クラス領域
+                var wrk = new List<ProcessApproval>();
+
+                // 承認データ取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(constructionCode, 5);
+
+                // 承認データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                // 取得したデータをハッシュテーブルにセット
+                foreach (var detail in wrk)
+                {
+                    if (!datas.ContainsKey(detail.OrderNo))
+                    {
+                        datas[detail.OrderNo] = new List<ProcessApproval>();
+                    }
+                    datas[detail.OrderNo].Add(detail);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 承認経路データ
+        /// <summary>
+        /// 承認経路データを承認経路マスタから取得する
+        /// </summary>
+        /// <param name="personCode"></param>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetApprovalMaster(int personCode, ref Dictionary<int,ApprovalMaster> datas)
+        {
+            var sbDB = new IOMApproval();
+            try
+            {
+                // 承認経路データ取得クラス領域
+                var wrk = new List<ApprovalMaster>();
+
+                // 承認経路データ取得SQL
+                string strSQL = " WHERE APPROVALCODE = 5";
+                strSQL += " AND DEPARTMENTCODE = ( SELECT DEPARTMENTCODE FROM PERSONINCHARGEMASTER WHERE PERSONCODE = ";
+                strSQL += string.Format("{0})", personCode);
+
+                // 承認経路データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                datas.Clear();
+
+                foreach (var record in wrk)
+                {
+                    datas[record.ApprovalPerson] = record;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 入金データ
+        /// <summary>
+        /// 入金データを入金データテーブルから主キーで検索して取得する関数
+        /// </summary>
+        /// <param name="OrderesDivision"></param>
+        /// <param name="OrderesCode"></param>
+        /// <param name="TargetDate"></param>
+        /// <param name="SeqNo"></param>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        private bool GetDepositData(int OrderesDivision, int OrderesCode, string TargetDate, int SeqNo, ref DepositData data)
+        {
+            var sbDB = new IODepositData();
+            try
+            {
+                // 入金データ取得クラス領域
+                var wrk = new List<DepositData>();
+
+                // 入金データ取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(OrderesDivision, OrderesCode, TargetDate, SeqNo);
+
+                // 入金データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                if (wrk.Count != 1) return false;
+
+                data = wrk[0];
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 入金明細データ
+        /// <summary>
+        /// 入金明細データを入金明細データテーブルから請求Noをキーに取得する関数
+        /// </summary>
+        /// <param name="requestNo"></param>
+        /// <param name="htDepositDataDetail"></param>
+        /// <returns></returns>
+        private bool GetDepositDataDetail(int requestNo, ref Dictionary<int,DepositDataDetail> datas)
+        {
+            var sbDB = new IODepositDataDetail();
+            try
+            {
+                // 入金明細データ取得クラス領域
+                var wrk = new List<DepositDataDetail>();
+
+                // 入金明細データ取得SQL
+                string strSQL = sbDB.CreateSubkeyString(requestNo);
+
+                // 入金明細データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                // 入金明細データをハッシュテーブルにセット
+                foreach (var detail in wrk)
+                {
+                    datas[detail.OrderNo] = detail;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 案件進捗日付データ
+        /// <summary>
+        /// 案件進捗日付データを取得する
+        /// </summary>
+        /// <param name="constructionCode"></param>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetConstructionProgressDate(int constructionCode, ref Dictionary<int, ConstructionProgressDate> datas)
+        {
+            var sbDB = new IOConstructionProgressDate();
+            try
+            {
+                // 案件進捗日付データ取得クラス領域
+                var wrk = new List<ConstructionProgressDate>();
+
+                // 案件進捗日付データ取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(constructionCode);
+
+                // 案件進捗日付データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                // 案件進捗日付データをディクショナリにセット
+                foreach (var record in wrk)
+                {
+                    datas[record.ConstructionStatusFlg] = record;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInputDefinitions.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInputDefinitions.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/FrmRequestInputDefinitions.cs	(revision 51)
@@ -0,0 +1,367 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Collections;
+using System.Drawing;
+
+using ProcessManagement.DataModel;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmRequestInput : Form
+    {
+        #region 定数
+        /// <summary>
+        /// 列インデックス定義
+        /// </summary>
+        private enum ColumnIndex
+        {
+            SectionIndex,                   // セクションインデックス(非表示)
+            RowKind,                        // 行種別(非表示)
+            ConstructionCode,               // 工事番号(非表示)
+            Headline,                       // 見出し
+            ConstructionName,               // 工事名
+            ConstructionPrice,              // 工事金額
+            Label,                          // ラベル
+            Total,                          // 合計
+            RequestInfo,                    // 請求情報
+            Amount,                         // 残り
+        }
+
+        /// <summary>
+        /// 行セクションインデックス定義
+        /// </summary>
+        private enum RowSectionIndex
+        {
+            Header,                         // ヘッダ
+            OriginalConstruction,           // 本工事
+            ChildConstruction,              // 増減工事
+            Total,                          // 合計
+            DepositInfo,                     // 入金情報
+        }
+
+        /// <summary>
+        /// 行種別定義
+        /// </summary>
+        private enum RowKind
+        {
+            RequestSheetCreateDate,         // 請求書作成日
+            ApprobalStatus,                 // 承認状態
+            RequestSheetPrice,              // 請求書金額
+            BillPrice,                      // 請求金額
+            TaxPrice,                       // 消費税
+            AmountPrice,                    // (未入金分)
+            NonTaxedPrice,                  // (税抜き)
+            DepositDate,                    // 入金日
+            DepositPrice,                   // 入金金額
+            DifferencePrice,                // 差額
+            DepositCheck,                   // 入金確認
+        }
+
+        /// <summary>
+        /// 承認状態
+        /// </summary>
+        private enum RequestApprovalStatus
+        {
+            Approval,                       // 承認済み
+            NotApproval,                    // 不承認
+            Pending,                        // 保留
+            NowApproval,                    // 承認中
+            Petition,                       // 申請中
+            NowInput,                       // 入力中
+        }
+
+        /// <summary>
+        /// 請求書申請確認ダイアログタイトル
+        /// </summary>
+        private static readonly string s_RequestApprovalDialogTitle = "請求書申請";
+
+        // 請求書申請確認ダイアログ 表示メッセージ
+        private static readonly string s_MessageNotCompletionConstruction = "施工完了ではないため、請求書承認の申請はできません。";
+        private static readonly string s_MessageNotCompletionRequest = "工事金額がすべて請求されていませんが、\n請求書承認を申請してよろしいですか？";
+        private static readonly string s_MessageOverRequest = "請求金額が工事金額を超えていますが、\n請求書承認を申請してよろしいですか？";
+        private static readonly string s_MessageComfirmRequest = "請求書承認を申請してよろしいですか？";
+
+        #endregion
+
+        #region Static変数
+        /// <summary>
+        /// 列タイトル定義
+        /// </summary>
+        private static Hashtable s_HtColumnTitles = new Hashtable()
+        {
+            { ColumnIndex.ConstructionName, "工事名" },
+            { ColumnIndex.ConstructionPrice, "工事金額" },
+            { ColumnIndex.Total, "合計" },
+            { ColumnIndex.Amount, "残り" },
+            {
+                ColumnIndex.RequestInfo,
+                new List<string>()
+                {
+                    "1回目",
+                    "2回目",
+                    "3回目",
+                }
+            }
+        };
+
+        /// <summary>
+        /// セクション色の設定
+        /// </summary>
+        private static Hashtable s_HtRowColors = new Hashtable()
+        {
+            { RowSectionIndex.Header, Color.Yellow },
+            { RowSectionIndex.Total,  Color.Moccasin },
+            { RowSectionIndex.DepositInfo, Color.Yellow },
+            {
+                RowSectionIndex.ChildConstruction,
+                new List<Color>()
+                {
+                    Color.LightBlue,
+                    Color.White,
+                }
+            },
+        };
+
+        /// <summary>
+        /// 行構成定義
+        /// </summary>
+        private static Dictionary<RowSectionIndex,List<RowKind>> s_HtRowSections = new Dictionary<RowSectionIndex, List<RowKind>>()
+        {
+            // ヘッダ
+            {
+                RowSectionIndex.Header,
+                new List<RowKind>()
+                {
+                    RowKind.RequestSheetCreateDate,
+                    RowKind.ApprobalStatus,
+                    RowKind.RequestSheetPrice,
+                }
+            },
+            // 本工事
+            {
+                RowSectionIndex.OriginalConstruction,
+                new List<RowKind>()
+                {
+                    RowKind.BillPrice,
+                    RowKind.TaxPrice,
+                    RowKind.AmountPrice,
+                }
+            },
+            // 増減工事
+            {
+                RowSectionIndex.ChildConstruction,
+                new List<RowKind>()
+                {
+                    RowKind.BillPrice,
+                    RowKind.TaxPrice,
+                }
+            },
+            // 合計
+            {
+                RowSectionIndex.Total,
+                new List<RowKind>()
+                {
+                    RowKind.BillPrice,
+                    RowKind.NonTaxedPrice,
+                    RowKind.TaxPrice,
+                    RowKind.AmountPrice,
+                }
+            },
+            // 入金情報
+            {
+                RowSectionIndex.DepositInfo,
+                new List<RowKind>()
+                {
+                    RowKind.DepositDate,
+                    RowKind.DepositPrice,
+                    RowKind.DifferencePrice,
+                    RowKind.DepositCheck,
+                }
+            }
+        };
+
+        /// <summary>
+        /// 固定表示ラベル定義
+        /// </summary>
+        private static Dictionary<RowSectionIndex, Dictionary<RowKind, Dictionary<ColumnIndex, string>>> s_HtLabels = new Dictionary<RowSectionIndex, Dictionary<RowKind, Dictionary<ColumnIndex, string>>>()
+        {
+            // ヘッダ
+            {
+                RowSectionIndex.Header, new Dictionary<RowKind,Dictionary<ColumnIndex,string>>()
+                {
+                    // 請求書作成日行
+                    {
+                        RowKind.RequestSheetCreateDate, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "請求書作成" },
+                        }
+                    },
+                    // 承認状態行
+                    {
+                        RowKind.ApprobalStatus, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "承認状態" },
+                        }
+                    },
+                    // 請求書金額行
+                    {
+                        RowKind.RequestSheetPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "請求書金額" },
+                        }
+                    },
+                }
+            },
+            // 本工事
+            {
+                RowSectionIndex.OriginalConstruction, new Dictionary<RowKind,Dictionary<ColumnIndex,string>>()
+                {
+                    // 請求金額行
+                    {
+                        RowKind.BillPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Headline, "本工事" },
+                            { ColumnIndex.Label, "請求金額" },
+                        }
+                    },
+                    // 消費税行
+                    {
+                        RowKind.TaxPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "消費税" },
+                        }
+                    },
+                    // 未入金分行
+                    {
+                        RowKind.AmountPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "(未入金分)" },
+                        }
+                    },
+                }
+            },
+            // 増減工事
+            {
+                RowSectionIndex.ChildConstruction, new Dictionary<RowKind,Dictionary<ColumnIndex,string>>()
+                {
+                    // 請求金額行
+                    {
+                        RowKind.BillPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Headline, "増減工事" },
+                            { ColumnIndex.Label, "請求金額" },
+                        }
+                    },
+                    // 消費税行
+                    {
+                        RowKind.TaxPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "消費税" },
+                        }
+                    },
+                }
+            },
+            // 合計
+            {
+                RowSectionIndex.Total, new Dictionary<RowKind,Dictionary<ColumnIndex,string>>()
+                {
+                    // 請求金額行
+                    {
+                        RowKind.BillPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Headline, "合計" },
+                            { ColumnIndex.Label, "請求金額" },
+                        }
+                    },
+                    // 税抜き行
+                    {
+                        RowKind.NonTaxedPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "(税抜き)" },
+                        }
+                    },
+                    // 消費税行
+                    {
+                        RowKind.TaxPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "(消費税)" },
+                        }
+                    },
+                    // 未入金分行
+                    {
+                        RowKind.AmountPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "(未入金分)" },
+                        }
+                    },
+                }
+            },
+            // 入金情報
+            {
+                RowSectionIndex.DepositInfo, new Dictionary<RowKind,Dictionary<ColumnIndex,string>>()
+                {
+                    // 入金日行
+                    {
+                        RowKind.DepositDate, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "入金日" },
+                        }
+                    },
+                    // 入金金額行
+                    {
+                        RowKind.DepositPrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "入金金額" },
+                        }
+                    },
+                    // 差額行
+                    {
+                        RowKind.DifferencePrice, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "差額" },
+                        }
+                    },
+                    // 入金確認行
+                    {
+                        RowKind.DepositCheck, new Dictionary<ColumnIndex,string>()
+                        {
+                            { ColumnIndex.Label, "入金確認" },
+                        }
+                    },
+                }
+            },
+        };
+
+        private static List<RowSectionIndex> lstAutoCalcSection = new List<RowSectionIndex>()
+        {
+            RowSectionIndex.OriginalConstruction,
+            RowSectionIndex.ChildConstruction,
+        };
+
+        private static List<RowKind> lstAutoCalcKind = new List<RowKind>()
+        {
+            RowKind.BillPrice,
+            RowKind.TaxPrice,
+            RowKind.AmountPrice,
+        };
+
+        // 承認状態文字列
+        private static Dictionary<RequestApprovalStatus, string> s_DictApprovalStatusString = new Dictionary<RequestApprovalStatus, string>()
+        {
+            { RequestApprovalStatus.Approval, "承認済み" },
+            { RequestApprovalStatus.NotApproval, "不承認" },
+            { RequestApprovalStatus.Pending, "保留" },
+            { RequestApprovalStatus.NowApproval, "承認中" },
+            { RequestApprovalStatus.Petition, "申請中" },
+            { RequestApprovalStatus.NowInput, "入力中" },
+        };
+
+        #endregion
+
+    }
+
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/ProcessControl.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/ProcessControl.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestInput/ProcessControl.cs	(revision 51)
@@ -0,0 +1,1227 @@
+﻿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 System.Diagnostics;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.Master;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmRequestInput
+    {
+        /// <summary>
+        /// 自プロセスの番号を持つ
+        /// </summary>
+        private static int s_CurrentProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestInput;
+
+        #region プロセスコンテキストメニュー変数
+        /// <summary>
+        /// プロセスコンテキストメニュー
+        /// </summary>
+        private ContextMenuStrip m_ProcessContextMenuStrip;
+        #endregion
+
+        #region 他プロセスフォーム配列変数
+        /// <summary>
+        /// 他プロセスフォーム配列
+        /// </summary>
+        //private Form[] ClsExcute.SubFormHandleList = null;
+        #endregion
+
+        #region 別プロセス移動メニュー作成
+        /// <summary>
+        /// 別プロセス移動メニュー作成
+        /// </summary>
+        private void CreateProcessContextMenu(bool bSubForm)
+        {
+            try
+            {
+                // メニュー一覧を作成する
+                m_ProcessContextMenuStrip = new ContextMenuStrip();
+
+                // メニューのセット
+                UpDateProcessContextMenu(bSubForm);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 別プロセス移動メニュー更新
+        /// <summary>
+        /// 別プロセス移動メニュー更新
+        /// </summary>
+        private void UpDateProcessContextMenu(bool bSubForm = false)
+        {
+            try
+            {
+                // 起動プロセスの一案を作成する
+                List<KeyValuePair<int, string>> ProcList = new List<KeyValuePair<int, string>>();
+                // 工事番号セット
+                ClsProcessExist.ConstructionCode = m_ConstructionCode;
+                // リスト取得
+                ClsProcessExist.GetProcessList(ref ProcList, s_CurrentProcessNo);
+
+                // メニュー一覧を作成する
+                m_ProcessContextMenuStrip.Items.Clear();
+
+                // メニューデータのセット
+                int icnt = 0;
+                foreach (KeyValuePair<int, string> CurRec in ProcList)
+                {
+                    // 自プロセスは処理しない
+                    if (CurRec.Key == s_CurrentProcessNo) continue;
+
+                    // 総務部所属者はデータ参照出来る処理がある
+                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        if (!ClsSecurityPermission.PermitGeneralAffairsDevision(CurRec.Key)) continue;
+                    }
+
+                    //イベントの登録
+                    EventHandler handle = null;
+                    switch (CurRec.Key)
+                    {
+                        case (int)ClsExcute.ProcessExecuteNo.MainMenu:                  //  0:メニュー
+                            handle = ProcessExecute_MainMenu;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo:      //  2:工事情報入力
+                            handle = ProcessExecute_ConstructionBaseInfo;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimateInput:             //  3:積算見積入力
+                            handle = ProcessExecute_EstimateInput;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimatePrint:             //  4:積算見積書印刷
+                            handle = ProcessExecute_EstimatePrint;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.EstimateBudget:            //  5:積算予算書入力
+                            handle = ProcessExecute_EstimateBudget;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionBudget:        //  6:工事予算書入力
+                            handle = ProcessExecute_ConstructionBudget;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:      //  8:工事案件コピー機能
+                            handle = ProcessExecute_ConstructionCopyList;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:        //  9:注文書入力
+                            handle = ProcessExecute_PurchaseOrderEntry;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:        // 10:注文書印刷
+                            handle = ProcessExecute_PurchaseOrderPrint;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.ConstructionLedger:        // 12:工事詳細台帳
+                            handle = ProcessExecute_ConstructionLedger;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.TAndPCosts:                // 13:交通費及び購入品入力
+                            handle = ProcessExecute_TAndPCosts;
+                            break;
+                        case (int)ClsExcute.ProcessExecuteNo.RequestPrint:              // 14:請求書印刷
+                            handle = ProcessExecute_RequestPrint;
+                            break;
+                    }
+                    // 起動関数のセットが無ければ処理しない
+                    if (handle == null) continue;
+
+                    // 区切り線
+                    if (icnt != 0) m_ProcessContextMenuStrip.Items.Add("-");
+                    // 行のセット
+                    ToolStripMenuItem tsmItem = new ToolStripMenuItem(CurRec.Value, null, handle);
+                    m_ProcessContextMenuStrip.Items.Add(tsmItem);
+                    icnt++;
+                }
+                // コンテキストメニューセット
+                btnOtherProc.ContextMenuStrip = m_ProcessContextMenuStrip;
+                m_ProcessContextMenuStrip.Show(btnOtherProc, new Point(0, 0));
+                m_ProcessContextMenuStrip.Close();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 別プロセス起動ボタン
+        /// <summary>
+        /// 別プロセス起動ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnOtherProc_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // ボタンの真上にメニューを表示する
+                int h = m_ProcessContextMenuStrip.Height * -1;
+                m_ProcessContextMenuStrip.Show(btnOtherProc, new Point(0, h));
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 終了時処理
+        /// <summary>
+        /// 終了時サブフォームクローズ
+        /// </summary>
+        private void TerminatingProcess()
+        {
+            try
+            {
+                // フォームがCloseされていなければクローズする
+                for (int i = 0; i < ClsExcute.SubFormHandleList.Length; i++)
+                {
+                    PreserveSubFormHandle Handle = ClsExcute.SubFormHandleList[i];
+
+                    // 自分が起動したもの以外は処理しない
+                    if (Handle.ProcessNo != s_CurrentProcessNo) continue;
+
+                    // 自分は処理しない
+                    if (i == s_CurrentProcessNo)
+                    {
+                        ClsExcute.SubFormHandleList[i].SubFormHandle = null;
+                        ClsExcute.SubFormHandleList[i].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+                        continue;
+                    }
+
+                    // 起動されて無ければ処理しない
+                    if (Handle.SubFormHandle == null) continue;
+
+                    // 画面クローズ
+                    Handle.SubFormHandle.Close();
+                    ClsExcute.SubFormHandleList[i].SubFormHandle = null;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 次の起動が申請画面かどうかの判定
+        /// <summary>
+        /// 次の起動が申請画面かどうかの判定
+        /// </summary>
+        /// <returns></returns>
+        private bool judgmentApprovalScreen()
+        {
+            try
+            {
+                // プロセス起動テーブルに申請画面が設定されている場合はtrue
+                int NextProcess = ClsExcute.ProcControlPara[ClsExcute.GetNowProcessPoint()].ProcNo;
+                if (NextProcess == (int)ClsExcute.SubFormExecuteNo.ApprovalScreen) return true;
+
+                return false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region ---------- 他プロセス起動ハンドラ群　START
+        #region 一気にメニューへ戻る
+        /// <summary>
+        /// 一気にメニューへ戻る
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ProcessExecute_MainMenu(object sender, EventArgs e)
+        {
+            try
+            {
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 起動テーブルをクリアする
+                ClsExcute.ClearProcess();
+
+                // メニューへ戻るフラグON　
+                m_ParentEnd = true;
+
+                // 終了処理OFF
+                m_CloseingProcessOn = false;
+
+                // 自フォーム終了
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 工事情報入力
+        /// <summary>
+        /// 工事情報入力
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ProcessExecute_ConstructionBaseInfo(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                // フォームがあれば最前面へ
+                FrmConstructionBaseInfo frm = (FrmConstructionBaseInfo)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 工事情報入力起動
+                frm = new FrmConstructionBaseInfo();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionBaseInfoClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimateInput(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                // フォームがあれば最前面へ
+                FrmEstimateInput frm = (FrmEstimateInput)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 積算見積書入力起動
+                frm = new FrmEstimateInput();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimateInputClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimatePrint(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                // フォームがあれば最前面へ
+                FrmEstimatePrint frm = (FrmEstimatePrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 積算見積書印刷起動
+                frm = new FrmEstimatePrint();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimatePrintClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_EstimateBudget(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                // フォームがあれば最前面へ
+                FrmEstimateBudget frm = (FrmEstimateBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 積算予算書入力起動
+                frm = new FrmEstimateBudget();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmEstimateBudgetClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionBudget(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                // フォームがあれば最前面へ
+                FrmConstructionBudget frm = (FrmConstructionBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 工事予算書入力起動
+                frm = new FrmConstructionBudget();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionBudgetClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionCopyList(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                // フォームがあれば最前面へ
+                FrmNewOrContinueCopy frm = (FrmNewOrContinueCopy)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 工事案件コピー起動
+                frm = new FrmNewOrContinueCopy();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmNewOrContinueCopyClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_PurchaseOrderEntry(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                // フォームがあれば最前面へ
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 注文書入力起動
+                frm = new FrmPurchaseOrderEntry();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmPurchaseOrderEntryClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_PurchaseOrderPrint(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                // フォームがあれば最前面へ
+                FrmPurchaseOrderPrint frm = (FrmPurchaseOrderPrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 注文書印刷起動
+                frm = new FrmPurchaseOrderPrint();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmPurchaseOrderPrintClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_ConstructionLedger(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+                // フォームがあれば最前面へ
+                FrmConstructionLedger frm = (FrmConstructionLedger)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 工事詳細台帳入力起動
+                frm = new FrmConstructionLedger();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmConstructionLedgerClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_TAndPCosts(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
+                // フォームがあれば最前面へ
+                FrmTAndPCosts frm = (FrmTAndPCosts)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 交通費及び購入品等入力起動
+                frm = new FrmTAndPCosts();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+                frm.ConstructionCode = m_ConstructionCode;
+                frm.SubForm = true;
+                frm.ShowInTaskbar = true;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmTAndPCostsClosed);
+                frm.Show();
+            }
+            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 ProcessExecute_RequestPrint(object sender, EventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestPrint;
+                // フォームがあれば最前面へ
+                FrmRequestPrint frm = (FrmRequestPrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                if (frm != null)
+                {
+                    frm.Activate();
+                    return;
+                }
+
+                // データ変更有時はデータ登録
+                if (m_bChengeAns)
+                {
+                    if (!AcceptData()) return;
+                }
+
+                // 交通費及び購入品等入力起動
+                frm = new FrmRequestPrint();
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = s_CurrentProcessNo;
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = (Form)frm;
+
+                frm.RequestNo = m_RequestData.RequestNo;
+                frm.ConstructionCode = m_ConstructionCode;
+
+                // クロースドハンドラをこちらで定義する
+                frm.FormClosed += new FormClosedEventHandler(FrmRequestPrintClosed);
+                frm.ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion // ---------- 他プロセス起動ハンドラ群　END
+
+        #region ---------- 他プロセス終了ハンドラ群　START
+        #region 工事情報入力のクローズを取得する
+        /// <summary>
+        /// 工事情報入力のクローズを取得する
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmConstructionBaseInfoClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo;
+                FrmConstructionBaseInfo frm = (FrmConstructionBaseInfo)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+                bool DataChange = frm.DataChenge;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    this.Activate();
+                    // データ変更がある場合は再表示
+                    if (DataChange)
+                    {
+                        //GetBaseInfoData();
+                      //  SetConstructorCode();
+                      //  if (m_ConstructionBaseInfo.ConstructionPeriod >= 16) GetExpensesList();
+                        //InitDataLoad();
+                    }
+                }
+            }
+            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 FrmEstimateInputClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateInput;
+                FrmEstimateInput frm = (FrmEstimateInput)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmEstimatePrintClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimatePrint;
+                FrmEstimatePrint frm = (FrmEstimatePrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+                
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmEstimateBudgetClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.EstimateBudget;
+                FrmEstimateBudget frm = (FrmEstimateBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmConstructionBudgetClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionBudget;
+                FrmConstructionBudget frm = (FrmConstructionBudget)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmNewOrContinueCopyClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList;
+                // プロセス番号が違うので注意！！
+                FrmNewOrContinueCopy frm = (FrmNewOrContinueCopy)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+
+                // 戻り値取得
+                int ConstructionCode = frm.ConstructionCode;
+                bool bNowConstruction = frm.NewConstruction;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                int NowPoint = ClsExcute.GetNowProcessPoint();
+                // 現在設定値クリア
+                ClsExcute.ClearExecParameter(NowPoint);
+                // 工事番号変更
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ConstructionCode);
+                // コピー作成データフラグセット
+                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
+
+                this.Activate();
+
+                // 終了処理フラグOff
+                m_CloseingProcessOn = false;
+
+            }
+            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 FrmPurchaseOrderEntryClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry;
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 申請画面が設定されている場合は親も終わらせる
+                    if (judgmentApprovalScreen()) m_ParentEnd = true;
+
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmPurchaseOrderPrintClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint;
+                FrmPurchaseOrderEntry frm = (FrmPurchaseOrderEntry)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmConstructionLedgerClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.ConstructionLedger;
+                FrmConstructionLedger frm = (FrmConstructionLedger)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmTAndPCostsClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
+                FrmTAndPCosts frm = (FrmTAndPCosts)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            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 FrmRequestPrintClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                int ProcessNo = (int)ClsExcute.ProcessExecuteNo.RequestPrint;
+                FrmRequestPrint frm = (FrmRequestPrint)ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle;
+                bool ThisEnd = frm.ParentEnd;
+
+                // ハンドルクリア
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle.Dispose();
+                ClsExcute.SubFormHandleList[ProcessNo].SubFormHandle = null;
+                ClsExcute.SubFormHandleList[ProcessNo].ProcessNo = (int)ClsExcute.ProcessExecuteNo.MainMenu;
+
+                // メニューへ戻るの選択
+                if (ThisEnd)
+                {
+                    // 終了処理OFF
+                    m_CloseingProcessOn = false;
+                    this.Close();
+                }
+                else
+                {
+                    UpDateProcessContextMenu();
+                    this.Activate();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion // ---------- 他プロセス終了ハンドラ群　END
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.cs	(revision 51)
@@ -0,0 +1,3758 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*---------------------------- �����܂Ƃ߉�� --------------------------*
+//  2016/12/20  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmRequestSummaryList : Form
+    {
+        #region �g�p��`
+        //log4net���O���g�p����
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region �萔
+        /// <summary>
+        /// ���v�s
+        /// </summary>
+        private enum GoukeiRows
+        {
+            ���v = 1,
+            �����,
+            ������,
+            ������,
+            �Y�p��,
+            ���͋�,
+            ���v,
+        }
+
+
+        /// <summary>
+        /// �\���J�����idgvCompany�j
+        /// </summary>
+        private enum DispColumn_Company
+        {
+            SubConstractorCode = (int)DispColumn.No + 1,
+            SubConstractorName,
+            GengaCode,
+            GengaName,
+        }
+
+        /// <summary>
+        /// �\���J�����idgvProject�j
+        /// </summary>
+        private enum DispColumn_Project
+        {
+            GengaCode = (int)DispColumn.No + 1,
+            GengaName,
+            SubConstractorCode,
+            SubConstractorName,
+        }
+
+        /// <summary>
+        /// �\���J�����i���ʁj
+        /// </summary>
+        private enum DispColumn
+        {
+            CompanyDispOrder = 0,
+            ApprovalEndFlg,
+            UpdateDate,
+            RowState,
+            RowVisible,
+            RowType,
+            GoukeiSeqNo,
+            GroupSeqNo,
+            LineCount,
+            No,
+            SomuSeikyu = (int)DispColumn_Project.SubConstractorName + 1,
+            SomuKosoku,
+            SomuKanamono,
+            SomuSannhaiZei,
+            KojiSeikyu,
+            KojiNebiki,
+            KojiSousai,
+            JikaiKurikosi,
+            KojiKosoku,
+            KojiKanamono,
+            KojiSannhaiZei,
+            KyoryokuKin,
+            KyoryokuKinRitu,
+            KyoryokuUmu,
+            CyuumonshoTeisyutu,
+            CyuumonshoTouchaku,
+            YosanSho,
+            TantoShoninCode,
+            TantoShonin,
+            TantoDate,
+            Shonin1Code,
+            Shonin1,
+            Shonin1Date,
+            Shonin1Authority,
+            Shonin1Order,
+            Shonin2Code,
+            Shonin2,
+            Shonin2Date,
+            Shonin2Authority,
+            Shonin2Order,
+            Shonin3Code,
+            Shonin3,
+            Shonin3Date,
+            Shonin3Authority,
+            Shonin3Order,
+            Shonin4Code,
+            Shonin4,
+            Shonin4Date,
+            Shonin4Authority,
+            Shonin4Order,
+            Shonin5Code,
+            Shonin5,
+            Shonin5Date,
+            Shonin5Authority,
+            Shonin5Order,
+            Shonin6Code,
+            Shonin6,
+            Shonin6Date,
+            Shonin6Authority,
+            Shonin6Order,
+            Shonin7Code,
+            Shonin7,
+            Shonin7Date,
+            Shonin7Authority,
+            Shonin7Order,
+            Shonin8Code,
+            Shonin8,
+            Shonin8Date,
+            Shonin8Authority,
+            Shonin8Order,
+            Shonin9Code,
+            Shonin9,
+            Shonin9Date,
+            Shonin9Authority,
+            Shonin9Order,
+            Shonin10Code,
+            Shonin10,
+            Shonin10Date,
+            Shonin10Authority,
+            Shonin10Order,
+            Bikou,
+            ShohiZeiRitu,
+        }
+
+        /// <summary>
+        /// ���p���[�U�[�^�C�v
+        /// </summary>
+        public enum UserType
+        {
+            Soumu = 0,
+            Koji,
+            Sekinin,
+            Boss,
+            Eigyo,
+            Sonota,
+        }
+
+        /// <summary>
+        /// �\���{�^�������Ŏ擾����f�[�^����
+        /// </summary>
+        private enum ClickGetData
+        {
+            SEQNO = 0,
+            LINECOUNT,
+            COMPANYCODE,
+            COMPANYNAME,
+            DisplayOrder,
+            CONSTRUCTIONCODE,
+            FIELDNAME,
+            BILLPRICE,
+            HIGHWPRICE,
+            HARDWPRICE,
+            INDSWASTETAX,
+            UpdateDate,
+            Bikou,
+            KojiSeikyu,
+            KojiNebiki,
+            KojiSousai,
+            JikaiKurikosi,
+            KojiKosoku,
+            KojiKanamono,
+            KojiSannhaiZei,
+            CnstrPrice,
+            CNSTRPRICEEXIST,
+            ApprovalPersonCode,
+            TantoNM,
+            ApprovalDate,
+            ApprovalEndFlg,
+            SalesPersonCode,
+            ConstructionPersonCode, /*�H���S����*/
+            ConstrSubPersonCode,
+            ConstructionInstructor,
+            DepartmentCode,/*�H���S���ҕ����R�[�h*/
+            PurchaseOrderMailingDate,/*�������X����*/
+            PurchaseOrderReturnDate, /*�������ԑ���*/
+            PaData, // �\�Z��
+        }
+        #endregion
+
+        #region �ϐ�
+
+        private class ShoninData
+        {
+            public int Key { get; set; }
+            public string Value { get; set; }
+            public int Order { get; set; }
+            public int ApprovalAuthority { get; set; }
+        }
+
+        /// <summary>
+        /// �t�B�[���h�l�ω��t���O
+        /// </summary>
+        private bool m_bChengeAns = false;
+
+        ///// <summary>
+        ///// �������t���O
+        ///// </summary>
+        private bool m_initDataLoad = true;
+
+        /// <summary>
+        /// �����Ǎ����f�[�^�J�E���g
+        /// </summary>
+        //private int m_initDataCount = 0;
+
+        /// <summary>
+        /// �N���t���O
+        /// </summary>
+        private int m_ExecuteFlg = 0;
+
+        /// <summary>
+        /// �f�[�^�ǉ��{�^���\���t���O
+        /// </summary>
+        private bool m_DataAddtionButton = false;
+        ///// <summary>
+        ///// �I���{�^�������t���O
+        ///// </summary>
+        //private bool m_CloseingProcessOff = false;
+
+        /// <summary>
+        /// ��ԋƎҋ敪
+        /// </summary>
+        private int m_Labourkind = 0;
+
+        /// <summary>
+        /// �x����
+        /// </summary>
+        private int m_Payday = 0;
+
+        /// <summary>
+        /// ���͋��L��
+        /// </summary>
+        private List<KeyValuePair<int, string>> m_KyouryokuKinDb = new List<KeyValuePair<int, string>>();
+
+        // ���[�U�[����
+        private UserType m_userType = UserType.Sonota;
+
+        /// <summary>
+        ///  ��ԍ�
+        /// </summary>
+        private int m_Company_Column = 0;
+        private int m_CompanyNM_Column = 0;
+        private int m_Genba_Column = 0;
+        private int m_GenbaNM_Column = 0;
+        private int m_GoukeiCode_Column = 0;
+
+        /// <summary>
+        /// �f�[�^�\���̑Ώی�
+        /// </summary>
+        private int m_Select_TargetDate = 0;
+
+        /// <summary>
+        /// �\�����̃f�[�^����
+        /// </summary>
+        private int m_Select_DataCount = 0;
+        #endregion
+
+  
+        #region �ꗗ�\���Ώۃt���O
+        /// <summary>
+        /// �\���Ώۃt���O
+        /// </summary>
+        private int m_viewTarget = 0;
+        #endregion
+
+
+        #region �v���p�e�B
+        public int Labourkind
+        {
+            get { return m_Labourkind; }
+            set { m_Labourkind = value; }
+        }
+
+        public int ExecuteFlg
+        {
+            get { return m_ExecuteFlg; }
+            set { m_ExecuteFlg = value; }
+        }
+        /// <summary>
+        /// �f�[�^�ǉ��{�^���\��
+        /// </summary>
+        public bool DataAddtionButton
+        {
+            get { return m_DataAddtionButton; }
+            set { m_DataAddtionButton = value; }
+        }
+
+        #endregion
+
+        #region �R���X�g���N�^
+        public FrmRequestSummaryList()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region �f�X�g���N�^
+        ~FrmRequestSummaryList()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �~�{�^��
+        /// <summary>
+        /// �~�{�^����������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmRequestSummaryList_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (m_bChengeAns)
+            {
+                if (MessageBox.Show("�f�[�^�ɕύX������܂��A�o�^�����ɏI�����Ă�낵���ł����H�B", "�I���m�F"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    e.Cancel = true;
+                    return;
+                }
+            }
+            // �O�v���Z�X�ɖ߂�
+            ClsExcute.BackProcess();
+        }
+        #endregion
+
+        #region �I���{�^��
+        /// <summary>
+        /// �I���{�^���N���b�N
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+        #endregion
+
+        #region�@�o�^�{�^��
+        /// <summary>
+        /// �o�^�{�^������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = getShowingView();
+
+                // �������Ȃ�
+                if ((m_Select_DataCount == 0 && dgv.Rows.Count == 0)
+                    || (m_userType == UserType.Sonota || m_userType == UserType.Eigyo))
+                {
+                    return;
+                }
+
+                //�f�[�^�`�F�b�N
+                if (!DispFeildCheck()) return;
+
+                if (MessageBox.Show("�\�����̃f�[�^��o�^���܂��B", "�o�^�m�F", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+
+                // �f�[�^�o�^
+                if (!DataEntry()) return;
+
+                // �f�[�^�\��
+                if (!DispGridData()) return;
+
+                MessageBox.Show("�o�^���܂���", "�o�^�m�F", MessageBoxButtons.OK, MessageBoxIcon.Information);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+
+
+        #region �t�H�[�����[�h
+        /// <summary>
+        /// �����t�H�[�����[�h
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmRequestSummaryList_Load(object sender, EventArgs e)
+        {
+            // �R���{�{�b�N�X�Z�b�g
+            LoadTargetMonth(ref m_Payday);
+
+            // ���[�U�[����
+            CheckSecurity();
+
+            // �����\��
+            InitDataLoad();
+
+            // �\���X�^�C���̕ύX�i�Ǝҁj
+            InitDisplayStyle(dgvCompany);
+
+            // �\���X�^�C���̕ύX�i����j
+            InitDisplayStyle(dgvProject);
+
+            // ����S���҂̏ꍇ�́A�����\���͌���P��
+            if (m_userType == UserType.Koji)
+            {
+                rdbProject.Checked = true;
+            }
+            m_viewTarget = rdbCompany.Checked == true ? 0 : 1;
+
+            showView();
+            SetColumnID();
+            controlButton();
+
+            // �\��
+            DispGridData();
+
+            m_initDataLoad = false;
+        }
+        #endregion
+
+
+        #region �t�H�[��KeyDown
+        /// <summary>
+        /// Entry�L�[�ł̈ړ�����
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmRequestSummaryList_KeyDown(object sender, KeyEventArgs e)
+        {
+            //Enter�L�[��������Ă��邩�m�F
+            //Alt��Ctrl�L�[��������Ă��鎞�͖�������
+            if ((e.KeyCode == Keys.Enter) && !e.Alt && !e.Control)
+            {
+                //��������Tab�L�[�������ꂽ���̂悤�ɂ���
+                //Shift��������Ă��鎞�͑O�̃R���g���[���̃t�H�[�J�X���ړ�
+                this.ProcessTabKey(!e.Shift);
+
+                e.Handled = true;
+                //.NET Framework 2.0�ȍ~
+                e.SuppressKeyPress = true;
+            }
+        }
+        #endregion
+
+
+
+        #region �\���{�^��������
+        /// <summary>
+        /// �\���{�^��������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnShowView_Click(object sender, EventArgs e)
+        {
+            // ���֌W
+            if (m_userType == UserType.Sonota)
+                return;
+
+            if (m_bChengeAns == true)
+            {
+                if (MessageBox.Show("�f�[�^�ɕύX������܂��A�o�^�����ɑΏۂ�ύX���Ă�낵���ł����H�B", "�m�F"
+                    , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    return;
+                }
+            }
+
+            m_viewTarget = rdbCompany.Checked == true ? 0 : 1;
+            showView();
+            SetColumnID();
+            controlButton();
+
+            // �\��
+            InitDataLoad();
+            DispGridData();
+        }
+        #endregion
+
+        /// <summary>
+        /// ���F�Ґݒ�i�S���Җ����F�̏ꍇ�j
+        /// </summary>
+        /// <param name="dgv"></param>
+        /// <param name="iRowIndex"></param>
+        /// <param name="lstDefaultShonin"></param>
+        /// <returns></returns>
+        private bool SetDefaultShonin(DataGridView dgv, int iRowIndex, int DepartmentCode, ref int DataCount, List<ShoninData> lstDefaultShonin = null)
+        {
+            int iShoninColumn = 0;
+
+            try
+            {
+                if (lstDefaultShonin == null)
+                {
+                    lstDefaultShonin = new List<ShoninData>();
+                    // �S�������F���̏��F�Җ��̎擾
+                    if (!GetShouninDefault(DepartmentCode, ref lstDefaultShonin)) return false;
+                }
+
+                // �S���Җ����F�f�[�^
+                iShoninColumn = (int)DispColumn.Shonin1Code;
+                foreach (ShoninData work in lstDefaultShonin)
+                {
+                    dgv.Rows[iRowIndex].Cells[iShoninColumn++].Value = work.Key; // ���F�҃R�[�h
+                    dgv.Rows[iRowIndex].Cells[iShoninColumn].Style.ForeColor = Color.Gray;
+                    dgv.Rows[iRowIndex].Cells[iShoninColumn++].Value = work.Value;    // ���F�Җ��i��ӕ\�����j
+                    dgv.Rows[iRowIndex].Cells[iShoninColumn++].Value = "";       // ���F���t
+                    dgv.Rows[iRowIndex].Cells[iShoninColumn++].Value = work.ApprovalAuthority; // ���F�Ҍ����敪
+                    dgv.Rows[iRowIndex].Cells[iShoninColumn++].Value = work.Order; // ���F�ҏ���
+                    DataCount++;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// �O���b�h�\��
+        /// </summary>
+        /// <returns></returns>
+        private bool DispGridData()
+        {
+            IOBillingData IoBd = new IOBillingData();
+            ArrayList arData = new ArrayList();
+
+            int DataGoukeiCd_Column = 0;
+            int iShoninColumn = 0;
+
+            StringBuilder sql;
+            List<ShoninData> lstDefaultShonin = new List<ShoninData>();
+            List<PaymentApprovalInfo> PaIList = new List<PaymentApprovalInfo>();
+
+            IOConstructionBaseInfo IoCbi = new IOConstructionBaseInfo();
+            IOMPersonInCharge IoMpic = new IOMPersonInCharge();
+            ConstructionBaseInfo Cbi = new ConstructionBaseInfo();
+            PersonInChargeMaster Picm = new PersonInChargeMaster();
+            string KojiTanto = "", KojiTantoCode = "";
+            int ConstrDepartmentCode = 0;
+
+            try
+            {
+
+                DataGridView dgv = getShowingView();
+
+                // ���v�l�s�Z�o�̒P��
+                if (m_viewTarget == 0)
+                {
+                    DataGoukeiCd_Column = (int)ClickGetData.COMPANYCODE;
+                }
+                else
+                {
+                    DataGoukeiCd_Column = (int)ClickGetData.CONSTRUCTIONCODE;
+                }
+
+                // ����s�؂�ւ�
+                DataGridView_ReadOnlyChange(dgv);
+
+
+                // �I��Ώی��̑ޔ�
+                m_Select_TargetDate = CommonMotions.cnvInt(cmbTargetMonth.SelectedValue);
+
+                // ��U�Z���̒l�ύX�C�x���g�𖳌��ɂ���
+                dgv.CellValueChanged -= DataGridView_CellValueChanged;
+
+                // �O���b�h�̍s��0�ɖ߂�
+                dgv.Rows.Clear();
+
+                // SQL�쐬
+                sql = new StringBuilder();
+                sql.AppendLine("select  ");
+                sql.AppendLine(" Bd.SEQNO, ");
+                sql.AppendLine(" Bdd.LINECOUNT, ");
+                sql.AppendLine(" Bdd.COMPANYCODE, ");
+                sql.AppendLine(" Scm.COMPANYNAME, ");
+                sql.AppendLine(" Scm.DisplayOrder, ");
+                sql.AppendLine(" Bdd.CONSTRUCTIONCODE, ");
+                sql.AppendLine(" Bdd.FIELDNAME, ");
+                sql.AppendLine(" Bdd.BILLPRICE, ");
+                sql.AppendLine(" Bdd.HIGHWPRICE, ");
+                sql.AppendLine(" Bdd.HARDWPRICE, ");
+                sql.AppendLine(" Bdd.INDSWASTETAX, ");
+                sql.AppendLine(" DATE_FORMAT(Bdd.UpdateDate, '%Y/%m/%d %H:%i:%s') as UpdateDate, ");
+                sql.AppendLine(" ifnull(Bdd.Note,'') as Bikou, ");
+                sql.AppendLine("ifnull(Pdd.BILLPRICE,0) as KojiSeikyu, ");
+                sql.AppendLine("ifnull(Pdd.DiscountPrice,0) as KojiNebiki, ");
+                sql.AppendLine("ifnull(Pdd.OffsetPrice,0) as KojiSousai, ");
+                sql.AppendLine("ifnull(Pdd.NextCoPrice,0) as JikaiKurikosi, ");
+                sql.AppendLine("ifnull(Pdd.HIGHWPRICE,0) as KojiKousoku, ");
+                sql.AppendLine("ifnull(Pdd.HARDWPRICE,0) as KojiKanamono, ");
+                sql.AppendLine("ifnull(Pdd.INDSWASTETAX,0) as KojiSannhaiZei, ");
+                sql.AppendLine("ifnull(Pdd.CnstrPrice,0) as CnstrPrice, ");
+                sql.AppendLine("ifnull(Pdd.CNSTRPRICEEXIST,-1) as CNSTRPRICEEXIST, ");
+                sql.AppendLine("ifnull(Pdd.ApprovalPersonCode,0) as ApprovalPersonCode, ");
+                sql.AppendLine("ifnull(Picm.SealPrintName,'') as TantoNM, ");
+                sql.AppendLine(" DATE_FORMAT(ifnull(Pdd.ApprovalDate,'2001-01-01'), '%Y/%m/%d') as ApprovalDate, "); // 2001.01.01�͖��ݒ�l
+                sql.AppendLine(" ifnull(Pdd.ApprovalEndFlg,0) as ApprovalEndFlg, ");
+                sql.AppendLine(" ifnull(Cbi.SalesPersonCode,0) as SalesPersonCode, ");          /*�c�ƒS����*/
+                sql.AppendLine(" ifnull(Cbi.ConstructionPersonCode,0) as ConstructionPersonCode, ");   /*�H���S����*/
+                sql.AppendLine(" ifnull(Cbi.ConstrSubPersonCode,0) as ConstrSubPersonCode, ");          /*�H�����S����*/
+                sql.AppendLine(" ifnull(Cbi.ConstructionInstructor,0) as ConstructionInstructor, ");    /*�H���w����*/
+                sql.AppendLine("  Picm2.DepartmentCode, ");         /*�H���S���ҕ����R�[�h*/
+                sql.AppendLine(" case ifnull(Cbi.PurchaseOrderMailingDate,'') 	when '' then '' ");
+                sql.AppendLine("												when '2001-01-01' then '�~'   ");
+                sql.AppendLine("												else '��'  ");
+                sql.AppendLine(" end as PurchaseOrderMailingDate,  ");
+                sql.AppendLine(" case ifnull(Cbi.PurchaseOrderReturnDate,'') 	when '' then '' ");
+                sql.AppendLine("												when '2001-01-01' then '�~'   ");
+                sql.AppendLine("												else '��'  ");
+                sql.AppendLine(" end as PurchaseOrderReturnDate,  ");
+                sql.AppendLine(" case ifnull(Pa.PERSONCODE,0) when 0 then case Bdd.CONSTRUCTIONCODE when 0 then '' ");
+                sql.AppendLine("																	else '�~' ");
+                sql.AppendLine("								          end ");
+                sql.AppendLine("							  else '��'   ");
+                sql.AppendLine(" end as PaData   ");
+
+                sql.AppendLine("from BillingData as Bd join (BillingDataDetail as Bdd join SubContractorMaster as Scm on Bdd.COMPANYCODE = Scm.COMPANYCODE ");
+                sql.AppendFormat("                                                                                          and Scm.LABOURKIND={0}", m_Labourkind);                                         
+                sql.AppendLine("														   left join (PaymentDataDetail as Pdd left join PersonInChargeMaster as Picm on ifnull(Pdd.ApprovalPersonCode,-1) = Picm.PERSONCODE ) on Bdd.COMPANYCODE = Pdd.COMPANYCODE and Bdd.TARGETDATE = Pdd.TARGETDATE and Bdd.SEQNO = Pdd.SEQNO and Bdd.LINECOUNT = Pdd.LINECOUNT ");
+                sql.AppendLine("                                                           left join (ConstructionBaseInfo as Cbi left join (PersonInChargeMaster as Picm2 left join ApprovalMaster as Am on Picm2.DEPARTMENTCODE = Am.DEPARTMENTCODE and Am.ApprovalCode = 3 and ApprovalAuthority = 1)  ");
+                sql.AppendLine("																											on Cbi.ConstructionPersonCode = Picm2.PERSONCODE ");
+                sql.AppendLine("                                                                                                  left join ProcessApproval as Pa on Cbi.CONSTRUCTIONCODE = Pa.CONSTRUCTIONCODE and Am.APPROVALPERSON = Pa.PERSONCODE and Pa.SEQNO > 1 and Pa.APPROVALSTATUS = 2)  ");
+                sql.AppendLine("																	 on Bdd.CONSTRUCTIONCODE = Cbi.CONSTRUCTIONCODE) ");
+                sql.AppendLine("					on Bd.COMPANYCODE = BdD.COMPANYCODE  ");
+                sql.AppendLine("                    and Bd.TARGETDATE = BdD.TARGETDATE  ");
+                sql.AppendLine("                    and Bd.SEQNO = BdD.SEQNO ");
+
+                sql.AppendFormat("where Bd.TARGETDATE = {0} ", m_Select_TargetDate);
+
+                sql.AppendLine("group by  ");
+                sql.AppendLine(" Bd.SEQNO, ");
+                sql.AppendLine(" Bdd.LINECOUNT, ");
+                sql.AppendLine(" Bdd.COMPANYCODE, ");
+                sql.AppendLine(" Scm.COMPANYNAME, ");
+                sql.AppendLine(" Scm.DisplayOrder, ");
+                sql.AppendLine(" Bdd.CONSTRUCTIONCODE, ");
+                sql.AppendLine(" Bdd.FIELDNAME, ");
+                sql.AppendLine(" Bdd.BILLPRICE, ");
+                sql.AppendLine(" Bdd.HIGHWPRICE, ");
+                sql.AppendLine(" Bdd.HARDWPRICE, ");
+                sql.AppendLine(" Bdd.INDSWASTETAX, ");
+                sql.AppendLine(" Bdd.UpdateDate, ");
+                sql.AppendLine(" Bdd.Note, ");
+                sql.AppendLine("Pdd.BILLPRICE, ");
+                sql.AppendLine("Pdd.DiscountPrice, ");
+                sql.AppendLine("Pdd.OffsetPrice, ");
+                sql.AppendLine("Pdd.NextCoPrice, ");
+                sql.AppendLine("Pdd.HIGHWPRICE, ");
+                sql.AppendLine("Pdd.HARDWPRICE, ");
+                sql.AppendLine("Pdd.INDSWASTETAX, ");
+                sql.AppendLine("Pdd.CnstrPrice, ");
+                sql.AppendLine("Pdd.CNSTRPRICEEXIST, ");
+                sql.AppendLine("Pdd.ApprovalPersonCode, ");
+                sql.AppendLine("Picm.SealPrintName, ");
+                sql.AppendLine(" Pdd.ApprovalDate, ");
+                sql.AppendLine(" Pdd.ApprovalEndFlg, ");
+                sql.AppendLine(" Cbi.SalesPersonCode, ");          /*�c�ƒS����*/
+                sql.AppendLine(" Cbi.ConstructionPersonCode, ");   /*�H���S����*/
+                sql.AppendLine(" Cbi.ConstrSubPersonCode, ");          /*�H�����S����*/
+                sql.AppendLine(" Cbi.ConstructionInstructor, ");    /*�H���w����*/
+                sql.AppendLine(" Picm2.DepartmentCode, ");         /*�H���S���ҕ����R�[�h*/
+                sql.AppendLine(" Cbi.PurchaseOrderMailingDate, "); /*�������X����*/
+                sql.AppendLine(" Cbi.PurchaseOrderReturnDate, ");  /*�������ԑ���*/
+                sql.AppendLine(" Pa.PERSONCODE "); // �\�Z��
+
+                if (dgvCompany.Visible == true)
+                {
+                    sql.AppendLine("order by Scm.DISPLAYORDER, Bdd.SEQNO, case when Bdd.CONSTRUCTIONCODE = 0 Then  2099999999 else Bdd.LINECOUNT end ");
+                 }
+                else if (dgvProject.Visible == true)
+                {
+                    sql.AppendLine("order by Bdd.CONSTRUCTIONCODE,Scm.DISPLAYORDER,Bdd.SEQNO,Bdd.LINECOUNT ");
+                }
+
+                // �f�[�^�擾
+                if (!IoBd.ExecuteReader(sql.ToString(), ref arData)) return false;
+
+                // �f�[�^�\��
+                int icnt = 0;
+                int iNo = 1;
+                int iGoukeiSeq = 0;
+                int iGoukeiCd = -1;
+                int iDataCount = 0;
+                int iShoninMaxCount = 0;
+                foreach (object[] work in arData)
+                {
+                    // ���v�s�쐬
+                    if (iGoukeiCd != CommonMotions.cnvInt(work[DataGoukeiCd_Column]))
+                    {
+                        if (iGoukeiCd != -1)
+                        {
+                            // ���ו\������Ă���f�[�^�����`�F�b�N
+                            iDataCount = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                  && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                                  && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == iGoukeiCd)
+                                                                         .Count();
+
+                            if (iDataCount > 0)
+                            {
+                                // ���v�s�ǉ�
+                                MakeGoukeiGyo(dgv, iGoukeiCd);
+                                icnt += System.Enum.GetValues(typeof(GoukeiRows)).Length;
+
+                                // ���v�l�ݒ�
+                                setGoukei_DataDisp(dgv, iGoukeiCd);
+
+                            }
+                            iNo++;
+                        }
+                        iGoukeiSeq = 1;
+                        iGoukeiCd = CommonMotions.cnvInt(work[DataGoukeiCd_Column]);
+                    }
+
+
+                    dgv.Rows.Add();
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.CompanyDispOrder].Value = CommonMotions.cnvInt(work[(int)ClickGetData.DisplayOrder]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.ApprovalEndFlg].Value = CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalEndFlg]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.UpdateDate].Value = CommonMotions.cnvString(work[(int)ClickGetData.UpdateDate]);
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+                    dgv.Rows[icnt].Cells[(int)DispColumn.RowType].Value = 0;
+                    dgv.Rows[icnt].Cells[(int)DispColumn.GoukeiSeqNo].Value = iGoukeiSeq;
+                    dgv.Rows[icnt].Cells[(int)DispColumn.GroupSeqNo].Value = CommonMotions.cnvInt(work[(int)ClickGetData.SEQNO]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.LineCount].Value = CommonMotions.cnvInt(work[(int)ClickGetData.LINECOUNT]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.No].Value = iNo;
+
+                    dgv.Rows[icnt].Cells[m_Company_Column].Value = CommonMotions.cnvInt(work[(int)ClickGetData.COMPANYCODE]);
+                    dgv.Rows[icnt].Cells[m_CompanyNM_Column].Value = CommonMotions.cnvString(work[(int)ClickGetData.COMPANYNAME]);
+                    dgv.Rows[icnt].Cells[m_CompanyNM_Column].ToolTipText = CommonMotions.cnvString(work[(int)ClickGetData.COMPANYNAME]);
+                    dgv.Rows[icnt].Cells[m_Genba_Column].Value = CommonMotions.cnvInt(work[(int)ClickGetData.CONSTRUCTIONCODE]);
+                    dgv.Rows[icnt].Cells[m_GenbaNM_Column].Value = CommonMotions.cnvString(work[(int)ClickGetData.FIELDNAME]);
+                    dgv.Rows[icnt].Cells[m_GenbaNM_Column].ToolTipText = CommonMotions.cnvString(work[(int)ClickGetData.FIELDNAME]);
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.SomuSeikyu].Value = CommonMotions.cnvInt(work[(int)ClickGetData.BILLPRICE]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.SomuKosoku].Value = CommonMotions.cnvInt(work[(int)ClickGetData.HIGHWPRICE]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.SomuKanamono].Value = CommonMotions.cnvInt(work[(int)ClickGetData.HARDWPRICE]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.SomuSannhaiZei].Value = CommonMotions.cnvInt(work[(int)ClickGetData.INDSWASTETAX]);
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KojiSeikyu].Value = CommonMotions.cnvInt(work[(int)ClickGetData.KojiSeikyu]);
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KojiNebiki].Value = CommonMotions.cnvInt(work[(int)ClickGetData.KojiNebiki]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KojiSousai].Value = CommonMotions.cnvInt(work[(int)ClickGetData.KojiSousai]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.JikaiKurikosi].Value = CommonMotions.cnvInt(work[(int)ClickGetData.JikaiKurikosi]);
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KojiKosoku].Value = CommonMotions.cnvInt(work[(int)ClickGetData.KojiKosoku]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KojiKanamono].Value = CommonMotions.cnvInt(work[(int)ClickGetData.KojiKanamono]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KojiSannhaiZei].Value = CommonMotions.cnvInt(work[(int)ClickGetData.KojiSannhaiZei]);
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KyoryokuKin].Value = CommonMotions.cnvInt(work[(int)ClickGetData.CnstrPrice]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.KyoryokuUmu].Value = CommonMotions.cnvInt(work[(int)ClickGetData.CNSTRPRICEEXIST]);
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.CyuumonshoTeisyutu].Value = CommonMotions.cnvString(work[(int)ClickGetData.PurchaseOrderMailingDate]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.CyuumonshoTouchaku].Value = CommonMotions.cnvString(work[(int)ClickGetData.PurchaseOrderReturnDate]);
+                    dgv.Rows[icnt].Cells[(int)DispColumn.YosanSho].Value = CommonMotions.cnvString(work[(int)ClickGetData.PaData]);
+
+                    // �S���ҏ��F
+                    bool ApprovalPerson = CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalPersonCode]) != 0 ? true : false;
+                    bool SekininApproval = false;
+                    if (ApprovalPerson == true)
+                    {
+                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoShoninCode].Value = CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalPersonCode]);
+                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Value = CommonMotions.cnvString(work[(int)ClickGetData.TantoNM]);
+                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoDate].Value = CommonMotions.cnvString(work[(int)ClickGetData.ApprovalDate]);
+
+                        // �S�����F�σf�[�^
+                        iShoninColumn = (int)DispColumn.Shonin1Code;
+                        if (!GetShonin(CommonMotions.cnvInt(work[(int)ClickGetData.COMPANYCODE]), CommonMotions.cnvInt(work[(int)ClickGetData.SEQNO]), CommonMotions.cnvInt(work[(int)ClickGetData.LINECOUNT]), ref PaIList)) return false;
+                        iShoninMaxCount = iShoninMaxCount < PaIList.Count ? PaIList.Count : iShoninMaxCount;
+                        foreach (PaymentApprovalInfo pair in PaIList)
+                        {
+                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalPerson;
+                            if (pair.ApprovalDate == new DateTime(2001, 01, 01))
+                            {
+                                dgv.Rows[icnt].Cells[iShoninColumn].Style.ForeColor = Color.Gray;
+                            }
+                            else
+                            {
+                                if (SekininApproval == false && m_userType == UserType.Sekinin)
+                                {
+                                    if (CommonMotions.LoginUserData.PersonCode == pair.ApprovalPerson)
+                                    {
+                                        SekininApproval = true;
+                                    }
+                                }
+                            }
+                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalPersonName;
+                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalDate;
+                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalAuthority;
+                            dgv.Rows[icnt].Cells[iShoninColumn++].Value = pair.ApprovalNo;
+                        }
+
+                    }
+                    else
+                    {
+                        //���ꂪ���܂��Ă��邪�����F
+                        if (CommonMotions.cnvInt(dgv.Rows[icnt].Cells[m_Genba_Column].Value) != 0)
+                        {
+                            // �I�������H���̍H���S���҂̕����敪���擾����
+
+                            string sWhere = IoCbi.CreatePrimarykeyString(CommonMotions.cnvInt(dgv.Rows[icnt].Cells[m_Genba_Column].Value));
+                            if (!IoCbi.SelectAction(sWhere, ref Cbi)) throw new Exception("�H����{���擾�G���[");
+
+                            sWhere = IoMpic.CreatePrimarykeyString(Cbi.ConstructionPersonCode);
+                            if (!IoMpic.SelectAction(sWhere, ref Picm)) throw new Exception("�S���҃}�X�^�擾�G���[");
+                            ConstrDepartmentCode = Picm.DepartmentCode;
+
+                            //�H���S����
+                            KojiTantoCode = Picm.PersonCode.ToString();
+                            KojiTanto = Picm.SealPrintName;
+
+                            //�S���ҏ��F�ݒ�
+                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShoninCode].Value = KojiTantoCode;
+                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Value = KojiTanto;
+                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Style.ForeColor = Color.Gray;
+
+                        // �S���Җ����F�f�[�^
+                        int iDefaultDataCount = 0;
+                            if (!SetDefaultShonin(dgv, icnt, ConstrDepartmentCode, ref iDefaultDataCount)) return false;
+                        iShoninMaxCount = iShoninMaxCount < iDefaultDataCount ? iDefaultDataCount : iShoninMaxCount;
+                        }
+                        else
+                        {
+                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShoninCode].Value = "";
+                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Value = ""; 
+                            dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Style.ForeColor = Color.Gray;
+                        }
+
+                    }
+
+                    // ���e�X�g�p
+                    if (CommonMotions.LoginUserData.PersonCode == 88889988)
+                    {
+                        dgv.Rows[icnt].Cells[(int)DispColumn.TantoShonin].Value = "�e�X�g";
+                    }
+
+                    dgv.Rows[icnt].Cells[(int)DispColumn.Bikou].Value = CommonMotions.cnvString(work[(int)ClickGetData.Bikou]);
+
+                    // �����ɂ���ĕ\����\��
+                    // �����l�͉�
+                    dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = 1;
+
+                    // �s���ȊO
+                    if (CommonMotions.cnvInt(work[(int)ClickGetData.CONSTRUCTIONCODE]) != 0)
+                    { 
+                        switch (m_userType)
+                        {
+                            case UserType.Eigyo:
+                                if (CommonMotions.LoginUserData.PersonCode != CommonMotions.cnvInt(work[(int)ClickGetData.SalesPersonCode]))
+                                {
+                                    dgv.Rows[icnt].Visible = false;
+                                    dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = 0;
+                                }
+                                break;
+                            case UserType.Koji:
+                                if (CommonMotions.LoginUserData.PersonCode != CommonMotions.cnvInt(work[(int)ClickGetData.ConstructionPersonCode])
+                                    && CommonMotions.LoginUserData.PersonCode != CommonMotions.cnvInt(work[(int)ClickGetData.ConstrSubPersonCode])
+                                    && CommonMotions.LoginUserData.PersonCode != CommonMotions.cnvInt(work[(int)ClickGetData.ConstructionInstructor]))
+                                {
+                                    dgv.Rows[icnt].Visible = false;
+                                    dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = 0;
+                                }
+                                break;
+                            case UserType.Sekinin:
+                                // ������������ێ����镔���̍H���̂ݕ\������@���w�H���S���ҕ��������O�C�����[�U���������x
+                                if (CommonMotions.LoginUserData.DepartmentCode != CommonMotions.cnvInt(work[(int)ClickGetData.DepartmentCode]))
+                                {
+                                    dgv.Rows[icnt].Visible = false;
+                                    dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = 0;
+                                }
+                                break;
+                            case UserType.Sonota:
+                                dgv.Rows[icnt].Visible = false;
+                                dgv.Rows[icnt].Cells[(int)DispColumn.RowVisible].Value = 0;
+                                break;
+                        }
+                    }
+
+                    if (CommonMotions.cnvInt(work[(int)ClickGetData.ApprovalEndFlg]) == 1)
+                    {
+                        // �ŏI���F�҂ɂ���ď��F����Ă���ꍇ�́A�S���ڕҏW�s��
+                        dgv.Rows[icnt].ReadOnly = true;
+                    }
+                    else if ((ApprovalPerson == true && m_userType == UserType.Koji)
+                        || (SekininApproval == true && m_userType == UserType.Sekinin))
+                    {
+                        // �H���S���҂��S���ҏ��F�����s���Ă���ꍇ�A�܂��́@�ӔC�҂����g�̏��F�����s���Ă���ꍇ�́A�H���S�����͗��ҏW�s��
+                        dgv.Rows[icnt].Cells[(int)DispColumn.KojiSeikyu].ReadOnly = true;
+                        dgv.Rows[icnt].Cells[(int)DispColumn.KojiNebiki].ReadOnly = true;
+                        dgv.Rows[icnt].Cells[(int)DispColumn.KojiSousai].ReadOnly = true;
+                        dgv.Rows[icnt].Cells[(int)DispColumn.KojiKosoku].ReadOnly = true;
+                        dgv.Rows[icnt].Cells[(int)DispColumn.KojiKanamono].ReadOnly = true;
+                        dgv.Rows[icnt].Cells[(int)DispColumn.KojiSannhaiZei].ReadOnly = true;
+                        dgv.Rows[icnt].Cells[(int)DispColumn.KyoryokuUmu].ReadOnly = true;
+                    }
+
+
+                    icnt++;
+                    iGoukeiSeq++;
+
+                }
+
+                // ���ו\������Ă���f�[�^�����`�F�b�N
+                iDataCount = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                        && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == iGoukeiCd)
+                                                                .Count();
+                if (iDataCount > 0)
+                {
+                    // ���v�s�ǉ�
+                    MakeGoukeiGyo(dgv, iGoukeiCd);
+
+                    // ���v�l�ݒ�
+                    setGoukei_DataDisp(dgv, iGoukeiCd);
+                }
+
+                ResetNo();
+
+                // �ő右�F���ȍ~�̏��F��͔�\��
+                //��U���ɂ��Ă���A�s���ɕύX
+                int i;
+                for (i = (int)DispColumn.Shonin1; i < (int)DispColumn.Bikou; i+=5)
+                {
+                    dgv.Columns[i].Visible = true;
+                }
+                for (i = (int)DispColumn.Shonin1 + (iShoninMaxCount * 5); i < (int)DispColumn.Bikou; i++)
+                {
+                    dgv.Columns[i].Visible = false;
+                }
+
+                // �C�x���g�n���h���ēo�^
+                dgv.CellValueChanged += DataGridView_CellValueChanged;
+
+                // �{�^������
+                controlButton();
+                controlButton_DataCount();
+
+                // �\�����f�[�^����
+                m_Select_DataCount = arData.Count;
+
+                m_bChengeAns = false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoBd = null;
+                IoCbi = null;
+                IoMpic = null;
+            }
+
+        }
+
+        /// <summary>
+        /// �x�����׃f�[�^�m�F
+        /// </summary>
+        /// <param name="CompanyCode"></param>
+        /// <param name="SeqNo"></param>
+        /// <param name="LineCount"></param>
+        /// <returns></returns>
+        private int CheckPaymentDataDetail(int CompanyCode, int SeqNo, int LineCount)
+        {
+            IOPaymentDataDetail IoPdD;
+            DataGridView dgv;
+            try
+            {
+                IoPdD = new IOPaymentDataDetail();
+                List<PaymentDataDetail> PdDList = new List<PaymentDataDetail>();
+
+                dgv = getShowingView();
+
+
+                string sWhere = IoPdD.CreatePrimarykeyString(CompanyCode, m_Select_TargetDate, SeqNo, LineCount);
+
+                if (!IoPdD.SelectAction(sWhere, ref PdDList))
+                {
+                    MessageBox.Show("�f�[�^�m�F�Ɏ��s���܂���", "����폜", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return -1;
+                }
+
+                //�@�f�[�^�����݂��Ă��遁�H���S���ғ��͗������͂���Ă���
+                return PdDList.Count;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+            finally
+            {
+                IoPdD = null;
+            }
+        }
+
+        /// <summary>
+        /// �x�����F���f�[�^���A���F�҂��擾
+        /// </summary>
+        /// <param name="CompanyCode"></param>
+        /// <param name="SeqNo"></param>
+        /// <param name="LineCuont"></param>
+        /// <param name="PaIList"></param>
+        /// <returns></returns>
+        private bool GetShonin(int CompanyCode, int SeqNo, int LineCuont, ref List<PaymentApprovalInfo> PaIList)
+        {
+            PaymentApprovalInfo Pai = new PaymentApprovalInfo();
+            IOPaymentApprovalInfo IoPai = new IOPaymentApprovalInfo();
+            PaIList = new List<PaymentApprovalInfo>();
+            try
+            {
+                string sSql = string.Format(" where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} and LineCount = {3} order by ApprovalNo", CompanyCode, m_Select_TargetDate, SeqNo, LineCuont);
+                if (!IoPai.SelectAction(sSql, ref PaIList)) return false;
+
+                return true;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoPai = null;
+            }
+        }
+
+        /// <summary>
+        /// �S�������F�̏��F�҃��X�g
+        /// </summary>
+        /// <param name="AmList"></param>
+        /// <returns></returns>
+        private bool GetShouninDefault(int DepartmentCode, ref List<ShoninData> AmList)
+        {
+            IOMApproval IoAm = new IOMApproval();
+            ArrayList arDataAm = new ArrayList();
+            StringBuilder sql = new StringBuilder();
+            AmList = new List<ShoninData>();
+            try
+            {
+                sql.AppendLine("select Am.APPROVALPERSON,Picm.SealPrintName,Am.ApprovalAuthority ");
+                sql.AppendLine("from ApprovalMaster as Am left join PersonInChargeMaster as Picm on Am.APPROVALPERSON = Picm.PERSONCODE ");
+                sql.AppendLine("where Am.APPROVALCODE = 99 ");
+                sql.AppendFormat("and Am.DepartmentCode = {0} ", DepartmentCode);
+                sql.AppendLine("order by Am.SEQNO desc ");
+
+                if (!IoAm.ExecuteReader(sql.ToString(), ref arDataAm)) return false;
+                AmList = new List<ShoninData>();
+                int Order = 1;
+                foreach (object[] work in arDataAm)
+                {
+                    AmList.Add(new ShoninData()
+                    {
+                        Key = CommonMotions.cnvInt(work[0]),
+                        Value = CommonMotions.cnvString(work[1]),
+                        Order = Order,
+                        ApprovalAuthority = CommonMotions.cnvInt(work[2])
+                    });
+                    Order++;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoAm = null;
+            }
+
+
+        }
+
+        /// <summary>
+        /// �f�[�^�擾���A���v���z�Z�o
+        /// </summary>
+        /// <param name="dgv">�ΏۃO���b�h</param>
+        /// <param name="GoukeiCd">���v�P�ʂ̃R�[�h</param>
+        private void setGoukei_DataDisp(DataGridView dgv, int GoukeiCd)
+        {
+            int iColIndex = 0;
+
+
+            // �K�v�s���o �A�ԁA�s�ԍ�����
+            DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                              && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                              && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == GoukeiCd)
+                                                                        .OrderBy(x => x.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                                        .ThenBy(x => x.Cells[(int)DispColumn.LineCount].Value)
+                                                                        .ToArray();
+            foreach (DataGridViewRow row in Rows)
+            {
+                // ���͋��ݒ�
+                SetKyoryokukin(dgv, row.Index, m_GoukeiCode_Column);
+
+                // ����J�z
+                dgv[(int)DispColumn.JikaiKurikosi, row.Index].Value = CommonMotions.cnvInt(dgv[(int)DispColumn.SomuSeikyu, row.Index].Value) - (CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSeikyu, row.Index].Value) + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiNebiki, row.Index].Value) + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSousai, row.Index].Value));
+            }
+
+            ShoukeiSanshutu((int)DispColumn.SomuSeikyu, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.SomuKosoku, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.SomuKanamono, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.SomuSannhaiZei, m_GoukeiCode_Column, GoukeiCd);
+
+            ShoukeiSanshutu((int)DispColumn.KojiSeikyu, m_GoukeiCode_Column, GoukeiCd);
+
+            ShoukeiSanshutu((int)DispColumn.KojiNebiki, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.KojiSousai, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.JikaiKurikosi, m_GoukeiCode_Column, GoukeiCd);
+
+            ShoukeiSanshutu((int)DispColumn.KojiKosoku, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.KojiKanamono, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.KojiSannhaiZei, m_GoukeiCode_Column, GoukeiCd);
+            ShoukeiSanshutu((int)DispColumn.KyoryokuKin, m_GoukeiCode_Column, GoukeiCd);
+
+            // �������v��
+            iColIndex = (int)DispColumn.SomuKosoku;
+            foreach (GoukeiRows i in Enum.GetValues(typeof(GoukeiRows)))
+            {
+                if (i == GoukeiRows.���v)
+                    continue;
+                if (i == GoukeiRows.���͋�)
+                    break;
+
+                // ��ݒ�
+                int ColIndex = (int)DispColumn.SomuSeikyu;
+
+                if (i == GoukeiRows.�����)
+                {
+                    // �s����
+                    int RowIndex = SearchRowIndex(m_GoukeiCode_Column, GoukeiCd, i);
+                    // ���v�s����
+                    int ShoukeiRowIndex = SearchRowIndex(m_GoukeiCode_Column, GoukeiCd, GoukeiRows.���v);
+                    if (ShoukeiRowIndex == -1) return;
+
+                    //����ɉ�Џ�񂩂�擾����� (�b��I�ɒ萔�l���p)                        �@
+                    //dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value) * CommonMotions.cnvDouble(dgv.CurrentRow.Cells[(int)DispColumn.ShohiZeiRitu].Value);
+                    dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value) * 0.08);
+                }
+                else
+                {
+                    SetSubGoukei(dgv, ColIndex, iColIndex, m_GoukeiCode_Column, GoukeiCd, i);
+                    iColIndex++;
+                }
+
+            }
+
+
+            // �H�����v��
+            iColIndex = (int)DispColumn.KojiKosoku;
+            foreach (GoukeiRows i in Enum.GetValues(typeof(GoukeiRows)))
+            {
+                if (i == GoukeiRows.���v)
+                    continue;
+
+                // ��ݒ�
+                int ColIndex = (int)DispColumn.KojiSeikyu;
+
+                if (i == GoukeiRows.�����)
+                {
+                    // �s����
+                    int RowIndex = SearchRowIndex(m_GoukeiCode_Column, GoukeiCd, i);
+                    // ���v�s����
+                    int ShoukeiRowIndex = SearchRowIndex(m_GoukeiCode_Column, GoukeiCd, GoukeiRows.���v);
+
+                    if (RowIndex < 0 || ShoukeiRowIndex < 0) return;
+
+                    //����ɉ�Џ�񂩂�擾����� (�b��I�ɒ萔�l���p)                    �@
+                    //dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value) * CommonMotions.cnvDouble(dgv.CurrentRow.Cells[(int)DispColumn.ShohiZeiRitu].Value);
+                    dgv[ColIndex, RowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[ColIndex, ShoukeiRowIndex].Value) * 0.08);
+                }
+                else
+                {
+                    SetSubGoukei(dgv, ColIndex, iColIndex, m_GoukeiCode_Column, GoukeiCd, i);
+                    iColIndex++;
+                }
+
+            }
+
+            // �ŏI���v
+            setGoukei(m_GoukeiCode_Column, GoukeiCd);
+        }
+
+        /// <summary>
+        /// ���v�s�쐬
+        /// </summary>
+        /// <param name="dgv">�ΏۃO���b�h</param>
+        /// <param name="GoukeiCD">���v�P�ʃR�[�h</param>
+        /// <param name="DispOrder">���͉�Е\����</param>
+        /// <param name="StartIndex">�s�쐬�ʒu</param>
+        private void MakeGoukeiGyo(DataGridView dgv, int GoukeiCD, int DispOrder = 0, int StartIndex = -1)
+        {
+            try
+            {
+                int cnt = 0;
+                if (StartIndex != -1)
+                {
+                    cnt = StartIndex;
+                }
+
+                DataGridViewRow[] list = new DataGridViewRow[(int)GoukeiRows.���v];
+                foreach (GoukeiRows i in Enum.GetValues(typeof(GoukeiRows)))
+                {
+                    DataGridViewRow row = new DataGridViewRow();
+                    row.CreateCells(dgv);
+
+                    string Money = "";
+                    if (i == GoukeiRows.���v)
+                    {
+                        Money = "0";
+                    }
+
+                    if (dgvCompany.Visible == true)
+                    {
+                        row.SetValues(new object[] { DispOrder, "", "", DataRowState.Unchanged, 1, (int)i, 0, 0, 0, "", GoukeiCD, "", "", Enum.GetName(typeof(GoukeiRows), i), 0, Money, Money, Money, 0, Money, Money, Money, Money, Money, Money, "", 0, -1, "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" });
+                    }
+                    else
+                    {
+                        row.SetValues(new object[] { DispOrder, "", "", DataRowState.Unchanged, 1, (int)i, 0, 0, 0, "", GoukeiCD, "", "", Enum.GetName(typeof(GoukeiRows), i), 0, Money, Money, Money, 0, Money, Money, Money, Money, Money, Money, "", 0, -1, "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" });
+                    }
+                    row.ReadOnly = true;
+                    switch (i)
+                    {
+                        case GoukeiRows.���v:
+                            row.DefaultCellStyle.BackColor = Color.Khaki;
+                            break;
+                        case GoukeiRows.���v:
+                            row.DefaultCellStyle.BackColor = Color.Yellow;
+                            break;
+                        default:
+                            row.DefaultCellStyle.BackColor = Color.Aqua;
+                            break;
+                    }
+
+                    if (StartIndex != -1)
+                    {
+                        dgv.Rows.Insert(cnt++, row);
+                    }
+                    else
+                    {
+                        list[(int)i - 1] = row;
+                    }
+                }
+
+                if (StartIndex == -1)
+                {
+                    dgv.Rows.AddRange(list);
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        #region �ƎҒǉ��{�^��������
+        /// <summary>
+        /// �ƎҒǉ��{�^��������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAddCompany_Click(object sender, EventArgs e)
+        {
+            // ���͉�БI��
+            ShowSubConstructorDiag();
+            controlButton_DataCount();                
+
+        }
+        #endregion
+
+        #region ����ǉ��{�^��������
+        /// <summary>
+        /// ����ǉ��{�^��������
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAddProject_Click(object sender, EventArgs e)
+        {
+            DataGridView dgv = getShowingView();
+
+            if (dgv.CurrentRow == null) return;
+
+            if (dgv.Rows.Count == 0 || CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.RowType].Value) != 0 || CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.SomuSeikyu].Value) == 0)
+            {
+                return;
+            }
+
+            // ����I��
+            ShowSubLocationDiag();
+        }
+
+        /// <summary>
+        /// �������X�����@�`�@�\�Z��
+        /// </summary>
+        /// <param name="IoCbi"></param>
+        /// <param name="ConstructionCode"></param>
+        /// <param name="arData"></param>
+        /// <returns></returns>
+        private bool GetMarubatu(IOConstructionBaseInfo IoCbi, int ConstructionCode, ref ArrayList arData)
+        {
+            StringBuilder sql = new StringBuilder();
+
+            try
+            {
+                sql.AppendLine("select  ");
+                sql.AppendLine(" case ifnull(Cbi.PurchaseOrderMailingDate,'2001-01-01') when '2001-01-01' then '�~'   ");
+                sql.AppendLine("																	      else '��'  ");
+                sql.AppendLine(" end as PurchaseOrderMailingDate, /*�������X����*/ ");
+                sql.AppendLine(" case ifnull(Cbi.PurchaseOrderReturnDate,'2001-01-01') when '2001-01-01' then '�~'   ");
+                sql.AppendLine("																	      else '��'  ");
+                sql.AppendLine(" end as PurchaseOrderReturnDate,  /*�������ԑ���*/ ");
+                sql.AppendLine(" case ifnull(Pa.PERSONCODE,0) when 0 then '�~' /* �\�Z�� */ ");
+                sql.AppendLine("							  else '��'   ");
+                sql.AppendLine(" end as PaData   ");
+                sql.AppendLine("from ConstructionBaseInfo as Cbi left join (PersonInChargeMaster as Picm2 left join ApprovalMaster as Am on Picm2.DEPARTMENTCODE = Am.DEPARTMENTCODE and Am.ApprovalCode = 3 and ApprovalAuthority = 1)   ");
+                sql.AppendLine("													on Cbi.ConstructionPersonCode = Picm2.PERSONCODE  ");
+                sql.AppendLine("                                 left join ProcessApproval as Pa on Cbi.CONSTRUCTIONCODE = Pa.CONSTRUCTIONCODE and Am.APPROVALPERSON = Pa.PERSONCODE and Pa.SEQNO > 1 and Pa.APPROVALSTATUS = 2 ");
+                sql.AppendFormat("where Cbi.CONSTRUCTIONCODE = {0} ", ConstructionCode);
+                sql.AppendLine("group by Cbi.PurchaseOrderMailingDate, ");
+                sql.AppendLine("Cbi.PurchaseOrderReturnDate, ");
+                sql.AppendLine("Pa.PERSONCODE ");
+
+                // SQL���s
+                if (!IoCbi.ExecuteReader(sql.ToString(), ref arData)) return false;
+                if (arData.Count == 0) return false;
+
+
+                return true;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        #endregion
+
+        /// <summary>
+        ///  �ƎҁE����e�R�[�h�Ɩ��̂̍s�ԍ��擾
+        /// </summary>
+        private void SetColumnID()
+        {
+            m_Company_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.SubConstractorCode : (int)DispColumn_Project.SubConstractorCode;
+            m_CompanyNM_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.SubConstractorName : (int)DispColumn_Project.SubConstractorName;
+
+            m_Genba_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.GengaCode : (int)DispColumn_Project.GengaCode;
+            m_GenbaNM_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.GengaName : (int)DispColumn_Project.GengaName;
+
+            m_GoukeiCode_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.SubConstractorCode : (int)DispColumn_Project.GengaCode;
+        }
+
+        private DataRowState cnvRowState(object target)
+        {
+            DataRowState Result = DataRowState.Detached;
+            try
+            {
+                if (target != null)
+                {
+                    Result = (DataRowState)target;
+                }
+            }
+            catch (Exception ex)
+            {
+                Console.WriteLine(ex.Message);
+            }
+
+            return Result;
+        }
+
+        #region �s�ǉ�
+        /// <summary>
+        /// �V�K�s�ǉ�
+        /// </summary>
+        /// <param name="CompanyCode">�Ǝ҃R�[�h</param>
+        /// <param name="CompanyName">�ƎҖ�</param>
+        /// <param name="GenbaCode">����R�[�h</param>
+        /// <param name="No">No</param>
+        /// <param name="iGroupSeqNo">�A��</param>
+        /// <param name="iIndex">�f�[�^�쐬�ʒu</param>
+        /// <param name="GenbaName">���ꖼ</param>
+        private void MakeNewRow(int CompanyCode, string CompanyName, int GenbaCode, int No, ref int MakeIndex, int iGroupSeqNo = -1, int iIndex = -1, string GenbaName = "")
+        {
+            DataGridView dgv = getShowingView();
+            int iLineCnt = 0;
+            int iGoukeiSeqNo = 0;
+            int iGoukeiCode = m_viewTarget == 0 ? CompanyCode : GenbaCode;
+            try
+            {
+                // ���v�p�s�ԍ�
+                string cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == iGoukeiCode
+                                                                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                        && cnvRowState(x.Cells[(int)DispColumn.RowState].Value) != DataRowState.Deleted)
+                                                                .Max(x => (string)x.Cells[(int)DispColumn.GoukeiSeqNo].Value.ToString());
+                if (cell == null)
+                {
+                    iGoukeiSeqNo = 1;
+                }
+                else
+                {
+                    iGoukeiSeqNo = CommonMotions.cnvInt(cell) + 1;
+                }
+
+                // �A��
+                cell = null;
+                if (iGroupSeqNo == -1)
+                {
+                    cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
+                                                                            && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                  .Max(x => (string)x.Cells[(int)DispColumn.GroupSeqNo].Value.ToString());
+                    if (cell == null)
+                    {
+                        iGroupSeqNo = 1;
+                    }
+                    else
+                    {
+                        iGroupSeqNo = CommonMotions.cnvInt(cell) + 1;
+                    }
+                }
+
+                // �s�ԍ�
+                string lineCnt = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
+                                                                          && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iGroupSeqNo
+                                                                          && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                 .Max(x => (string)x.Cells[(int)DispColumn.LineCount].Value.ToString());
+                if (lineCnt == null)
+                {
+                    iLineCnt = 1;
+                }
+                else
+                {
+                    iLineCnt = CommonMotions.cnvInt(lineCnt) + 1;
+                }
+
+                if (iIndex == -1)
+                {
+                    iIndex = getNewIndexNo();
+                    dgv.Rows.Add(iIndex
+                                        , CompanyCode.ToString()
+                                        , CompanyName);
+                    MakeIndex = iIndex;
+                }
+                else
+                {
+                    dgv.Rows.Insert(iIndex
+                                        , CompanyCode.ToString()
+                                        , CompanyName);
+                }
+
+
+                dgv.Rows[iIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.ApprovalEndFlg].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.UpdateDate].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Added;   // �ǉ�
+                dgv.Rows[iIndex].Cells[(int)DispColumn.RowVisible].Value = 1;   // ��
+                dgv.Rows[iIndex].Cells[(int)DispColumn.RowType].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.No].Value = No == 0 ? "" : CommonMotions.cnvString(No);
+                dgv.Rows[iIndex].Cells[(int)DispColumn.GoukeiSeqNo].Value = iGoukeiSeqNo;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.GroupSeqNo].Value = iGroupSeqNo;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.LineCount].Value = iLineCnt;
+
+                dgv.Rows[iIndex].Cells[m_Company_Column].Value = CompanyCode;
+                dgv.Rows[iIndex].Cells[m_CompanyNM_Column].Value = CompanyName;
+                dgv.Rows[iIndex].Cells[m_CompanyNM_Column].ToolTipText = CompanyName;
+                dgv.Rows[iIndex].Cells[m_Genba_Column].Value = GenbaCode;
+                dgv.Rows[iIndex].Cells[m_GenbaNM_Column].Value = GenbaName != "" ? GenbaName : "�s��";
+
+                dgv.Rows[iIndex].Cells[(int)DispColumn.SomuSeikyu].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.SomuKosoku].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.SomuKanamono].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.SomuSannhaiZei].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KojiSeikyu].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KojiNebiki].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KojiSousai].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.JikaiKurikosi].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KojiKosoku].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KojiKanamono].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KojiSannhaiZei].Value = 0;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KyoryokuKin].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KyoryokuKinRitu].Value = 0;// ���ύX�K�v
+
+                // ��U�Z���̒l�ύX�C�x���g�𖳌��ɂ���
+                dgv.CellValueChanged -= DataGridView_CellValueChanged;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.KyoryokuUmu].Value = -1;
+                // �Z���̒l�ύX�C�x���g��L���ɂ���
+                dgv.CellValueChanged += DataGridView_CellValueChanged;
+
+                dgv.Rows[iIndex].Cells[(int)DispColumn.CyuumonshoTeisyutu].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.CyuumonshoTouchaku].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.YosanSho].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.TantoShoninCode].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.TantoShonin].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.TantoShonin].Style.ForeColor = Color.Gray;
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin1].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin2].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin3].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin4].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin5].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin6].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin7].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin8].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin9].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Shonin10].Value = "";
+                dgv.Rows[iIndex].Cells[(int)DispColumn.Bikou].Value = "";
+                //dgv.Rows[iIndex].Cells[(int)DispColumn.ShohiZeiRitu].Value = 0;// ���ύX�K�v
+
+                MakeIndex = iIndex;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+        /// <summary>
+        /// CellValueChanged
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+
+            if (dgv.CurrentRow == null ||
+                (dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == (int)GoukeiRows.���v).ToArray().Count() == 0))
+                return;
+
+
+            //��̃C���f�b�N�X���m�F����
+            if (e.ColumnIndex == (int)DispColumn.KyoryokuUmu)
+            {
+                int Code_Column = 0;
+                if (dgvCompany.Visible == true)
+                {
+                    Code_Column = (int)DispColumn_Company.SubConstractorCode;
+                }
+                else
+                {
+                    Code_Column = (int)DispColumn_Project.GengaCode;
+                }
+
+                // ���͋��ݒ�
+                SetKyoryokukin(dgv, e.RowIndex, Code_Column);
+
+                // ���v�s
+                setGoukei(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
+
+            }
+        }
+
+        /// <summary>
+        /// CurrentCellDirtyStateChanged
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CurrentCellDirtyStateChanged(object sender, EventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+
+            if (dgv.CurrentCellAddress.X == (int)DispColumn.KyoryokuUmu && dgv.IsCurrentCellDirty)
+            {
+                //�R�~�b�g����
+                dgv.CommitEdit(DataGridViewDataErrorContexts.Commit);
+                m_bChengeAns = true;
+            }
+
+        }
+
+        /// <summary>
+        /// CellBeginEdit
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
+        {
+
+            DataGridView dgv = (DataGridView)sender;
+
+            //���ꖢ���͂͌���ɐ������z���͂����Ȃ�
+            if(CommonMotions.cnvInt(dgv.Rows[e.RowIndex].Cells[m_Genba_Column].Value) == 0 && 
+                e.ColumnIndex >= (int)DispColumn.KojiSeikyu && e.ColumnIndex  <= (int)DispColumn.KyoryokuUmu)
+            {
+                e.Cancel = true;
+                return;
+            }
+
+            if (e.ColumnIndex >= (int)DispColumn.SomuSeikyu &&
+                e.ColumnIndex < (int)DispColumn.KyoryokuUmu)
+            {
+                dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value);
+                dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
+
+            }
+        }
+
+
+        /// <summary>
+        /// CellValidated
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CellValidated(object sender, DataGridViewCellEventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+            GoukeiRows TargetRowtype = (GoukeiRows)dgv[(int)DispColumn.RowType, e.RowIndex].Value;
+
+            if (e.ColumnIndex >= (int)DispColumn.SomuSeikyu &&
+                e.ColumnIndex < (int)DispColumn.KyoryokuUmu &&
+                TargetRowtype < GoukeiRows.���v)
+            {
+                int Code_Column = dgvCompany.Visible == true ? (int)DispColumn_Company.SubConstractorCode : (int)DispColumn_Project.GengaCode;
+
+
+                // ���v�Z�o
+                ShoukeiSanshutu(e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
+
+                // ����J�z
+                if (e.ColumnIndex == (int)DispColumn.SomuSeikyu ||
+                    e.ColumnIndex == (int)DispColumn.KojiSeikyu ||
+                    e.ColumnIndex == (int)DispColumn.KojiNebiki ||
+                    e.ColumnIndex == (int)DispColumn.KojiSousai)
+                {
+                    dgv[(int)DispColumn.JikaiKurikosi, e.RowIndex].Value = CommonMotions.cnvInt(dgv[(int)DispColumn.SomuSeikyu, e.RowIndex].Value) - (CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSeikyu, e.RowIndex].Value) + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiNebiki, e.RowIndex].Value) + CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSousai, e.RowIndex].Value));
+                }
+
+                // ���͋�
+                if (e.ColumnIndex == (int)DispColumn.KojiSeikyu)
+                {
+                    SetKyoryokukin(dgv, e.RowIndex, Code_Column);
+                }
+
+                // �����
+                if (e.ColumnIndex == (int)DispColumn.SomuSeikyu || e.ColumnIndex == (int)DispColumn.KojiSeikyu)
+                {
+                    // ����ōs����
+                    int ZeiRowIndex = SearchRowIndex(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�����);
+
+                    // ���v�s����
+                    int ShoukeiRowIndex = SearchRowIndex(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.���v);
+
+                    if(ShoukeiRowIndex>=0)
+                    {
+                        //����ɉ�Џ�񂩂�擾�����                         �@
+                        //dgv[e.ColumnIndex, ZeiRowIndex].Value = CommonMotions.cnvDouble(dgv.CurrentRow.Cells[e.ColumnIndex].Value) * CommonMotions.cnvDouble(dgv.CurrentRow.Cells[(int)DispColumn.ShohiZeiRitu].Value);
+                        dgv[e.ColumnIndex, ZeiRowIndex].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv[e.ColumnIndex, ShoukeiRowIndex].Value) * 0.08);
+                    }
+                }
+
+                // ������
+                if (e.ColumnIndex == (int)DispColumn.SomuKosoku || e.ColumnIndex == (int)DispColumn.KojiKosoku)
+                {
+                    // ��ݒ�
+                    int ColIndex = e.ColumnIndex == (int)DispColumn.SomuKosoku ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
+
+                    // ���v�l�ݒ�
+                    SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.������);
+                }
+
+
+                // ������
+                if (e.ColumnIndex == (int)DispColumn.SomuKanamono || e.ColumnIndex == (int)DispColumn.KojiKanamono)
+                {
+                    // ��ݒ�
+                    int ColIndex = e.ColumnIndex == (int)DispColumn.SomuKanamono ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
+
+                    // ���v�l�ݒ�
+                    SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.������);
+                }
+
+                // �Y�p��
+                if (e.ColumnIndex == (int)DispColumn.SomuSannhaiZei || e.ColumnIndex == (int)DispColumn.KojiSannhaiZei)
+                {
+                    // ��ݒ�
+                    int ColIndex = e.ColumnIndex == (int)DispColumn.SomuSannhaiZei ? (int)DispColumn.SomuSeikyu : (int)DispColumn.KojiSeikyu;
+
+                    // ���v�l�ݒ�
+                    SetSubGoukei(dgv, ColIndex, e.ColumnIndex, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), GoukeiRows.�Y�p��);
+                }
+
+                // ���v�s
+                setGoukei(Code_Column, CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value));
+
+                if(!m_initDataLoad) m_bChengeAns = true;
+
+                // �V�K�ǉ�
+                if (dgvCompany.Visible == true && btnAddCompany.Enabled == true &&
+                    (e.ColumnIndex >= (int)DispColumn.SomuSeikyu && e.ColumnIndex < (int)DispColumn.KojiSeikyu))
+                {
+                    int GoukeiSeqNo;
+                    string cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[Code_Column].Value) == CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value) && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1)
+                                                                    .Max(x => (string)x.Cells[(int)DispColumn.GoukeiSeqNo].Value.ToString());
+                    if (cell != null)
+                    {
+                        GoukeiSeqNo = CommonMotions.cnvInt(cell);
+                        if (GoukeiSeqNo == CommonMotions.cnvInt(dgv[(int)DispColumn.GoukeiSeqNo, e.RowIndex].Value) && CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value) != 0)
+                        {
+                            // �C�x���g�n���h���𔲂��o��������Ɏ��s
+                            this.BeginInvoke((MethodInvoker)delegate
+                            {
+                                int MakeIndex = 0;
+                                MakeNewRow(CommonMotions.cnvInt(dgv[Code_Column, e.RowIndex].Value), "", 0,
+                                            CommonMotions.cnvInt(dgv[(int)DispColumn.No, e.RowIndex].Value), ref MakeIndex, -1, e.RowIndex + 1);
+                                dgv.Rows[MakeIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = CommonMotions.cnvInt(dgv[(int)DispColumn.CompanyDispOrder, e.RowIndex].Value);
+                                dgv.Rows[MakeIndex].Cells[m_GoukeiCode_Column + 1].ToolTipText = CommonMotions.cnvString(dgv[m_GoukeiCode_Column + 1, e.RowIndex].ToolTipText);
+                                ResetNo();
+                            });
+                        }
+                    }
+                }
+
+            }
+
+        }
+
+        /// <summary>
+        /// ���v�Z�o
+        /// </summary>
+        /// <param name="TargetColumn"></param>
+        /// <param name="CompanyCode_Column"></param>
+        /// <param name="CompanyCode"></param>
+        private void ShoukeiSanshutu(int TargetColumn, int Code_Column, int Code)
+        {
+            DataGridView dgv = getShowingView();
+
+            try
+            {
+                if (dgv.RowCount <= 1)
+                {
+                    return;
+                }
+                // ���v�s����
+                int ShoukeiRowIndex = SearchRowIndex(Code_Column, Code, GoukeiRows.���v);
+                if (ShoukeiRowIndex == -1) return;
+
+                int Shoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[Code_Column].Value) == Code && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                          && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1)
+                                                                .Sum(y => CommonMotions.cnvInt(y.Cells[(int)TargetColumn].Value));
+
+                dgv[TargetColumn, ShoukeiRowIndex].Value = Shoukei;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// ���v�s
+        /// </summary>
+        /// <param name="CompanyCode_Column">�ΏۋƎ҃R�[�h��ԍ�</param>
+        /// <param name="CompanyCode">�ΏۋƎ҃R�[�h</param>
+        private void setGoukei(int CompanyCode_Column, int CompanyCode)
+        {
+            DataGridView dgv = getShowingView();
+            try
+            {
+                // �ݒ�s����
+                int RowIndex = SearchRowIndex(CompanyCode_Column, CompanyCode, GoukeiRows.���v);
+                if (RowIndex < 0) return;
+
+                int SoumuKei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[CompanyCode_Column].Value) == CompanyCode &&
+                                                                                                                    ((int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.���v ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.����� ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.������ ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.������ ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.�Y�p��))
+                                                               .Sum(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.SomuSeikyu].Value));
+                dgv[(int)DispColumn.SomuSeikyu, RowIndex].Value = SoumuKei;
+
+                int KojiKei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[CompanyCode_Column].Value) == CompanyCode &&
+                                                                                                                    ((int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.���v ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.����� ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.������ ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.������ ||
+                                                                                                                     (int)x.Cells[(int)DispColumn.RowType].Value == (int)GoukeiRows.�Y�p��))
+                                                               .Sum(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.KojiSeikyu].Value));
+                KojiKei = KojiKei - CommonMotions.cnvInt(dgv[(int)DispColumn.KojiSeikyu, SearchRowIndex(CompanyCode_Column, CompanyCode, GoukeiRows.���͋�)].Value);
+                dgv[(int)DispColumn.KojiSeikyu, RowIndex].Value = KojiKei;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// �ƎҐ����x���T�}���[�f�[�^�p���v�l�擾�@(�f�[�^�P��)
+        /// </summary>
+        /// <param name="dgv"></param>
+        /// <param name="CompanyCode">���͉�ЃR�[�h</param>
+        /// <param name="ChargePaymentKind">�Ώێx�����敪�@0�F����(�����j 1�F�x��(�H���S��)</param>
+        /// <param name="BpsWork"></param>
+        /// <returns></returns>
+        private bool GetBpsGoukei(DataGridView dgv, int CompanyCode, int ChargePaymentKind, ref BillingPaymentSummary BpsWork)
+        {
+            try
+            {
+                if (ChargePaymentKind == 0)
+                {
+                    // 0�F����(�����j
+                    BpsWork.Payday = CommonMotions.cnvDate(lblPaymentDate.Text);
+                    BpsWork.BillPriceStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.SomuSeikyu);
+                    BpsWork.ConsumptionTaxRate = 0.08; // ����Џ��̒l���ݒ肳���悤�ɂȂ�
+                    BpsWork.ConsumptionTaxPrice = CommonMotions.cnvRound(CommonMotions.cnvDouble(BpsWork.BillPriceStotal) * BpsWork.ConsumptionTaxRate);
+                    BpsWork.HighwPriceStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.SomuKosoku);
+                    BpsWork.HardwPriceStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.SomuKanamono);
+                    BpsWork.IndsWasteTaxStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.SomuSannhaiZei);
+
+                    SystemMaster sm = new SystemMaster();
+                    BpsWork.CnstrPriceRate = (sm.CooperationRate/100);
+                    BpsWork.CnstrPriceStotal = 0;
+                    BpsWork.BillingPriceTotal = BpsWork.BillPriceStotal + BpsWork.ConsumptionTaxPrice + BpsWork.HighwPriceStotal + BpsWork.HardwPriceStotal + BpsWork.IndsWasteTaxStotal;
+                }
+                else if (ChargePaymentKind == 1)
+                {
+                    // 1�F�x��(�H���S��)
+                    BpsWork.Payday = CommonMotions.cnvDate(lblPaymentDate.Text);
+                    BpsWork.BillPriceStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.KojiSeikyu);
+                    BpsWork.ConsumptionTaxRate = 0.08; // ����Џ��̒l���ݒ肳���悤�ɂȂ�
+                    BpsWork.ConsumptionTaxPrice = CommonMotions.cnvRound(CommonMotions.cnvDouble(BpsWork.BillPriceStotal) * BpsWork.ConsumptionTaxRate);
+                    BpsWork.HighwPriceStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.KojiKosoku);
+                    BpsWork.HardwPriceStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.KojiKanamono);
+                    BpsWork.IndsWasteTaxStotal = GetBpsGoukei(dgv, CompanyCode, DispColumn.KojiSannhaiZei);
+                    SystemMaster sm = new SystemMaster();
+                    BpsWork.CnstrPriceRate = (sm.CooperationRate/100);
+                    BpsWork.CnstrPriceStotal = CommonMotions.cnvRound(CommonMotions.cnvDouble(BpsWork.BillPriceStotal) * (sm.CooperationRate/100));
+                    BpsWork.BillingPriceTotal = BpsWork.BillPriceStotal + BpsWork.ConsumptionTaxPrice + BpsWork.HighwPriceStotal + BpsWork.HardwPriceStotal + BpsWork.IndsWasteTaxStotal - BpsWork.CnstrPriceStotal;
+
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// ���ƎҁA���A�Ԃ̍��v�l
+        /// </summary>
+        /// <param name="dgv"></param>
+        /// <param name="CompanyCode">�Ǝ҃R�[�h</param>
+        /// <param name="SeqNo">�A��</param>
+        /// <param name="TargetColumn">�Ώۗ�</param>
+        /// <returns></returns>
+        private long GetSeqGoukei(DataGridView dgv, int CompanyCode,int SeqNo, DispColumn TargetColumn)
+        {
+            long Result = 0;
+            try
+            {
+
+                Result = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
+                                                                && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == SeqNo)
+                    .Sum(y => CommonMotions.cnvLong(y.Cells[(int)TargetColumn].Value));
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            return Result;
+
+        }
+        /// <summary>
+        /// �ƎҐ����x���T�}���[�f�[�^�p���v�l�擾�@(��P��)
+        /// </summary>
+        /// <param name="dgv"></param>
+        /// <param name="CompanyCode"></param>
+        /// <param name="TargetColumn"></param>
+        /// <returns></returns>
+        private long GetBpsGoukei(DataGridView dgv, int CompanyCode, DispColumn TargetColumn)
+        {
+            long Result = 0;
+            try
+            {
+
+                Result = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode)
+                    .Sum(y => CommonMotions.cnvLong(y.Cells[(int)TargetColumn].Value));
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            return Result;
+
+        }
+
+        /// <summary>
+        /// �T�u���v�l�ݒ�
+        /// </summary>
+        /// <param name="dgv">�ΏۃO���b�h</param>
+        /// <param name="ColIndex">�Ώۗ�C���f�b�N�X</param>
+        /// <param name="Code_Column">���v����P�ʂ̗�ԍ�</param>
+        /// <param name="Code">���v����P�ʂ̗�̒l</param>
+        /// <param name="SetRow">�Ώۍ��v�s</param>
+        private void SetSubGoukei(DataGridView dgv, int ColIndex, int GetColIndex, int Code_Column, int Code, GoukeiRows SetRow)
+        {
+            // �s����
+            int RowIndex = SearchRowIndex(Code_Column, Code, SetRow);
+            // ���v�s����
+            int GetRowIndex = SearchRowIndex(Code_Column, Code, GoukeiRows.���v);
+
+            if (RowIndex < 0 || GetRowIndex < 0) return;
+
+            dgv[ColIndex, RowIndex].Value = dgv[GetColIndex, GetRowIndex].Value;
+
+        }
+
+        /// <summary>
+        /// ���͋��\��
+        /// </summary>
+        /// <param name="dgv"></param>
+        /// <param name="RowIndex"></param>
+        /// <param name="Code_Column"></param>
+        private void SetKyoryokukin(DataGridView dgv, int RowIndex, int Code_Column)
+        {
+            if (dgv.CurrentRow == null)
+                return;
+
+            if (RowIndex == -1)
+                return;
+
+            // ���͋��L���w���x
+            if (CommonMotions.cnvInt(dgv[(int)DispColumn.KyoryokuUmu, RowIndex].Value) == 1)
+            {
+                //����ɉ�Џ�񂩂�擾�����                         
+                //dgv.Rows[RowIndex].Cells[(int)DispColumn.KyoryokuKin].Value = CommonMotions.cnvDouble(dgv.Rows[RowIndex].Cells[(int)DispColumn.KojiSeikyu].Value) * CommonMotions.cnvDouble(dgv.Rows[RowIndex].Cells[(int)DispColumn.KyoryokuKinRitu].Value);
+                SystemMaster sm = new SystemMaster();
+                dgv.Rows[RowIndex].Cells[(int)DispColumn.KyoryokuKin].Value = CommonMotions.cnvRound(CommonMotions.cnvDouble(dgv.Rows[RowIndex].Cells[(int)DispColumn.KojiSeikyu].Value) * (sm.CooperationRate/100));
+            }
+            else
+            {
+                dgv.Rows[RowIndex].Cells[(int)DispColumn.KyoryokuKin].Value = "";
+            }
+
+            // ���v�Z�o
+            ShoukeiSanshutu((int)DispColumn.KyoryokuKin, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, RowIndex].Value));
+
+            // ���v�l�Z�o
+            SetSubGoukei(dgv, (int)DispColumn.KojiSeikyu, (int)DispColumn.KyoryokuKin, Code_Column, CommonMotions.cnvInt(dgv[Code_Column, RowIndex].Value), GoukeiRows.���͋�);
+
+        }
+
+
+        /// <summary>
+        /// �w�肵�����͉�Џ��̎��̋��͉�Ђ̃C���f�b�N�X���擾���A�z�u�������C���f�b�N�X��Ԃ�
+        /// </summary>
+        /// <param name="InsertDispOrder"></param>
+        /// <returns></returns>
+        private int SearchRowIndex(int InsertDispOrder)
+        {
+            int Result = 0;
+            DataGridView dgv = getShowingView();
+            DataGridViewRow Row;
+
+            Row = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.CompanyDispOrder].Value) > InsertDispOrder
+                                                                           && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0).FirstOrDefault();
+
+
+            Result = Row == null ? -1 : Row.Index;
+            return Result;
+        }
+
+        /// <summary>
+        /// �ړI�̍��v�s��DataGridView��Index��Ԃ�
+        /// </summary>
+        /// <param name="CodeCol">�R�[�h��ԍ�</param>
+        /// <param name="Code">�R�[�h</param>
+        /// <param name="RowType">�����Ώۍ��v�s</param>
+        /// <returns></returns>
+        private int SearchRowIndex(int CodeCol, int Code, GoukeiRows RowType, int SeqNo = 0, int LineCode = 0, DataRowState NotRowState = DataRowState.Unchanged)
+        {
+            DataGridView dgv = getShowingView();
+            int type = (int)RowType;
+            int Result = 0;
+            DataGridViewRow[] Rows = null;
+            try
+            {
+                if (SeqNo == 0 && LineCode == 0)
+                {
+                    Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[CodeCol].Value) == Code
+                                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == type).ToArray();
+                }
+                else if (SeqNo != 0)
+                {
+                    Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)CodeCol].Value) == Code
+                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == SeqNo
+                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.LineCount].Value) == LineCode
+                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1).ToArray();
+                }
+
+
+                Result = Rows.Count() == 0 ? -1 : Rows[0].Index;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            return Result;
+        }
+
+        /// <summary>
+        /// DataGridView_CellFormatting
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+
+            try
+            {
+                if (dgv.RowCount == 0)
+                    return;
+
+                if (e.ColumnIndex >= (int)DispColumn.SomuSeikyu && e.ColumnIndex < (int)DispColumn.KyoryokuUmu)
+                {
+
+                    // �}�C�i�X�l�͐�
+                    if (CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value) < 0)
+                    {
+                        dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = Color.Red;
+                    }
+                    else
+                    {
+                        dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
+                    }
+
+                    GoukeiRows TargetRowtype = (GoukeiRows)dgv[(int)DispColumn.RowType, e.RowIndex].Value;
+
+                    if (!(TargetRowtype > GoukeiRows.���v && e.ColumnIndex != (int)DispColumn.SomuSeikyu && e.ColumnIndex != (int)DispColumn.KojiSeikyu))
+                    {
+                        dgv[e.ColumnIndex, e.RowIndex].Value = CommonMotions.cnvInt(dgv[e.ColumnIndex, e.RowIndex].Value).ToString("#,0");
+                    }
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// ��ʍ��ڂ̃`�F�b�N
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            try
+            {
+                DataGridView dgv = getShowingView();
+
+                // �K�v�s���o �Ǝ҃R�[�h�A�A�ԁA�s�ԍ�����
+                DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                    && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                         .OrderBy(x => x.Cells[m_Company_Column].Value)
+                                                                         .ThenBy(x => x.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                                         .ThenBy(x => x.Cells[(int)DispColumn.LineCount].Value)
+                                                                         .ToArray();
+
+                foreach(DataGridViewRow r in Rows)
+                {
+                    CommonMotions.chgBackColor(r.Cells[m_GenbaNM_Column], true);
+                    if (CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value) == 0
+                        &&
+                        ((CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSeikyu].Value) != 0
+                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiNebiki].Value) != 0
+                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSousai].Value) != 0
+                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKosoku].Value) != 0
+                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKanamono].Value) != 0
+                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSannhaiZei].Value) != 0
+                        || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KyoryokuUmu].Value) != -1)
+                    || r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray))
+                    {
+                        CommonMotions.chgBackColor(r.Cells[m_GenbaNM_Column], false);
+                        MessageBox.Show("���ꂪ�I������Ă��܂���B", "�f�[�^�m�F", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                        bRet = false;
+                    }
+
+                }
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// �f�[�^�o�^
+        /// </summary>
+        private bool DataEntry()
+        {
+
+            IOBillingData IoBd = new IOBillingData();
+            IOBillingDataDetail IoBdD = new IOBillingDataDetail();
+            IOPaymentDataDetail IoPdD = new IOPaymentDataDetail();
+            IOPaymentApprovalInfo IoPaI = new IOPaymentApprovalInfo();
+            IOBillingPaymentSummary IoBps = new IOBillingPaymentSummary();
+
+
+            DataGridView dgv = getShowingView();
+
+            List<BillingData> BdList;
+            List<BillingDataDetail> BdDList;
+            List<PaymentDataDetail> PdDList;
+            List<PaymentApprovalInfo> PaIList;
+            List<BillingPaymentSummary> BpsList = new List<BillingPaymentSummary>();
+
+            BillingData BdWork = new BillingData();
+            BillingDataDetail BdDWork;
+            PaymentDataDetail PdDWork;
+            PaymentApprovalInfo PaIWork;
+            BillingPaymentSummary BpsWork = new BillingPaymentSummary();
+
+            int iCompanyCode = 0, iSeqNo = 0, iLineCount = 0;
+            int iTantoShoninCount = 0;
+            bool bBdData = false;
+            bool bDeleteData = false;
+            bool bMakeBpsData = false;
+            bool bDeleteBpsData = false;
+
+            string strBdWhere = "";
+            string strBdDWhere = "";
+            string strPdDWhere = "";
+            string strPaIWhere = "";
+            string strBpsWhere = "";
+
+            try
+            {
+
+                //�@�폜�Ώۂ̋Ǝ҃R�[�h�A�A�Ԃ̃f�[�^�̒��̂����ꂩ�����҂ɂ���ĕύX����Ă��邩�`�F�b�N
+                var rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                    && (DataRowState)x.Cells[(int)DispColumn.RowState].Value == DataRowState.Deleted)
+                                                           .GroupBy(c => new
+                                                           {
+                                                               CompanyCode = CommonMotions.cnvInt(c.Cells[m_Company_Column].Value),
+                                                               SeqNo = CommonMotions.cnvInt(c.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                           })
+                                                           .ToArray();
+
+                BdDList = new List<BillingDataDetail>();
+                if (rows.Count() != 0)
+                {
+                    foreach (var r in rows)
+                    {
+                        string strWhere = string.Format(" Where CompanyCode = {0} and TargetDate = {1} and SeqNo = {2} order by CompanyCode,SeqNo,LineCount", r.Key.CompanyCode, m_Select_TargetDate, r.Key.SeqNo);
+                        if (!IoBdD.SelectAction(strWhere, ref BdDList))
+                        {
+                            MessageBox.Show("�o�^�m�F�Ɏ��s���܂����B", "�o�^�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return false;
+                        }
+                        if (BdDList.Count != 0)
+                        {
+                            foreach (BillingDataDetail listRow in BdDList)
+                            {
+                                DataGridViewRow[] checkRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                    && (DataRowState)x.Cells[(int)DispColumn.RowState].Value == DataRowState.Modified
+                                                    && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == listRow.CompanyCode
+                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == listRow.SeqNo
+                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.LineCount].Value) == listRow.LineCount)
+                                                    .ToArray();
+                                if (checkRow.Count() != 0 && listRow.UpdateDate != CommonMotions.cnvDate(checkRow[0].Cells[(int)DispColumn.UpdateDate].Value))
+                                {
+                                    MessageBox.Show("���̃��[�U�[�ɂ���čX�V����Ă��܂��B�f�[�^���ĕ\�����ĉ������B", "�o�^�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                    return false;
+
+                                }
+                            }
+                        }
+                    }
+                    // �폜�������s�t���O
+                    bDeleteData = true;
+                }
+
+
+                int TargetDate = m_Select_TargetDate;
+
+                IoBd.connect();
+                IoBd.beginTran();
+
+                IoBdD.connect();
+                IoBdD.beginTran();
+
+                IoPdD.connect();
+                IoPdD.beginTran();
+
+                IoPaI.connect();
+                IoPaI.beginTran();
+
+                IoBps.connect();
+                IoBps.beginTran();
+
+                try
+                {
+                    // �폜
+                    if (bDeleteData == true)
+                    {
+                        foreach (var r in rows)
+                        {
+                            // �폜�@�K�v�s���o�i�폜���K�v�ȋƎҁA�A�Ԃ�S�č폜�A�K�v�ȍs�̍s�ԍ���U��Ȃ����j
+                            DataGridViewRow[] DeleteRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                                    && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == r.Key.CompanyCode
+                                                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == r.Key.SeqNo)
+                                                                                           .OrderBy(y => CommonMotions.cnvInt(y.Cells[m_Company_Column].Value))
+                                                                                           .ThenBy(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.GroupSeqNo].Value))
+                                                                                           .ThenBy(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.LineCount].Value))
+                                                                                           .ToArray();
+                            iCompanyCode = 0;
+                            iSeqNo = 0;
+                            iLineCount = 0;
+                            int iNewLineCount = 1;
+                            foreach (DataGridViewRow delr in DeleteRows)
+                            {
+                                if (iCompanyCode == 0 || iSeqNo == 0)
+                                {
+                                    iCompanyCode = CommonMotions.cnvInt(delr.Cells[m_Company_Column].Value);
+                                    iSeqNo = CommonMotions.cnvInt(delr.Cells[(int)DispColumn.GroupSeqNo].Value);
+
+                                    // �Ɩ������f�[�^
+                                    // ���b�N
+                                    if (!IoBd.RowLock(iCompanyCode, TargetDate, CommonMotions.cnvInt(delr.Cells[(int)DispColumn.GroupSeqNo].Value), false))
+                                    {
+                                        throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                                    }
+
+                                    // �폜�i�Ɩ������f�[�^�j
+                                    strBdWhere = IoBd.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo);
+                                    if (!IoBd.DeleteAction(strBdWhere, false))
+                                    {
+                                        throw new Exception("�폜�Ɏ��s���܂����B");
+                                    }
+                                }
+
+                                if (iLineCount != CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value))
+                                {
+                                    // �ǉ��s�ȊO���폜����
+                                    if ((DataRowState)delr.Cells[(int)DispColumn.RowState].Value != DataRowState.Added)
+                                    {
+                                        // �Ɩ����׃f�[�^
+                                        // ���b�N
+                                        if (!IoBdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
+                                        {
+                                            throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                                        }
+
+                                        // �f�[�^�X�V
+                                        strBdDWhere = IoBdD.CreatePrimarykeyString(iCompanyCode, TargetDate, iSeqNo, CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value));
+                                        if (!IoBdD.DeleteAction(strBdDWhere, false))
+                                        {
+                                            throw new Exception("�X�V�Ɏ��s���܂����B");
+                                        }
+
+                                        // �x�����׃f�[�^
+                                        strPdDWhere = IoPdD.CreatePrimarykeyString(CommonMotions.cnvInt(iCompanyCode), TargetDate, iSeqNo, iLineCount);
+                                        PdDList = new List<PaymentDataDetail>();
+
+                                        // �f�[�^�m�F
+                                        if (!IoPdD.SelectAction(strPdDWhere, ref PdDList, false))
+                                        {
+                                            throw new Exception("�o�^�m�F�Ɏ��s���܂����B");
+                                        }
+                                        if (PdDList.Count != 0)
+                                        {
+                                            // ���b�N
+                                            if (!IoPdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
+                                            {
+                                                throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                                            }
+
+                                            // �f�[�^�X�V
+                                            if (!IoPdD.DeleteAction(strPdDWhere, false))
+                                            {
+                                                throw new Exception("�X�V�Ɏ��s���܂����B");
+                                            }
+                                        }
+                                    }
+                                    iLineCount = CommonMotions.cnvInt(delr.Cells[(int)DispColumn.LineCount].Value);
+                                }
+
+                                // �s�ԍ���U��Ȃ���
+                                if ((DataRowState)delr.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                {
+                                    delr.Cells[(int)DispColumn.LineCount].Value = iNewLineCount;
+                                    iNewLineCount++;
+                                }
+                            }
+                        }
+                    }
+
+                    // �K�v�s���o �Ǝ҃R�[�h�A�A�ԁA�s�ԍ�����
+                    DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                        && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                             .OrderBy(x => x.Cells[m_Company_Column].Value)
+                                                                             .ThenBy(x => x.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                                             .ThenBy(x => x.Cells[(int)DispColumn.LineCount].Value)
+                                                                             .ToArray();
+
+                    iCompanyCode = 0;
+                    iSeqNo = 0;
+                    iLineCount = 0;
+
+                    foreach (DataGridViewRow r in Rows)
+                    {
+                        // �����͍s�͏������Ȃ�
+                        if (CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuSeikyu].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuKosoku].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuKanamono].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuSannhaiZei].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSeikyu].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKosoku].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKanamono].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSannhaiZei].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiNebiki].Value) == 0 &&
+                            CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSousai].Value) == 0)
+                        {
+                            continue;
+                        }
+
+
+                        // �Ǝ҃R�[�h�A�܂��͘A�Ԃ��قȂ�ꍇ
+                        if (iCompanyCode != CommonMotions.cnvInt(r.Cells[m_Company_Column].Value) || iSeqNo != CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value))
+                        {
+
+                            if (bBdData == true)
+                            {
+                                int lSoumuBillGoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
+                                                                                                && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iSeqNo)
+                                                                                       .Sum(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.SomuSeikyu].Value));
+                                // �f�[�^�̒l�ƃO���b�h�r���[�̒l���`�F�b�N
+                                if (BdWork.BillPrice != lSoumuBillGoukei)
+                                {
+                                    // ���b�N
+                                    if (!IoBd.RowLock(iCompanyCode, TargetDate, iSeqNo, false))
+                                    {
+                                        throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                                    }
+                                    BdWork.BillPrice = lSoumuBillGoukei;
+                                    // �X�V�i�Ɩ������f�[�^�j
+                                    if (!IoBd.UpdateAction(strBdWhere, BdWork, false))
+                                    {
+                                        throw new Exception("�X�V�Ɏ��s���܂����B");
+                                    }
+                                }
+                            }
+
+                            // �ƎҐ����f�[�^
+                            bBdData = false;
+                            strBdWhere = IoBd.CreatePrimarykeyString(CommonMotions.cnvInt(r.Cells[m_Company_Column].Value), TargetDate, CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value));
+                            BdList = new List<BillingData>();
+
+                            // �f�[�^�m�F
+                            if (!IoBd.SelectAction(strBdWhere, ref BdList, false))
+                            {
+                                throw new Exception("�o�^�m�F�Ɏ��s���܂����B");
+                            }
+
+                            BdWork = new BillingData();
+
+                            // �V�K�i�Ɩ������f�[�^�j
+                            if (BdList.Count == 0)
+                            {
+                                BdWork.CompanyCode = CommonMotions.cnvInt(r.Cells[m_Company_Column].Value);
+                                BdWork.TargetDate = TargetDate;
+                                BdWork.SeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
+                                BdWork.BillPrice = GetSeqGoukei(dgv, BdWork.CompanyCode, BdWork.SeqNo, DispColumn.SomuSeikyu);
+
+                                BdList.Clear();
+                                BdList.Add(BdWork);
+
+                                if (!IoBd.InsertAction(BdList, false))
+                                {
+                                    throw new Exception("�X�V�Ɏ��s���܂����B");
+                                }
+                            }
+                            else
+                            {
+                                bBdData = true;
+                                BdWork.BillPrice = BdList[0].BillPrice;
+                            }
+
+
+                            // �Ǝ҃R�[�h���ς�鎞�̂�
+                            if (iCompanyCode != CommonMotions.cnvInt(r.Cells[m_Company_Column].Value))
+                            {
+                                // �ƎҐ����x���T�}���[�f�[�^-----------------------------------------------
+                                if (bMakeBpsData == true)
+                                {
+                                    BillingPaymentSummary_DataEntry(dgv, iCompanyCode, bDeleteBpsData, iTantoShoninCount, IoBps, BpsList, BpsWork, strBpsWhere);
+                                }
+                                bMakeBpsData = false;
+                                bDeleteBpsData = false;
+                                iTantoShoninCount = 0;
+
+                            }
+
+                            iCompanyCode = CommonMotions.cnvInt(r.Cells[m_Company_Column].Value);
+                            iSeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
+                        }
+
+
+                        // �ƎҐ������׃f�[�^--------------------------------------------------------------
+                        iLineCount = CommonMotions.cnvInt(r.Cells[(int)DispColumn.LineCount].Value);
+                        strBdDWhere = IoBdD.CreatePrimarykeyString(CommonMotions.cnvInt(r.Cells[m_Company_Column].Value), TargetDate, CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value), iLineCount);
+                        BdDList = new List<BillingDataDetail>();
+
+                        // �f�[�^�m�F
+                        if (!IoBdD.SelectAction(strBdDWhere, ref BdDList, false))
+                        {
+                            throw new Exception("�o�^�m�F�Ɏ��s���܂����B");
+                        }
+
+                        BdDWork = new BillingDataDetail();
+
+                        // �V�K�i�Ɩ��������׃f�[�^�j
+                        if (BdDList.Count == 0)
+                        {
+
+                            BdDWork.CompanyCode = CommonMotions.cnvInt(r.Cells[m_Company_Column].Value);
+                            BdDWork.TargetDate = TargetDate;
+                            BdDWork.SeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
+                            BdDWork.LineCount = iLineCount;
+
+                            BdDWork.ConstructionCode = CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value);
+                            string sName = CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].Value);
+                            BdDWork.FieldName = sName != "" ? sName : CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].ToolTipText);
+                            BdDWork.BillPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuSeikyu].Value);
+                            BdDWork.HighwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuKosoku].Value);
+                            BdDWork.HardwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuKanamono].Value);
+                            BdDWork.IndsWasteTax = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuSannhaiZei].Value);
+                            BdDWork.Note = CommonMotions.cnvString(r.Cells[(int)DispColumn.Bikou].Value);
+
+                            BdDList.Clear();
+                            BdDList.Add(BdDWork);
+
+                            if (!IoBdD.InsertAction(BdDList, false))
+                            {
+                                throw new Exception("�X�V�Ɏ��s���܂����B");
+                            }
+
+                        }
+                        else
+                        {
+                            // �X�V�i�Ɩ��������׃f�[�^�j
+                            BdDWork.ConstructionCode = CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value);
+                            string sName = CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].Value);
+                            BdDWork.FieldName = sName != "" ? sName : CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].ToolTipText);
+                            BdDWork.BillPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuSeikyu].Value);
+                            BdDWork.HighwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuKosoku].Value);
+                            BdDWork.HardwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuKanamono].Value);
+                            BdDWork.IndsWasteTax = CommonMotions.cnvLong(r.Cells[(int)DispColumn.SomuSannhaiZei].Value);
+                            BdDWork.Note = CommonMotions.cnvString(r.Cells[(int)DispColumn.Bikou].Value);
+
+                            // ���b�N
+                            if (!IoBdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
+                            {
+                                throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                            }
+
+                            // �f�[�^�X�V
+                            if (!IoBdD.UpdateAction(strBdDWhere, BdDWork, false))
+                            {
+                                throw new Exception("�X�V�Ɏ��s���܂����B");
+                            }
+                        }
+
+
+                        // �x�����׃f�[�^-----------------------------------------------------------------
+                        if ((CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSeikyu].Value) != 0
+                            || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiNebiki].Value) != 0
+                            || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSousai].Value) != 0
+                            || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKosoku].Value) != 0
+                            || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiKanamono].Value) != 0
+                            || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KojiSannhaiZei].Value) != 0
+                            || CommonMotions.cnvInt(r.Cells[(int)DispColumn.KyoryokuUmu].Value) != -1)
+                          || r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray
+                          || CommonMotions.cnvInt(r.Cells[(int)DispColumn.TantoShoninCode].Value) != 0)
+                        {
+                            strPdDWhere = IoPdD.CreatePrimarykeyString(CommonMotions.cnvInt(r.Cells[m_Company_Column].Value), TargetDate, CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value), iLineCount);
+                            PdDList = new List<PaymentDataDetail>();
+
+                            // �f�[�^�m�F
+                            if (!IoPdD.SelectAction(strPdDWhere, ref PdDList, false))
+                            {
+                                throw new Exception("�o�^�m�F�Ɏ��s���܂����B");
+                            }
+
+                            PdDWork = new PaymentDataDetail();
+
+                            // �V�K�i�x�����׃f�[�^�j
+                            if (PdDList.Count == 0)
+                            {
+                                PdDWork.CompanyCode = iCompanyCode;
+                                PdDWork.TargetDate = TargetDate;
+                                PdDWork.SeqNo = iSeqNo;
+                                PdDWork.LineCount = iLineCount;
+
+                                PdDWork.BillPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSeikyu].Value);
+
+                                PdDWork.DiscountPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiNebiki].Value);
+                                PdDWork.OffsetPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSousai].Value);
+                                PdDWork.NextCoPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.JikaiKurikosi].Value);
+
+                                PdDWork.HighwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiKosoku].Value);
+                                PdDWork.HardwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiKanamono].Value);
+                                PdDWork.IndsWasteTax = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSannhaiZei].Value);
+
+
+                                PdDWork.CnstrPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KyoryokuKin].Value);
+                                PdDWork.CnstrPriceExist = CommonMotions.cnvInt(r.Cells[(int)DispColumn.KyoryokuUmu].Value);
+
+                                // �S�����F
+                                if (r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray)
+                                {
+                                    if (r.Cells[(int)DispColumn.TantoDate].Value == null)
+                                    {
+                                        PdDWork.ApprovalPersonCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.TantoShoninCode].Value);
+                                        PdDWork.ApprovalDate = DateTime.Now;
+                                    }
+                                    else
+                                    {
+                                        PdDWork.ApprovalPersonCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.TantoShoninCode].Value);
+                                        PdDWork.ApprovalDate = CommonMotions.cnvDate(r.Cells[(int)DispColumn.TantoDate].Value);
+                                    }
+
+                                }
+                                else
+                                {
+                                    PdDWork.ApprovalPersonCode = 0;
+                                    PdDWork.ApprovalDate = new DateTime(2001, 01, 01);
+                                }
+                                PdDWork.ApprovalEndFlg = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ApprovalEndFlg].Value); // �ŏI���F����K�v
+
+                                PdDList.Clear();
+                                PdDList.Add(PdDWork);
+
+                                if (!IoPdD.InsertAction(PdDList, false))
+                                {
+                                    throw new Exception("�X�V�Ɏ��s���܂����B");
+                                }
+
+                            }
+                            else
+                            {
+                                // �X�V�i�x�����׃f�[�^�j
+                                PdDWork.BillPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSeikyu].Value);
+
+                                PdDWork.DiscountPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiNebiki].Value);
+                                PdDWork.OffsetPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSousai].Value);
+                                PdDWork.NextCoPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.JikaiKurikosi].Value);
+                                PdDWork.HighwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiKosoku].Value);
+                                PdDWork.HardwPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiKanamono].Value);
+                                PdDWork.IndsWasteTax = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KojiSannhaiZei].Value);
+
+                                PdDWork.CnstrPrice = CommonMotions.cnvLong(r.Cells[(int)DispColumn.KyoryokuKin].Value);
+                                PdDWork.CnstrPriceExist = CommonMotions.cnvInt(r.Cells[(int)DispColumn.KyoryokuUmu].Value);
+
+                                // �S�����F
+                                if (r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray)
+                                {
+                                    if (PdDList[0].ApprovalPersonCode != 0)
+                                    {
+                                        PdDWork.ApprovalPersonCode = PdDList[0].ApprovalPersonCode;
+                                        PdDWork.ApprovalDate = PdDList[0].ApprovalDate;
+                                    }
+                                    else
+                                    {
+                                        PdDWork.ApprovalPersonCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.TantoShoninCode].Value);
+                                        PdDWork.ApprovalDate = DateTime.Now;
+                                    }
+                                }
+                                else
+                                {
+                                    PdDWork.ApprovalPersonCode = 0;
+                                    PdDWork.ApprovalDate = new DateTime(2001, 01, 01);
+                                }
+                                PdDWork.ApprovalEndFlg = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ApprovalEndFlg].Value); //�ŏI���F
+
+
+                                // ���b�N
+                                if (!IoPdD.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, false))
+                                {
+                                    throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                                }
+
+                                // �f�[�^�X�V
+                                if (!IoPdD.UpdateAction(strPdDWhere, PdDWork, false))
+                                {
+                                    throw new Exception("�X�V�Ɏ��s���܂����B");
+                                }
+
+                            }
+
+                        }
+
+                        // �x�����F���f�[�^-----------------------------------------------------------------
+                        string tantoDate = CommonMotions.cnvString(r.Cells[(int)DispColumn.TantoDate].Value);
+                        if ((r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor != Color.Gray)
+                        || (tantoDate != "" && r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor == Color.Gray))
+                        {
+                            // �ƎҐ����x���T�}���[�f�[�^����
+                            bMakeBpsData = true;
+
+                            for (int iShoninColumn = (int)DispColumn.Shonin1Code; iShoninColumn < (int)DispColumn.Bikou; iShoninColumn += 5)
+                            {
+                                // �ݒ肳��Ă��Ȃ����F���͖���
+                                if (CommonMotions.cnvInt(r.Cells[iShoninColumn + 4].Value) == 0)
+                                    continue;
+
+                                // �f�[�^�m�F
+                                strPaIWhere = IoPaI.CreatePrimarykeyString(iCompanyCode, m_Select_TargetDate, iSeqNo, iLineCount, CommonMotions.cnvInt(r.Cells[iShoninColumn + 4].Value));
+                                PaIList = new List<PaymentApprovalInfo>();
+                                if (!IoPaI.SelectAction(strPaIWhere, ref PaIList, false))
+                                {
+                                    throw new Exception("�o�^�m�F�Ɏ��s���܂����B");
+                                }
+
+                                PaIWork = new PaymentApprovalInfo();
+                                // �V�K�i�x�����F���f�[�^�j
+                                if (PaIList.Count == 0)
+                                {
+                                    PaIWork.CompanyCode = iCompanyCode;
+                                    PaIWork.TargetDate = TargetDate;
+                                    PaIWork.SeqNo = iSeqNo;
+                                    PaIWork.LineCount = iLineCount;
+                                    PaIWork.ApprovalNo = CommonMotions.cnvInt(r.Cells[iShoninColumn + 4].Value);
+                                    PaIWork.ApprovalPerson = CommonMotions.cnvInt(r.Cells[iShoninColumn].Value);
+                                    PaIWork.ApprovalPersonName = CommonMotions.cnvString(r.Cells[iShoninColumn + 1].Value);
+                                    PaIWork.ApprovalAuthority = CommonMotions.cnvInt(r.Cells[iShoninColumn + 3].Value);
+
+                                    if (r.Cells[iShoninColumn + 1].Style.ForeColor != Color.Gray)
+                                    {
+                                        PaIWork.ApprovalDate = DateTime.Now.Date;
+                                    }
+                                    else
+                                    {
+                                        PaIWork.ApprovalDate = new DateTime(2001, 01, 01);
+                                    }
+
+                                    PaIList.Clear();
+                                    PaIList.Add(PaIWork);
+
+                                    if (!IoPaI.InsertAction(PaIList, false))
+                                    {
+                                        throw new Exception("�X�V�Ɏ��s���܂����B");
+                                    }
+
+                                    // �O���b�h���׃f�[�^���̒S�����F�����Z
+                                    iTantoShoninCount += 1;
+                                }
+                                else
+                                {
+                                    // �S����ON�@���@�S����OFF�̓f�[�^�������K�v������
+                                    if (tantoDate != "" && r.Cells[(int)DispColumn.TantoShonin].Style.ForeColor == Color.Gray)
+                                    {
+                                        // �ƎҐ����x���T�}���[�f�[�^�폜���
+                                        bDeleteBpsData = true;
+
+                                        // ���b�N
+                                        if (!IoPaI.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, PaIList[0].ApprovalNo, false))
+                                        {
+                                            throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                                        }
+
+                                        // �f�[�^�X�V
+                                        if (!IoPaI.DeleteAction(strPaIWhere, false))
+                                        {
+                                            throw new Exception("�X�V�Ɏ��s���܂����B");
+                                        }
+                                    }
+                                    else
+                                    {
+                                        PaIWork.ApprovalPerson = CommonMotions.cnvInt(r.Cells[iShoninColumn].Value);
+                                        PaIWork.ApprovalPersonName = CommonMotions.cnvString(r.Cells[iShoninColumn + 1].Value);
+                                        PaIWork.ApprovalAuthority = CommonMotions.cnvInt(r.Cells[iShoninColumn + 3].Value);
+
+                                        if (r.Cells[iShoninColumn + 1].Style.ForeColor != Color.Gray)
+                                        {
+                                            DateTime dtDate = CommonMotions.cnvDate(r.Cells[iShoninColumn + 2].Value);
+                                            string sDate = dtDate.ToString("yyyy/MM/dd");
+                                            if (sDate != "0001/01/01" && sDate != "2001/01/01")
+                                            {
+                                                PaIWork.ApprovalDate = CommonMotions.cnvDate(sDate);
+                                            }
+                                            else
+                                            {
+                                                PaIWork.ApprovalDate = DateTime.Now.Date;
+                                            }
+                                        }
+                                        else
+                                        {
+                                            PaIWork.ApprovalDate = new DateTime(2001, 01, 01);
+                                        }
+
+                                        // ���b�N
+                                        if (!IoPaI.RowLock(iCompanyCode, TargetDate, iSeqNo, iLineCount, PaIList[0].ApprovalNo, false))
+                                        {
+                                            throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                                        }
+
+                                        // �f�[�^�X�V
+                                        if (!IoPaI.UpdateAction(strPaIWhere, PaIWork, false))
+                                        {
+                                            throw new Exception("�X�V�Ɏ��s���܂����B");
+                                        }
+
+                                        // �O���b�h���׃f�[�^���̒S�����F�����Z
+                                        iTantoShoninCount += 1;
+
+                                    }
+
+                                }
+                            }
+
+                        }
+
+                    }
+
+                    // �X�V�i�Ɩ������f�[�^�j
+                    if (bBdData == true)
+                    {
+                        int lSoumuBillGoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
+                                                                                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iSeqNo)
+                                                                               .Sum(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.SomuSeikyu].Value));
+                        // �f�[�^�̒l�ƃO���b�h�r���[�̒l���`�F�b�N
+                        if (BdWork.BillPrice != lSoumuBillGoukei)
+                        {
+                            // ���b�N
+                            if (!IoBd.RowLock(iCompanyCode, TargetDate, iSeqNo, false))
+                            {
+                                throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                            }
+
+                            // �f�[�^�o�^
+                            BdWork.BillPrice = lSoumuBillGoukei;
+                            if (!IoBd.UpdateAction(strBdWhere, BdWork, false))
+                            {
+                                throw new Exception("�X�V�Ɏ��s���܂����B");
+                            }
+                        }
+                    }
+
+                    // �ƎҐ����x���T�}���[�f�[�^
+                    if (bMakeBpsData == true)
+                    {
+                        BillingPaymentSummary_DataEntry(dgv, iCompanyCode, bDeleteBpsData, iTantoShoninCount, IoBps, BpsList, BpsWork, strBpsWhere);
+                    }
+
+                }
+                catch (Exception ex)
+                {
+                    IoBd.rollback();
+                    IoBdD.rollback();
+                    IoPdD.rollback();
+                    IoPaI.rollback();
+                    IoBps.rollback();
+                    MessageBox.Show(ex.Message, "�o�^�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+
+                IoBd.commit();
+                IoBdD.commit();
+                IoPdD.commit();
+                IoPaI.commit();
+                IoBps.commit();
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoBd.close();
+                IoBd = null;
+                IoBdD.close();
+                IoBdD = null;
+                IoPdD.close();
+                IoPdD = null;
+                IoPaI.close();
+                IoPaI = null;
+                IoBps.close();
+                IoBps = null;
+            }
+
+        }
+
+        /// <summary>
+        /// BillingPaymentSummary_DataEntry
+        /// </summary>
+        /// <param name="dgv"></param>
+        /// <param name="iCompanyCode"></param>
+        /// <param name="bDeleteBpsData"></param>
+        /// <param name="iTantoShoninCount"></param>
+        /// <param name="IoBps"></param>
+        /// <param name="BpsList"></param>
+        /// <param name="BpsWork"></param>
+        /// <param name="strBpsWhere"></param>
+        private void BillingPaymentSummary_DataEntry(DataGridView dgv, int iCompanyCode, bool bDeleteBpsData, int iTantoShoninCount,
+                                IOBillingPaymentSummary IoBps, List<BillingPaymentSummary> BpsList, BillingPaymentSummary BpsWork, string strBpsWhere)
+        {
+            // �ƎҐ����x���T�}���[�f�[�^-----------------------------------------------
+            for (int ChargePKind = 0; ChargePKind < 2; ChargePKind++)
+            {
+                strBpsWhere = IoBps.CreatePrimarykeyString(iCompanyCode, m_Select_TargetDate, ChargePKind);
+                BpsList = new List<BillingPaymentSummary>();
+
+                // �f�[�^�m�F
+                if (!IoBps.SelectAction(strBpsWhere, ref BpsList, false))
+                {
+                    throw new Exception("�o�^�m�F�Ɏ��s���܂����B");
+                }
+
+                BpsWork = new BillingPaymentSummary();
+
+                if (BpsList.Count == 0)
+                {
+                    // �V�K�i�ƎҐ����x���T�}���[�f�[�^�j
+                    BpsWork.CompanyCode = iCompanyCode;
+                    BpsWork.TargetDate = m_Select_TargetDate;
+                    BpsWork.ChargePaymentKind = ChargePKind;
+                    GetBpsGoukei(dgv, iCompanyCode, BpsWork.ChargePaymentKind, ref BpsWork);
+
+                    BpsList.Clear();
+                    BpsList.Add(BpsWork);
+
+                    if (!IoBps.InsertAction(BpsList, false))
+                    {
+                        throw new Exception("�X�V�Ɏ��s���܂����B");
+                    }
+
+                }
+                else
+                {
+                    // �X�V
+                    // �폜�Ώ�
+                    if (iTantoShoninCount == 0 && bDeleteBpsData == true)
+                    {
+                        // ���b�N
+                        if (!IoBps.RowLock(iCompanyCode, m_Select_TargetDate, ChargePKind, false))
+                        {
+                            throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                        }
+
+                        // �X�V�i�ƎҐ����x���T�}���[�f�[�^�j
+                        if (!IoBps.DeleteAction(strBpsWhere, false))
+                        {
+                            throw new Exception("�X�V�Ɏ��s���܂����B");
+                        }
+                    }
+                    else
+                    {
+                        // �l�ݒ�
+                        GetBpsGoukei(dgv, iCompanyCode, BpsList[0].ChargePaymentKind, ref BpsWork);
+
+                        // ���b�N
+                        if (!IoBps.RowLock(iCompanyCode, m_Select_TargetDate, ChargePKind, false))
+                        {
+                            throw new Exception("���̃��[�U�ŕҏW���̂��߁A�����ł��܂���B");
+                        }
+
+                        // �X�V�i�ƎҐ����x���T�}���[�f�[�^�j
+                        if (!IoBps.UpdateAction(strBpsWhere, BpsWork, false))
+                        {
+                            throw new Exception("�X�V�Ɏ��s���܂����B");
+                        }
+                    }
+                }
+            }
+        }
+
+        /// <summary>
+        /// �Ǝҍ폜
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDeleteCompany_Click(object sender, EventArgs e)
+        {
+            IOPaymentDataDetail IoPdD;
+            DataGridView dgv;
+            ArrayList arData = new ArrayList();
+            string sWhere = "";
+            List<DataGridViewRow> RemovRows = new List<DataGridViewRow>();
+
+            try
+            {
+                dgv = getShowingView();
+
+                IoPdD = new IOPaymentDataDetail();
+
+                // �����擾
+                sWhere = string.Format("where CompanyCode = {0} and TargetDate = {1}", dgv.CurrentRow.Cells[m_Company_Column].Value, m_Select_TargetDate);
+                int Count = IoPdD.DataCount(sWhere);
+                if (Count == -1) return;
+
+                if (Count > 0)
+                {
+                    MessageBox.Show("�H���S���҂����͂��Ă��邽�߁A�폜�ł��܂���B", "�f�[�^�m�F"
+                                    , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                    return;
+                }
+
+                // ���v�s�폜
+                DataGridViewRow[] RowsGoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_Company_Column].Value)
+                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) != 0)
+                                                         .ToArray();
+
+                foreach (DataGridViewRow r in RowsGoukei)
+                {
+                    dgv.Rows.Remove(r);
+                }
+
+                DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_Company_Column].Value)
+                                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0)
+                                                                         .ToArray();
+                foreach (DataGridViewRow r in Rows)
+                {
+                    if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Added)
+                    {
+                        RemovRows.Add(r);
+                    }
+                    else
+                    {
+                        r.Cells[(int)DispColumn.RowState].Value = DataRowState.Deleted;
+                        r.Cells[(int)DispColumn.RowVisible].Value = 0;
+                        r.Visible = false;
+                    }
+                }
+
+                // �V�K�Œǉ������s�͍폜����
+                foreach (DataGridViewRow r in RemovRows)
+                {
+                    dgv.Rows.Remove(r);
+                }
+
+                ResetNo();
+                controlButton_DataCount();                
+
+                m_bChengeAns = true;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoPdD = null;
+            }
+
+        }
+
+        /// <summary>
+        /// �w�荇�v�O���[�v�̍��v�s���폜
+        /// </summary>
+        /// <param name="iGoukeiCode"></param>
+        private void DeleteGoukeiRows(int iGoukeiCode,ref bool Delete)
+        {
+            DataGridView dgv = getShowingView();
+            Delete = false;
+
+            // ���O���[�v���S�Ė����Ȃ����ꍇ�́A���v�\�����폜
+            int cnt = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                            && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == iGoukeiCode)
+                                                    .Count();
+            if (cnt == 0)
+            {
+                // ���v�s�폜
+                DataGridViewRow[] RowsGoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == iGoukeiCode
+                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) != 0)
+                                                            .ToArray();
+
+                foreach (DataGridViewRow r in RowsGoukei)
+                {
+                    dgv.Rows.Remove(r);
+                }
+                Delete = true;
+            }
+
+        }
+
+        /// <summary>
+        /// ����폜
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDeleteProject_Click(object sender, EventArgs e)
+        {
+            IOPaymentDataDetail IoPdD;
+            DataGridView dgv;
+            string sWhere;
+
+            int CurNo = 0;
+            int CurCompanyCode = 0, CurGenbaCode = 0;
+            int CurSeqNo = 0;
+            int CurLineCount = 0;
+            int MakeIndex = 0;
+            long CurSeikyu = 0, CurKousoku = 0, CurKananomo = 0, CurSanhai = 0;
+            bool bDefaultMake = true;
+            int iGoukeiCode = -1;
+            bool bDeleteRow = false;
+
+            try
+            {
+                IoPdD = new IOPaymentDataDetail();
+                List<PaymentDataDetail> PdDList = new List<PaymentDataDetail>();
+                
+                dgv = getShowingView();
+                if (dgv.CurrentRow == null) return;
+
+                // �Y���s�ȊO�͏������Ȃ�
+                if (CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.RowType].Value) != 0)
+                {
+                    return;
+                }
+
+                CurCompanyCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_Company_Column].Value);
+                CurSeqNo = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.GroupSeqNo].Value);
+                    CurNo = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.No].Value);
+                    CurGenbaCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_Genba_Column].Value);
+                    CurLineCount = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.LineCount].Value);
+                    CurSeikyu = CommonMotions.cnvLong(dgv.CurrentRow.Cells[(int)DispColumn.SomuSeikyu].Value);
+                    CurKousoku = CommonMotions.cnvLong(dgv.CurrentRow.Cells[(int)DispColumn.SomuKosoku].Value);
+                    CurKananomo = CommonMotions.cnvLong(dgv.CurrentRow.Cells[(int)DispColumn.SomuKanamono].Value);
+                    CurSanhai = CommonMotions.cnvLong(dgv.CurrentRow.Cells[(int)DispColumn.SomuSannhaiZei].Value);
+
+                iGoukeiCode =  CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_GoukeiCode_Column].Value);
+
+                if(CurGenbaCode==0)
+                {
+                    MessageBox.Show("�s���̌���폜�͂ł��܂���B", "�f�[�^�m�F", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                        return;
+                }
+
+                // �V�K�Œǉ������s�ȊO�𒲍�����
+                if ((DataRowState)dgv.CurrentRow.Cells[(int)DispColumn.RowState].Value != DataRowState.Added)
+                {
+
+                    sWhere = IoPdD.CreatePrimarykeyString(CurCompanyCode, m_Select_TargetDate, CurSeqNo, CurLineCount);
+
+                    if (!IoPdD.SelectAction(sWhere, ref PdDList))
+                    {
+                        MessageBox.Show("�f�[�^�m�F�Ɏ��s���܂���", "����폜", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    //�@�f�[�^�����݂��Ă��遁�H���S���ғ��͗������͂���Ă���
+                    if (PdDList.Count != 0)
+                    {
+                        MessageBox.Show("�H���S���҂����͂��Ă��邽�߁A�폜�ł��܂���B", "�f�[�^�m�F"
+                                        , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                        return;
+                    }
+
+                }
+
+                // ���Ǝ҂Ŋ��ɓo�^����Ă���f�[�^��������΁A�s�폜
+                if ((DataRowState)dgv.CurrentRow.Cells[(int)DispColumn.RowState].Value == DataRowState.Added)
+                {
+                    DataGridViewRow[] ExistenceData = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CurCompanyCode
+                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                        && (DataRowState)dgv.CurrentRow.Cells[(int)DispColumn.RowState].Value != DataRowState.Added)
+                        .ToArray();
+                    if (ExistenceData.Count() == 0)
+                    {
+                        bDeleteRow = true;
+                    }
+                }
+
+
+                // �폜�}�[�N
+                dgv.CurrentRow.Cells[(int)DispColumn.RowState].Value = DataRowState.Deleted;
+
+                // �폜��̓��ƎҁA���A�Ԃ̏�Ԃ𒲍�
+                DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CurCompanyCode
+                                                                                  && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == CurSeqNo
+                                                                                  && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                                  && CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == 0)
+                                                                         .OrderBy(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.LineCount]))
+                                                                         .ToArray();
+                if (Rows.Count() == 0)
+                {
+                    if (m_viewTarget == 0)
+                    {
+                        MakeIndex = dgv.CurrentRow.Index + 1;
+                    }
+                    else
+                    {
+                        DataGridViewRow[] PlusRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CurCompanyCode
+                                                                                          && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                                          && CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == 0)
+                                                                                 .ToArray();
+                        if (PlusRow.Count() != 0)
+                        {
+                            MakeIndex = PlusRow[0].Index + 1;
+                        }
+                        else
+                        {
+                            MakeIndex = 0;
+                        }
+
+                    }
+                }
+                else
+                {
+                    // �폜�s�̋��z���Z
+                    foreach (DataGridViewRow work in Rows)
+                    {
+                        // �s���s�ɉ��Z
+                        if (CommonMotions.cnvInt(work.Cells[m_Genba_Column].Value) == 0)
+                        {
+                            work.Cells[(int)DispColumn.SomuSeikyu].Value = CommonMotions.cnvLong(work.Cells[(int)DispColumn.SomuSeikyu].Value) + CurSeikyu;
+                            work.Cells[(int)DispColumn.SomuKosoku].Value = CommonMotions.cnvLong(work.Cells[(int)DispColumn.SomuKosoku].Value) + CurKousoku;
+                            work.Cells[(int)DispColumn.SomuKanamono].Value = CommonMotions.cnvLong(work.Cells[(int)DispColumn.SomuKanamono].Value) + CurKananomo;
+                            work.Cells[(int)DispColumn.SomuSannhaiZei].Value = CommonMotions.cnvLong(work.Cells[(int)DispColumn.SomuSannhaiZei].Value) + CurSanhai;
+
+                            iGoukeiCode = CommonMotions.cnvInt(work.Cells[m_GoukeiCode_Column].Value);
+
+                            // ���v�l�Z�o
+                            setGoukei_DataDisp(dgv, iGoukeiCode);
+
+                            bDefaultMake = false;
+                        }
+                        MakeIndex = work.Index + 1;
+                    }
+                }
+
+
+                // �폜�Ώۂ��s������łȂ���΁A����s���ŐV�K�s�ǉ�
+                if (bDefaultMake == true && CurGenbaCode != 0)
+                {
+                    MakeNewRow(CurCompanyCode, CommonMotions.cnvString(dgv.CurrentRow.Cells[m_CompanyNM_Column].ToolTipText), 0, CurNo, ref MakeIndex, CurSeqNo, MakeIndex,"�s��");
+                    dgv.Rows[MakeIndex].Cells[m_CompanyNM_Column].ToolTipText = CommonMotions.cnvString(dgv.CurrentRow.Cells[m_CompanyNM_Column].ToolTipText); 
+                    dgv.Rows[MakeIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.CompanyDispOrder].Value);
+                    dgv.Rows[MakeIndex].Cells[m_GenbaNM_Column].ToolTipText = "�s��";
+                    dgv.Rows[MakeIndex].Cells[(int)DispColumn.RowType].Value = 0;
+                    dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuSeikyu].Value = CurSeikyu;
+                    dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuKosoku].Value = CurKousoku;
+                    dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuKanamono].Value = CurKananomo;
+                    dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuSannhaiZei].Value = CurSanhai;
+
+                    iGoukeiCode = CommonMotions.cnvInt(dgv.Rows[MakeIndex].Cells[m_GoukeiCode_Column].Value);
+
+                    if (m_viewTarget == 1)
+                    {
+                        DataGridViewRow[] SameGenba = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == 0
+                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0)
+                                            .ToArray();
+
+                        //���ɕs�����Ȃ���΍��v�s�ǉ�(���ǉ������s���ȊO)
+                        if (SameGenba.Count() == 1)
+                        { 
+                            MakeGoukeiGyo(dgv, iGoukeiCode, CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.CompanyDispOrder].Value),MakeIndex + 1);
+                        }
+                    }
+                }
+
+
+                // ��\���Ƃ���
+                dgv.CurrentRow.Cells[(int)DispColumn.RowVisible].Value = 0;
+
+                // �����ꂪ�S�Ė����Ȃ����ꍇ�́A���v�\�����폜
+                    int cnt = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_GoukeiCode_Column].Value))
+                                                            .Count();
+                //bool DeleteGoukeiRow = false;
+                if (cnt == 0)
+                {
+                    // ���v�s�폜
+                    DataGridViewRow[] RowsGoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_GoukeiCode_Column].Value)
+                                                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) != 0)
+                                                                 .ToArray();
+
+                    foreach (DataGridViewRow r in RowsGoukei)
+                    {
+                        dgv.Rows.Remove(r);
+                    }
+                    //DeleteGoukeiRow = true;
+                }
+
+                // �폜�Ώۂ��폜
+                if (bDeleteRow == true)
+                {
+                    DataGridViewRow r = dgv.CurrentRow;
+                    dgv.Rows.Remove(r);
+
+                    //if (DeleteGoukeiRow == false)
+                    //{
+                        // ���v�l�Z�o
+                        setGoukei_DataDisp(dgv, iGoukeiCode);
+                    //}
+                    ResetNo();
+                    ResetSeqNo(CurCompanyCode);
+                    controlButton_DataCount();                
+
+                    return;
+
+                }
+
+                dgv.CurrentRow.Visible = false;
+
+                //if (DeleteGoukeiRow == false)
+                //{
+                // ���v�l�Z�o
+                setGoukei_DataDisp(dgv, iGoukeiCode);
+                //}
+
+                ResetNo();
+                controlButton_DataCount();                
+
+                m_bChengeAns = true;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoPdD = null;
+            }
+
+        }
+
+        /// <summary>
+        /// DataGridView_CellDoubleClick
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            DataGridView dgv = (DataGridView)sender;
+
+            if (e.RowIndex < 0) return;
+
+            GoukeiRows TargetRowtype = (GoukeiRows)dgv[(int)DispColumn.RowType, e.RowIndex].Value;
+            int ShoninEndCol = 0;
+
+            //�ŏI���F�Ҋm�F
+            bool bApprovalAuthority = false;
+            for(int i = (int)DispColumn.Shonin1Authority; i <= (int)DispColumn.Shonin10Authority; i+=5)
+            {
+                //�ŏI���F�҃t���O�������Ă��āA�����O�C���҂̏ꍇ�͏��F�����\��
+                if(CommonMotions.cnvInt(dgv[i, e.RowIndex].Value)==1)
+                {
+                    if(CommonMotions.cnvInt(dgv[i-3, e.RowIndex].Value)== CommonMotions.LoginUserData.PersonCode)
+                    {
+                        bApprovalAuthority = true;
+                    }
+                }
+            }
+
+            // �ŏI���F����Ă���s�͔������Ȃ�(�ŏI���F�҂͉\)
+            if (CommonMotions.cnvInt(dgv[(int)DispColumn.ApprovalEndFlg, e.RowIndex].Value) == 1 && dgv.Rows[e.RowIndex].ReadOnly == true && !bApprovalAuthority)
+            {
+                return;
+            }
+
+
+            if (e.ColumnIndex == m_GenbaNM_Column)
+            {
+                // ���ꖼ���͉������Ȃ�
+
+            }
+            else if (e.ColumnIndex >= (int)DispColumn.TantoShonin && e.ColumnIndex < (int)DispColumn.Bikou && TargetRowtype == 0)
+            {
+                // ���F��
+                // ���F�o���Ȃ��l���ɂ͔������Ȃ�
+                if (m_userType == UserType.Eigyo || m_userType == UserType.Soumu || m_userType == UserType.Sonota)
+                {
+                    return;
+                }
+                // ���F�҂��ݒ肳��Ă��Ȃ����ɂ͔������Ȃ�
+                if (CommonMotions.cnvString(dgv[e.ColumnIndex, e.RowIndex].Value) == "")
+                {
+                    return;
+                }
+
+
+                // ���g���ŏI���F�҂��ۂ������i�O��Ƃ��āA���F�R�[�h�A���F���A���F���t�A���F�����A���F���Ԃɕ���ł��鎖�j
+                int iColumn = (int)DispColumn.Shonin1Code;
+                bool bLastShonin = false;
+                while (CommonMotions.cnvInt(dgv.CurrentRow.Cells[iColumn].Value) != 0 || iColumn >= (int)DispColumn.Bikou)
+                {
+                    iColumn += 5;
+                }
+                iColumn -= 5;
+                ShoninEndCol = iColumn + 1;
+                if (CommonMotions.LoginUserData.PersonCode == CommonMotions.cnvInt(dgv.CurrentRow.Cells[iColumn].Value))
+                {
+                    bLastShonin = true;
+                }
+
+                // �ŏI���F�҂ł͂Ȃ��A�����F�\��̐l���ł͂Ȃ��ꍇ
+                if (bLastShonin == false && CommonMotions.cnvInt(dgv[e.ColumnIndex - 1, e.RowIndex].Value) != CommonMotions.LoginUserData.PersonCode)
+                {
+                    return;
+                }
+
+                int GoukeiRowIndex = SearchRowIndex(m_GoukeiCode_Column, CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_GoukeiCode_Column].Value), GoukeiRows.���v);
+                dgv.CurrentRow.Cells[m_GenbaNM_Column].Style.BackColor = Color.Empty;
+                dgv.CurrentRow.Cells[(int)DispColumn.CyuumonshoTouchaku].Style.BackColor = Color.Empty;
+                dgv.CurrentRow.Cells[(int)DispColumn.YosanSho].Style.BackColor = Color.Empty;
+                dgv.Rows[GoukeiRowIndex].DefaultCellStyle.BackColor = Color.Yellow;
+
+                if (dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor != Color.Gray)
+                {
+                    // ���F �� �����F
+                    DateTime dtCheck;
+                    string sCheck = "";
+                    // ��i���F���Ȃ���Ă���ꍇ
+                    if (e.ColumnIndex == (int)DispColumn.TantoShonin)
+                    {
+                        //���F�҂P�����F�w�肳��Ă��邩�m�F
+                        if(CommonMotions.cnvInt(dgv[(int)DispColumn.Shonin1Code, e.RowIndex].Value)!=0 && dgv[(int)DispColumn.Shonin1, e.RowIndex].Style.ForeColor != Color.Gray)
+                        {
+                            return;
+                        }
+
+                        //�㑱�̏��F���Ȃ���Ă��Ȃ����m�F
+                        for (int iCol = ((int)DispColumn.Shonin1Date) ; iCol <= (int)DispColumn.Shonin10Date; iCol += 5)
+                        {
+                            dtCheck = CommonMotions.cnvDate(dgv[iCol, e.RowIndex].Value);
+                            sCheck = dtCheck.ToString("yyyy/MM/dd");
+                            if (sCheck != "0001/01/01" && sCheck != "2001/01/01")
+                            {
+                                return;
+                            }
+                        }
+                        
+                    }
+                    else
+                    {
+                        for (int iCol = (e.ColumnIndex + 1) + 5; iCol <= (int)DispColumn.Shonin10Date; iCol += 5)
+                        {
+                            dtCheck = CommonMotions.cnvDate(dgv[iCol, e.RowIndex].Value);
+                            sCheck = dtCheck.ToString("yyyy/MM/dd");
+                            if (sCheck != "0001/01/01" && sCheck != "2001/01/01")
+                            {
+                                return;
+                            }
+                        }
+                    }
+
+
+                    // �G���[�`�F�b�N
+                    // ��i�̏��F������Ă���ΕύX�͕s�Ƃ���@�������K�v
+                    // �ŏI���F�̏ꍇ
+                    if (e.ColumnIndex == ShoninEndCol)
+                    {
+                        dgv[(int)DispColumn.ApprovalEndFlg, e.RowIndex].Value = 0;
+                    }
+
+
+                    dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = Color.Gray;
+                }
+                else
+                {
+                    // �����F �� ���F
+
+                    // �G���[�`�F�b�N
+                    // �S���ҏ��F���̂�
+                    if (e.ColumnIndex == (int)DispColumn.TantoShonin
+                    || (e.ColumnIndex != (int)DispColumn.TantoShonin && bLastShonin == true))
+                    {
+                        if (CommonMotions.cnvInt(dgv[m_Genba_Column, e.RowIndex].Value) == 0)
+                        {
+                            MessageBox.Show("���ꂪ�ݒ肳��Ă��܂���B", "���F�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            dgv.CurrentRow.Cells[m_GenbaNM_Column].Style.BackColor = Color.Red;
+
+                            return;
+                        }
+                        if (CommonMotions.cnvString(dgv[(int)DispColumn.CyuumonshoTeisyutu, e.RowIndex].Value) == "��"
+                            && CommonMotions.cnvString(dgv[(int)DispColumn.CyuumonshoTouchaku, e.RowIndex].Value) == "�~")
+                        {
+                            MessageBox.Show("���������ԑ�����Ă��܂���B�Ǝ҂ɖ₢���킹�ĉ������B", "���F�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            dgv.CurrentRow.Cells[(int)DispColumn.CyuumonshoTouchaku].Style.BackColor = Color.Red;
+                            return;
+                        }
+                        if (CommonMotions.cnvString(dgv[(int)DispColumn.YosanSho, e.RowIndex].Value) == "�~")
+                        {
+                            MessageBox.Show("�H���\�Z�������F����Ă��܂���B", "���F�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            dgv.CurrentRow.Cells[(int)DispColumn.YosanSho].Style.BackColor = Color.Red;
+                            return;
+                        }
+                    }
+
+                    // �����F�`�F�b�N
+                    if (e.ColumnIndex == (int)DispColumn.Shonin1 || e.ColumnIndex == (int)DispColumn.Shonin2
+                        || e.ColumnIndex == (int)DispColumn.Shonin3 || e.ColumnIndex == (int)DispColumn.Shonin4
+                        || e.ColumnIndex == (int)DispColumn.Shonin5 || e.ColumnIndex == (int)DispColumn.Shonin6
+                        || e.ColumnIndex == (int)DispColumn.Shonin7 || e.ColumnIndex == (int)DispColumn.Shonin8
+                        || e.ColumnIndex == (int)DispColumn.Shonin9 || e.ColumnIndex == (int)DispColumn.Shonin10)
+                    {
+                        // �ŏI���F�҈ȊO
+                        if (bLastShonin == false)
+                        {
+                            string sCheck = "";
+                            DateTime dtCheck;
+                            // �S�����F�܂ޑO�i�̏��F���Ȃ���Ă��Ȃ��ꍇ�i���t���ݒ肳��Ă��Ȃ��j�̓G���[
+                            for (int iCol = (e.ColumnIndex + 1) - 5; iCol >= (int)DispColumn.Shonin1Date; iCol -= 5)
+                            {
+                                dtCheck = CommonMotions.cnvDate(dgv[iCol, e.RowIndex].Value);
+                                sCheck = dtCheck.ToString("yyyy/MM/dd");
+                                if (sCheck == "0001/01/01" || sCheck == "2001/01/01")
+                                {
+                                    MessageBox.Show("���O�̏��F�����{����Ă��Ȃ����߁A���F�ł��܂���B", "���F�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                    return;
+                                }
+                            }
+                            dtCheck = CommonMotions.cnvDate(dgv[(int)DispColumn.TantoDate, e.RowIndex].Value);
+                            sCheck = dtCheck.ToString("yyyy/MM/dd");
+                            if (sCheck == "0001/01/01" || sCheck == "2001/01/01")
+                            {
+                                MessageBox.Show("���O�̏��F�����{����Ă��Ȃ����߁A���F�ł��܂���B", "���F�G���[", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                return;
+                            }
+                        }
+
+
+                        // �����������z���v�ƍH�������̋��z����v���Ȃ��ꍇ�̓G���[
+                        int GoukeiIndex = SearchRowIndex(m_GoukeiCode_Column, CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_GoukeiCode_Column].Value), GoukeiRows.���v);
+                        if (CommonMotions.cnvInt(dgv.Rows[GoukeiIndex].Cells[(int)DispColumn.SomuSeikyu].Value) != CommonMotions.cnvInt(dgv.Rows[GoukeiIndex].Cells[(int)DispColumn.KojiSeikyu].Value))
+                        {
+                            dgv.Rows[GoukeiRowIndex].DefaultCellStyle.BackColor = Color.Red;
+                            if (System.Windows.Forms.DialogResult.No == MessageBox.Show("�������z����v���܂��񂪂��̂܂ܐi�߂Ă�낵���ł����H", "���F�G���[", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation))
+                                return;
+                        }
+
+                        // �ŏI���F�̏ꍇ
+                        if (e.ColumnIndex == ShoninEndCol)
+                        {
+                            dgv[(int)DispColumn.ApprovalEndFlg, e.RowIndex].Value = 1;
+                        }
+
+                    }
+
+                    dgv[e.ColumnIndex, e.RowIndex].Style.ForeColor = SystemColors.ControlText;
+
+                    m_bChengeAns = true;
+                }
+            }
+        }
+
+        /// <summary>
+        /// �A�Ԃ�U��Ȃ����@�����Ǝ҃f�[�^���S�ĐV�K�̏ꍇ�̂�
+        /// </summary>
+        private void ResetSeqNo(int CompanyCode)
+        {
+            try
+            {
+                DataGridView dgv = getShowingView();
+
+                DataGridViewRow[] ExistenceData = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
+                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                        && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Added)
+                        .ToArray();
+
+                if (ExistenceData.Count() == 0)
+                {
+                    int SeqNo = 1;
+
+                    DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == CompanyCode
+                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0)
+                            .ToArray();
+                    int escSeqNo = 0;
+                    int LineCount = 1;
+                    foreach(DataGridViewRow r in Rows)
+                    {
+                        if (r.State != DataGridViewElementStates.None )
+                        {
+                            if ( escSeqNo != CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value))
+                            {
+                                escSeqNo = CommonMotions.cnvInt(r.Cells[(int)DispColumn.GroupSeqNo].Value);
+                                r.Cells[(int)DispColumn.GroupSeqNo].Value = SeqNo;
+                                SeqNo++;
+                                LineCount = 1;
+                            }
+                            r.Cells[(int)DispColumn.LineCount].Value = LineCount;
+                            LineCount++;
+                        }
+                    }
+
+                }
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// No�`���v�P�ʂ̖��̕\�����Z�b�g
+        /// </summary>
+        private void ResetNo()
+        {
+
+            try
+            {
+                DataGridView dgv = getShowingView();
+                int DisporderCol = 0;
+                int iNo, iTop;
+
+                //�Ǝҏ��ł̕t��
+                if (m_viewTarget == 0)
+                {
+                    DisporderCol = (int)DispColumn.CompanyDispOrder;
+
+                    var OrderRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1)
+                                                    .GroupBy(c => new
+                                                    {
+                                                        DispOrder = CommonMotions.cnvInt(c.Cells[DisporderCol].Value),
+                                                        GoukeiCode = CommonMotions.cnvInt(c.Cells[m_GoukeiCode_Column].Value),
+                                                        GoukeiName = CommonMotions.cnvString(c.Cells[m_GoukeiCode_Column + 1].ToolTipText)
+                                                    })
+                                                    .OrderBy(x => x.Key.DispOrder)
+                                                    .ToArray();
+
+                    iNo = 1;
+                    foreach (var k in OrderRows)
+                    {
+                        DataGridViewRow[] GoukeiRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                     && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == k.Key.GoukeiCode)
+                                                          .OrderBy(x => x.Cells[(int)DispColumn.CompanyDispOrder].Value)
+                                                          .ThenBy(x => x.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                          .ThenBy(x => x.Cells[(int)DispColumn.LineCount].Value)
+                                                          .ToArray();
+                        iTop = 1;
+                        foreach (DataGridViewRow r in GoukeiRows)
+                        {
+                            r.Cells[(int)DispColumn.GoukeiSeqNo].Value = iTop;
+                            iTop++;
+                        }
+
+                        DataGridViewRow[] Rows;
+                        if (m_viewTarget == 0)
+                        {
+                            Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                                             && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                             && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == k.Key.GoukeiCode)
+                                                                                    .OrderBy(x => x.Cells[(int)DispColumn.GoukeiSeqNo].RowIndex)
+                                                                                    .ToArray();
+                        }
+                        else
+                        {
+                            Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                                         && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                         && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == k.Key.GoukeiCode)
+                                                                                    .OrderBy(x => x.Cells[m_GoukeiCode_Column].RowIndex)
+                                                                                    .ToArray();
+                        }
+
+                        iTop = 1;
+                        foreach (DataGridViewRow r in Rows)
+                        {
+                            if (iTop == 1)
+                            {
+                                r.Cells[(int)DispColumn.No].Value = iNo;
+                                r.Cells[m_GoukeiCode_Column + 1].Value = k.Key.GoukeiName;
+                                r.Cells[m_GoukeiCode_Column + 1].ToolTipText = k.Key.GoukeiName;
+                            }
+                            else
+                            {
+                                r.Cells[(int)DispColumn.No].Value = "";
+                                r.Cells[m_GoukeiCode_Column + 1].Value = "";
+                                r.Cells[m_GoukeiCode_Column + 1].ToolTipText = k.Key.GoukeiName;
+                            }
+                            iTop++;
+                        }
+                        iNo++;
+                    }
+                }
+                //���ꏇ�ł̕t��
+                else
+                {
+                    DisporderCol = m_GoukeiCode_Column;
+
+                    var OrderRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1)
+                                                    .GroupBy(c => new
+                                                    {
+                                                        DispOrder = CommonMotions.cnvInt(c.Cells[DisporderCol].Value),
+                                                        GoukeiCode = CommonMotions.cnvInt(c.Cells[m_GoukeiCode_Column].Value),
+                                                        GoukeiName = CommonMotions.cnvString(c.Cells[m_GoukeiCode_Column + 1].ToolTipText)
+                                                    }).Select(g => new
+                                                    {
+                                                        DispOrder = g.Key.DispOrder,
+                                                        GoukeiCode = g.Key.GoukeiCode,
+                                                        GoukeiName = g.Key.GoukeiName,
+                                                        MinRowIndex = g.Min(c => CommonMotions.cnvInt(c.Cells[DisporderCol].RowIndex))
+                                                    })
+                                                    .OrderBy(x => x.MinRowIndex)
+                                                    .ToArray();
+
+                    iNo = 1;
+                    foreach (var k in OrderRows)
+                    {
+                        DataGridViewRow[] GoukeiRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                     && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == k.GoukeiCode)
+                                                          .OrderBy(x => x.Cells[(int)DispColumn.CompanyDispOrder].Value)
+                                                          .ThenBy(x => x.Cells[(int)DispColumn.GroupSeqNo].Value)
+                                                          .ThenBy(x => x.Cells[(int)DispColumn.LineCount].Value)
+                                                          .ToArray();
+                        iTop = 1;
+                        foreach (DataGridViewRow r in GoukeiRows)
+                        {
+                            r.Cells[(int)DispColumn.GoukeiSeqNo].Value = iTop;
+                            iTop++;
+                        }
+
+                        DataGridViewRow[] Rows;
+                        if (m_viewTarget == 0)
+                        {
+                            Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                                             && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                             && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == k.GoukeiCode)
+                                                                                    .OrderBy(x => x.Cells[(int)DispColumn.GoukeiSeqNo].RowIndex)
+                                                                                    .ToArray();
+                        }
+                        else
+                        {
+                            Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                                         && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                         && CommonMotions.cnvInt(x.Cells[m_GoukeiCode_Column].Value) == k.GoukeiCode)
+                                                                                    .OrderBy(x => x.Cells[m_GoukeiCode_Column].RowIndex)
+                                                                                    .ToArray();
+                        }
+
+                        iTop = 1;
+                        foreach (DataGridViewRow r in Rows)
+                        {
+                            if (iTop == 1)
+                            {
+                                r.Cells[(int)DispColumn.No].Value = iNo;
+                                r.Cells[m_GoukeiCode_Column + 1].Value = k.GoukeiName;
+                                r.Cells[m_GoukeiCode_Column + 1].ToolTipText = k.GoukeiName;
+                            }
+                            else
+                            {
+                                r.Cells[(int)DispColumn.No].Value = "";
+                                r.Cells[m_GoukeiCode_Column + 1].Value = "";
+                                r.Cells[m_GoukeiCode_Column + 1].ToolTipText = k.GoukeiName;
+                            }
+                            iTop++;
+                        }
+                        iNo++;
+                    }
+                }
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// �Ώی��x�ύX�C�x���g (�\���{�^���ɂ��ĕ\���̂��߁A�C�x���g�ōĕ`�悵�Ȃ�)
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        //private void cmbTargetMonth_SelectedIndexChanged(object sender, EventArgs e)
+        //{
+        //    InitDataLoad();
+        //    DispGridData();
+        //}
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.designer.cs	(revision 51)
@@ -0,0 +1,2299 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmRequestSummaryList
+    {
+        /// <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 dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle58 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle31 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle32 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle34 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle35 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle36 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle37 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle38 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle39 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle40 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle41 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle42 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle43 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle44 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle45 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle46 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle47 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle48 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle49 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle50 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle51 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle52 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle53 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle54 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle55 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle56 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle57 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.btnDataEntry = new System.Windows.Forms.Button();
+            this.btnDeleteProject = new System.Windows.Forms.Button();
+            this.btnDeleteCompany = new System.Windows.Forms.Button();
+            this.btnAddCompany = new System.Windows.Forms.Button();
+            this.btnOther = new System.Windows.Forms.Button();
+            this.btnAddProject = new System.Windows.Forms.Button();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.label10 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.groupBoxEx1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
+            this.btnShowView = new System.Windows.Forms.Button();
+            this.lblPaymentDate = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.rdbProject = new System.Windows.Forms.RadioButton();
+            this.rdbCompany = new System.Windows.Forms.RadioButton();
+            this.cmbTargetMonth = new System.Windows.Forms.ComboBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.dgvCompany = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dgvProject = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column135 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column133 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column71 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column62 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column23 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column33 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column89 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column34 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column99 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column24 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column26 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = 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.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.Column40 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column41 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column43 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.KyouryokuKin_Com = new System.Windows.Forms.DataGridViewComboBoxColumn();
+            this.Column14 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column15 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column16 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column36 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column17 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column66 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column37 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column18 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column65 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column91 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column92 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column38 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column19 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column67 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column93 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column94 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column39 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column22 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column68 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column95 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column96 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column42 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column25 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column69 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column97 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column98 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column44 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column27 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column70 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column101 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column102 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column45 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column28 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column72 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column103 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column104 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column46 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column29 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column73 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column105 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column106 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column47 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column30 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column74 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column107 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column108 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column48 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column31 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column75 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column109 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column110 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column49 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column32 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column76 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column111 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column112 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column20 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column64 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column136 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column134 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column63 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column35 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column90 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column51 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column14 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column15 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column16 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column17 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column18 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column19 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column100 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.KyouryokuKin_Pro = new System.Windows.Forms.DataGridViewComboBoxColumn();
+            this.Project_Column21 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column22 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column23 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column50 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column24 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column78 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column52 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column25 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column79 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column113 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column114 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column53 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column26 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column81 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column115 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column116 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column54 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column27 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column82 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column117 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column118 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column55 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column28 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column83 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column119 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column120 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column56 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column29 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column84 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column121 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column122 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column57 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column30 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column80 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column123 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column124 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column58 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column31 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column85 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column125 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column126 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column59 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column32 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column86 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column127 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column128 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column60 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column33 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column87 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column129 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column130 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column61 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Project_Column34 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column88 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column131 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column132 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column21 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column77 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.panel1.SuspendLayout();
+            this.groupBoxEx1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvCompany)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvProject)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1396, 803);
+            this.btnEnd.Margin = new System.Windows.Forms.Padding(4);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(150, 38);
+            this.btnEnd.TabIndex = 8;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // label1
+            // 
+            this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(504, 12);
+            this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(500, 39);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "請　求　ま　と　め";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnDataEntry
+            // 
+            this.btnDataEntry.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataEntry.BackColor = System.Drawing.Color.DarkOrange;
+            this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataEntry.ForeColor = System.Drawing.Color.Black;
+            this.btnDataEntry.Location = new System.Drawing.Point(1234, 803);
+            this.btnDataEntry.Margin = new System.Windows.Forms.Padding(4);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(154, 38);
+            this.btnDataEntry.TabIndex = 30;
+            this.btnDataEntry.Text = "登　録";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // btnDeleteProject
+            // 
+            this.btnDeleteProject.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnDeleteProject.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.btnDeleteProject.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDeleteProject.ForeColor = System.Drawing.Color.Black;
+            this.btnDeleteProject.Location = new System.Drawing.Point(683, 803);
+            this.btnDeleteProject.Margin = new System.Windows.Forms.Padding(4);
+            this.btnDeleteProject.Name = "btnDeleteProject";
+            this.btnDeleteProject.Size = new System.Drawing.Size(154, 38);
+            this.btnDeleteProject.TabIndex = 51;
+            this.btnDeleteProject.Text = "現場削除";
+            this.btnDeleteProject.UseVisualStyleBackColor = false;
+            this.btnDeleteProject.Click += new System.EventHandler(this.btnDeleteProject_Click);
+            // 
+            // btnDeleteCompany
+            // 
+            this.btnDeleteCompany.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnDeleteCompany.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
+            this.btnDeleteCompany.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDeleteCompany.ForeColor = System.Drawing.Color.Black;
+            this.btnDeleteCompany.Location = new System.Drawing.Point(361, 803);
+            this.btnDeleteCompany.Margin = new System.Windows.Forms.Padding(4);
+            this.btnDeleteCompany.Name = "btnDeleteCompany";
+            this.btnDeleteCompany.Size = new System.Drawing.Size(154, 38);
+            this.btnDeleteCompany.TabIndex = 52;
+            this.btnDeleteCompany.Text = "業者削除";
+            this.btnDeleteCompany.UseVisualStyleBackColor = false;
+            this.btnDeleteCompany.Click += new System.EventHandler(this.btnDeleteCompany_Click);
+            // 
+            // btnAddCompany
+            // 
+            this.btnAddCompany.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnAddCompany.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.btnAddCompany.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAddCompany.ForeColor = System.Drawing.Color.Black;
+            this.btnAddCompany.Location = new System.Drawing.Point(199, 803);
+            this.btnAddCompany.Margin = new System.Windows.Forms.Padding(4);
+            this.btnAddCompany.Name = "btnAddCompany";
+            this.btnAddCompany.Size = new System.Drawing.Size(154, 38);
+            this.btnAddCompany.TabIndex = 53;
+            this.btnAddCompany.Text = "業者追加";
+            this.btnAddCompany.UseVisualStyleBackColor = false;
+            this.btnAddCompany.Click += new System.EventHandler(this.btnAddCompany_Click);
+            // 
+            // btnOther
+            // 
+            this.btnOther.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnOther.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
+            this.btnOther.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOther.ForeColor = System.Drawing.Color.Black;
+            this.btnOther.Location = new System.Drawing.Point(38, 803);
+            this.btnOther.Margin = new System.Windows.Forms.Padding(4);
+            this.btnOther.Name = "btnOther";
+            this.btnOther.Size = new System.Drawing.Size(154, 38);
+            this.btnOther.TabIndex = 54;
+            this.btnOther.Text = "その他画面";
+            this.btnOther.UseVisualStyleBackColor = false;
+            // 
+            // btnAddProject
+            // 
+            this.btnAddProject.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnAddProject.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.btnAddProject.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAddProject.ForeColor = System.Drawing.Color.Black;
+            this.btnAddProject.Location = new System.Drawing.Point(522, 803);
+            this.btnAddProject.Margin = new System.Windows.Forms.Padding(4);
+            this.btnAddProject.Name = "btnAddProject";
+            this.btnAddProject.Size = new System.Drawing.Size(154, 38);
+            this.btnAddProject.TabIndex = 58;
+            this.btnAddProject.Text = "現場追加";
+            this.btnAddProject.UseVisualStyleBackColor = false;
+            this.btnAddProject.Click += new System.EventHandler(this.btnAddProject_Click);
+            // 
+            // panel1
+            // 
+            this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.panel1.Controls.Add(this.label10);
+            this.panel1.Controls.Add(this.label9);
+            this.panel1.Controls.Add(this.label8);
+            this.panel1.Controls.Add(this.label7);
+            this.panel1.Controls.Add(this.label6);
+            this.panel1.Location = new System.Drawing.Point(1133, 12);
+            this.panel1.Margin = new System.Windows.Forms.Padding(0);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(435, 45);
+            this.panel1.TabIndex = 59;
+            // 
+            // label10
+            // 
+            this.label10.AutoSize = true;
+            this.label10.ForeColor = System.Drawing.Color.Yellow;
+            this.label10.Location = new System.Drawing.Point(224, 25);
+            this.label10.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(160, 15);
+            this.label10.TabIndex = 4;
+            this.label10.Text = "：工事担当者が入力";
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.ForeColor = System.Drawing.Color.Yellow;
+            this.label9.Location = new System.Drawing.Point(224, 1);
+            this.label9.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(143, 15);
+            this.label9.TabIndex = 3;
+            this.label9.Text = "：総務部門が入力";
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.BackColor = System.Drawing.Color.SkyBlue;
+            this.label8.Location = new System.Drawing.Point(166, 25);
+            this.label8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label8.MinimumSize = new System.Drawing.Size(50, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(50, 15);
+            this.label8.TabIndex = 2;
+            // 
+            // label7
+            // 
+            this.label7.AutoSize = true;
+            this.label7.BackColor = System.Drawing.Color.Coral;
+            this.label7.Location = new System.Drawing.Point(166, 1);
+            this.label7.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label7.MinimumSize = new System.Drawing.Size(50, 0);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(50, 15);
+            this.label7.TabIndex = 1;
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.ForeColor = System.Drawing.Color.Yellow;
+            this.label6.Location = new System.Drawing.Point(1, 1);
+            this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(126, 15);
+            this.label6.TabIndex = 0;
+            this.label6.Text = "一覧のタイトル";
+            // 
+            // groupBoxEx1
+            // 
+            this.groupBoxEx1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.groupBoxEx1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
+            this.groupBoxEx1.BorderColor = System.Drawing.Color.Black;
+            this.groupBoxEx1.Controls.Add(this.btnShowView);
+            this.groupBoxEx1.Controls.Add(this.lblPaymentDate);
+            this.groupBoxEx1.Controls.Add(this.label5);
+            this.groupBoxEx1.Controls.Add(this.label2);
+            this.groupBoxEx1.Controls.Add(this.rdbProject);
+            this.groupBoxEx1.Controls.Add(this.rdbCompany);
+            this.groupBoxEx1.Controls.Add(this.cmbTargetMonth);
+            this.groupBoxEx1.Controls.Add(this.label3);
+            this.groupBoxEx1.Controls.Add(this.label4);
+            this.groupBoxEx1.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
+            this.groupBoxEx1.Location = new System.Drawing.Point(30, 69);
+            this.groupBoxEx1.Margin = new System.Windows.Forms.Padding(4);
+            this.groupBoxEx1.Name = "groupBoxEx1";
+            this.groupBoxEx1.Padding = new System.Windows.Forms.Padding(4);
+            this.groupBoxEx1.Size = new System.Drawing.Size(1522, 60);
+            this.groupBoxEx1.TabIndex = 56;
+            this.groupBoxEx1.TabStop = false;
+            // 
+            // btnShowView
+            // 
+            this.btnShowView.BackColor = System.Drawing.Color.Blue;
+            this.btnShowView.ForeColor = System.Drawing.Color.White;
+            this.btnShowView.Location = new System.Drawing.Point(1068, 13);
+            this.btnShowView.Margin = new System.Windows.Forms.Padding(4);
+            this.btnShowView.Name = "btnShowView";
+            this.btnShowView.Size = new System.Drawing.Size(150, 34);
+            this.btnShowView.TabIndex = 55;
+            this.btnShowView.Text = "表　示";
+            this.btnShowView.UseVisualStyleBackColor = false;
+            this.btnShowView.Click += new System.EventHandler(this.btnShowView_Click);
+            // 
+            // lblPaymentDate
+            // 
+            this.lblPaymentDate.BackColor = System.Drawing.Color.White;
+            this.lblPaymentDate.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.lblPaymentDate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblPaymentDate.ForeColor = System.Drawing.Color.Black;
+            this.lblPaymentDate.Location = new System.Drawing.Point(502, 16);
+            this.lblPaymentDate.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.lblPaymentDate.Name = "lblPaymentDate";
+            this.lblPaymentDate.Size = new System.Drawing.Size(170, 26);
+            this.lblPaymentDate.TabIndex = 50;
+            this.lblPaymentDate.Text = "2016/12/09";
+            this.lblPaymentDate.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label5
+            // 
+            this.label5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(376, 16);
+            this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(127, 26);
+            this.label5.TabIndex = 49;
+            this.label5.Text = "支払日";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(685, 16);
+            this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(127, 27);
+            this.label2.TabIndex = 47;
+            this.label2.Text = "表示形式";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // rdbProject
+            // 
+            this.rdbProject.AutoSize = true;
+            this.rdbProject.BackColor = System.Drawing.Color.White;
+            this.rdbProject.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.rdbProject.ForeColor = System.Drawing.Color.Black;
+            this.rdbProject.Location = new System.Drawing.Point(936, 19);
+            this.rdbProject.Margin = new System.Windows.Forms.Padding(4);
+            this.rdbProject.Name = "rdbProject";
+            this.rdbProject.Size = new System.Drawing.Size(77, 20);
+            this.rdbProject.TabIndex = 46;
+            this.rdbProject.Text = "現　場";
+            this.rdbProject.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
+            this.rdbProject.UseVisualStyleBackColor = false;
+            // 
+            // rdbCompany
+            // 
+            this.rdbCompany.AutoSize = true;
+            this.rdbCompany.BackColor = System.Drawing.Color.White;
+            this.rdbCompany.Checked = true;
+            this.rdbCompany.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.rdbCompany.ForeColor = System.Drawing.Color.Black;
+            this.rdbCompany.Location = new System.Drawing.Point(826, 19);
+            this.rdbCompany.Margin = new System.Windows.Forms.Padding(4);
+            this.rdbCompany.Name = "rdbCompany";
+            this.rdbCompany.Size = new System.Drawing.Size(77, 20);
+            this.rdbCompany.TabIndex = 45;
+            this.rdbCompany.TabStop = true;
+            this.rdbCompany.Text = "業　者";
+            this.rdbCompany.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+            this.rdbCompany.UseVisualStyleBackColor = false;
+            // 
+            // cmbTargetMonth
+            // 
+            this.cmbTargetMonth.BackColor = System.Drawing.Color.White;
+            this.cmbTargetMonth.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbTargetMonth.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbTargetMonth.FormattingEnabled = true;
+            this.cmbTargetMonth.Location = new System.Drawing.Point(175, 16);
+            this.cmbTargetMonth.Margin = new System.Windows.Forms.Padding(4);
+            this.cmbTargetMonth.Name = "cmbTargetMonth";
+            this.cmbTargetMonth.Size = new System.Drawing.Size(189, 23);
+            this.cmbTargetMonth.TabIndex = 31;
+            // 
+            // label3
+            // 
+            this.label3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(48, 15);
+            this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(127, 26);
+            this.label3.TabIndex = 32;
+            this.label3.Text = "対象月";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.White;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(806, 16);
+            this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(227, 27);
+            this.label4.TabIndex = 48;
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dgvCompany
+            // 
+            this.dgvCompany.AllowUserToAddRows = false;
+            this.dgvCompany.AllowUserToDeleteRows = false;
+            this.dgvCompany.AllowUserToResizeRows = false;
+            this.dgvCompany.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.dgvCompany.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvCompany.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvCompany.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvCompany.ColumnHeadersHeight = 45;
+            this.dgvCompany.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvCompany.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column135,
+            this.Column133,
+            this.Column71,
+            this.Column62,
+            this.Column23,
+            this.Column33,
+            this.Column89,
+            this.Column34,
+            this.Column99,
+            this.Column1,
+            this.Column24,
+            this.Column2,
+            this.Column26,
+            this.Column3,
+            this.Column4,
+            this.Column9,
+            this.Column10,
+            this.Column11,
+            this.Column5,
+            this.Column6,
+            this.Column7,
+            this.Column8,
+            this.Column40,
+            this.Column41,
+            this.Column43,
+            this.Column12,
+            this.Column13,
+            this.KyouryokuKin_Com,
+            this.Column14,
+            this.Column15,
+            this.Column16,
+            this.Column36,
+            this.Column17,
+            this.Column66,
+            this.Column37,
+            this.Column18,
+            this.Column65,
+            this.Column91,
+            this.Column92,
+            this.Column38,
+            this.Column19,
+            this.Column67,
+            this.Column93,
+            this.Column94,
+            this.Column39,
+            this.Column22,
+            this.Column68,
+            this.Column95,
+            this.Column96,
+            this.Column42,
+            this.Column25,
+            this.Column69,
+            this.Column97,
+            this.Column98,
+            this.Column44,
+            this.Column27,
+            this.Column70,
+            this.Column101,
+            this.Column102,
+            this.Column45,
+            this.Column28,
+            this.Column72,
+            this.Column103,
+            this.Column104,
+            this.Column46,
+            this.Column29,
+            this.Column73,
+            this.Column105,
+            this.Column106,
+            this.Column47,
+            this.Column30,
+            this.Column74,
+            this.Column107,
+            this.Column108,
+            this.Column48,
+            this.Column31,
+            this.Column75,
+            this.Column109,
+            this.Column110,
+            this.Column49,
+            this.Column32,
+            this.Column76,
+            this.Column111,
+            this.Column112,
+            this.Column20,
+            this.Column64});
+            dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle27.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle27.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle27.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle27.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle27.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle27.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvCompany.DefaultCellStyle = dataGridViewCellStyle27;
+            this.dgvCompany.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvCompany.EnableHeadersVisualStyles = false;
+            this.dgvCompany.Location = new System.Drawing.Point(30, 141);
+            this.dgvCompany.Margin = new System.Windows.Forms.Padding(0);
+            this.dgvCompany.MultiSelect = false;
+            this.dgvCompany.Name = "dgvCompany";
+            this.dgvCompany.RowHeadersVisible = false;
+            this.dgvCompany.RowHeadersWidth = 20;
+            this.dgvCompany.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvCompany.RowTemplate.Height = 21;
+            this.dgvCompany.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvCompany.Size = new System.Drawing.Size(1522, 655);
+            this.dgvCompany.TabIndex = 5;
+            this.dgvCompany.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.DataGridView_CellBeginEdit);
+            this.dgvCompany.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellDoubleClick);
+            this.dgvCompany.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.DataGridView_CellFormatting);
+            this.dgvCompany.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValidated);
+            this.dgvCompany.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValueChanged);
+            this.dgvCompany.CurrentCellDirtyStateChanged += new System.EventHandler(this.DataGridView_CurrentCellDirtyStateChanged);
+            // 
+            // dgvProject
+            // 
+            this.dgvProject.AllowUserToAddRows = false;
+            this.dgvProject.AllowUserToDeleteRows = false;
+            this.dgvProject.AllowUserToResizeRows = false;
+            this.dgvProject.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.dgvProject.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvProject.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle28.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            dataGridViewCellStyle28.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle28.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvProject.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle28;
+            this.dgvProject.ColumnHeadersHeight = 45;
+            this.dgvProject.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvProject.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column136,
+            this.Column134,
+            this.dataGridViewTextBoxColumn1,
+            this.Column63,
+            this.Column35,
+            this.Project_Column1,
+            this.Column90,
+            this.Column51,
+            this.Project_Column2,
+            this.Project_Column3,
+            this.Project_Column4,
+            this.Project_Column5,
+            this.Project_Column6,
+            this.Project_Column7,
+            this.Project_Column8,
+            this.Project_Column9,
+            this.Project_Column10,
+            this.Project_Column11,
+            this.Project_Column12,
+            this.Project_Column13,
+            this.Project_Column14,
+            this.Project_Column15,
+            this.Project_Column16,
+            this.Project_Column17,
+            this.Project_Column18,
+            this.Project_Column19,
+            this.Column100,
+            this.KyouryokuKin_Pro,
+            this.Project_Column21,
+            this.Project_Column22,
+            this.Project_Column23,
+            this.Column50,
+            this.Project_Column24,
+            this.Column78,
+            this.Column52,
+            this.Project_Column25,
+            this.Column79,
+            this.Column113,
+            this.Column114,
+            this.Column53,
+            this.Project_Column26,
+            this.Column81,
+            this.Column115,
+            this.Column116,
+            this.Column54,
+            this.Project_Column27,
+            this.Column82,
+            this.Column117,
+            this.Column118,
+            this.Column55,
+            this.Project_Column28,
+            this.Column83,
+            this.Column119,
+            this.Column120,
+            this.Column56,
+            this.Project_Column29,
+            this.Column84,
+            this.Column121,
+            this.Column122,
+            this.Column57,
+            this.Project_Column30,
+            this.Column80,
+            this.Column123,
+            this.Column124,
+            this.Column58,
+            this.Project_Column31,
+            this.Column85,
+            this.Column125,
+            this.Column126,
+            this.Column59,
+            this.Project_Column32,
+            this.Column86,
+            this.Column127,
+            this.Column128,
+            this.Column60,
+            this.Project_Column33,
+            this.Column87,
+            this.Column129,
+            this.Column130,
+            this.Column61,
+            this.Project_Column34,
+            this.Column88,
+            this.Column131,
+            this.Column132,
+            this.Column21,
+            this.Column77});
+            dataGridViewCellStyle58.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle58.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle58.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle58.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle58.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle58.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle58.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvProject.DefaultCellStyle = dataGridViewCellStyle58;
+            this.dgvProject.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvProject.EnableHeadersVisualStyles = false;
+            this.dgvProject.Location = new System.Drawing.Point(30, 141);
+            this.dgvProject.Margin = new System.Windows.Forms.Padding(4);
+            this.dgvProject.MultiSelect = false;
+            this.dgvProject.Name = "dgvProject";
+            this.dgvProject.RowHeadersVisible = false;
+            this.dgvProject.RowHeadersWidth = 20;
+            this.dgvProject.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvProject.RowTemplate.Height = 21;
+            this.dgvProject.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvProject.Size = new System.Drawing.Size(1522, 655);
+            this.dgvProject.TabIndex = 57;
+            this.dgvProject.Visible = false;
+            this.dgvProject.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.DataGridView_CellBeginEdit);
+            this.dgvProject.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellDoubleClick);
+            this.dgvProject.CellFormatting += new System.Windows.Forms.DataGridViewCellFormattingEventHandler(this.DataGridView_CellFormatting);
+            this.dgvProject.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValidated);
+            this.dgvProject.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellValueChanged);
+            this.dgvProject.CurrentCellDirtyStateChanged += new System.EventHandler(this.DataGridView_CurrentCellDirtyStateChanged);
+            // 
+            // Column135
+            // 
+            this.Column135.HeaderText = "CompanyDispOrder";
+            this.Column135.Name = "Column135";
+            // 
+            // Column133
+            // 
+            this.Column133.HeaderText = "ApprovalEndFlg";
+            this.Column133.Name = "Column133";
+            // 
+            // Column71
+            // 
+            this.Column71.HeaderText = "業者請求明細更新日時";
+            this.Column71.Name = "Column71";
+            // 
+            // Column62
+            // 
+            this.Column62.HeaderText = "RowState";
+            this.Column62.Name = "Column62";
+            // 
+            // Column23
+            // 
+            this.Column23.HeaderText = "可視";
+            this.Column23.Name = "Column23";
+            // 
+            // Column33
+            // 
+            this.Column33.HeaderText = "行タイプ";
+            this.Column33.Name = "Column33";
+            // 
+            // Column89
+            // 
+            this.Column89.HeaderText = "GoukeiSeqNo";
+            this.Column89.Name = "Column89";
+            // 
+            // Column34
+            // 
+            this.Column34.HeaderText = "SeqNo";
+            this.Column34.Name = "Column34";
+            // 
+            // Column99
+            // 
+            this.Column99.HeaderText = "LineCount";
+            this.Column99.Name = "Column99";
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            this.Column1.FillWeight = 110F;
+            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 = 35;
+            // 
+            // Column24
+            // 
+            this.Column24.HeaderText = "業者コード";
+            this.Column24.Name = "Column24";
+            this.Column24.Visible = false;
+            // 
+            // Column2
+            // 
+            this.Column2.HeaderText = "業者名";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 140;
+            // 
+            // Column26
+            // 
+            this.Column26.HeaderText = "現場コード";
+            this.Column26.Name = "Column26";
+            this.Column26.Visible = false;
+            // 
+            // Column3
+            // 
+            this.Column3.HeaderText = "現場名";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Width = 180;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column4.HeaderText = "請求書\r\n金額";
+            this.Column4.Name = "Column4";
+            this.Column4.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column4.Width = 125;
+            // 
+            // Column9
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column9.HeaderText = "高速代";
+            this.Column9.Name = "Column9";
+            this.Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column9.Width = 80;
+            // 
+            // Column10
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column10.DefaultCellStyle = dataGridViewCellStyle5;
+            this.Column10.HeaderText = "金物代";
+            this.Column10.Name = "Column10";
+            this.Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column10.Width = 80;
+            // 
+            // Column11
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column11.DefaultCellStyle = dataGridViewCellStyle6;
+            this.Column11.HeaderText = "産廃税";
+            this.Column11.Name = "Column11";
+            this.Column11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column11.Width = 80;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column5.HeaderText = "請求\r\n金額";
+            this.Column5.Name = "Column5";
+            this.Column5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column5.Width = 110;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle8;
+            this.Column6.HeaderText = "値引\r\n金額";
+            this.Column6.Name = "Column6";
+            this.Column6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column6.Width = 110;
+            // 
+            // Column7
+            // 
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle9;
+            this.Column7.HeaderText = "相殺\r\n金額";
+            this.Column7.Name = "Column7";
+            this.Column7.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column7.Width = 110;
+            // 
+            // Column8
+            // 
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle10;
+            this.Column8.HeaderText = "次回\r\n繰越";
+            this.Column8.Name = "Column8";
+            this.Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column8.Width = 110;
+            // 
+            // Column40
+            // 
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column40.DefaultCellStyle = dataGridViewCellStyle11;
+            this.Column40.HeaderText = "高速代";
+            this.Column40.Name = "Column40";
+            this.Column40.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column40.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column40.Width = 80;
+            // 
+            // Column41
+            // 
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column41.DefaultCellStyle = dataGridViewCellStyle12;
+            this.Column41.HeaderText = "金物代";
+            this.Column41.Name = "Column41";
+            this.Column41.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column41.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column41.Width = 80;
+            // 
+            // Column43
+            // 
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column43.DefaultCellStyle = dataGridViewCellStyle13;
+            this.Column43.HeaderText = "産廃税";
+            this.Column43.Name = "Column43";
+            this.Column43.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column43.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column43.Width = 80;
+            // 
+            // Column12
+            // 
+            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle14;
+            this.Column12.HeaderText = "協力金";
+            this.Column12.Name = "Column12";
+            this.Column12.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column12.Width = 80;
+            // 
+            // Column13
+            // 
+            this.Column13.HeaderText = "協力金率";
+            this.Column13.Name = "Column13";
+            // 
+            // KyouryokuKin_Com
+            // 
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle15.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle15.ForeColor = System.Drawing.Color.Black;
+            this.KyouryokuKin_Com.DefaultCellStyle = dataGridViewCellStyle15;
+            this.KyouryokuKin_Com.HeaderText = "協力金\r\n有無";
+            this.KyouryokuKin_Com.MaxDropDownItems = 3;
+            this.KyouryokuKin_Com.Name = "KyouryokuKin_Com";
+            this.KyouryokuKin_Com.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            // 
+            // Column14
+            // 
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column14.DefaultCellStyle = dataGridViewCellStyle16;
+            this.Column14.HeaderText = "注文書\r\n提出";
+            this.Column14.Name = "Column14";
+            this.Column14.ReadOnly = true;
+            this.Column14.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column14.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column15
+            // 
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column15.DefaultCellStyle = dataGridViewCellStyle17;
+            this.Column15.HeaderText = "注文書\r\n到着";
+            this.Column15.Name = "Column15";
+            this.Column15.ReadOnly = true;
+            this.Column15.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column16
+            // 
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column16.DefaultCellStyle = dataGridViewCellStyle18;
+            this.Column16.HeaderText = "予算書";
+            this.Column16.Name = "Column16";
+            this.Column16.ReadOnly = true;
+            this.Column16.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column16.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column36
+            // 
+            this.Column36.HeaderText = "担当者コード";
+            this.Column36.Name = "Column36";
+            // 
+            // Column17
+            // 
+            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column17.DefaultCellStyle = dataGridViewCellStyle19;
+            this.Column17.HeaderText = "担当者\r\n承認";
+            this.Column17.Name = "Column17";
+            this.Column17.ReadOnly = true;
+            this.Column17.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column17.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column66
+            // 
+            this.Column66.HeaderText = "担当日付";
+            this.Column66.Name = "Column66";
+            // 
+            // Column37
+            // 
+            this.Column37.HeaderText = "承認者１コード";
+            this.Column37.Name = "Column37";
+            // 
+            // Column18
+            // 
+            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column18.DefaultCellStyle = dataGridViewCellStyle20;
+            this.Column18.HeaderText = "承認者１\r\n承認";
+            this.Column18.Name = "Column18";
+            this.Column18.ReadOnly = true;
+            this.Column18.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column18.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column65
+            // 
+            this.Column65.HeaderText = "承認者１　日付";
+            this.Column65.Name = "Column65";
+            // 
+            // Column91
+            // 
+            this.Column91.HeaderText = "承認者１　承認権限";
+            this.Column91.Name = "Column91";
+            // 
+            // Column92
+            // 
+            this.Column92.HeaderText = "承認者１　承認順番";
+            this.Column92.Name = "Column92";
+            // 
+            // Column38
+            // 
+            this.Column38.HeaderText = "承認者2コード";
+            this.Column38.Name = "Column38";
+            // 
+            // Column19
+            // 
+            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column19.DefaultCellStyle = dataGridViewCellStyle21;
+            this.Column19.HeaderText = "承認者２\r\n承認";
+            this.Column19.Name = "Column19";
+            this.Column19.ReadOnly = true;
+            this.Column19.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column19.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column67
+            // 
+            this.Column67.HeaderText = "承認者２　日付";
+            this.Column67.Name = "Column67";
+            // 
+            // Column93
+            // 
+            this.Column93.HeaderText = "承認者２　承認権限";
+            this.Column93.Name = "Column93";
+            // 
+            // Column94
+            // 
+            this.Column94.HeaderText = "承認者２　承認順番";
+            this.Column94.Name = "Column94";
+            // 
+            // Column39
+            // 
+            this.Column39.HeaderText = "承認者3コード";
+            this.Column39.Name = "Column39";
+            // 
+            // Column22
+            // 
+            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column22.DefaultCellStyle = dataGridViewCellStyle22;
+            this.Column22.HeaderText = "承認者３\r\n承認";
+            this.Column22.Name = "Column22";
+            this.Column22.ReadOnly = true;
+            this.Column22.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column22.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column68
+            // 
+            this.Column68.HeaderText = "承認者３　日付";
+            this.Column68.Name = "Column68";
+            // 
+            // Column95
+            // 
+            this.Column95.HeaderText = "承認者３　承認権限";
+            this.Column95.Name = "Column95";
+            // 
+            // Column96
+            // 
+            this.Column96.HeaderText = "承認者３　承認順番";
+            this.Column96.Name = "Column96";
+            // 
+            // Column42
+            // 
+            this.Column42.HeaderText = "承認者4コード";
+            this.Column42.Name = "Column42";
+            // 
+            // Column25
+            // 
+            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column25.DefaultCellStyle = dataGridViewCellStyle23;
+            this.Column25.HeaderText = "承認者４承認";
+            this.Column25.Name = "Column25";
+            this.Column25.ReadOnly = true;
+            this.Column25.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column25.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column69
+            // 
+            this.Column69.HeaderText = "承認者４　日付";
+            this.Column69.Name = "Column69";
+            // 
+            // Column97
+            // 
+            this.Column97.HeaderText = "承認者４　承認権限";
+            this.Column97.Name = "Column97";
+            // 
+            // Column98
+            // 
+            this.Column98.HeaderText = "承認者４　承認順番";
+            this.Column98.Name = "Column98";
+            // 
+            // Column44
+            // 
+            this.Column44.HeaderText = "承認者5コード";
+            this.Column44.Name = "Column44";
+            // 
+            // Column27
+            // 
+            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column27.DefaultCellStyle = dataGridViewCellStyle24;
+            this.Column27.HeaderText = "承認者５承認";
+            this.Column27.Name = "Column27";
+            this.Column27.ReadOnly = true;
+            this.Column27.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column27.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column70
+            // 
+            this.Column70.HeaderText = "承認者５　日付";
+            this.Column70.Name = "Column70";
+            // 
+            // Column101
+            // 
+            this.Column101.HeaderText = "承認者５　承認権限";
+            this.Column101.Name = "Column101";
+            // 
+            // Column102
+            // 
+            this.Column102.HeaderText = "承認者５　承認順番";
+            this.Column102.Name = "Column102";
+            // 
+            // Column45
+            // 
+            this.Column45.HeaderText = "承認者6コード";
+            this.Column45.Name = "Column45";
+            // 
+            // Column28
+            // 
+            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column28.DefaultCellStyle = dataGridViewCellStyle25;
+            this.Column28.HeaderText = "承認者６承認";
+            this.Column28.Name = "Column28";
+            this.Column28.ReadOnly = true;
+            this.Column28.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column28.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column72
+            // 
+            this.Column72.HeaderText = "承認者６　日付";
+            this.Column72.Name = "Column72";
+            // 
+            // Column103
+            // 
+            this.Column103.HeaderText = "承認者６　承認権限";
+            this.Column103.Name = "Column103";
+            // 
+            // Column104
+            // 
+            this.Column104.HeaderText = "承認者６　承認順番";
+            this.Column104.Name = "Column104";
+            // 
+            // Column46
+            // 
+            this.Column46.HeaderText = "承認者7コード";
+            this.Column46.Name = "Column46";
+            // 
+            // Column29
+            // 
+            this.Column29.HeaderText = "承認者７承認";
+            this.Column29.Name = "Column29";
+            this.Column29.ReadOnly = true;
+            this.Column29.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column29.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column73
+            // 
+            this.Column73.HeaderText = "承認者７　日付";
+            this.Column73.Name = "Column73";
+            // 
+            // Column105
+            // 
+            this.Column105.HeaderText = "承認者７　承認権限";
+            this.Column105.Name = "Column105";
+            // 
+            // Column106
+            // 
+            this.Column106.HeaderText = "承認者７　承認順番";
+            this.Column106.Name = "Column106";
+            // 
+            // Column47
+            // 
+            this.Column47.HeaderText = "承認者8コード";
+            this.Column47.Name = "Column47";
+            // 
+            // Column30
+            // 
+            this.Column30.HeaderText = "承認者８承認";
+            this.Column30.Name = "Column30";
+            this.Column30.ReadOnly = true;
+            this.Column30.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column30.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column74
+            // 
+            this.Column74.HeaderText = "承認者８　日付";
+            this.Column74.Name = "Column74";
+            // 
+            // Column107
+            // 
+            this.Column107.HeaderText = "承認者８　承認権限";
+            this.Column107.Name = "Column107";
+            // 
+            // Column108
+            // 
+            this.Column108.HeaderText = "承認者８　承認順番";
+            this.Column108.Name = "Column108";
+            // 
+            // Column48
+            // 
+            this.Column48.HeaderText = "承認者9コード";
+            this.Column48.Name = "Column48";
+            // 
+            // Column31
+            // 
+            this.Column31.HeaderText = "承認者９承認";
+            this.Column31.Name = "Column31";
+            this.Column31.ReadOnly = true;
+            this.Column31.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column31.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column75
+            // 
+            this.Column75.HeaderText = "承認者９　日付";
+            this.Column75.Name = "Column75";
+            // 
+            // Column109
+            // 
+            this.Column109.HeaderText = "承認者９　承認権限";
+            this.Column109.Name = "Column109";
+            // 
+            // Column110
+            // 
+            this.Column110.HeaderText = "承認者９　承認順番";
+            this.Column110.Name = "Column110";
+            // 
+            // Column49
+            // 
+            this.Column49.HeaderText = "承認者10コード";
+            this.Column49.Name = "Column49";
+            // 
+            // Column32
+            // 
+            this.Column32.HeaderText = "承認者10承認";
+            this.Column32.Name = "Column32";
+            this.Column32.ReadOnly = true;
+            this.Column32.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column32.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column76
+            // 
+            this.Column76.HeaderText = "承認者10　日付";
+            this.Column76.Name = "Column76";
+            // 
+            // Column111
+            // 
+            this.Column111.HeaderText = "承認者10　承認権限";
+            this.Column111.Name = "Column111";
+            // 
+            // Column112
+            // 
+            this.Column112.HeaderText = "承認者10　承認順番";
+            this.Column112.Name = "Column112";
+            // 
+            // Column20
+            // 
+            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column20.DefaultCellStyle = dataGridViewCellStyle26;
+            this.Column20.HeaderText = "備考";
+            this.Column20.Name = "Column20";
+            this.Column20.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column20.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column20.Width = 140;
+            // 
+            // Column64
+            // 
+            this.Column64.HeaderText = "消費税率";
+            this.Column64.Name = "Column64";
+            this.Column64.Visible = false;
+            // 
+            // Column136
+            // 
+            this.Column136.HeaderText = "CompanyDispOrder";
+            this.Column136.Name = "Column136";
+            // 
+            // Column134
+            // 
+            this.Column134.HeaderText = "ApprovalEndFlg";
+            this.Column134.Name = "Column134";
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            this.dataGridViewTextBoxColumn1.HeaderText = "業者請求明細更新日時";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            // 
+            // Column63
+            // 
+            this.Column63.HeaderText = "RowState";
+            this.Column63.Name = "Column63";
+            // 
+            // Column35
+            // 
+            this.Column35.HeaderText = "可視";
+            this.Column35.Name = "Column35";
+            // 
+            // Project_Column1
+            // 
+            this.Project_Column1.HeaderText = "行タイプ";
+            this.Project_Column1.Name = "Project_Column1";
+            // 
+            // Column90
+            // 
+            this.Column90.HeaderText = "GoukeiSeqNo";
+            this.Column90.Name = "Column90";
+            // 
+            // Column51
+            // 
+            this.Column51.HeaderText = "SeqNo";
+            this.Column51.Name = "Column51";
+            // 
+            // Project_Column2
+            // 
+            this.Project_Column2.HeaderText = "LineCount";
+            this.Project_Column2.Name = "Project_Column2";
+            // 
+            // Project_Column3
+            // 
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column3.DefaultCellStyle = dataGridViewCellStyle29;
+            this.Project_Column3.HeaderText = "№";
+            this.Project_Column3.Name = "Project_Column3";
+            this.Project_Column3.ReadOnly = true;
+            this.Project_Column3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column3.Width = 35;
+            // 
+            // Project_Column4
+            // 
+            this.Project_Column4.HeaderText = "現場コード";
+            this.Project_Column4.Name = "Project_Column4";
+            this.Project_Column4.Visible = false;
+            // 
+            // Project_Column5
+            // 
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Project_Column5.DefaultCellStyle = dataGridViewCellStyle30;
+            this.Project_Column5.HeaderText = " 現場名";
+            this.Project_Column5.Name = "Project_Column5";
+            this.Project_Column5.ReadOnly = true;
+            this.Project_Column5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column5.Width = 180;
+            // 
+            // Project_Column6
+            // 
+            this.Project_Column6.HeaderText = "業者コード";
+            this.Project_Column6.Name = "Project_Column6";
+            this.Project_Column6.Visible = false;
+            // 
+            // Project_Column7
+            // 
+            this.Project_Column7.HeaderText = " 業者名";
+            this.Project_Column7.Name = "Project_Column7";
+            this.Project_Column7.ReadOnly = true;
+            this.Project_Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column7.Width = 140;
+            // 
+            // Project_Column8
+            // 
+            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column8.DefaultCellStyle = dataGridViewCellStyle31;
+            this.Project_Column8.HeaderText = "請求書\r\n 金額";
+            this.Project_Column8.Name = "Project_Column8";
+            this.Project_Column8.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column8.Width = 125;
+            // 
+            // Project_Column9
+            // 
+            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column9.DefaultCellStyle = dataGridViewCellStyle32;
+            this.Project_Column9.HeaderText = "高速代";
+            this.Project_Column9.Name = "Project_Column9";
+            this.Project_Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column9.Width = 80;
+            // 
+            // Project_Column10
+            // 
+            dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column10.DefaultCellStyle = dataGridViewCellStyle33;
+            this.Project_Column10.HeaderText = "金物代";
+            this.Project_Column10.Name = "Project_Column10";
+            this.Project_Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column10.Width = 80;
+            // 
+            // Project_Column11
+            // 
+            dataGridViewCellStyle34.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column11.DefaultCellStyle = dataGridViewCellStyle34;
+            this.Project_Column11.HeaderText = "産廃税";
+            this.Project_Column11.Name = "Project_Column11";
+            this.Project_Column11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column11.Width = 80;
+            // 
+            // Project_Column12
+            // 
+            dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column12.DefaultCellStyle = dataGridViewCellStyle35;
+            this.Project_Column12.HeaderText = "請求\r\n金額";
+            this.Project_Column12.Name = "Project_Column12";
+            this.Project_Column12.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column12.Width = 110;
+            // 
+            // Project_Column13
+            // 
+            dataGridViewCellStyle36.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column13.DefaultCellStyle = dataGridViewCellStyle36;
+            this.Project_Column13.HeaderText = "値引\r\n金額";
+            this.Project_Column13.Name = "Project_Column13";
+            this.Project_Column13.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column13.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column13.Width = 110;
+            // 
+            // Project_Column14
+            // 
+            dataGridViewCellStyle37.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column14.DefaultCellStyle = dataGridViewCellStyle37;
+            this.Project_Column14.HeaderText = "相殺\r\n金額";
+            this.Project_Column14.Name = "Project_Column14";
+            this.Project_Column14.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column14.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column14.Width = 110;
+            // 
+            // Project_Column15
+            // 
+            dataGridViewCellStyle38.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle38.Format = "#,##0";
+            this.Project_Column15.DefaultCellStyle = dataGridViewCellStyle38;
+            this.Project_Column15.HeaderText = "次回\r\n繰越";
+            this.Project_Column15.Name = "Project_Column15";
+            this.Project_Column15.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column15.Width = 110;
+            // 
+            // Project_Column16
+            // 
+            dataGridViewCellStyle39.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column16.DefaultCellStyle = dataGridViewCellStyle39;
+            this.Project_Column16.HeaderText = "高速代";
+            this.Project_Column16.Name = "Project_Column16";
+            this.Project_Column16.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column16.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column16.Width = 80;
+            // 
+            // Project_Column17
+            // 
+            dataGridViewCellStyle40.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column17.DefaultCellStyle = dataGridViewCellStyle40;
+            this.Project_Column17.HeaderText = "金物代";
+            this.Project_Column17.Name = "Project_Column17";
+            this.Project_Column17.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column17.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column17.Width = 80;
+            // 
+            // Project_Column18
+            // 
+            dataGridViewCellStyle41.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column18.DefaultCellStyle = dataGridViewCellStyle41;
+            this.Project_Column18.HeaderText = "産廃税";
+            this.Project_Column18.Name = "Project_Column18";
+            this.Project_Column18.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column18.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column18.Width = 80;
+            // 
+            // Project_Column19
+            // 
+            dataGridViewCellStyle42.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Project_Column19.DefaultCellStyle = dataGridViewCellStyle42;
+            this.Project_Column19.HeaderText = "協力金";
+            this.Project_Column19.Name = "Project_Column19";
+            this.Project_Column19.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column19.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Project_Column19.Width = 80;
+            // 
+            // Column100
+            // 
+            this.Column100.HeaderText = "協力金率";
+            this.Column100.Name = "Column100";
+            // 
+            // KyouryokuKin_Pro
+            // 
+            dataGridViewCellStyle43.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle43.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle43.ForeColor = System.Drawing.Color.Black;
+            this.KyouryokuKin_Pro.DefaultCellStyle = dataGridViewCellStyle43;
+            this.KyouryokuKin_Pro.HeaderText = "協力金\r\n有無";
+            this.KyouryokuKin_Pro.Name = "KyouryokuKin_Pro";
+            this.KyouryokuKin_Pro.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            // 
+            // Project_Column21
+            // 
+            dataGridViewCellStyle44.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column21.DefaultCellStyle = dataGridViewCellStyle44;
+            this.Project_Column21.HeaderText = "注文書\r\n提出";
+            this.Project_Column21.Name = "Project_Column21";
+            this.Project_Column21.ReadOnly = true;
+            this.Project_Column21.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column21.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Project_Column22
+            // 
+            dataGridViewCellStyle45.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column22.DefaultCellStyle = dataGridViewCellStyle45;
+            this.Project_Column22.HeaderText = "注文書\r\n到着";
+            this.Project_Column22.Name = "Project_Column22";
+            this.Project_Column22.ReadOnly = true;
+            this.Project_Column22.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column22.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Project_Column23
+            // 
+            dataGridViewCellStyle46.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column23.DefaultCellStyle = dataGridViewCellStyle46;
+            this.Project_Column23.HeaderText = "予算書";
+            this.Project_Column23.Name = "Project_Column23";
+            this.Project_Column23.ReadOnly = true;
+            this.Project_Column23.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column23.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column50
+            // 
+            this.Column50.HeaderText = "担当者コード";
+            this.Column50.Name = "Column50";
+            // 
+            // Project_Column24
+            // 
+            dataGridViewCellStyle47.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column24.DefaultCellStyle = dataGridViewCellStyle47;
+            this.Project_Column24.HeaderText = "担当者\r\n承認";
+            this.Project_Column24.Name = "Project_Column24";
+            this.Project_Column24.ReadOnly = true;
+            this.Project_Column24.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column24.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column78
+            // 
+            this.Column78.HeaderText = "担当者日付";
+            this.Column78.Name = "Column78";
+            // 
+            // Column52
+            // 
+            this.Column52.HeaderText = "承認者1コード";
+            this.Column52.Name = "Column52";
+            // 
+            // Project_Column25
+            // 
+            dataGridViewCellStyle48.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column25.DefaultCellStyle = dataGridViewCellStyle48;
+            this.Project_Column25.HeaderText = "承認者１\r\n承認";
+            this.Project_Column25.Name = "Project_Column25";
+            this.Project_Column25.ReadOnly = true;
+            this.Project_Column25.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column25.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column79
+            // 
+            this.Column79.HeaderText = "承認者１　日付";
+            this.Column79.Name = "Column79";
+            // 
+            // Column113
+            // 
+            this.Column113.HeaderText = "承認者１　承認権限";
+            this.Column113.Name = "Column113";
+            // 
+            // Column114
+            // 
+            this.Column114.HeaderText = "承認者１　承認順番";
+            this.Column114.Name = "Column114";
+            // 
+            // Column53
+            // 
+            this.Column53.HeaderText = "承認者2コード";
+            this.Column53.Name = "Column53";
+            // 
+            // Project_Column26
+            // 
+            dataGridViewCellStyle49.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column26.DefaultCellStyle = dataGridViewCellStyle49;
+            this.Project_Column26.HeaderText = "承認者２\r\n承認";
+            this.Project_Column26.Name = "Project_Column26";
+            this.Project_Column26.ReadOnly = true;
+            this.Project_Column26.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column26.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column81
+            // 
+            this.Column81.HeaderText = "承認者２　日付";
+            this.Column81.Name = "Column81";
+            // 
+            // Column115
+            // 
+            this.Column115.HeaderText = "承認者２　承認権限";
+            this.Column115.Name = "Column115";
+            // 
+            // Column116
+            // 
+            this.Column116.HeaderText = "承認者２　承認順番";
+            this.Column116.Name = "Column116";
+            // 
+            // Column54
+            // 
+            this.Column54.HeaderText = "承認者3コード";
+            this.Column54.Name = "Column54";
+            // 
+            // Project_Column27
+            // 
+            dataGridViewCellStyle50.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column27.DefaultCellStyle = dataGridViewCellStyle50;
+            this.Project_Column27.HeaderText = "承認者３\r\n承認";
+            this.Project_Column27.Name = "Project_Column27";
+            this.Project_Column27.ReadOnly = true;
+            this.Project_Column27.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column27.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column82
+            // 
+            this.Column82.HeaderText = "承認者３　日付";
+            this.Column82.Name = "Column82";
+            // 
+            // Column117
+            // 
+            this.Column117.HeaderText = "承認者３　承認権限";
+            this.Column117.Name = "Column117";
+            // 
+            // Column118
+            // 
+            this.Column118.HeaderText = "承認者３　承認順番";
+            this.Column118.Name = "Column118";
+            // 
+            // Column55
+            // 
+            this.Column55.HeaderText = "承認者4コード";
+            this.Column55.Name = "Column55";
+            // 
+            // Project_Column28
+            // 
+            dataGridViewCellStyle51.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column28.DefaultCellStyle = dataGridViewCellStyle51;
+            this.Project_Column28.HeaderText = "承認者４承認";
+            this.Project_Column28.Name = "Project_Column28";
+            this.Project_Column28.ReadOnly = true;
+            this.Project_Column28.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column28.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column83
+            // 
+            this.Column83.HeaderText = "承認者４　日付";
+            this.Column83.Name = "Column83";
+            // 
+            // Column119
+            // 
+            this.Column119.HeaderText = "承認者４　承認権限";
+            this.Column119.Name = "Column119";
+            // 
+            // Column120
+            // 
+            this.Column120.HeaderText = "承認者４　承認順番";
+            this.Column120.Name = "Column120";
+            // 
+            // Column56
+            // 
+            this.Column56.HeaderText = "承認者5コード";
+            this.Column56.Name = "Column56";
+            // 
+            // Project_Column29
+            // 
+            dataGridViewCellStyle52.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column29.DefaultCellStyle = dataGridViewCellStyle52;
+            this.Project_Column29.HeaderText = "承認者５承認";
+            this.Project_Column29.Name = "Project_Column29";
+            this.Project_Column29.ReadOnly = true;
+            this.Project_Column29.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column29.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column84
+            // 
+            this.Column84.HeaderText = "承認者５　日付";
+            this.Column84.Name = "Column84";
+            // 
+            // Column121
+            // 
+            this.Column121.HeaderText = "承認者５　承認権限";
+            this.Column121.Name = "Column121";
+            // 
+            // Column122
+            // 
+            this.Column122.HeaderText = "承認者５　承認順番";
+            this.Column122.Name = "Column122";
+            // 
+            // Column57
+            // 
+            this.Column57.HeaderText = "承認者6コード";
+            this.Column57.Name = "Column57";
+            // 
+            // Project_Column30
+            // 
+            dataGridViewCellStyle53.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column30.DefaultCellStyle = dataGridViewCellStyle53;
+            this.Project_Column30.HeaderText = "承認者６承認";
+            this.Project_Column30.Name = "Project_Column30";
+            this.Project_Column30.ReadOnly = true;
+            this.Project_Column30.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column30.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column80
+            // 
+            this.Column80.HeaderText = "承認者６　日付";
+            this.Column80.Name = "Column80";
+            // 
+            // Column123
+            // 
+            this.Column123.HeaderText = "承認者６　承認権限";
+            this.Column123.Name = "Column123";
+            // 
+            // Column124
+            // 
+            this.Column124.HeaderText = "承認者６　承認順番";
+            this.Column124.Name = "Column124";
+            // 
+            // Column58
+            // 
+            this.Column58.HeaderText = "承認者7コード";
+            this.Column58.Name = "Column58";
+            // 
+            // Project_Column31
+            // 
+            dataGridViewCellStyle54.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column31.DefaultCellStyle = dataGridViewCellStyle54;
+            this.Project_Column31.HeaderText = "承認者７承認";
+            this.Project_Column31.Name = "Project_Column31";
+            this.Project_Column31.ReadOnly = true;
+            this.Project_Column31.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column31.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column85
+            // 
+            this.Column85.HeaderText = "承認者7　日付";
+            this.Column85.Name = "Column85";
+            // 
+            // Column125
+            // 
+            this.Column125.HeaderText = "承認者７　承認権限";
+            this.Column125.Name = "Column125";
+            // 
+            // Column126
+            // 
+            this.Column126.HeaderText = "承認者７　承認順番";
+            this.Column126.Name = "Column126";
+            // 
+            // Column59
+            // 
+            this.Column59.HeaderText = "承認者8コード";
+            this.Column59.Name = "Column59";
+            // 
+            // Project_Column32
+            // 
+            dataGridViewCellStyle55.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column32.DefaultCellStyle = dataGridViewCellStyle55;
+            this.Project_Column32.HeaderText = "承認者８承認";
+            this.Project_Column32.Name = "Project_Column32";
+            this.Project_Column32.ReadOnly = true;
+            this.Project_Column32.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column32.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column86
+            // 
+            this.Column86.HeaderText = "承認者８　日付";
+            this.Column86.Name = "Column86";
+            // 
+            // Column127
+            // 
+            this.Column127.HeaderText = "承認者８　承認権限";
+            this.Column127.Name = "Column127";
+            // 
+            // Column128
+            // 
+            this.Column128.HeaderText = "承認者８　承認順番";
+            this.Column128.Name = "Column128";
+            // 
+            // Column60
+            // 
+            this.Column60.HeaderText = "承認者9コード";
+            this.Column60.Name = "Column60";
+            // 
+            // Project_Column33
+            // 
+            dataGridViewCellStyle56.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column33.DefaultCellStyle = dataGridViewCellStyle56;
+            this.Project_Column33.HeaderText = "承認者９承認";
+            this.Project_Column33.Name = "Project_Column33";
+            this.Project_Column33.ReadOnly = true;
+            this.Project_Column33.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column33.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column87
+            // 
+            this.Column87.HeaderText = "承認者９　日付";
+            this.Column87.Name = "Column87";
+            // 
+            // Column129
+            // 
+            this.Column129.HeaderText = "承認者９　承認権限";
+            this.Column129.Name = "Column129";
+            // 
+            // Column130
+            // 
+            this.Column130.HeaderText = "承認者９　承認順番";
+            this.Column130.Name = "Column130";
+            // 
+            // Column61
+            // 
+            this.Column61.HeaderText = "承認者10コード";
+            this.Column61.Name = "Column61";
+            // 
+            // Project_Column34
+            // 
+            dataGridViewCellStyle57.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Project_Column34.DefaultCellStyle = dataGridViewCellStyle57;
+            this.Project_Column34.HeaderText = "承認者10承認";
+            this.Project_Column34.Name = "Project_Column34";
+            this.Project_Column34.ReadOnly = true;
+            this.Project_Column34.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Project_Column34.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column88
+            // 
+            this.Column88.HeaderText = "承認者10　日付";
+            this.Column88.Name = "Column88";
+            // 
+            // Column131
+            // 
+            this.Column131.HeaderText = "承認者10　承認権限";
+            this.Column131.Name = "Column131";
+            // 
+            // Column132
+            // 
+            this.Column132.HeaderText = "承認者10　承認順番";
+            this.Column132.Name = "Column132";
+            // 
+            // Column21
+            // 
+            this.Column21.HeaderText = "備考";
+            this.Column21.Name = "Column21";
+            this.Column21.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column21.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
+            // Column77
+            // 
+            this.Column77.HeaderText = "消費税率";
+            this.Column77.Name = "Column77";
+            this.Column77.Visible = false;
+            // 
+            // FrmRequestSummaryList
+            // 
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1578, 846);
+            this.Controls.Add(this.panel1);
+            this.Controls.Add(this.btnAddProject);
+            this.Controls.Add(this.groupBoxEx1);
+            this.Controls.Add(this.btnOther);
+            this.Controls.Add(this.btnAddCompany);
+            this.Controls.Add(this.btnDeleteCompany);
+            this.Controls.Add(this.btnDeleteProject);
+            this.Controls.Add(this.btnDataEntry);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dgvCompany);
+            this.Controls.Add(this.dgvProject);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+            this.KeyPreview = true;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.MinimizeBox = false;
+            this.Name = "FrmRequestSummaryList";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmRequestSummaryList_FormClosing);
+            this.Load += new System.EventHandler(this.FrmRequestSummaryList_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmRequestSummaryList_KeyDown);
+            this.panel1.ResumeLayout(false);
+            this.panel1.PerformLayout();
+            this.groupBoxEx1.ResumeLayout(false);
+            this.groupBoxEx1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvCompany)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvProject)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label label1;
+        private CustomControls.DataGridViewEX dgvCompany;
+        private System.Windows.Forms.Button btnDataEntry;
+        private System.Windows.Forms.ComboBox cmbTargetMonth;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.RadioButton rdbProject;
+        private System.Windows.Forms.RadioButton rdbCompany;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label lblPaymentDate;
+        private System.Windows.Forms.Button btnDeleteProject;
+        private System.Windows.Forms.Button btnDeleteCompany;
+        private System.Windows.Forms.Button btnAddCompany;
+        private System.Windows.Forms.Button btnOther;
+        private System.Windows.Forms.Button btnShowView;
+        private CustomControls.GroupBoxEx groupBoxEx1;
+        private CustomControls.DataGridViewEX dgvProject;
+        private System.Windows.Forms.Button btnAddProject;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column135;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column133;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column71;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column62;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column23;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column33;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column89;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column34;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column99;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column24;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column26;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column40;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column41;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column43;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column13;
+        private System.Windows.Forms.DataGridViewComboBoxColumn KyouryokuKin_Com;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column14;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column15;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column16;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column36;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column17;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column66;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column37;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column18;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column65;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column91;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column92;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column38;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column19;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column67;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column93;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column94;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column39;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column22;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column68;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column95;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column96;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column42;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column25;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column69;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column97;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column98;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column44;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column27;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column70;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column101;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column102;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column45;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column28;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column72;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column103;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column104;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column46;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column29;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column73;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column105;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column106;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column47;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column30;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column74;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column107;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column108;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column48;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column31;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column75;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column109;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column110;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column49;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column32;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column76;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column111;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column112;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column20;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column64;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column136;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column134;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column63;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column35;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column90;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column51;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column11;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column13;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column14;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column15;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column16;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column17;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column18;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column19;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column100;
+        private System.Windows.Forms.DataGridViewComboBoxColumn KyouryokuKin_Pro;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column21;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column22;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column23;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column50;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column24;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column78;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column52;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column25;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column79;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column113;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column114;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column53;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column26;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column81;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column115;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column116;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column54;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column27;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column82;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column117;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column118;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column55;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column28;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column83;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column119;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column120;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column56;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column29;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column84;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column121;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column122;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column57;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column30;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column80;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column123;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column124;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column58;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column31;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column85;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column125;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column126;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column59;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column32;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column86;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column127;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column128;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column60;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column33;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column87;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column129;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column130;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column61;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Project_Column34;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column88;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column131;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column132;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column21;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column77;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryList.resx	(revision 51)
@@ -0,0 +1,420 @@
+<?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="Column135.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column133.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column71.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column62.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column23.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column89.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column99.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column36.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column66.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column37.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column65.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column91.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column92.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column38.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column67.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column93.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column94.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column39.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column68.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column95.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column96.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column42.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column69.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column97.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column98.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column44.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column70.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column101.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column102.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column45.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column72.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column103.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column104.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column46.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column73.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column105.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column106.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column47.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column74.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column107.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column108.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column48.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column75.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column109.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column110.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column49.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column76.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column111.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column112.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column64.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column136.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column134.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column63.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column35.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column90.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column51.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column50.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column78.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column52.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column79.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column113.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column114.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column53.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column81.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column115.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column116.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column54.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column82.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column117.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column118.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column55.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column83.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column119.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column120.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column56.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column84.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column121.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column122.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column57.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column80.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column123.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column124.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column58.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column85.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column125.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column126.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column59.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column86.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column127.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column128.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column60.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column87.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column129.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column130.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column61.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column88.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column131.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column132.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column77.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/RequestSummaryList/FrmRequestSummaryListAuxiliary.cs	(revision 51)
@@ -0,0 +1,1207 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+//*---------------------------- �����܂Ƃ߉��(�⏕)--------------------------*
+//  2015/07/13  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmRequestSummaryList
+    {
+        #region �萔
+
+
+        #endregion
+
+        #region �ϐ�
+        #endregion
+
+        #region �v���p�e�B
+        #endregion
+
+
+        #region �Z�L�����e�B����
+        /// <summary>
+        /// �Z�L�����e�B����
+        /// </summary>
+        /// <param name="strSQL"></param>
+        private void CheckSecurity()
+        {
+            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)
+                {
+                    // �ō��@���Ǘ��ҁE�V�X�e���Ǘ��ҁi���ׂđΏہj
+                    m_userType = UserType.Boss;
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key
+                      || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // �����ӔC�ҁE�������i�@�\�����j
+                    // �������̂�
+                    m_userType = UserType.Sekinin;
+
+                    // ������
+                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        m_userType = UserType.Soumu;
+                    }
+
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // ��ʁi�@�\�����j
+                    // ������
+                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        m_userType = UserType.Soumu;
+                    }
+                    else
+                    {
+                        // ���f�[�^�̂�
+                        m_userType = UserType.Sonota;
+                        CheckSalesPerson(ref m_userType);
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// �c��or�H���S���҂���������
+        /// </summary>
+        /// <returns></returns>
+        private void CheckSalesPerson(ref UserType myType)
+        {
+            IOBillingData IoBd = new IOBillingData();
+            ArrayList arData = new ArrayList();
+
+            StringBuilder sql;
+
+            try
+            {
+                // �I��Ώی��̑ޔ�
+                m_Select_TargetDate = CommonMotions.cnvInt(cmbTargetMonth.SelectedValue);
+
+                // SQL�쐬
+                sql = new StringBuilder();
+                sql.AppendLine("select   ");
+                sql.AppendLine(" ifnull(Cbi.SalesPersonCode,0) as  SalesPersonCode, ");
+                sql.AppendLine(" ifnull(Cbi.ConstructionPersonCode,0) as ConstructionPersonCode, ");
+                sql.AppendLine(" ifnull(Cbi.ConstrSubPersonCode,0) as ConstrSubPersonCode,    ");
+                sql.AppendLine(" ifnull(Cbi.ConstructionInstructor,0) as ConstructionInstructor ");
+                sql.AppendLine("from BillingData as Bd left join (BillingDataDetail as Bdd left join ConstructionBaseInfo as Cbi on Bdd.CONSTRUCTIONCODE = Cbi.CONSTRUCTIONCODE)  ");
+                sql.AppendLine("					on Bd.COMPANYCODE = BdD.COMPANYCODE   ");
+                sql.AppendLine("                    and Bd.TARGETDATE = BdD.TARGETDATE   ");
+                sql.AppendLine("                    and Bd.SEQNO = BdD.SEQNO  ");
+                sql.AppendFormat("where Bd.TARGETDATE = {0} ", m_Select_TargetDate);
+                sql.AppendLine("group by Cbi.SalesPersonCode ,Cbi.ConstructionPersonCode,Cbi.ConstrSubPersonCode,Cbi.ConstructionInstructor ");
+
+                // �f�[�^�擾
+                if (!IoBd.ExecuteReader(sql.ToString(), ref arData)) throw new Exception("�S���Ҋm�F�f�[�^�擾���s");
+
+                foreach (object[] work in arData)
+                {
+                    if (CommonMotions.cnvInt(work[0]) == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        myType = UserType.Eigyo;
+                    }
+
+                    if (CommonMotions.cnvInt(work[1]) == CommonMotions.LoginUserData.PersonCode
+                    || CommonMotions.cnvInt(work[2]) == CommonMotions.LoginUserData.PersonCode
+                    || CommonMotions.cnvInt(work[3]) == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        myType = UserType.Koji;
+                        break;
+                    }
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoBd = null;
+            }
+
+        }
+
+        #endregion
+
+
+
+        #region �����l
+        /// <summary>
+        /// �����l
+        /// </summary>
+        private void InitDataLoad()
+        {
+            IOBankBusinessDayMaster IoBbdm = new IOBankBusinessDayMaster();
+            List<BankBusinessDayMaster> LstBbdm = new List<BankBusinessDayMaster>();
+            try
+            {
+                // �O���b�h�R���{�f�[�^
+                DataGridViewComboBoxColumn column;
+                column = (DataGridViewComboBoxColumn)dgvCompany.Columns[(int)DispColumn.KyoryokuUmu];
+                column.Items.Clear();
+                column.Items.Add(new KeyValuePair<int, string>(-1, ""));
+                column.Items.Add(new KeyValuePair<int, string>(0, "�~"));
+                column.Items.Add(new KeyValuePair<int, string>(1, "��"));
+                column.ValueMember = "Key";
+                column.DisplayMember = "Value";
+
+                DataGridViewComboBoxColumn column2;
+                column2 = (DataGridViewComboBoxColumn)dgvProject.Columns[(int)DispColumn.KyoryokuUmu];
+                column2.Items.Clear();
+                column2.Items.Add(new KeyValuePair<int, string>(-1, ""));
+                column2.Items.Add(new KeyValuePair<int, string>(0, "�~"));
+                column2.Items.Add(new KeyValuePair<int, string>(1, "��"));
+                column2.ValueMember = "Key";
+                column2.DisplayMember = "Value";
+
+                if (cmbTargetMonth.SelectedValue == null || cmbTargetMonth.SelectedValue.ToString().Length!=6) return;
+
+                // �x�����ݒ�
+                DateTime deadLine = new DateTime(), payDate = new DateTime(), currentYearMonth = new DateTime();
+                GetDeadLineAndPayday(ref currentYearMonth, ref deadLine, ref payDate);
+
+                int payDay = payDate.Day;
+                string sqlWhere = IoBbdm.CreatePrimarykeyString(CommonMotions.cnvInt(payDate.ToString("yyyyMM")), payDay);
+
+                while (true)
+                {
+                    IoBbdm.SelectAction(sqlWhere, ref LstBbdm);
+                    if (LstBbdm.Count == 1)
+                    {
+                        break;
+                    }
+                    payDay--;
+                    sqlWhere = IoBbdm.CreatePrimarykeyString(CommonMotions.cnvInt(payDate.ToString("yyyyMM")), payDay);
+                }
+
+                lblPaymentDate.Text = payDate.ToString("yyyy/MM/") + payDay.ToString("00");
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region �����\���̃X�^�C����ύX
+        private void InitDisplayStyle(DataGridView dgv)
+        {
+            dgv.Columns[(int)DispColumn.SomuSeikyu].HeaderCell.Style.BackColor = System.Drawing.Color.Coral;
+            dgv.Columns[(int)DispColumn.SomuKosoku].HeaderCell.Style.BackColor = System.Drawing.Color.Coral;
+            dgv.Columns[(int)DispColumn.SomuKanamono].HeaderCell.Style.BackColor = System.Drawing.Color.Coral;
+            dgv.Columns[(int)DispColumn.SomuSannhaiZei].HeaderCell.Style.BackColor = System.Drawing.Color.Coral;
+
+            dgv.Columns[(int)DispColumn.KojiSeikyu].HeaderCell.Style.BackColor = System.Drawing.Color.SkyBlue;
+            dgv.Columns[(int)DispColumn.KojiNebiki].HeaderCell.Style.BackColor = System.Drawing.Color.SkyBlue;
+            dgv.Columns[(int)DispColumn.KojiSousai].HeaderCell.Style.BackColor = System.Drawing.Color.SkyBlue;
+            dgv.Columns[(int)DispColumn.KojiKosoku].HeaderCell.Style.BackColor = System.Drawing.Color.SkyBlue;
+            dgv.Columns[(int)DispColumn.KojiKanamono].HeaderCell.Style.BackColor = System.Drawing.Color.SkyBlue;
+            dgv.Columns[(int)DispColumn.KojiSannhaiZei].HeaderCell.Style.BackColor = System.Drawing.Color.SkyBlue;
+            dgv.Columns[(int)DispColumn.KyoryokuUmu].HeaderCell.Style.BackColor = System.Drawing.Color.SkyBlue;
+
+
+            dgv.Columns[(int)DispColumn.JikaiKurikosi].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.KyoryokuKin].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.CyuumonshoTeisyutu].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.CyuumonshoTouchaku].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.YosanSho].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.TantoShonin].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin1].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin2].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin3].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin4].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin5].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin6].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin7].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin8].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin9].ReadOnly = true;
+            dgv.Columns[(int)DispColumn.Shonin10].ReadOnly = true;
+
+            // ����s�؂�ւ�
+            DataGridView_ReadOnlyChange(dgv);
+
+            // ���������z�܂ł͌Œ�
+            dgv.Columns[(int)DispColumn.SomuSeikyu].Frozen = true;
+
+            // �w�b�_�\�[�g�s��
+            foreach (int Column in Enum.GetValues(typeof(DispColumn)))
+            {
+                dgv.Columns[Column].SortMode = DataGridViewColumnSortMode.NotSortable;
+            }
+
+
+            // �⏕�l��s���@�������e���₷������ׁA�v���O�����ŕs��
+            dgv.Columns[(int)DispColumn.KyoryokuKinRitu].Visible = false;
+            for (int Column = 0; Column < (int)DispColumn.No; Column++)
+            {
+                dgv.Columns[Column].Visible = false;
+            }
+            for (int Column = (int)DispColumn.TantoShoninCode; Column < (int)DispColumn.Bikou; Column++)
+            {
+                if (Column != (int)DispColumn.TantoShonin
+                    && Column != (int)DispColumn.Shonin1
+                    && Column != (int)DispColumn.Shonin2
+                    && Column != (int)DispColumn.Shonin3
+                    && Column != (int)DispColumn.Shonin4
+                    && Column != (int)DispColumn.Shonin5
+                    && Column != (int)DispColumn.Shonin6
+                    && Column != (int)DispColumn.Shonin7
+                    && Column != (int)DispColumn.Shonin8
+                    && Column != (int)DispColumn.Shonin9
+                    && Column != (int)DispColumn.Shonin10)
+                    dgv.Columns[Column].Visible = false;
+            }
+
+        }
+        #endregion
+
+
+        /// <summary>
+        /// �Ώی��x�A�����A�x�������擾����
+        /// </summary>
+        /// <param name="currentYearMonth"></param>
+        /// <param name="deadLine"></param>
+        /// <param name="payDate"></param>
+        /// <returns></returns>
+        private bool GetDeadLineAndPayday(ref DateTime currentYearMonth, ref DateTime deadLine, ref DateTime payDate)
+        {
+            IODeadLineMaster IoDLM = new IODeadLineMaster();
+            List<DeadLineMaster> lstDlm = new List<DeadLineMaster>();
+            int days, daysThisMonth, daysNextMonth;
+            string targetMonth;
+            DateTime now = Common.DateTimeUtil.StripTime(DateTime.Now), rangeStDate, rangeEdDate;
+
+            try
+            {
+                //�����}�X�^�擾
+                if (!IoDLM.SelectAction(string.Format(" where LabourKind = {0}", m_Labourkind), ref lstDlm))
+                {
+                    throw new Exception("�����擾�G���[�B");
+                }
+                if (lstDlm.Count == 0)
+                {
+                    throw new Exception("�����}�X�^�Ƀf�[�^�����݂��܂���B");
+                }
+
+                //�I��Ώی�������ꍇ
+                if (cmbTargetMonth.SelectedValue != null)
+                {
+                    targetMonth = cmbTargetMonth.SelectedValue.ToString();
+                }
+                else
+                {
+                    //�I���������ꍇ�͓�������Ƃ���
+                    if (now <= new DateTime(now.Year, now.Month, lstDlm[0].DeadLine))
+                    {
+                        targetMonth = now.AddMonths(-1).ToString("yyyyMM");
+                    }
+                    else
+                    {
+                        targetMonth = now.ToString("yyyyMM");
+                    }
+                }
+
+                //���ߔ͈͂̌v�Z
+                rangeStDate = new DateTime(int.Parse(targetMonth.Substring(0, 4)), int.Parse(targetMonth.Substring(4, 2)), 1);
+                rangeEdDate = rangeStDate.AddMonths(1);
+                daysThisMonth = DateTime.DaysInMonth(int.Parse(targetMonth.Substring(0, 4)), int.Parse(targetMonth.Substring(4, 2)));
+                daysNextMonth = DateTime.DaysInMonth(rangeEdDate.Year, rangeEdDate.Month);
+                ////�͈͎n
+                if (daysThisMonth < lstDlm[0].DeadLine)
+                {
+                    rangeStDate = rangeStDate.AddDays(daysThisMonth - 1);
+                }
+                else
+                {
+                    rangeStDate = rangeStDate.AddDays(lstDlm[0].DeadLine);
+                }
+                //�͈͏I
+                if (daysNextMonth < lstDlm[0].DeadLine)
+                {
+                    rangeEdDate = new DateTime(rangeEdDate.Year, rangeEdDate.Month, daysNextMonth);
+                }
+                else
+                {
+                    rangeEdDate = new DateTime(rangeEdDate.Year, rangeEdDate.Month, lstDlm[0].DeadLine);
+                }
+                now = rangeEdDate;
+
+                // ��������
+                daysThisMonth = DateTime.DaysInMonth(now.Year, now.Month);
+                if (lstDlm[0].DeadLine < daysThisMonth)
+                {
+                    deadLine = new DateTime(now.Year, now.Month, lstDlm[0].DeadLine);
+                }
+                else
+                {
+                    deadLine = new DateTime(now.Year, now.Month, daysThisMonth);
+                }
+
+                //�Ώی��x�ݒ�
+                if(now <= deadLine)
+                {
+                    currentYearMonth = deadLine.AddMonths(-1);
+                }
+                else
+                {
+                    currentYearMonth = deadLine;
+                }
+
+                //�x����
+                days = DateTime.DaysInMonth(deadLine.Year, deadLine.Month);
+                if (days < lstDlm[0].PayDay)
+                {
+                    payDate = new DateTime(deadLine.Year, deadLine.Month, days);
+                }
+                else
+                {
+                    payDate = new DateTime(deadLine.Year, deadLine.Month, lstDlm[0].PayDay);
+                }
+      
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoDLM.close();
+                IoDLM = null;
+            }
+
+            return true;
+        }
+
+        #region �Ώی��ݒ�
+        /// <summary>
+        /// �Ώی��ݒ�
+        /// </summary>
+        /// <returns></returns>
+        private bool LoadTargetMonth(ref int PayDay)
+        {
+            IOBillingData IoBD = new IOBillingData();
+            ArrayList arData = new ArrayList();
+            List<KeyValuePair<string, string>> DataList;
+            DateTime deadLine = new DateTime(), payDate = new DateTime(), currentYearMonth = new DateTime();
+
+            try
+            {
+                //���t�Q�̎擾
+                GetDeadLineAndPayday(ref currentYearMonth, ref deadLine, ref payDate);
+                string selectValue = currentYearMonth.ToString("yyyyMM");
+
+                // ���o
+                string sql = string.Format("select Bd.TargetDate from BillingData as Bd left join SubContractorMaster as Scm on Bd.CompanyCode = Scm.CompanyCode and Scm.Labourkind = {0} group by Bd.TargetDate order by Bd.TargetDate desc", m_Labourkind);
+
+                if (!IoBD.ExecuteReader(sql, ref arData)) return false;
+
+                //�����Ώی��x�ݒ�
+                DataList = new List<KeyValuePair<string, string>>();
+�@              string wrk = currentYearMonth.ToString("yyyyMM");
+                DataList.Add(new KeyValuePair<string, string>(wrk, string.Format("{0}/{1}", wrk.Substring(0, 4), wrk.Substring(4, 2))));
+
+                //�ߋ��Ώی��x�ݒ�
+                foreach (object[] work in arData)
+                {
+                    wrk = CommonMotions.cnvString(work[0]);
+                    if (int.Parse(wrk) < int.Parse(selectValue))
+                    {
+                        DataList.Add(new KeyValuePair<string, string>(wrk, string.Format("{0}/{1}", wrk.Substring(0, 4), wrk.Substring(4, 2))));
+                    }
+                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(wrk, string.Format("{0}/{1}", wrk.Substring(0, 4), wrk.Substring(4, 2)));
+                }
+
+                // �R���{�{�b�N�X�����\��
+                //cmbTargetMonth.SelectedIndexChanged -= cmbTargetMonth_SelectedIndexChanged; //(�\���{�^���ɂ��ĕ\���̂��߁A�C�x���g�ōĕ`�悵�Ȃ�)
+                cmbTargetMonth.DataSource = null;
+                ComboBoxAction.InitDataSetCombBox(cmbTargetMonth, DataList, false);
+                //cmbTargetMonth.SelectedIndexChanged += cmbTargetMonth_SelectedIndexChanged;
+
+                // �����l�ݒ�
+                cmbTargetMonth.SelectedValue = selectValue;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoBD.close();
+                IoBD = null;
+            }
+
+        }
+        #endregion �Ώی��ݒ�
+
+
+
+
+        #region �ꗗ�\���Ώۃt���O�ɑΉ������ꗗ��\������
+        /// <summary>
+        /// �ꗗ�\���Ώۃt���O�ɑΉ������ꗗ��\������
+        /// </summary>
+        private void showView()
+        {
+            try
+            {
+                if (m_viewTarget == 0)
+                {
+                    // �����܂Ƃ߈ꗗ�i�Ǝҁj��\��
+                    dgvCompany.Visible = true;
+                    dgvProject.Visible = false;
+                }
+                else
+                {
+                    // �����܂Ƃ߈ꗗ�i����j��\��
+                    dgvCompany.Visible = false;
+                    dgvProject.Visible = true;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+        #region �{�^��������s��
+        /// <summary>
+        /// �{�^��������s���i�f�[�^�����ɂ��ω��j
+        /// </summary>
+        private void controlButton_DataCount()
+        {
+            if (m_userType == UserType.Soumu || m_userType == UserType.Eigyo || m_userType == UserType.Sonota)
+                return;
+
+            DataGridView dgv = getShowingView();
+
+            DataGridViewRow[] Rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1)
+                                                                    .ToArray();
+            if (Rows.Count() == 0)
+            {
+                btnAddProject.Enabled = false;
+                btnDeleteProject.Enabled = false;
+            }
+            else
+            {
+                btnAddProject.Enabled = true;
+                btnDeleteProject.Enabled = true;
+            }
+
+        }
+        /// <summary>
+        /// �{�^��������s��
+        /// </summary>
+        private void controlButton()
+        {
+            try
+            {
+                // ���[�U���̃{�^������
+                switch (m_userType)
+                {
+                    case UserType.Soumu:
+                        btnAddCompany.Enabled = true;
+                        btnDeleteCompany.Enabled = true;
+                        btnAddProject.Enabled = false;
+                        btnDeleteProject.Enabled = false;
+                        break;
+                    case UserType.Koji:
+                    case UserType.Sekinin:
+                        btnAddCompany.Enabled = false;
+                        btnDeleteCompany.Enabled = false;
+                        btnAddProject.Enabled = true;
+                        btnDeleteProject.Enabled = true;
+                        break;
+                    case UserType.Boss:
+                        btnAddCompany.Enabled = true;
+                        btnDeleteCompany.Enabled = true;
+                        btnAddProject.Enabled = true;
+                        btnDeleteProject.Enabled = true;
+                        break;
+                    case UserType.Eigyo:
+                    case UserType.Sonota:
+                        btnAddCompany.Enabled = false;
+                        btnDeleteCompany.Enabled = false;
+                        btnAddProject.Enabled = false;
+                        btnDeleteProject.Enabled = false;
+                        break;
+
+                }
+
+                // �\���`�����u����v�̏ꍇ�A�񊈐�
+                if (m_viewTarget != 0)
+                {
+                    btnAddCompany.Enabled = false;
+                    btnDeleteCompany.Enabled = false;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        /// <summary>
+        /// �f�[�^�O���b�h�r���[�̑���s�؂�ւ�
+        /// </summary>
+        /// <param name="dgv"></param>
+        private void DataGridView_ReadOnlyChange(DataGridView dgv)
+        {
+            switch (m_userType)
+            {
+                case UserType.Boss:
+                    break;
+                case UserType.Soumu:
+
+                    dgv.Columns[(int)DispColumn.KojiSeikyu].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiNebiki].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiSousai].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiKosoku].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiKanamono].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiSannhaiZei].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KyoryokuUmu].ReadOnly = true;
+                    break;
+                case UserType.Koji:
+                case UserType.Sekinin:
+                    dgv.Columns[(int)DispColumn.SomuSeikyu].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.SomuKosoku].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.SomuKanamono].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.SomuSannhaiZei].ReadOnly = true;
+                    break;
+                case UserType.Sonota:
+                case UserType.Eigyo:
+                    dgv.Columns[(int)DispColumn.KojiSeikyu].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiNebiki].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiSousai].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiKosoku].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiKanamono].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KojiSannhaiZei].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.KyoryokuUmu].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.SomuSeikyu].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.SomuKosoku].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.SomuKanamono].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.SomuSannhaiZei].ReadOnly = true;
+                    dgv.Columns[(int)DispColumn.Bikou].ReadOnly = true;
+                    break;
+            }
+
+        }
+
+        #region ���ݕ\������Ă���ꗗ��Ԃ�
+        /// <summary>
+        /// ���ݕ\������Ă���ꗗ��Ԃ�
+        /// </summary>
+        private DataGridView getShowingView()
+        {
+            try
+            {
+                // �����܂Ƃ߈ꗗ�i�Ǝҁj��\�����Ă���ꍇ
+                if (m_viewTarget == 0)
+                {
+                    return dgvCompany;
+                }
+                else
+                {
+                    return dgvProject;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return null;
+            }
+        }
+        #endregion
+
+        #region ���͉�БI���_�C�A���O�\��
+
+        /// <summary>
+        /// ���͉�БI���_�C�A���O�\��
+        /// </summary>
+        private void ShowSubConstructorDiag()
+        {
+            FrmSubContractorDiag frm = new FrmSubContractorDiag();
+            int No = 0;
+            DataGridView dgv = getShowingView();
+            bool MakeGoukei = false;
+            int MakeIndex = -1;
+            try
+            {
+                frm.ConstructionCode = 0;
+                frm.StartupSource = (int)ClsExcute.ProcessExecuteNo.RequestSummaryList;
+
+                //********************************************************
+                // ��ԋƎҋ敪��n���A�g���͂����ɂȂ�܂�
+                //*********************************************************
+                frm.SelectLabourKind = m_Labourkind;
+
+                // ���͉�БI��\��
+                frm.ShowDialog();
+
+                if (frm.EndButton == System.Windows.Forms.DialogResult.OK)
+                {
+                    SubContractorMaster selRec = frm.SelectData;
+
+
+                    if (dgvCompany.Visible == true)  // �Ǝ�
+                    {
+                        // ���ɕ\������Ă���Ǝ҂͒ǉ����Ȃ�
+                        DataGridViewRow[] rows = dgv.Rows.Cast<DataGridViewRow>()
+                                                                    .Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == selRec.CompanyCode
+                                                                             && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1).ToArray();
+                        if (rows.Count() > 1)
+                        {
+                            return;
+                        }
+
+                        // No�l
+                        string cell = dgv.Rows.Cast<DataGridViewRow>().Where(x => (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted)
+                                                                      .Max(x => (string)x.Cells[(int)DispColumn.No].Value.ToString());
+                        if (cell == null)
+                        {
+                            No = 1;
+                        }
+                        else
+                        {
+                            No = CommonMotions.cnvInt(cell) + 1;
+                        }
+
+                        MakeIndex = SearchRowIndex(selRec.DisplayOrder);
+
+                        // �f�[�^���͍s
+                        MakeNewRow(selRec.CompanyCode, selRec.CompanyName, 0, No, ref MakeIndex, -1, MakeIndex);
+                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = selRec.DisplayOrder;
+                        MakeIndex++;
+                        MakeGoukei = true;
+
+                    }
+                    else if (dgvProject.Visible == true)  // ����
+                    {
+                        // ����ŋƎҒǉ��͂Ȃ�
+                    }
+
+                    // ���v�s�쐬
+                    if (MakeGoukei == true)
+                    {
+                        // ���v�s�ǉ�
+                        MakeGoukeiGyo(dgv, selRec.CompanyCode, selRec.DisplayOrder, MakeIndex);
+
+                    }
+
+                    ResetNo();
+
+                    m_bChengeAns = true;
+                }
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region ����I���_�C�A���O�\��
+        /// <summary>
+        /// �H���Č��I���_�C�A���O�\��
+        /// </summary>
+        private void ShowSubLocationDiag()
+        {
+            ConstructionFieldNameHeader constructionFieldNameHeader = new ConstructionFieldNameHeader();
+            DataGridView dgv = getShowingView();
+            IOConstructionBaseInfo IoCbi = new IOConstructionBaseInfo();
+            IOMPersonInCharge IoMpic = new IOMPersonInCharge();
+            FrmRegField frmRegField = new FrmRegField();
+            int ConstrDepartmentCode = 0;
+            ArrayList arData;
+            List<RequestGridKeys> DeleteRowKeys = new List<RequestGridKeys>();
+
+            try
+            {
+                int PersonCharge = 0;
+                int iGoukeiCode = 0;
+                int CompanyDispOrder = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.CompanyDispOrder].Value);
+                int iCompanyCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[m_Company_Column].Value);
+                int iSeqNo = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DispColumn.GroupSeqNo].Value);
+                int iGoukei = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                        && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                        && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
+                                                                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iSeqNo)
+                                                               .Sum(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.SomuSeikyu].Value));
+
+                
+                int iKosoku = 0, iKanamono = 0, iSanpai = 0;////�����㓙���U�p
+                string KojiTanto = "", KojiTantoCode="";
+
+                switch (m_userType)
+                {
+                    case UserType.Koji:
+                        PersonCharge = 1;
+                        break;
+                    case UserType.Sekinin:
+                        PersonCharge = 2;
+                        break;
+                    case UserType.Boss:
+                        PersonCharge = 3;
+                        break;
+                }
+
+                //�w�b�_���
+                constructionFieldNameHeader.CompanyCode = iCompanyCode;
+                constructionFieldNameHeader.CompanyName = CommonMotions.cnvString(dgv.CurrentRow.Cells[m_CompanyNM_Column].ToolTipText);
+                constructionFieldNameHeader.TargetDate = m_Select_TargetDate;
+                constructionFieldNameHeader.SeqNo = iSeqNo;
+                constructionFieldNameHeader.BillPrice = iGoukei;
+                constructionFieldNameHeader.PersonCharge = PersonCharge;
+
+                DataGridViewRow[] rows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                    && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                        && (DataRowState)x.Cells[(int)DispColumn.RowState].Value != DataRowState.Deleted
+                                                                        && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
+                                                                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iSeqNo)
+                                                                        .ToArray();
+                foreach (DataGridViewRow r in rows)
+                {
+
+                    bool bReadOnly = CommonMotions.cnvInt(r.Cells[(int)DispColumn.ApprovalEndFlg].Value) == 1 ? true : false;
+
+                    if (bReadOnly == false)
+                    {
+                        if (0 < CheckPaymentDataDetail(iCompanyCode, iSeqNo, CommonMotions.cnvInt(r.Cells[(int)DispColumn.LineCount].Value)))
+                        {
+                            bReadOnly = true;
+                        }
+                    }
+
+                    //��ʂ̍s����ݒ�
+                    string sGenbaName = CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].Value) == "" ? CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].ToolTipText) : CommonMotions.cnvString(r.Cells[m_GenbaNM_Column].Value);
+                    constructionFieldNameHeader.ConstructionFieldNameDetails.Add(
+                    //�s�ԍ��A�H���ԍ��A�H�����A�������͋��z�A�폜�t���O�A�ǎ��p�t���O(���F�����t���O)
+                    new ConstructionFieldNameDetail(CommonMotions.cnvInt(r.Cells[(int)DispColumn.LineCount].Value),
+                                                    CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value),
+                                                    sGenbaName,
+                                                    CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuSeikyu].Value), false,
+                                                    bReadOnly));
+
+                    if(CommonMotions.cnvInt(r.Cells[m_Genba_Column].Value)==0) //�����㓙
+                    {
+                        iKosoku = CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuKosoku].Value);
+                        iKanamono = CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuKanamono].Value);
+                        iSanpai = CommonMotions.cnvInt(r.Cells[(int)DispColumn.SomuSannhaiZei].Value);
+                    }
+                }
+
+
+                //����o�^��ʌĂяo��
+                frmRegField.ConstructionFieldNameHeader = constructionFieldNameHeader;
+                frmRegField.ShowDialog();
+                if (frmRegField.EndButton == DialogResult.OK)
+                {
+                    //�ύX���ꂽ�l�ŕ\���s������
+                    foreach (ConstructionFieldNameDetail detail in frmRegField.ConstructionFieldNameHeader.ConstructionFieldNameDetails.OrderBy(x=>x.DeleteFlag==true? 1:0))
+                    {
+                        if (detail.ReadOnly == false)
+                        {
+                            string sCompanyName = "", sGenbaName = "";
+                            arData = null;
+                            bool bGoukeiDelete = false;
+
+                            if (m_viewTarget == 0)
+                            {
+                                iGoukeiCode = iCompanyCode;
+                                sGenbaName = detail.FieldName;
+                            }
+                            else
+                            {
+                                iGoukeiCode = detail.ConstructionCode;
+                                sCompanyName = constructionFieldNameHeader.CompanyName;
+                            }
+
+                            KojiTanto = "";
+                            KojiTantoCode = "";
+
+                            // �s���s�ȊO
+                            if (detail.ConstructionCode != 0)
+                            {
+                                // �I�������H���̍H���S���҂̕����敪���擾����
+                                ConstructionBaseInfo Cbi = new ConstructionBaseInfo();
+                                PersonInChargeMaster Picm = new PersonInChargeMaster();
+                                string sWhere = IoCbi.CreatePrimarykeyString(detail.ConstructionCode);
+                                if (!IoCbi.SelectAction(sWhere, ref Cbi)) throw new Exception("�H����{���擾�G���[");
+
+                                sWhere = IoMpic.CreatePrimarykeyString(Cbi.ConstructionPersonCode);
+                                if (!IoMpic.SelectAction(sWhere, ref Picm)) throw new Exception("�S���҃}�X�^�擾�G���[");
+                                ConstrDepartmentCode = Picm.DepartmentCode;
+
+                                //�H���S����
+                                KojiTantoCode = Picm.PersonCode.ToString();
+                                KojiTanto = Picm.SealPrintName;
+
+                                // �������X���E�������ԑ��E�\�Z���̒l�擾
+                                arData = new ArrayList();
+                                if (!GetMarubatu(IoCbi, detail.ConstructionCode, ref arData)) throw new Exception("�H����{���E���F�f�[�^�G���[");
+                            }
+
+                            // �����̍s�ԍ�����
+                            int iRowIndex = SearchRowIndex(m_Company_Column, iCompanyCode, GoukeiRows.���v, iSeqNo, CommonMotions.cnvInt(detail.LineCount));
+
+                            //�����㓙���U
+                            if (detail.ConstructionCode == 0 && detail.DeleteFlag == true)
+                            {
+                                dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKosoku].Value = 0;
+                                dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKanamono].Value = 0;
+                                dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuSannhaiZei].Value = 0;
+                            }
+                            else if (detail.DeleteFlag == true)
+                            {
+                                if(CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKosoku].Value)>0)
+                                {
+                                    iKosoku = CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKosoku].Value);
+                                }
+                                if (CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKanamono].Value) > 0)
+                                {
+                                    iKanamono = CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKanamono].Value);
+                                }
+                                if (CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuSannhaiZei].Value) > 0)
+                                {
+                                    iSanpai = CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuSannhaiZei].Value);
+                                }
+                            }
+
+                            if (iRowIndex != -1)
+                            {
+                                if (detail.DeleteFlag == true)
+                                {
+                                    if ((DataRowState)dgv.Rows[iRowIndex].Cells[(int)DispColumn.RowState].Value == DataRowState.Added)
+                                    {
+                                        //�폜�}�[�N(�L�[���ڋL�^)
+                                        DeleteRowKeys.Add(new RequestGridKeys(0, //CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.RowVisible].Value),
+                                                                              CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[m_Company_Column].Value),
+                                                                              CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[m_Genba_Column].Value),
+                                                                              CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.RowType].Value),
+                                                                              CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.GroupSeqNo].Value),
+                                                                              CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[(int)DispColumn.LineCount].Value)));
+                                                                                
+                                        dgv.Rows[iRowIndex].Cells[(int)DispColumn.RowVisible].Value = 0;
+                                    }
+                                    else
+                                    {
+                                        dgv.Rows[iRowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Deleted;
+                                        dgv.Rows[iRowIndex].Cells[(int)DispColumn.RowVisible].Value = 0;
+                                        dgv.Rows[iRowIndex].Visible = false;
+                                    }
+                                    if (m_viewTarget == 1)
+                                    {
+                                        DeleteGoukeiRows(CommonMotions.cnvInt(dgv.Rows[iRowIndex].Cells[m_GoukeiCode_Column].Value), ref bGoukeiDelete);
+                                    }
+                                }
+                                else
+                                {
+                                    dgv.Rows[iRowIndex].Cells[m_Genba_Column].Value = detail.ConstructionCode;
+                                    dgv.Rows[iRowIndex].Cells[m_GenbaNM_Column].Value = detail.FieldName;
+                                    dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuSeikyu].Value = detail.BillPrice;
+
+                                    ////�����㓙���U �����̍s�Ɋ��U��
+                                    if (iKosoku > 0)
+                                    {
+                                        dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKosoku].Value = iKosoku;
+                                        iKosoku = 0;
+                                    }
+                                    if (iKanamono > 0)
+                                    {
+                                        dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuKanamono].Value = iKanamono;
+                                        iKanamono = 0;
+                                    }
+                                    if (iSanpai > 0)
+                                    {
+                                        dgv.Rows[iRowIndex].Cells[(int)DispColumn.SomuSannhaiZei].Value = iSanpai;
+                                        iSanpai = 0;
+                                    }
+                                }
+                            }
+                            else
+                            {
+
+                                DataGridViewRow[] MaxRow;
+                                int iNo = 0;
+                                bool bNewGoukei = false;
+                                int iFumeiIndex = -1;
+                                if (m_viewTarget == 0)
+                                {
+                                    //�ő�s�ԍ��̎擾(�B��Ă���s���܂߂�)
+                                    int MaxLineCount = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
+                                                                                                && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iSeqNo)
+                                                                                       .Max(y => CommonMotions.cnvInt(y.Cells[(int)DispColumn.LineCount].Value));
+
+                                    MaxRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
+                                                                                                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iSeqNo
+                                                                                                        && CommonMotions.cnvInt(x.Cells[(int)DispColumn.LineCount].Value) == MaxLineCount)
+                                                                                               .ToArray();
+                                    if (MaxRow.Count() > 1)
+                                    {
+                                        DataGridViewRow dgvr = null;
+                                        foreach(DataGridViewRow r in MaxRow)
+                                        {
+                                            dgvr = r;
+                                            if (CommonMotions.cnvInt(r.Cells[(int)DispColumn.RowVisible].Value) == 1) break;
+                                        }
+                                        MaxRow = new DataGridViewRow[] { dgvr };
+                                    }
+                                }
+                                else
+                                {
+                                    //�@������R�[�h�̍ő喾�הԍ����擾����
+                                    string MaxGoukeiSeq = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == detail.ConstructionCode
+                                                                                                 && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1)
+                                                                                       .Max(y => CommonMotions.cnvString(y.Cells[(int)DispColumn.GoukeiSeqNo].Value));
+
+                                    if (MaxGoukeiSeq == null)
+                                    {
+                                        // �f�[�^�����݂��Ȃ��i�V�K����R�[�h�j
+                                        bNewGoukei = true;
+                                        MaxRow = new DataGridViewRow[] { dgv.Rows[dgv.Rows.Count - 1] };
+
+                                        if (m_viewTarget == 1 && detail.ConstructionCode == 0)
+                                        {
+                                            iFumeiIndex = 0;
+                                        }
+
+                                        // No�l
+                                        iNo = dgv.Rows.Cast<DataGridViewRow>().Max(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.No].Value.ToString()));
+                                        iNo++;
+                                    }
+                                    else
+                                    {
+                                        // �擾�����f�[�^�̃C���f�b�N�X���擾
+                                        MaxRow = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == detail.ConstructionCode
+                                                                                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GoukeiSeqNo].Value) == CommonMotions.cnvInt(MaxGoukeiSeq))
+                                                                                                   .ToArray();
+                                    }
+                                }
+                                int MakeIndex = 0;
+                                int SendMakeIndex;
+                                if (m_viewTarget == 0)
+                                {
+                                    SendMakeIndex = iFumeiIndex == -1 ? MaxRow[0].Index : iFumeiIndex;
+                                }
+                                else
+                                {
+                                    SendMakeIndex = iFumeiIndex == -1 ? MaxRow[0].Index + 1 : iFumeiIndex;
+                                }
+                                MakeNewRow(iCompanyCode, sCompanyName, detail.ConstructionCode, iNo, ref MakeIndex, iSeqNo, SendMakeIndex, detail.FieldName);
+
+                                string sGoukeiName = m_viewTarget == 0 ? constructionFieldNameHeader.CompanyName : detail.FieldName;
+                                dgv.Rows[MakeIndex].Cells[m_GoukeiCode_Column + 1].ToolTipText = sGoukeiName;
+                                dgv.Rows[MakeIndex].Cells[(int)DispColumn.CompanyDispOrder].Value = CompanyDispOrder;
+                                dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuSeikyu].Value = detail.BillPrice;
+
+                                // �s���s�ȊO
+                                if (detail.ConstructionCode != 0)
+                                {
+                                    // ���F�Ґݒ�
+                                    int iDefaultCount = 0;
+                                    if (!SetDefaultShonin(dgv, MakeIndex, ConstrDepartmentCode, ref iDefaultCount)) throw new Exception("�������F�Ғl�ݒ�G���[");
+
+                                    // ���F��\��
+                                    if(iDefaultCount>0)
+                                    { 
+                                        for (int i = 0; i<iDefaultCount;i++) 
+                                        {
+                                            dgv.Columns[(int)DispColumn.Shonin1+(i * 5)].Visible = true;
+                                        }
+                                    }
+
+                                    if (arData != null && arData.Count != 0)
+                                    {
+                                        // ��������o�E�����������E�\�Z��
+                                        object[] row = (object[])arData[0];
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.CyuumonshoTeisyutu].Value = row[0];
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.CyuumonshoTouchaku].Value = row[1];
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.YosanSho].Value = row[2];
+                                    }
+
+                                    // ���e�X�g�p
+                                    if (CommonMotions.LoginUserData.PersonCode == 88889988)
+                                    {
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.TantoShonin].Value = "�e�X�g";
+                                    }
+                                    else
+                                    { 
+                                        //�S���ҏ��F�ݒ�
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.TantoShoninCode].Value = KojiTantoCode;
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.TantoShonin].Value = KojiTanto;
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.TantoShonin].Style.ForeColor = Color.Gray;
+                                    }
+
+                                    ////�����㓙���U �ŏ��̒ǉ����Ɋ��U��
+                                    if (iKosoku > 0)
+                                    {
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuKosoku].Value = iKosoku;
+                                        iKosoku = 0;
+                                    }
+                                    if (iKanamono > 0)
+                                    {
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuKanamono].Value = iKanamono;
+                                        iKanamono = 0;
+                                    }
+                                    if (iSanpai > 0)
+                                    {
+                                        dgv.Rows[MakeIndex].Cells[(int)DispColumn.SomuSannhaiZei].Value = iSanpai;
+                                        iSanpai = 0;
+                                    }
+                                }
+
+                                // �V�K���v�s���쐬����
+                                if (bNewGoukei == true)
+                                {
+                                    // ���v�s�ǉ�(�V�K�̍��v�ǉ��͌����ʂ̂�)
+                                    MakeGoukeiGyo(dgv, detail.ConstructionCode, CompanyDispOrder, MakeIndex + 1);
+                                }
+
+                            }
+
+                            if (bGoukeiDelete == false)
+                            {
+                                // ���v�l�Z�o
+                                setGoukei_DataDisp(dgv, iGoukeiCode);
+                            }
+
+                        }
+                    }
+
+                    if(iKosoku>0 || iSanpai > 0 || iKanamono>0 )
+                    {
+                        DataGridViewRow[] zappiRows = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == 0
+                                                                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == 1
+                                                                                            && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == iCompanyCode
+                                                                                            && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == iSeqNo
+                                                                                            && CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == 0).ToArray();
+
+                        if(zappiRows != null)
+                        {
+                            if (iKosoku > 0)
+                            {
+                                zappiRows[0].Cells[(int)DispColumn.SomuKosoku].Value = iKosoku;
+                                iKosoku = 0;
+                            }
+                            if (iKanamono > 0)
+                            {
+                                zappiRows[0].Cells[(int)DispColumn.SomuKanamono].Value = iKanamono;
+                                iKanamono = 0;
+                            }
+                            if (iSanpai > 0)
+                            {
+                                zappiRows[0].Cells[(int)DispColumn.SomuSannhaiZei].Value = iSanpai;
+                                iSanpai = 0;
+                            }
+                        }
+                    }
+
+                    // �}�[�N���Ă������폜�Ώۍs�����݂���΍폜����
+                    foreach(RequestGridKeys delRow in DeleteRowKeys)
+                    {
+                        DataGridViewRow[] r = dgv.Rows.Cast<DataGridViewRow>().Where(x => CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowVisible].Value) == delRow.Visible
+                                                                                         && CommonMotions.cnvInt(x.Cells[(int)DispColumn.RowType].Value) == delRow.RowType
+                                                                                         && CommonMotions.cnvInt(x.Cells[m_Company_Column].Value) == delRow.CompanyCode
+                                                                                         && CommonMotions.cnvInt(x.Cells[m_Genba_Column].Value) == delRow.GenbaCode
+                                                                                         && CommonMotions.cnvInt(x.Cells[(int)DispColumn.GroupSeqNo].Value) == delRow.SeqNo
+                                                                                         && CommonMotions.cnvInt(x.Cells[(int)DispColumn.LineCount].Value) == delRow.LineCount)
+                                                                                         .ToArray();
+                        if(r!=null)
+                        {
+                            dgv.Rows.Remove(r[0]);
+                        }
+                    }
+
+                    // ���v�l�Z�o
+                    setGoukei_DataDisp(dgv, iGoukeiCode);
+
+                    if (m_viewTarget==0)
+                    {
+                        ResetSeqNo(iGoukeiCode);
+                    }
+                    ResetNo();
+                }
+
+
+                m_bChengeAns = true;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frmRegField.Dispose();
+                frmRegField = null;
+                IoCbi = null;
+            }
+        }
+        #endregion
+        #region �s�ԍ��擾
+        /// <summary>
+        /// �s�ԍ��擾
+        /// </summary>
+        private int getNewIndexNo()
+        {
+            try
+            {
+                DataGridView dgv = getShowingView();
+                return dgv.Rows.Count;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("�V�X�e���G���[�F{0}�F{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.Designer.cs	(revision 51)
@@ -0,0 +1,1049 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class FrmSelectPayment
+    {
+        /// <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();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.label3 = new System.Windows.Forms.Label();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.btnShow = new System.Windows.Forms.Button();
+            this.comboBox1 = new System.Windows.Forms.ComboBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.dgvMaster = new System.Windows.Forms.DataGridView();
+            this.EditStatus = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.No = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderersDivision = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderersCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SeqNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.LineCount = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderersName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.DepositDate = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.DepositAmountCash = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.DepositAmountBill = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.RequestNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OrderNo = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ConstructionName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ConstructionName_Raw = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.PaymentSchedule = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.BillCreationDate = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.BillPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.TaxPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.DepositAmount = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.DiscountAmount = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.CnstrPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Fees = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OtherAdjustments = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.CarryAmount = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.PersonName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.PersonCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.PersonDate = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalName_10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalCode_10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalAuthority_10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalDate_10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ApprovalOrder_10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.btnAddCmp = new System.Windows.Forms.Button();
+            this.btnDelCmp = new System.Windows.Forms.Button();
+            this.btnAddFld = new System.Windows.Forms.Button();
+            this.Registration = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.panel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // label3
+            // 
+            this.label3.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label3.BackColor = System.Drawing.Color.White;
+            this.label3.Font = new System.Drawing.Font("ＭＳ Ｐゴシック", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.Location = new System.Drawing.Point(561, 8);
+            this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(292, 34);
+            this.label3.TabIndex = 3;
+            this.label3.Text = "入　金　確　認";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // panel1
+            // 
+            this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
+            this.panel1.Controls.Add(this.btnShow);
+            this.panel1.Controls.Add(this.comboBox1);
+            this.panel1.Controls.Add(this.label2);
+            this.panel1.Location = new System.Drawing.Point(8, 50);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(1399, 61);
+            this.panel1.TabIndex = 6;
+            // 
+            // btnShow
+            // 
+            this.btnShow.BackColor = System.Drawing.Color.Blue;
+            this.btnShow.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnShow.ForeColor = System.Drawing.Color.White;
+            this.btnShow.Location = new System.Drawing.Point(220, 16);
+            this.btnShow.Name = "btnShow";
+            this.btnShow.Size = new System.Drawing.Size(120, 30);
+            this.btnShow.TabIndex = 6;
+            this.btnShow.Text = "表　示";
+            this.btnShow.UseVisualStyleBackColor = false;
+            this.btnShow.Click += new System.EventHandler(this.btnShow_Click);
+            // 
+            // comboBox1
+            // 
+            this.comboBox1.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBox1.DropDownWidth = 120;
+            this.comboBox1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.comboBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBox1.FormattingEnabled = true;
+            this.comboBox1.Location = new System.Drawing.Point(94, 19);
+            this.comboBox1.Name = "comboBox1";
+            this.comboBox1.Size = new System.Drawing.Size(120, 24);
+            this.comboBox1.TabIndex = 7;
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.CausesValidation = false;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.Location = new System.Drawing.Point(8, 16);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(80, 30);
+            this.label2.TabIndex = 6;
+            this.label2.Text = "対象月";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, 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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.EditStatus,
+            this.No,
+            this.OrderersDivision,
+            this.OrderersCode,
+            this.SeqNo,
+            this.LineCount,
+            this.OrderersName,
+            this.DepositDate,
+            this.DepositAmountCash,
+            this.DepositAmountBill,
+            this.RequestNo,
+            this.OrderNo,
+            this.ConstructionName,
+            this.ConstructionName_Raw,
+            this.PaymentSchedule,
+            this.BillCreationDate,
+            this.BillPrice,
+            this.TaxPrice,
+            this.DepositAmount,
+            this.DiscountAmount,
+            this.CnstrPrice,
+            this.Fees,
+            this.OtherAdjustments,
+            this.CarryAmount,
+            this.PersonName,
+            this.PersonCode,
+            this.PersonDate,
+            this.ApprovalName_1,
+            this.ApprovalCode_1,
+            this.ApprovalAuthority_1,
+            this.ApprovalDate_1,
+            this.ApprovalOrder_1,
+            this.ApprovalName_2,
+            this.ApprovalCode_2,
+            this.ApprovalAuthority_2,
+            this.ApprovalDate_2,
+            this.ApprovalOrder_2,
+            this.ApprovalName_3,
+            this.ApprovalCode_3,
+            this.ApprovalAuthority_3,
+            this.ApprovalDate_3,
+            this.ApprovalOrder_3,
+            this.ApprovalName_4,
+            this.ApprovalCode_4,
+            this.ApprovalAuthority_4,
+            this.ApprovalDate_4,
+            this.ApprovalOrder_4,
+            this.ApprovalName_5,
+            this.ApprovalCode_5,
+            this.ApprovalAuthority_5,
+            this.ApprovalDate_5,
+            this.ApprovalOrder_5,
+            this.ApprovalName_6,
+            this.ApprovalCode_6,
+            this.ApprovalAuthority_6,
+            this.ApprovalDate_6,
+            this.ApprovalOrder_6,
+            this.ApprovalName_7,
+            this.ApprovalCode_7,
+            this.ApprovalAuthority_7,
+            this.ApprovalDate_7,
+            this.ApprovalOrder_7,
+            this.ApprovalName_8,
+            this.ApprovalCode_8,
+            this.ApprovalAuthority_8,
+            this.ApprovalDate_8,
+            this.ApprovalOrder_8,
+            this.ApprovalName_9,
+            this.ApprovalCode_9,
+            this.ApprovalAuthority_9,
+            this.ApprovalDate_9,
+            this.ApprovalOrder_9,
+            this.ApprovalName_10,
+            this.ApprovalCode_10,
+            this.ApprovalAuthority_10,
+            this.ApprovalDate_10,
+            this.ApprovalOrder_10});
+            this.dgvMaster.EnableHeadersVisualStyles = false;
+            this.dgvMaster.Location = new System.Drawing.Point(8, 117);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersWidth = 24;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.Size = new System.Drawing.Size(1399, 474);
+            this.dgvMaster.TabIndex = 7;
+            // 
+            // EditStatus
+            // 
+            this.EditStatus.HeaderText = "■編集状態";
+            this.EditStatus.Name = "EditStatus";
+            this.EditStatus.Visible = false;
+            // 
+            // No
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.No.DefaultCellStyle = dataGridViewCellStyle2;
+            this.No.HeaderText = "No.";
+            this.No.Name = "No";
+            this.No.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.No.Width = 40;
+            // 
+            // OrderersDivision
+            // 
+            this.OrderersDivision.HeaderText = "■発注者区分";
+            this.OrderersDivision.Name = "OrderersDivision";
+            this.OrderersDivision.Visible = false;
+            // 
+            // OrderersCode
+            // 
+            this.OrderersCode.HeaderText = "■発注者コード";
+            this.OrderersCode.Name = "OrderersCode";
+            this.OrderersCode.Visible = false;
+            // 
+            // SeqNo
+            // 
+            this.SeqNo.HeaderText = "■連番";
+            this.SeqNo.Name = "SeqNo";
+            this.SeqNo.Visible = false;
+            // 
+            // LineCount
+            // 
+            this.LineCount.HeaderText = "■行番号";
+            this.LineCount.Name = "LineCount";
+            this.LineCount.Visible = false;
+            // 
+            // OrderersName
+            // 
+            this.OrderersName.HeaderText = "請求先名";
+            this.OrderersName.Name = "OrderersName";
+            this.OrderersName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.OrderersName.Width = 200;
+            // 
+            // DepositDate
+            // 
+            this.DepositDate.HeaderText = "入金日";
+            this.DepositDate.Name = "DepositDate";
+            this.DepositDate.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.DepositDate.Width = 120;
+            // 
+            // DepositAmountCash
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.DepositAmountCash.DefaultCellStyle = dataGridViewCellStyle3;
+            this.DepositAmountCash.HeaderText = "入金金額\r\n（振込）";
+            this.DepositAmountCash.Name = "DepositAmountCash";
+            this.DepositAmountCash.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.DepositAmountCash.Width = 140;
+            // 
+            // DepositAmountBill
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.DepositAmountBill.DefaultCellStyle = dataGridViewCellStyle4;
+            this.DepositAmountBill.HeaderText = "入金金額\r\n（手形）";
+            this.DepositAmountBill.Name = "DepositAmountBill";
+            this.DepositAmountBill.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.DepositAmountBill.Width = 140;
+            // 
+            // RequestNo
+            // 
+            this.RequestNo.HeaderText = "■請求No";
+            this.RequestNo.Name = "RequestNo";
+            this.RequestNo.Visible = false;
+            // 
+            // OrderNo
+            // 
+            this.OrderNo.HeaderText = "■受付番号";
+            this.OrderNo.Name = "OrderNo";
+            this.OrderNo.Visible = false;
+            // 
+            // ConstructionName
+            // 
+            this.ConstructionName.HeaderText = "現場名";
+            this.ConstructionName.Name = "ConstructionName";
+            this.ConstructionName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ConstructionName.Width = 220;
+            // 
+            // ConstructionName_Raw
+            // 
+            this.ConstructionName_Raw.HeaderText = "■現場名 (DB登録値)";
+            this.ConstructionName_Raw.Name = "ConstructionName_Raw";
+            this.ConstructionName_Raw.Visible = false;
+            // 
+            // PaymentSchedule
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.PaymentSchedule.DefaultCellStyle = dataGridViewCellStyle5;
+            this.PaymentSchedule.HeaderText = "入金\r\n予定日";
+            this.PaymentSchedule.Name = "PaymentSchedule";
+            this.PaymentSchedule.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.PaymentSchedule.Width = 120;
+            // 
+            // BillCreationDate
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.BillCreationDate.DefaultCellStyle = dataGridViewCellStyle6;
+            this.BillCreationDate.HeaderText = "請求日";
+            this.BillCreationDate.Name = "BillCreationDate";
+            this.BillCreationDate.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.BillCreationDate.Width = 120;
+            // 
+            // BillPrice
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.BillPrice.DefaultCellStyle = dataGridViewCellStyle7;
+            this.BillPrice.HeaderText = "請求金額\r\n（税抜）";
+            this.BillPrice.Name = "BillPrice";
+            this.BillPrice.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.BillPrice.Width = 140;
+            // 
+            // TaxPrice
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.TaxPrice.DefaultCellStyle = dataGridViewCellStyle8;
+            this.TaxPrice.HeaderText = "請求金額\r\n（消費税）";
+            this.TaxPrice.Name = "TaxPrice";
+            this.TaxPrice.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.TaxPrice.Width = 140;
+            // 
+            // DepositAmount
+            // 
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.DepositAmount.DefaultCellStyle = dataGridViewCellStyle9;
+            this.DepositAmount.HeaderText = "入金金額";
+            this.DepositAmount.Name = "DepositAmount";
+            this.DepositAmount.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.DepositAmount.Width = 140;
+            // 
+            // DiscountAmount
+            // 
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.DiscountAmount.DefaultCellStyle = dataGridViewCellStyle10;
+            this.DiscountAmount.HeaderText = "値引金額";
+            this.DiscountAmount.Name = "DiscountAmount";
+            this.DiscountAmount.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.DiscountAmount.Width = 140;
+            // 
+            // CnstrPrice
+            // 
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.CnstrPrice.DefaultCellStyle = dataGridViewCellStyle11;
+            this.CnstrPrice.HeaderText = "協力金";
+            this.CnstrPrice.Name = "CnstrPrice";
+            this.CnstrPrice.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.CnstrPrice.Width = 140;
+            // 
+            // Fees
+            // 
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.Fees.DefaultCellStyle = dataGridViewCellStyle12;
+            this.Fees.HeaderText = "手数料";
+            this.Fees.Name = "Fees";
+            this.Fees.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Fees.Width = 140;
+            // 
+            // OtherAdjustments
+            // 
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.OtherAdjustments.DefaultCellStyle = dataGridViewCellStyle13;
+            this.OtherAdjustments.HeaderText = "その他調整";
+            this.OtherAdjustments.Name = "OtherAdjustments";
+            this.OtherAdjustments.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.OtherAdjustments.Width = 140;
+            // 
+            // CarryAmount
+            // 
+            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.CarryAmount.DefaultCellStyle = dataGridViewCellStyle14;
+            this.CarryAmount.HeaderText = "次回繰越";
+            this.CarryAmount.Name = "CarryAmount";
+            this.CarryAmount.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.CarryAmount.Width = 140;
+            // 
+            // PersonName
+            // 
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.PersonName.DefaultCellStyle = dataGridViewCellStyle15;
+            this.PersonName.HeaderText = "担当者\r\n承認";
+            this.PersonName.Name = "PersonName";
+            this.PersonName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.PersonName.Width = 110;
+            // 
+            // PersonCode
+            // 
+            this.PersonCode.HeaderText = "■担当者コード";
+            this.PersonCode.Name = "PersonCode";
+            this.PersonCode.Visible = false;
+            // 
+            // PersonDate
+            // 
+            this.PersonDate.HeaderText = "■担当者日付";
+            this.PersonDate.Name = "PersonDate";
+            this.PersonDate.Visible = false;
+            // 
+            // ApprovalName_1
+            // 
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_1.DefaultCellStyle = dataGridViewCellStyle16;
+            this.ApprovalName_1.HeaderText = "承認者1\r\n承認";
+            this.ApprovalName_1.Name = "ApprovalName_1";
+            this.ApprovalName_1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_1.Visible = false;
+            this.ApprovalName_1.Width = 110;
+            // 
+            // ApprovalCode_1
+            // 
+            this.ApprovalCode_1.HeaderText = "■承認者コード_1";
+            this.ApprovalCode_1.Name = "ApprovalCode_1";
+            this.ApprovalCode_1.Visible = false;
+            // 
+            // ApprovalAuthority_1
+            // 
+            this.ApprovalAuthority_1.HeaderText = "■承認権限区分_1";
+            this.ApprovalAuthority_1.Name = "ApprovalAuthority_1";
+            this.ApprovalAuthority_1.Visible = false;
+            // 
+            // ApprovalDate_1
+            // 
+            this.ApprovalDate_1.HeaderText = "■承認日付_1";
+            this.ApprovalDate_1.Name = "ApprovalDate_1";
+            this.ApprovalDate_1.Visible = false;
+            // 
+            // ApprovalOrder_1
+            // 
+            this.ApprovalOrder_1.HeaderText = "■承認順番_1";
+            this.ApprovalOrder_1.Name = "ApprovalOrder_1";
+            this.ApprovalOrder_1.Visible = false;
+            // 
+            // ApprovalName_2
+            // 
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_2.DefaultCellStyle = dataGridViewCellStyle17;
+            this.ApprovalName_2.HeaderText = "承認者2\r\n承認";
+            this.ApprovalName_2.Name = "ApprovalName_2";
+            this.ApprovalName_2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_2.Visible = false;
+            this.ApprovalName_2.Width = 110;
+            // 
+            // ApprovalCode_2
+            // 
+            this.ApprovalCode_2.HeaderText = "■承認者コード_2";
+            this.ApprovalCode_2.Name = "ApprovalCode_2";
+            this.ApprovalCode_2.Visible = false;
+            // 
+            // ApprovalAuthority_2
+            // 
+            this.ApprovalAuthority_2.HeaderText = "■承認権限区分_2";
+            this.ApprovalAuthority_2.Name = "ApprovalAuthority_2";
+            this.ApprovalAuthority_2.Visible = false;
+            // 
+            // ApprovalDate_2
+            // 
+            this.ApprovalDate_2.HeaderText = "■承認日付_2";
+            this.ApprovalDate_2.Name = "ApprovalDate_2";
+            this.ApprovalDate_2.Visible = false;
+            // 
+            // ApprovalOrder_2
+            // 
+            this.ApprovalOrder_2.HeaderText = "■承認順番_2";
+            this.ApprovalOrder_2.Name = "ApprovalOrder_2";
+            this.ApprovalOrder_2.Visible = false;
+            // 
+            // ApprovalName_3
+            // 
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_3.DefaultCellStyle = dataGridViewCellStyle18;
+            this.ApprovalName_3.HeaderText = "承認者3\r\n承認";
+            this.ApprovalName_3.Name = "ApprovalName_3";
+            this.ApprovalName_3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_3.Visible = false;
+            this.ApprovalName_3.Width = 110;
+            // 
+            // ApprovalCode_3
+            // 
+            this.ApprovalCode_3.HeaderText = "■承認者コード_3";
+            this.ApprovalCode_3.Name = "ApprovalCode_3";
+            this.ApprovalCode_3.Visible = false;
+            // 
+            // ApprovalAuthority_3
+            // 
+            this.ApprovalAuthority_3.HeaderText = "■承認権限区分_3";
+            this.ApprovalAuthority_3.Name = "ApprovalAuthority_3";
+            this.ApprovalAuthority_3.Visible = false;
+            // 
+            // ApprovalDate_3
+            // 
+            this.ApprovalDate_3.HeaderText = "■承認日付_3";
+            this.ApprovalDate_3.Name = "ApprovalDate_3";
+            this.ApprovalDate_3.Visible = false;
+            // 
+            // ApprovalOrder_3
+            // 
+            this.ApprovalOrder_3.HeaderText = "■承認順番_3";
+            this.ApprovalOrder_3.Name = "ApprovalOrder_3";
+            this.ApprovalOrder_3.Visible = false;
+            // 
+            // ApprovalName_4
+            // 
+            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_4.DefaultCellStyle = dataGridViewCellStyle19;
+            this.ApprovalName_4.HeaderText = "承認者4\r\n承認";
+            this.ApprovalName_4.Name = "ApprovalName_4";
+            this.ApprovalName_4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_4.Visible = false;
+            this.ApprovalName_4.Width = 110;
+            // 
+            // ApprovalCode_4
+            // 
+            this.ApprovalCode_4.HeaderText = "■承認者コード_4";
+            this.ApprovalCode_4.Name = "ApprovalCode_4";
+            this.ApprovalCode_4.Visible = false;
+            // 
+            // ApprovalAuthority_4
+            // 
+            this.ApprovalAuthority_4.HeaderText = "■承認権限区分_4";
+            this.ApprovalAuthority_4.Name = "ApprovalAuthority_4";
+            this.ApprovalAuthority_4.Visible = false;
+            // 
+            // ApprovalDate_4
+            // 
+            this.ApprovalDate_4.HeaderText = "■承認日付_4";
+            this.ApprovalDate_4.Name = "ApprovalDate_4";
+            this.ApprovalDate_4.Visible = false;
+            // 
+            // ApprovalOrder_4
+            // 
+            this.ApprovalOrder_4.HeaderText = "■承認順番_4";
+            this.ApprovalOrder_4.Name = "ApprovalOrder_4";
+            this.ApprovalOrder_4.Visible = false;
+            // 
+            // ApprovalName_5
+            // 
+            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_5.DefaultCellStyle = dataGridViewCellStyle20;
+            this.ApprovalName_5.HeaderText = "承認者5\r\n承認";
+            this.ApprovalName_5.Name = "ApprovalName_5";
+            this.ApprovalName_5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_5.Visible = false;
+            this.ApprovalName_5.Width = 110;
+            // 
+            // ApprovalCode_5
+            // 
+            this.ApprovalCode_5.HeaderText = "■承認者コード_5";
+            this.ApprovalCode_5.Name = "ApprovalCode_5";
+            this.ApprovalCode_5.Visible = false;
+            // 
+            // ApprovalAuthority_5
+            // 
+            this.ApprovalAuthority_5.HeaderText = "■承認権限区分_5";
+            this.ApprovalAuthority_5.Name = "ApprovalAuthority_5";
+            this.ApprovalAuthority_5.Visible = false;
+            // 
+            // ApprovalDate_5
+            // 
+            this.ApprovalDate_5.HeaderText = "■承認日付_5";
+            this.ApprovalDate_5.Name = "ApprovalDate_5";
+            this.ApprovalDate_5.Visible = false;
+            // 
+            // ApprovalOrder_5
+            // 
+            this.ApprovalOrder_5.HeaderText = "■承認順番_5";
+            this.ApprovalOrder_5.Name = "ApprovalOrder_5";
+            this.ApprovalOrder_5.Visible = false;
+            // 
+            // ApprovalName_6
+            // 
+            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_6.DefaultCellStyle = dataGridViewCellStyle21;
+            this.ApprovalName_6.HeaderText = "承認者6\r\n承認";
+            this.ApprovalName_6.Name = "ApprovalName_6";
+            this.ApprovalName_6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_6.Visible = false;
+            this.ApprovalName_6.Width = 110;
+            // 
+            // ApprovalCode_6
+            // 
+            this.ApprovalCode_6.HeaderText = "■承認者コード_6";
+            this.ApprovalCode_6.Name = "ApprovalCode_6";
+            this.ApprovalCode_6.Visible = false;
+            // 
+            // ApprovalAuthority_6
+            // 
+            this.ApprovalAuthority_6.HeaderText = "■承認権限区分_6";
+            this.ApprovalAuthority_6.Name = "ApprovalAuthority_6";
+            this.ApprovalAuthority_6.Visible = false;
+            // 
+            // ApprovalDate_6
+            // 
+            this.ApprovalDate_6.HeaderText = "■承認日付_6";
+            this.ApprovalDate_6.Name = "ApprovalDate_6";
+            this.ApprovalDate_6.Visible = false;
+            // 
+            // ApprovalOrder_6
+            // 
+            this.ApprovalOrder_6.HeaderText = "■承認順番_6";
+            this.ApprovalOrder_6.Name = "ApprovalOrder_6";
+            this.ApprovalOrder_6.Visible = false;
+            // 
+            // ApprovalName_7
+            // 
+            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_7.DefaultCellStyle = dataGridViewCellStyle22;
+            this.ApprovalName_7.HeaderText = "承認者7\r\n承認";
+            this.ApprovalName_7.Name = "ApprovalName_7";
+            this.ApprovalName_7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_7.Visible = false;
+            this.ApprovalName_7.Width = 110;
+            // 
+            // ApprovalCode_7
+            // 
+            this.ApprovalCode_7.HeaderText = "■承認者コード_7";
+            this.ApprovalCode_7.Name = "ApprovalCode_7";
+            this.ApprovalCode_7.Visible = false;
+            // 
+            // ApprovalAuthority_7
+            // 
+            this.ApprovalAuthority_7.HeaderText = "■承認権限区分_7";
+            this.ApprovalAuthority_7.Name = "ApprovalAuthority_7";
+            this.ApprovalAuthority_7.Visible = false;
+            // 
+            // ApprovalDate_7
+            // 
+            this.ApprovalDate_7.HeaderText = "■承認日付_7";
+            this.ApprovalDate_7.Name = "ApprovalDate_7";
+            this.ApprovalDate_7.Visible = false;
+            // 
+            // ApprovalOrder_7
+            // 
+            this.ApprovalOrder_7.HeaderText = "■承認順番_7";
+            this.ApprovalOrder_7.Name = "ApprovalOrder_7";
+            this.ApprovalOrder_7.Visible = false;
+            // 
+            // ApprovalName_8
+            // 
+            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_8.DefaultCellStyle = dataGridViewCellStyle23;
+            this.ApprovalName_8.HeaderText = "承認者8\r\n承認";
+            this.ApprovalName_8.Name = "ApprovalName_8";
+            this.ApprovalName_8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_8.Visible = false;
+            this.ApprovalName_8.Width = 110;
+            // 
+            // ApprovalCode_8
+            // 
+            this.ApprovalCode_8.HeaderText = "■承認者コード_8";
+            this.ApprovalCode_8.Name = "ApprovalCode_8";
+            this.ApprovalCode_8.Visible = false;
+            // 
+            // ApprovalAuthority_8
+            // 
+            this.ApprovalAuthority_8.HeaderText = "■承認権限区分_8";
+            this.ApprovalAuthority_8.Name = "ApprovalAuthority_8";
+            this.ApprovalAuthority_8.Visible = false;
+            // 
+            // ApprovalDate_8
+            // 
+            this.ApprovalDate_8.HeaderText = "■承認日付_8";
+            this.ApprovalDate_8.Name = "ApprovalDate_8";
+            this.ApprovalDate_8.Visible = false;
+            // 
+            // ApprovalOrder_8
+            // 
+            this.ApprovalOrder_8.HeaderText = "■承認順番_8";
+            this.ApprovalOrder_8.Name = "ApprovalOrder_8";
+            this.ApprovalOrder_8.Visible = false;
+            // 
+            // ApprovalName_9
+            // 
+            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_9.DefaultCellStyle = dataGridViewCellStyle24;
+            this.ApprovalName_9.HeaderText = "承認者9\r\n承認";
+            this.ApprovalName_9.Name = "ApprovalName_9";
+            this.ApprovalName_9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_9.Visible = false;
+            this.ApprovalName_9.Width = 110;
+            // 
+            // ApprovalCode_9
+            // 
+            this.ApprovalCode_9.HeaderText = "■承認者コード_9";
+            this.ApprovalCode_9.Name = "ApprovalCode_9";
+            this.ApprovalCode_9.Visible = false;
+            // 
+            // ApprovalAuthority_9
+            // 
+            this.ApprovalAuthority_9.HeaderText = "■承認権限区分_9";
+            this.ApprovalAuthority_9.Name = "ApprovalAuthority_9";
+            this.ApprovalAuthority_9.Visible = false;
+            // 
+            // ApprovalDate_9
+            // 
+            this.ApprovalDate_9.HeaderText = "■承認日付_9";
+            this.ApprovalDate_9.Name = "ApprovalDate_9";
+            this.ApprovalDate_9.Visible = false;
+            // 
+            // ApprovalOrder_9
+            // 
+            this.ApprovalOrder_9.HeaderText = "■承認順番_9";
+            this.ApprovalOrder_9.Name = "ApprovalOrder_9";
+            this.ApprovalOrder_9.Visible = false;
+            // 
+            // ApprovalName_10
+            // 
+            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.ApprovalName_10.DefaultCellStyle = dataGridViewCellStyle25;
+            this.ApprovalName_10.HeaderText = "承認者10\r\n承認";
+            this.ApprovalName_10.Name = "ApprovalName_10";
+            this.ApprovalName_10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ApprovalName_10.Visible = false;
+            this.ApprovalName_10.Width = 110;
+            // 
+            // ApprovalCode_10
+            // 
+            this.ApprovalCode_10.HeaderText = "■承認者コード_10";
+            this.ApprovalCode_10.Name = "ApprovalCode_10";
+            this.ApprovalCode_10.Visible = false;
+            // 
+            // ApprovalAuthority_10
+            // 
+            this.ApprovalAuthority_10.HeaderText = "■承認権限区分_10";
+            this.ApprovalAuthority_10.Name = "ApprovalAuthority_10";
+            this.ApprovalAuthority_10.Visible = false;
+            // 
+            // ApprovalDate_10
+            // 
+            this.ApprovalDate_10.HeaderText = "■承認日付_10";
+            this.ApprovalDate_10.Name = "ApprovalDate_10";
+            this.ApprovalDate_10.Visible = false;
+            // 
+            // ApprovalOrder_10
+            // 
+            this.ApprovalOrder_10.HeaderText = "■承認順番_10";
+            this.ApprovalOrder_10.Name = "ApprovalOrder_10";
+            this.ApprovalOrder_10.Visible = false;
+            // 
+            // btnAddCmp
+            // 
+            this.btnAddCmp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnAddCmp.BackColor = System.Drawing.Color.Orange;
+            this.btnAddCmp.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAddCmp.ForeColor = System.Drawing.Color.Black;
+            this.btnAddCmp.Location = new System.Drawing.Point(8, 597);
+            this.btnAddCmp.Name = "btnAddCmp";
+            this.btnAddCmp.Size = new System.Drawing.Size(120, 30);
+            this.btnAddCmp.TabIndex = 15;
+            this.btnAddCmp.Text = "発注者追加";
+            this.btnAddCmp.UseVisualStyleBackColor = false;
+            this.btnAddCmp.Click += new System.EventHandler(this.btnAddCmp_Click);
+            // 
+            // btnDelCmp
+            // 
+            this.btnDelCmp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnDelCmp.BackColor = System.Drawing.Color.Red;
+            this.btnDelCmp.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDelCmp.ForeColor = System.Drawing.Color.Black;
+            this.btnDelCmp.Location = new System.Drawing.Point(134, 597);
+            this.btnDelCmp.Name = "btnDelCmp";
+            this.btnDelCmp.Size = new System.Drawing.Size(120, 30);
+            this.btnDelCmp.TabIndex = 16;
+            this.btnDelCmp.Text = "発注者削除";
+            this.btnDelCmp.UseVisualStyleBackColor = false;
+            this.btnDelCmp.Click += new System.EventHandler(this.btnDelCmp_Click);
+            // 
+            // btnAddFld
+            // 
+            this.btnAddFld.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnAddFld.BackColor = System.Drawing.Color.Aquamarine;
+            this.btnAddFld.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAddFld.ForeColor = System.Drawing.Color.Black;
+            this.btnAddFld.Location = new System.Drawing.Point(260, 597);
+            this.btnAddFld.Name = "btnAddFld";
+            this.btnAddFld.Size = new System.Drawing.Size(120, 30);
+            this.btnAddFld.TabIndex = 17;
+            this.btnAddFld.Text = "現場追加";
+            this.btnAddFld.UseVisualStyleBackColor = false;
+            this.btnAddFld.Click += new System.EventHandler(this.btnAddFld_Click);
+            // 
+            // Registration
+            // 
+            this.Registration.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.Registration.BackColor = System.Drawing.Color.GreenYellow;
+            this.Registration.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Registration.ForeColor = System.Drawing.Color.Black;
+            this.Registration.Location = new System.Drawing.Point(1161, 597);
+            this.Registration.Name = "Registration";
+            this.Registration.Size = new System.Drawing.Size(120, 30);
+            this.Registration.TabIndex = 19;
+            this.Registration.Text = "登　録";
+            this.Registration.UseVisualStyleBackColor = false;
+            this.Registration.Click += new System.EventHandler(this.Registration_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEnd.BackColor = System.Drawing.Color.Magenta;
+            this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEnd.ForeColor = System.Drawing.Color.Black;
+            this.btnEnd.Location = new System.Drawing.Point(1287, 597);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 20;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // FrmSelectPayment
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 15F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.BackColor = System.Drawing.Color.Black;
+            this.ClientSize = new System.Drawing.Size(1417, 633);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.Registration);
+            this.Controls.Add(this.btnAddFld);
+            this.Controls.Add(this.btnDelCmp);
+            this.Controls.Add(this.btnAddCmp);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.panel1);
+            this.Controls.Add(this.label3);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.Name = "FrmSelectPayment";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmSelectPayment_FormClosing);
+            this.Load += new System.EventHandler(this.FrmSelectPayment_Load);
+            this.panel1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Button btnShow;
+        private System.Windows.Forms.ComboBox comboBox1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.DataGridView dgvMaster;
+        private System.Windows.Forms.Button btnAddCmp;
+        private System.Windows.Forms.Button btnDelCmp;
+        private System.Windows.Forms.Button btnAddFld;
+        private System.Windows.Forms.Button Registration;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.DataGridViewTextBoxColumn EditStatus;
+        private System.Windows.Forms.DataGridViewTextBoxColumn No;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderersDivision;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderersCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn SeqNo;
+        private System.Windows.Forms.DataGridViewTextBoxColumn LineCount;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderersName;
+        private System.Windows.Forms.DataGridViewTextBoxColumn DepositDate;
+        private System.Windows.Forms.DataGridViewTextBoxColumn DepositAmountCash;
+        private System.Windows.Forms.DataGridViewTextBoxColumn DepositAmountBill;
+        private System.Windows.Forms.DataGridViewTextBoxColumn RequestNo;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OrderNo;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ConstructionName;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ConstructionName_Raw;
+        private System.Windows.Forms.DataGridViewTextBoxColumn PaymentSchedule;
+        private System.Windows.Forms.DataGridViewTextBoxColumn BillCreationDate;
+        private System.Windows.Forms.DataGridViewTextBoxColumn BillPrice;
+        private System.Windows.Forms.DataGridViewTextBoxColumn TaxPrice;
+        private System.Windows.Forms.DataGridViewTextBoxColumn DepositAmount;
+        private System.Windows.Forms.DataGridViewTextBoxColumn DiscountAmount;
+        private System.Windows.Forms.DataGridViewTextBoxColumn CnstrPrice;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Fees;
+        private System.Windows.Forms.DataGridViewTextBoxColumn OtherAdjustments;
+        private System.Windows.Forms.DataGridViewTextBoxColumn CarryAmount;
+        private System.Windows.Forms.DataGridViewTextBoxColumn PersonName;
+        private System.Windows.Forms.DataGridViewTextBoxColumn PersonCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn PersonDate;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_6;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalName_10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalCode_10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalAuthority_10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalDate_10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalOrder_10;
+    }
+}
+
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.cs	(revision 51)
@@ -0,0 +1,2705 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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.Master;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using ProcessManagement.Forms.SubForms;
+using System.Reflection;
+
+/// <summary>
+/// 「入金確認」画面
+/// </summary>
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class FrmSelectPayment : Form
+    {
+        /// <summary>
+        /// ロガー
+        /// </summary>
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+
+        /// <summary>
+        /// 利用ユーザータイプ
+        /// </summary>
+        public enum UserType
+        {
+            /// <summary>特別権限</summary>
+            PresidentAuthority,
+            /// <summary>統括者権限</summary>
+            SupervisorAuthority,
+            /// <summary>所属長権限</summary>
+            SuperiorAuthority,
+            /// <summary>一般権限</summary>
+            Staff,
+        }
+
+        /// <summary>
+        /// 保護区分
+        /// </summary>
+        public enum SecRangeType
+        {
+            AllDepartment = 1,
+            MultiDepartment = 2,
+            OneDepartment = 3,
+            InCharge = 4,
+        }
+
+        /// <summary>
+        /// 承認状態
+        /// </summary>
+        public enum ApprovalStatus
+        {
+            None = 0,
+            InCharge,
+            InApproval,
+            Approved,
+        }
+
+        /// <summary>
+        /// 合計行の見出し
+        /// </summary>
+        private enum TotalRows
+        {
+            小計 = 1,
+            入金金額,
+            調整後金額,
+            差額,
+        }
+
+        /// <summary>
+        /// 表示カラム ※■は非表示セル
+        /// </summary>
+        private enum DispColumn
+        {
+            RowType = 0,                                                        // ■編集状態
+            No,                                                                 // No
+            OrderersDivision,                                                   // ■発注先区分
+            OrderersCode,                                                       // ■発注者コード
+            SeqNo,                                                              // ■連番
+            LineCount,                                                          // ■行番号
+            OrderersName,                                                       // 請求先名
+            DepositDate,                                                        // 入金日
+            DepositAmountCash,                                                  // 入金金額 (振込み)
+            DepositAmountBill,                                                  // 入金金額 (手形)
+            RequestNo,                                                          // ■請求No.
+            OrderNo,                                                            // ■受付番号
+            ConstructionName,                                                   // 現場名
+            ConstructionName_Raw,                                               // ■現場名 (DB登録値)
+            PaymentSchedule,                                                    // 入金予定日
+            BillCreationDate,                                                   // 請求日
+            BillPrice,                                                          // 請求金額 (税抜)
+            TaxPrice,                                                           // 請求金額 (消費税)
+            DepositAmount,                                                      // 入金金額
+            DiscountAmount,                                                     // 値引金額
+            CnstrPrice,                                                         // 協力金
+            Fees,                                                               // 手数料
+            OtherAdjustments,                                                   // その他調整
+            CarryAmount,                                                        // 次回繰越
+            PersonName,                                                         // 担当者承認
+            PersonCode,                                                         // ■担当者コード
+            PersonDate,                                                         // ■担当者日付
+            ApprovalName_1,                                                     // 承認者１承認
+            ApprovalCode_1,                                                     // ■承認者コード_1
+            ApprovalAuthority_1,                                                // ■承認権限区分_1
+            ApprovalDate_1,                                                     // ■承認日付_1
+            ApprovalOrder_1,                                                    // ■承認順番_1
+            ApprovalName_2,                                                     // 承認者２承認
+            ApprovalCode_2,                                                     // ■承認者コード_2
+            ApprovalAuthority_2,                                                // ■承認権限区分_2
+            ApprovalDate_2,                                                     // ■承認日付_2
+            ApprovalOrder_2,                                                    // ■承認順番_2
+            ApprovalName_3,                                                     // 承認者３承認
+            ApprovalCode_3,                                                     // ■承認者コード_3
+            ApprovalAuthority_3,                                                // ■承認権限区分_3
+            ApprovalDate_3,                                                     // ■承認日付_3
+            ApprovalOrder_3,                                                    // ■承認順番_3
+            ApprovalName_4,                                                     // 承認者４承認
+            ApprovalCode_4,                                                     // ■承認者コード_4
+            ApprovalAuthority_4,                                                // ■承認権限区分_4
+            ApprovalDate_4,                                                     // ■承認日付_4
+            ApprovalOrder_4,                                                    // ■承認順番_4
+            ApprovalName_5,                                                     // 承認者５承認
+            ApprovalCode_5,                                                     // ■承認者コード_5
+            ApprovalAuthority_5,                                                // ■承認権限区分_5
+            ApprovalDate_5,                                                     // ■承認日付_5
+            ApprovalOrder_5,                                                    // ■承認順番_5
+            ApprovalName_6,                                                     // 承認者６承認
+            ApprovalCode_6,                                                     // ■承認者コード_6
+            ApprovalAuthority_6,                                                // ■承認権限区分_6
+            ApprovalDate_6,                                                     // ■承認日付_6
+            ApprovalOrder_6,                                                    // ■承認順番_6
+            ApprovalName_7,                                                     // 承認者７承認
+            ApprovalCode_7,                                                     // ■承認者コード_7
+            ApprovalAuthority_7,                                                // ■承認権限区分_7
+            ApprovalDate_7,                                                     // ■承認日付_7
+            ApprovalOrder_7,                                                    // ■承認順番_7
+            ApprovalName_8,                                                     // 承認者８承認
+            ApprovalCode_8,                                                     // ■承認者コード_8
+            ApprovalAuthority_8,                                                // ■承認権限区分_8
+            ApprovalDate_8,                                                     // ■承認日付_8
+            ApprovalOrder_8,                                                    // ■承認順番_8
+            ApprovalName_9,                                                     // 承認者９承認
+            ApprovalCode_9,                                                     // ■承認者コード_9
+            ApprovalAuthority_9,                                                // ■承認権限区分_9
+            ApprovalDate_9,                                                     // ■承認日付_9
+            ApprovalOrder_9,                                                    // ■承認順番_9
+            ApprovalName_10,                                                    // 承認者１０承認
+            ApprovalCode_10,                                                    // ■承認者コード_10
+            ApprovalAuthority_10,                                               // ■承認権限区分_10
+            ApprovalDate_10,                                                    // ■承認日付_10
+            ApprovalOrder_10,                                                   // ■承認順番_10
+        }
+
+        /// <summary>
+        /// 取得するデータ項目
+        /// </summary>
+        private enum ClickGetData
+        {
+            OrderersDivision = 0,
+            OrderersCode,
+            TargetDate,
+            SeqNo,
+            DepositDate,
+            DepositAmountCash,
+            DepositAmountBill,
+            CorporateStatusName,
+            CorporateStatusPoint,
+            OrderersName1,
+            OrderersName2,
+            LineCount,
+            RequestNo,
+            OrderNo,
+            DepositAmount,
+            DiscountAmount,
+            CnstrPrice,
+            Fees,
+            OtherAdjustments,
+            CarryAmount,
+            ApprovalPersonCode,
+            ApprovalDate,
+            ApprovalEndFlg,
+            PersonName,
+            DepartmentCode,
+            BillCreationDate,
+            BillPrice,
+            TaxPrice,
+            ConstructionCode,
+            ConstructionPersonCode,
+            ConstrSubPersonCode,
+            ConstructionInstructor,
+            DetailNo,
+            DetailString,
+            ApprovalPersonName1,
+            ApprovalPerson1,
+            ApprovalAuthority1,
+            ApprovalDate1,
+            ApprovalPersonName2,
+            ApprovalPerson2,
+            ApprovalAuthority2,
+            ApprovalDate2,
+            ApprovalPersonName3,
+            ApprovalPerson3,
+            ApprovalAuthority3,
+            ApprovalDate3,
+            ApprovalPersonName4,
+            ApprovalPerson4,
+            ApprovalAuthority4,
+            ApprovalDate4,
+            ApprovalPersonName5,
+            ApprovalPerson5,
+            ApprovalAuthority5,
+            ApprovalDate5,
+            ApprovalPersonName6,
+            ApprovalPerson6,
+            ApprovalAuthority6,
+            ApprovalDate6,
+            ApprovalPersonName7,
+            ApprovalPerson7,
+            ApprovalAuthority7,
+            ApprovalDate7,
+            ApprovalPersonName8,
+            ApprovalPerson8,
+            ApprovalAuthority8,
+            ApprovalDate8,
+            ApprovalPersonName9,
+            ApprovalPerson9,
+            ApprovalAuthority9,
+            ApprovalDate9,
+            ApprovalPersonName10,
+            ApprovalPerson10,
+            ApprovalAuthority10,
+            ApprovalDate10
+        }
+
+        /// <summary>
+        /// 承認情報
+        /// </summary>
+        private class ApproveData
+        {
+            public int Key { get; set; }
+            public string Value { get; set; }
+            public int Order { get; set; }
+            public int ApprovalAuthority { get; set; }
+        }
+
+        /// <summary>
+        /// ユーザ情報
+        /// </summary>
+        private class UserInfo
+        {
+            public UserType m_Type { get; set; }            // 権限
+            public int m_GeneralAffairsFlg { get; set; }    // 総務業務フラグ
+            public SecRangeType m_SecRange { get; set; }    // 保護区分
+            public bool CanEditDeposit
+            {
+                get { return m_GeneralAffairsFlg == 1; }
+            }
+            public bool CanEditDepositDetail
+            {
+                get { return m_GeneralAffairsFlg == 0; }
+            }
+        }
+
+        /// <summary>
+        /// 請求先キー
+        /// </summary>
+        private class OrderersKey
+        {
+            public int OrderersDivision;
+            public int OrderersCode;
+        }
+
+        /// <summary>
+        /// 入金請求先情報
+        /// </summary>
+        private class DepositOrderer
+        {
+            public bool Added = false;
+            private bool deleted = false;
+            public bool Deleted
+            {
+                get { return deleted && Deposits.All(d => d.Deleted); }
+                set
+                {
+                    deleted = value;
+                    foreach (var deposit in Deposits)
+                    {
+                        deposit.Deleted = value;
+                    }
+                }
+            }
+            public int No;
+            public int OrderersDivision;
+            public int OrderersCode;
+            public string OrderersName;
+            public List<Deposit> Deposits = new List<Deposit>();
+            public List<Deposit> VisibleDeposits
+            {
+                get { return Deposits.Where(d => !d.Deleted).ToList(); }
+            }
+            public List<DepositDetail> DepositDetails = new List<DepositDetail>();
+            public List<DepositDetail> VisibleDepositDetails
+            {
+                get { return DepositDetails.Where(dd => dd.Visible && !dd.Deleted).ToList(); }
+            }
+            public int Size
+            {
+                get { return Math.Max(Math.Max(VisibleDeposits.Count, VisibleDepositDetails.Count), 1); }
+            }
+            public Deposit FindDepositBySeqNo(int seqNo)
+            {
+                return Deposits.Find(d => d.SeqNo == seqNo);
+            }
+            public DepositDetail FindDepositDetailByLineCount(int lineCount)
+            {
+                return DepositDetails.Find(dd => dd.LineCount == lineCount);
+            }
+            public int GetNextSeqNo()
+            {
+                if (Deposits.Count == 0)
+                    return 1;
+                return Deposits.Max(d => d.SeqNo) + 1;
+            }
+            public int GetNextLineCount()
+            {
+                if (DepositDetails.Count == 0)
+                    return 1;
+                return DepositDetails.Max(dd => dd.LineCount) + 1;
+            }
+            public bool HasApprovedByStaff
+            {
+                get {
+                    if (DepositDetails.Count == 0)
+                        return false;
+                    return DepositDetails.Any(dd => dd.IsApprovedByStaff);
+                }
+            }
+            public bool HasApprovedByApprover
+            {
+                get
+                {
+                    if (DepositDetails.Count == 0)
+                        return false;
+                    return DepositDetails.Any(dd => dd.IsApprovedByApprover);
+                }
+            }
+            public bool HasApprovedByLastApprover
+            {
+                get
+                {
+                    if (DepositDetails.Count == 0)
+                        return false;
+                    return DepositDetails.Any(dd => dd.IsApprovedByLastApprover);
+                }
+            }
+        }
+
+        /// <summary>
+        /// 入金情報
+        /// </summary>
+        private class Deposit
+        {
+            public bool Added = false;
+            public bool Editted = false;
+            public bool Deleted = false;
+            public int SeqNo;
+            public string DepositDate;
+            public int? DepositAmountCash;
+            public int? DepositAmountBill;
+            public bool CanRemove
+            {
+                get
+                {
+                    // 追加行かつ未入力の場合
+                    return Added 
+                        && string.IsNullOrEmpty(DepositDate)
+                        && !DepositAmountCash.HasValue
+                        && !DepositAmountBill.HasValue;
+                }
+            }
+        }
+
+        /// <summary>
+        /// 入金明細情報
+        /// </summary>
+        private class DepositDetail
+        {
+            public bool Added = false;
+            public bool Editted = false;
+            public bool Deleted = false;
+            public bool Visible;
+            public int SeqNo;
+            public int LineCount;
+            public int RequestNo;
+            public int OrderNo;
+            public string ConstructionName;
+            public string ConstructionNameRow;
+            //public string PaymentSchedule;
+            public string BillCreationDate;
+            public int BillPrice;
+            public int TaxPrice;
+            public int DepositAmount;
+            public int DiscountAmount;
+            public int CnstrPrice;
+            public int Fees;
+            public int OtherAdjustments;
+            public int CarryAmount;
+            public string ApprovalPersonName;
+            public int ApprovalPersonCode;
+            public string ApprovalDate;
+            public int ApprovalEndFlg;
+            public int DepartmentCode;
+            public int ConstructionCode;
+            public int ConstructionPersonCode;
+            public int ConstrSubPersonCode;
+            public int ConstructionInstructor;
+            public ApprovalStatus Status = ApprovalStatus.None;
+            public bool UpperApprovalInUser = false;
+            public List<DepositApproval> DepositApprovals = new List<DepositApproval>();
+            public bool IsApprovedByStaff
+            {
+                get { return !string.IsNullOrEmpty(ApprovalDate); }
+            }
+            public bool IsApprovedByApprover
+            {
+                get
+                {
+                    if (DepositApprovals.Count == 0)
+                        return false;
+                    return DepositApprovals.First().ApprovalDate != "";
+                }
+            }
+            public bool IsApprovedByLastApprover
+            {
+                get
+                {
+                    if (DepositApprovals.Count == 0)
+                        return false;
+                    return DepositApprovals.Last().ApprovalDate != "";
+                }
+            }
+        }
+
+        /// <summary>
+        /// 入金確認承認情報
+        /// </summary>
+        private class DepositApproval
+        {
+            public bool Added = false;
+            public bool Editted = false;
+            public int ApprovalNo;
+            public int ApprovalPerson;
+            public string ApprovalPersonName;
+            public int ApprovalAuthority;
+            public string ApprovalDate;
+        }
+
+        private List<DepositOrderer> depositOrderers;
+
+        /// <summary>編集フラグ</summary>
+        private bool isDirty = false;
+
+        /// <summary>編集前のセルの内容</summary>
+        private string oldCellValue = "";
+
+        /// <summary>データ表示の対象月</summary>
+        private int m_Select_TargetDate = 0;
+
+        /// <summary>終了ボタン押下フラグ</summary>
+        private bool m_CloseingProcessOff = false;
+
+        // ユーザー情報
+        private UserInfo m_UserInfo = new UserInfo()
+        {
+            m_Type = UserType.Staff,
+            m_GeneralAffairsFlg = 0,
+            m_SecRange = SecRangeType.InCharge
+        };
+
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        public FrmSelectPayment()
+        {
+            InitializeComponent();
+        }
+
+        /// <summary>
+        /// フォームロードイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSelectPayment_Load(object sender, EventArgs e)
+        {
+            try
+            {
+                // 対象月コンボBOX設定
+                IODepositData IoDd = new IODepositData();
+                string now = DateTime.UtcNow.ToString("yyyy/MM");
+                List<DepositData> lstDd = new List<DepositData>();
+                List<string> lstDate = new List<string>();
+
+                IoDd.SelectAction(" group by TargetDate order by TargetDate desc", ref lstDd);
+
+                foreach (DepositData DdInfo in lstDd)
+                {
+                    lstDate.Add(DdInfo.TargetDate.Insert(4, "/"));
+                }
+                if (lstDate.IndexOf(now) < 0)
+                {
+                    lstDate.Insert(0, now);
+                }
+
+                comboBox1.Items.AddRange(lstDate.ToArray());
+                comboBox1.SelectedIndex = lstDate.IndexOf(now);
+
+                // ユーザ権限設定
+                SetUserType();
+
+                // ちらつきを抑えるため、ダブルバッファリングを有効にする。
+                dgvMaster.GetType().InvokeMember("DoubleBuffered", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.SetProperty,
+                    null, dgvMaster, new object[] { true });
+
+                SetGridHeaderColor();
+                DisplayData();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.CellDoubleClick += DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter += DataGridView_CellEnter;
+                dgvMaster.CellValueChanged += DataGridView_CellValueChanged;
+            }
+        }
+
+        /// <summary>
+        /// 発注者追加ボタン押下時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAddCmp_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                ResetTargetDate();
+                var f = new FrmSelectRequest(FrmSelectRequest.OpenMode.AddCmp);
+                f.FormClosed += new FormClosedEventHandler(NotifyAddCmp_FormClosed);
+                f.ShowDialog(this);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 発注者削除ボタン押下時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDelCmp_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                ResetTargetDate();
+                if (dgvMaster.RowCount <= 0)
+                    return;
+                var depositOrderer = FindDepositOrderer(dgvMaster.CurrentCell.RowIndex);
+                if (depositOrderer.DepositDetails.Count > 0)
+                {
+                    MessageBox.Show("すでに現場が登録されているため、削除できません。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+                // 保存前のものは削除する
+                if (depositOrderer.Added)
+                    depositOrderers.Remove(depositOrderer);
+                // 保存済みのものは削除フラグを付与
+                else
+                    depositOrderer.Deleted = true;
+                RemoveDepositOrdererRows(depositOrderer);
+                isDirty = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 現場追加ボタン押下時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAddFld_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                ResetTargetDate();
+                if (dgvMaster.RowCount <= 0)
+                    return;
+                // 現場が不明の場合のみ追加可能
+                if (!IsUnknownRow(dgvMaster.CurrentCell.RowIndex))
+                {
+                    MessageBox.Show("不明以外の行が選択されています。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+                var depositOrderer = FindDepositOrderer(dgvMaster.CurrentCell.RowIndex);
+                var f = new FrmSelectRegField();
+                f.m_OrderersDivision = depositOrderer.OrderersDivision;
+                f.m_OrderersCode = depositOrderer.OrderersCode;
+                foreach (var depositDetail in depositOrderer.VisibleDepositDetails)
+                {
+                    f.m_lstMyField.Add(new FrmSelectRegField.MyFieldData()
+                    {
+                        OrderersDivision = depositOrderer.OrderersDivision,
+                        OrderersCode = depositOrderer.OrderersCode,
+                        RequestNo = depositDetail.RequestNo,
+                        OrderNo = depositDetail.OrderNo,
+                        ConstructionName = depositDetail.ConstructionName,
+                        ConstructionName_Raw = depositDetail.ConstructionNameRow,
+                        BillCreationDate = depositDetail.BillCreationDate,
+                        BillPrice = depositDetail.BillPrice,
+                        TaxPrice = depositDetail.TaxPrice,
+                        DepositAmount = depositDetail.DepositAmount,
+                        PersonCode = depositDetail.ApprovalPersonCode,
+                        DeleteFlg = false,
+                        ReadOnly = depositDetail.IsApprovedByStaff,
+                    });
+                }
+                // 不明行を渡す必要がある
+                var unknownIndex = DetectUnknownIndex(dgvMaster.CurrentCell.RowIndex);
+                var unknownCell = dgvMaster.Rows[unknownIndex].Cells;
+                f.m_lstMyField.Add(new FrmSelectRegField.MyFieldData()
+                {
+                    OrderersDivision = depositOrderer.OrderersDivision,
+                    OrderersCode = depositOrderer.OrderersCode,
+                    ConstructionName = CommonMotions.cnvString(unknownCell[(int)DispColumn.ConstructionName].Value),
+                    ConstructionName_Raw = CommonMotions.cnvString(unknownCell[(int)DispColumn.ConstructionName_Raw].Value),
+                    DepositAmount = CommonMotions.cnvInt(unknownCell[(int)DispColumn.DepositAmount].Value),
+                    ReadOnly = true,
+                });
+                f.FormClosed += new FormClosedEventHandler(NotifyAddFld_FormClosed);
+                f.ShowDialog(this);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 表示ボタン押下時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnShow_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                if (isDirty)
+                {
+                    if (MessageBox.Show("データに変更があります、登録せずに対象を変更してよろしいですか？。", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        return;
+                    }
+                }
+                dgvMaster.CellDoubleClick -= DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter -= DataGridView_CellEnter;
+                dgvMaster.CellValueChanged -= DataGridView_CellValueChanged;
+                // グリッド表示
+                DisplayData();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.CellDoubleClick += DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter += DataGridView_CellEnter;
+                dgvMaster.CellValueChanged += DataGridView_CellValueChanged;
+            }
+        }
+
+        /// <summary>
+        /// ×ボタン押下時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSelectPayment_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            try
+            {
+                if (m_CloseingProcessOff) return;
+
+                if (isDirty)
+                {
+                    if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        e.Cancel = true;
+                        return;
+                    }
+                }
+
+                // 前プロセスに戻る
+                ClsExcute.BackProcess();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 終了ボタンクリック時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                if (isDirty && MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    return;
+
+                // 前プロセスに戻る
+                ClsExcute.BackProcess();
+
+                // クローズ処理をOFFにする。
+                m_CloseingProcessOff = true;
+
+                Close();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 登録ボタンクリック時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void Registration_Click(object sender, EventArgs e)
+        {
+            dgvMaster.CellDoubleClick -= DataGridView_DoubleCellClick;
+            dgvMaster.CellEnter -= DataGridView_CellEnter;
+            dgvMaster.CellValueChanged -= DataGridView_CellValueChanged;
+            var ioDepositData = new IODepositData();
+            var ioDepositDataDetail = new IODepositDataDetail();
+            var ioDepositApprovalInfo = new IODepositApprovalInfo();
+            var ioRequestTotalData = new IORequestTotalData();
+            try
+            {
+                ResetTargetDate();
+                if (MessageBox.Show("表示中のデータを登録します。", "登録確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
+                    return;
+                if (!isDirty)
+                    return;
+                // 入力内容をチェック
+                foreach (var depositOrderer in depositOrderers)
+                {
+                    foreach (var deposit in depositOrderer.VisibleDeposits)
+                    {
+                        // 入金日入力済みで入金金額が入力されていない
+                        if (!string.IsNullOrEmpty(deposit.DepositDate)
+                            && !deposit.DepositAmountCash.HasValue
+                            && !deposit.DepositAmountBill.HasValue)
+                        {
+                            MessageBox.Show("入金日が登録されている行に入金金額が入力されていません。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+                        // 入金金額入力済みで入金日が入力されていない
+                        if (string.IsNullOrEmpty(deposit.DepositDate)
+                            && (deposit.DepositAmountCash.HasValue
+                            || deposit.DepositAmountBill.HasValue))
+                        {
+                            MessageBox.Show("入金金額が登録されている行に入金日が入力されていません。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+                    }
+                }
+
+                ioDepositData.connect();
+                ioDepositData.beginTran();
+                ioDepositDataDetail.connect();
+                ioDepositDataDetail.beginTran();
+                ioDepositApprovalInfo.connect();
+                ioDepositApprovalInfo.beginTran();
+                ioRequestTotalData.connect();
+                ioRequestTotalData.beginTran();
+
+                // 登録処理
+                foreach (var depositOrderer in depositOrderers)
+                {
+                    // 入金データの登録
+                    foreach (var deposit in depositOrderer.Deposits)
+                    {
+                        // 削除処理
+                        if (deposit.Deleted)
+                        {
+                            var sql = String.Format(" where OrderersDivision = {0} and OrderersCode = {1} and TargetDate = {2} and SeqNo = {3} ",
+                                depositOrderer.OrderersDivision, depositOrderer.OrderersCode, m_Select_TargetDate, deposit.SeqNo);
+                            if (!ioDepositData.DeleteAction(sql))
+                                throw new Exception();
+                            continue;
+                        }
+                        var depositData = new DepositData()
+                        {
+                            OrderersDivision = depositOrderer.OrderersDivision,
+                            OrderersCode = depositOrderer.OrderersCode,
+                            TargetDate = m_Select_TargetDate.ToString(),
+                            SeqNo = deposit.SeqNo,
+                            DepositDate = DateTime.Parse(deposit.DepositDate),
+                            DepositAmountCash = deposit.DepositAmountCash.GetValueOrDefault(0),
+                            DepositAmountBill = deposit.DepositAmountBill.GetValueOrDefault(0),
+                        };
+                        // 登録処理
+                        if (deposit.Added)
+                        {
+                            if (!ioDepositData.InsertAction(depositData))
+                                throw new Exception();
+                        }
+                        // 更新処理
+                        else if (deposit.Editted)
+                        {
+                            var sql = String.Format(" where OrderersDivision = {0} and OrderersCode = {1} and TargetDate = {2} and SeqNo = {3} ",
+                                depositData.OrderersDivision, depositData.OrderersCode, depositData.TargetDate, depositData.SeqNo);
+                            if (!ioDepositData.UpdateAction(sql, depositData))
+                                throw new Exception();
+                        }
+                    }
+                    // 入金明細データの登録
+                    foreach (var depositDetail in depositOrderer.DepositDetails)
+                    {
+                        // 削除処理
+                        if (depositDetail.Deleted)
+                        {
+                            var sql = String.Format(" where OrderersDivision = {0} and OrderersCode = {1} and TargetDate = {2} and SeqNo = {3} and LineCount = {4} ",
+                                depositOrderer.OrderersDivision, depositOrderer.OrderersCode, m_Select_TargetDate, depositDetail.SeqNo, depositDetail.LineCount);
+                            if (!ioDepositDataDetail.DeleteAction(sql))
+                                throw new Exception();
+                            // 入金確認承認データもあわせて削除
+                            if (!ioDepositApprovalInfo.DeleteAction(sql))
+                                throw new Exception();
+                            // 入金明細データを削除した場合は、対応する請求合計データを割当未とする
+                            sql = string.Format(" where RequestNo = {0} and OrderNo = {1} ",
+                                depositDetail.RequestNo, depositDetail.OrderNo);
+                            var lstRtd = new List<RequestTotalData>();
+                            if (!ioRequestTotalData.SelectAction(sql, ref lstRtd))
+                                throw new Exception();
+                            foreach (var rtd in lstRtd)
+                            {
+                                rtd.AssignedFlg = false;
+                                if (!ioRequestTotalData.UpdateAction("", rtd))
+                                    throw new Exception();
+                            }
+                            continue;
+                        }
+                        var depositDataDetail = new DepositDataDetail()
+                        {
+                            OrderersDivision = depositOrderer.OrderersDivision,
+                            OrderersCode = depositOrderer.OrderersCode,
+                            TargetDate = m_Select_TargetDate.ToString(),
+                            SeqNo = depositDetail.SeqNo,
+                            LineCount = depositDetail.LineCount,
+                            RequestNo = depositDetail.RequestNo,
+                            OrderNo = depositDetail.OrderNo,
+                            DepositAmount = depositDetail.DepositAmount,
+                            DiscountAmount = depositDetail.DiscountAmount,
+                            CnstrPrice = depositDetail.CnstrPrice,
+                            Fees = depositDetail.Fees,
+                            OtherAdjustments = depositDetail.OtherAdjustments,
+                            CarryAmount = depositDetail.CarryAmount,
+                            ApprovalPersonCode = depositDetail.ApprovalPersonCode,
+                        };
+                        var approvalDate = new DateTime(2000, 1, 1);
+                        if (DateTime.TryParse(depositDetail.ApprovalDate, out approvalDate))
+                        {
+                            depositDataDetail.ApprovalDate = approvalDate;
+                        }
+
+                        // 登録処理
+                        if (depositDetail.Added)
+                        {
+                            if (!ioDepositDataDetail.InsertAction(depositDataDetail))
+                                throw new Exception();
+                            // 入金明細データを追加した場合は、対応する請求合計データを割当済みとする
+                            var sql = string.Format(" where RequestNo = {0} and OrderNo = {1} ",
+                                depositDataDetail.RequestNo, depositDataDetail.OrderNo);
+                            var lstRtd = new List<RequestTotalData>();
+                            if (!ioRequestTotalData.SelectAction(sql, ref lstRtd))
+                                throw new Exception();
+                            foreach (var rtd in lstRtd)
+                            {
+                                rtd.AssignedFlg = true;
+                                if (!ioRequestTotalData.UpdateAction("", rtd))
+                                    throw new Exception();
+                            }
+                            // 入金確認承認データの登録
+                            foreach (var approval in depositDetail.DepositApprovals)
+                            {
+                                var da = new DepositApprovalInfo()
+                                {
+                                    OrderersDivision = depositOrderer.OrderersDivision,
+                                    OrderersCode = depositOrderer.OrderersCode,
+                                    TargetDate = m_Select_TargetDate.ToString(),
+                                    SeqNo = depositDetail.SeqNo,
+                                    LineCount = depositDetail.LineCount,
+                                    ApprovalNo = approval.ApprovalNo,
+                                    ApprovalPerson = approval.ApprovalPerson,
+                                    ApprovalPersonName = approval.ApprovalPersonName,
+                                    ApprovalAuthority = approval.ApprovalAuthority,
+                                };
+                                DateTime ad = new DateTime(2000, 1, 1);
+                                if (DateTime.TryParse(approval.ApprovalDate, out ad))
+                                { 
+                                    da.ApprovalDate = ad;
+                                }
+                                if (!ioDepositApprovalInfo.InsertAction(da))
+                                    throw new Exception();
+                            }
+                        }
+                        // 更新処理
+                        else
+                        {
+                            if (depositDetail.Editted)
+                            {
+                                if (!ioDepositDataDetail.UpdateAction("", depositDataDetail))
+                                    throw new Exception();
+                            }
+                            // 入金確認承認データの更新
+                            foreach (var approval in depositDetail.DepositApprovals)
+                            {
+                                if (approval.Editted)
+                                {
+                                    var da = new DepositApprovalInfo()
+                                    {
+                                        OrderersDivision = depositOrderer.OrderersDivision,
+                                        OrderersCode = depositOrderer.OrderersCode,
+                                        TargetDate = m_Select_TargetDate.ToString(),
+                                        SeqNo = depositDetail.SeqNo,
+                                        LineCount = depositDetail.LineCount,
+                                        ApprovalNo = approval.ApprovalNo,
+                                        ApprovalPerson = approval.ApprovalPerson,
+                                        ApprovalPersonName = approval.ApprovalPersonName,
+                                        ApprovalAuthority = approval.ApprovalAuthority,
+                                    };
+                                    DateTime ad = new DateTime(2000, 1, 1);
+                                    if (DateTime.TryParse(approval.ApprovalDate, out ad))
+                                    {
+                                        da.ApprovalDate = ad;
+                                    }
+                                    var sql = string.Format(" where OrderersDivision = {0} and OrderersCode = {1} and TargetDate = {2} and SeqNo = {3} and LineCount = {4} and ApprovalNo = {5}",
+                                        da.OrderersDivision, da.OrderersCode, da.TargetDate, da.SeqNo, da.LineCount, da.ApprovalNo);
+                                    if (!ioDepositApprovalInfo.UpdateAction(sql, da))
+                                        throw new Exception();
+                                }
+                            }
+                        }
+                    }
+                }
+                
+                ioDepositData.commit();
+                ioDepositDataDetail.commit();
+                ioDepositApprovalInfo.commit();
+                ioRequestTotalData.commit();
+
+                // グリッド表示
+                DisplayData();
+            }
+            catch (Exception ex)
+            {
+                ioDepositData.rollback();
+                ioDepositDataDetail.rollback();
+                ioDepositApprovalInfo.rollback();
+                ioRequestTotalData.rollback();
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.CellDoubleClick += DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter += DataGridView_CellEnter;
+                dgvMaster.CellValueChanged += DataGridView_CellValueChanged;
+                ioDepositData.close();
+                ioDepositDataDetail.close();
+                ioDepositApprovalInfo.close();
+                ioRequestTotalData.close();
+            }
+        }
+
+        /// <summary>
+        /// セルダブルクリックイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_DoubleCellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            dgvMaster.CellDoubleClick -= DataGridView_DoubleCellClick;
+            dgvMaster.CellEnter -= DataGridView_CellEnter;
+            dgvMaster.CellValueChanged -= DataGridView_CellValueChanged;
+            try
+            {
+                // 承認セル以外は無視
+                if ((e.ColumnIndex == (int)DispColumn.PersonName) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_1) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_2) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_3) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_4) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_5) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_6) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_7) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_8) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_9) ||
+                    (e.ColumnIndex == (int)DispColumn.ApprovalName_10))
+                {
+                    var cells = dgvMaster.Rows[e.RowIndex].Cells;
+                    // 自分以外のセルは編集不可
+                    if (CommonMotions.cnvInt(dgvMaster[e.ColumnIndex + 1, e.RowIndex].Value) != CommonMotions.LoginUserData.PersonCode)
+                        return;
+                    var depositOrderer = FindDepositOrderer(e.RowIndex);
+                    var depositDetail = depositOrderer.FindDepositDetailByLineCount(CommonMotions.cnvInt(cells[(int)DispColumn.LineCount].Value));
+                    // 担当者承認
+                    if (e.ColumnIndex == (int)DispColumn.PersonName)
+                    {
+                        // 現場が不明な場合は承認不可
+                        if (IsUnknownRow(e.RowIndex))
+                        {
+                            MessageBox.Show("現場が選択されていません。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+                        // 上位が承認済みの場合は編集不可
+                        if (!depositDetail.IsApprovedByApprover)
+                        {
+                            if (!depositDetail.IsApprovedByStaff)
+                                depositDetail.ApprovalDate = DateTime.Now.ToString("yyyy-MM-dd");
+                            else
+                                depositDetail.ApprovalDate = "";
+                            depositDetail.Editted = true;
+                        }
+                    }
+                    else
+                    {
+                        if (depositDetail.DepositApprovals.Count == 0)
+                            return;
+                        // 承認者に含まれるか確認
+                        var approvalIndex = depositDetail.DepositApprovals.FindIndex(a => a.ApprovalPerson == CommonMotions.LoginUserData.PersonCode);
+                        if (approvalIndex < 0)
+                            return;
+                        // 最終承認以外の場合
+                        if (approvalIndex != depositDetail.DepositApprovals.Count - 1)
+                        {
+                            // 下位の承認者が承認済みかつ上位の承認者が未承認
+                            var lower = true;
+                            var i = 0;
+                            var enableEdit = true;
+                            foreach (var a in depositDetail.DepositApprovals)
+                            {
+                                if (a.ApprovalPerson == CommonMotions.LoginUserData.PersonCode)
+                                {
+                                    lower = false;
+                                    approvalIndex = i;
+                                }
+                                else
+                                {
+                                    if (lower)
+                                    {
+                                        if (a.ApprovalDate == "")
+                                        {
+                                            enableEdit = false;
+                                            break;
+                                        }
+                                    }
+                                    else
+                                    {
+                                        if (a.ApprovalDate != "")
+                                        {
+                                            enableEdit = false;
+                                            break;
+                                        }
+                                    }
+                                }
+                                i++;
+                            }
+                            if (!enableEdit)
+                            {
+                                if (approvalIndex != 0 && depositDetail.DepositApprovals[approvalIndex - 1].ApprovalDate == "")
+                                {
+                                    MessageBox.Show("直前の承認が実施されていないため、承認できません。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                                }
+                                return;
+                            }
+                        }
+                        var approval = depositDetail.DepositApprovals.ElementAt(approvalIndex);
+                        // 未承認 → 承認
+                        if (approval.ApprovalDate == "")
+                        {
+                            if (CalculateDifference(depositOrderer) != 0)
+                            {
+                                // 差額の確認
+                                if (MessageBox.Show("入金金額と調整金額が一致しませんが承認してよろしいですか？。", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                                    return;
+                            }
+                            approval.ApprovalDate = DateTime.Now.ToString("yyyy-MM-dd");
+                        }
+                        // 承認 → 未承認
+                        else
+                        {
+                            approval.ApprovalDate = "";
+                        }
+                        approval.Editted = true;
+                    }
+                    var headerIndex = DetectHeaderIndex(e.RowIndex);
+                    UpdateDepositOrdererRows(depositOrderer, headerIndex);
+                    isDirty = true;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.CellDoubleClick += DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter += DataGridView_CellEnter;
+                dgvMaster.CellValueChanged += DataGridView_CellValueChanged;
+            }
+        }
+
+        /// <summary>
+        /// セル編集開始時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CellEnter(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                if (dgvMaster.RowCount == 0)
+                    return;
+                oldCellValue = CommonMotions.cnvString(dgvMaster[e.ColumnIndex, e.RowIndex].Value);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// セル編集完了時のイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void DataGridView_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            dgvMaster.CellDoubleClick -= DataGridView_DoubleCellClick;
+            dgvMaster.CellEnter -= DataGridView_CellEnter;
+            dgvMaster.CellValueChanged -= DataGridView_CellValueChanged;
+            try
+            {
+                if (dgvMaster.RowCount == 0)
+                    return;
+                var cells = dgvMaster.Rows[e.RowIndex].Cells;
+                var cellValue = CommonMotions.cnvString(cells[e.ColumnIndex].Value);
+                if (oldCellValue == cellValue)
+                    return;
+                var key = GetOrderersKey(e.RowIndex);
+                var depositOrderer = FindDepositOrderer(key.OrderersDivision, key.OrderersCode);
+                // 入金情報を編集
+                if (e.ColumnIndex == (int)DispColumn.DepositAmountCash
+                    || e.ColumnIndex == (int)DispColumn.DepositAmountBill
+                    || e.ColumnIndex == (int)DispColumn.DepositDate)
+                {
+                    var deposit = depositOrderer.FindDepositBySeqNo(CommonMotions.cnvInt(cells[(int)DispColumn.SeqNo].Value));
+                    if (deposit == null)
+                    {
+                        deposit = new Deposit()
+                        {
+                            Added = true,
+                            SeqNo = depositOrderer.GetNextSeqNo(),
+                        };
+                        depositOrderer.Deposits.Add(deposit);
+                    }
+                    switch (e.ColumnIndex)
+                    {
+                        case (int)DispColumn.DepositAmountCash:
+                            if (cellValue != "")
+                                deposit.DepositAmountCash = CommonMotions.cnvInt(cellValue);
+                            else
+                                deposit.DepositAmountCash = null;
+                            break;
+                        case (int)DispColumn.DepositAmountBill:
+                            if (cellValue != "")
+                                deposit.DepositAmountBill = CommonMotions.cnvInt(cellValue);
+                            else
+                                deposit.DepositAmountBill = null;
+                            break;
+                        case (int)DispColumn.DepositDate:
+                            DateTime dt;
+                            if (DateTime.TryParse(cellValue, out dt))
+                                deposit.DepositDate = dt.ToString("yyyy/MM/dd");
+                            else
+                                deposit.DepositDate = "";
+                            break;
+                    }
+                    if (string.IsNullOrEmpty(deposit.DepositDate)
+                        && !deposit.DepositAmountCash.HasValue
+                        && !deposit.DepositAmountBill.HasValue)
+                        deposit.Deleted = true;
+                    deposit.Editted = true;
+                    if (deposit.CanRemove)
+                        depositOrderer.Deposits.Remove(deposit);
+                }
+                // 入金明細金額を編集
+                else if (e.ColumnIndex == (int)DispColumn.DepositAmount
+                    || e.ColumnIndex == (int)DispColumn.DiscountAmount
+                    || e.ColumnIndex == (int)DispColumn.CnstrPrice
+                    || e.ColumnIndex == (int)DispColumn.Fees
+                    || e.ColumnIndex == (int)DispColumn.OtherAdjustments
+                    || e.ColumnIndex == (int)DispColumn.CarryAmount)
+                {
+                    var depositDetail = depositOrderer.FindDepositDetailByLineCount(CommonMotions.cnvInt(cells[(int)DispColumn.LineCount].Value));
+                    var amount = CommonMotions.cnvInt(cellValue);
+                    switch (e.ColumnIndex)
+                    {
+                        case (int)DispColumn.DepositAmount:
+                            depositDetail.DepositAmount = amount;
+                            break;
+                        case (int)DispColumn.DiscountAmount:
+                            depositDetail.DiscountAmount = amount;
+                            break;
+                        case (int)DispColumn.CnstrPrice:
+                            depositDetail.CnstrPrice = amount;
+                            break;
+                        case (int)DispColumn.Fees:
+                            depositDetail.Fees = amount;
+                            break;
+                        case (int)DispColumn.OtherAdjustments:
+                            depositDetail.OtherAdjustments = amount;
+                            break;
+                        case (int)DispColumn.CarryAmount:
+                            depositDetail.CarryAmount = amount;
+                            break;
+                    }
+                    depositDetail.Editted = true;
+                }
+                var headerIndex = DetectHeaderIndex(e.RowIndex);
+                UpdateDepositOrdererRows(depositOrderer, headerIndex);
+                dgvMaster.CurrentCell = dgvMaster[e.ColumnIndex, e.RowIndex];
+                isDirty = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.CellDoubleClick += DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter += DataGridView_CellEnter;
+                dgvMaster.CellValueChanged += DataGridView_CellValueChanged;
+            }
+        }
+        
+        /// <summary>
+        /// 発注者追加ダイアログクローズ通知
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void NotifyAddCmp_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                dgvMaster.CellDoubleClick -= DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter -= DataGridView_CellEnter;
+                dgvMaster.CellValueChanged -= DataGridView_CellValueChanged;
+                var f = (FrmSelectRequest)sender;
+                // 発注者追加あり
+                if (f.m_AddCmpData.isEdit)
+                {
+                    foreach (var h in depositOrderers)
+                    {
+                        if (h.Deleted)
+                            continue;
+                        // 表示済みの発注者の場合は何もしない
+                        if (h.OrderersDivision == f.m_AddCmpData.OrderersDivision
+                            && h.OrderersCode == f.m_AddCmpData.OrderersCode)
+                        {
+                            return;
+                        }
+                    }
+                    // データに追加
+                    var depositOrderer = new DepositOrderer();
+                    depositOrderer.Added = true;
+                    if (depositOrderers.Count == 0)
+                        depositOrderer.No = 1;
+                    else
+                        depositOrderer.No = depositOrderers.Last().No + 1;
+                    depositOrderer.OrderersDivision = f.m_AddCmpData.OrderersDivision;
+                    depositOrderer.OrderersCode = f.m_AddCmpData.OrderersCode;
+                    depositOrderer.OrderersName = f.m_AddCmpData.OrderersName;
+                    depositOrderers.Add(depositOrderer);
+                    AddDepositOrdererRows(depositOrderer, dgvMaster.Rows.Count);
+                    isDirty = true;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.CellDoubleClick += DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter += DataGridView_CellEnter;
+                dgvMaster.CellValueChanged += DataGridView_CellValueChanged;
+            }
+        }
+
+        /// <summary>
+        /// 現場登録ダイアログクローズ通知
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void NotifyAddFld_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            try
+            {
+                dgvMaster.CellDoubleClick -= DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter -= DataGridView_CellEnter;
+                dgvMaster.CellValueChanged -= DataGridView_CellValueChanged;
+                var f = (FrmSelectRegField)sender;
+                if (f.EndButton != DialogResult.OK)
+                    return;
+                var headerIndex = DetectHeaderIndex(dgvMaster.CurrentRow.Index);
+                var depositOrderer = FindDepositOrderer(dgvMaster.CurrentRow.Index);
+                foreach (var item in f.m_lstMyField)
+                {
+                    if (item.ConstructionName == "不明" && item.ConstructionName_Raw == "")
+                        continue;
+                    // 担当データのみを対象とする
+                    if (item.PersonCode != CommonMotions.LoginUserData.PersonCode)
+                        continue;
+                    var depositDetail = depositOrderer.DepositDetails.Find(d =>
+                        d.ConstructionName == item.ConstructionName && d.ConstructionNameRow == item.ConstructionName_Raw
+                    );
+                    // 追加・更新
+                    if (!item.DeleteFlg)
+                    {
+                        // 追加
+                        if (depositDetail == null)
+                        {
+                            depositDetail = new DepositDetail()
+                            {
+                                Added = true,
+                                Visible = true,
+                                SeqNo = 1,
+                                LineCount = depositOrderer.GetNextLineCount(),
+                                RequestNo = item.RequestNo,
+                                OrderNo = item.OrderNo,
+                                ConstructionName = item.ConstructionName,
+                                ConstructionNameRow = item.ConstructionName_Raw,
+                                DepartmentCode = item.DepartmentCode,
+                                BillCreationDate = item.BillCreationDate,
+                                BillPrice = item.BillPrice,
+                                TaxPrice = item.TaxPrice,
+                                DepositAmount = item.DepositAmount,
+                                ApprovalPersonCode = item.PersonCode,
+                                ApprovalPersonName = CommonMotions.LoginUserData.SealPrintName,
+                                ApprovalDate = "",
+                            };
+                            var defaultApproves = new List<ApproveData>();
+                            if (!SelectDefaultApprove(depositDetail.DepartmentCode, ref defaultApproves))
+                                return;
+                            foreach (var approve in defaultApproves)
+                            {
+                                var da = new DepositApproval()
+                                {
+                                    Added = true,
+                                    ApprovalPersonName = approve.Value,
+                                    ApprovalPerson = approve.Key,
+                                    ApprovalDate = "",
+                                    ApprovalNo = approve.Order,
+                                };
+                                depositDetail.DepositApprovals.Add(da);
+                            }
+                            depositOrderer.DepositDetails.Add(depositDetail);
+                        }
+                        // 更新
+                        else
+                        {
+                            depositDetail.BillPrice = item.BillPrice;
+                            depositDetail.TaxPrice = item.TaxPrice;
+                            depositDetail.DepositAmount = item.DepositAmount;
+                        }
+                    }
+                    // 削除
+                    else
+                    {
+                        if (depositDetail != null)
+                        {
+                            if (depositDetail.Added)
+                            {
+                                // 未存在のデータは削除
+                                depositOrderer.DepositDetails.Remove(depositDetail);
+                            }
+                            else
+                            {
+                                // 存在するデータは削除フラグを立てる
+                                depositDetail.Deleted = true;
+                            }
+                        }
+                    }
+                }
+                UpdateDepositOrdererRows(depositOrderer, headerIndex);
+                isDirty = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.CellDoubleClick += DataGridView_DoubleCellClick;
+                dgvMaster.CellEnter += DataGridView_CellEnter;
+                dgvMaster.CellValueChanged += DataGridView_CellValueChanged;
+            }
+        }
+
+        /// <summary>
+        /// 対象月コンボボックスを表示時点の設定月に戻す。
+        /// </summary>
+        private void ResetTargetDate()
+        {
+            var selectedDate = m_Select_TargetDate.ToString().Insert(4, "/");
+            comboBox1.SelectedItem = selectedDate;
+        }
+
+        /// <summary>
+        /// 入金請求先一覧を取得する。
+        /// </summary>
+        /// <returns></returns>
+        private List<DepositOrderer> SelectDepositOrderers()
+        {
+            var depositData = SelectDepositData().OfType<object[]>()
+                .GroupBy(d =>
+                {
+                    return string.Format("{0} {1}",
+                        CommonMotions.cnvInt(d[(int)ClickGetData.OrderersDivision]),
+                        CommonMotions.cnvInt(d[(int)ClickGetData.OrderersCode]));
+                });
+            var data = new List<DepositOrderer>();
+            var no = 1;
+            foreach (var deposits in depositData)
+            {
+                var orderer = deposits.First();
+                // 請求先情報
+                var o = new DepositOrderer();
+                o.OrderersDivision = CommonMotions.cnvInt(orderer[(int)ClickGetData.OrderersDivision]);
+                o.OrderersCode = CommonMotions.cnvInt(orderer[(int)ClickGetData.OrderersCode]);
+                o.OrderersName = ToOrdererName(CommonMotions.cnvInt(orderer[(int)ClickGetData.CorporateStatusPoint]),
+                                        CommonMotions.cnvString(orderer[(int)ClickGetData.CorporateStatusName]),
+                                        CommonMotions.cnvString(orderer[(int)ClickGetData.OrderersName1]),
+                                        CommonMotions.cnvString(orderer[(int)ClickGetData.OrderersName2]));
+                // 表示権限がない場合は次へ
+                if (!CheckOrdererPermission(o))
+                {
+                    continue;
+                }
+                o.No = no;
+                no++;
+                o.Deposits = new List<Deposit>();
+                o.DepositDetails = new List<DepositDetail>();
+                // 入金データ情報
+                foreach (var deposit in deposits)
+                {
+                    var d = new Deposit();
+                    d.SeqNo = CommonMotions.cnvInt(deposit[(int)ClickGetData.SeqNo]);
+                    d.DepositDate = CommonMotions.cnvString(deposit[(int)ClickGetData.DepositDate]);
+                    d.DepositAmountCash = CommonMotions.cnvInt(deposit[(int)ClickGetData.DepositAmountCash]);
+                    d.DepositAmountBill = CommonMotions.cnvInt(deposit[(int)ClickGetData.DepositAmountBill]);
+                    o.Deposits.Add(d);
+                }
+                // 入金明細データ
+                var details = SelectDepositDetailData(o.OrderersDivision, o.OrderersCode, m_Select_TargetDate).OfType<object[]>();
+                foreach (var detail in details)
+                {
+                    var dd = new DepositDetail();
+                    dd.SeqNo = CommonMotions.cnvInt(detail[(int)ClickGetData.SeqNo]);
+                    dd.LineCount = CommonMotions.cnvInt(detail[(int)ClickGetData.LineCount]);
+                    dd.RequestNo = CommonMotions.cnvInt(detail[(int)ClickGetData.RequestNo]);
+                    dd.OrderNo = CommonMotions.cnvInt(detail[(int)ClickGetData.OrderNo]);
+                    dd.ConstructionNameRow = CommonMotions.cnvString(detail[(int)ClickGetData.DetailString]);
+                    dd.ConstructionName = dd.ConstructionNameRow;
+                    if (dd.OrderNo > 1)
+                    {
+                        dd.ConstructionName += "（" + dd.OrderNo + "回目）";
+                    }
+                    // 入金予定日未実装
+                    dd.BillCreationDate = CommonMotions.cnvString(detail[(int)ClickGetData.BillCreationDate]);
+                    dd.BillPrice = CommonMotions.cnvInt(detail[(int)ClickGetData.BillPrice]);
+                    dd.TaxPrice = CommonMotions.cnvInt(detail[(int)ClickGetData.TaxPrice]);
+                    dd.DepositAmount = CommonMotions.cnvInt(detail[(int)ClickGetData.DepositAmount]);
+                    dd.DiscountAmount = CommonMotions.cnvInt(detail[(int)ClickGetData.DiscountAmount]);
+                    dd.CnstrPrice = CommonMotions.cnvInt(detail[(int)ClickGetData.CnstrPrice]);
+                    dd.Fees = CommonMotions.cnvInt(detail[(int)ClickGetData.Fees]);
+                    dd.OtherAdjustments = CommonMotions.cnvInt(detail[(int)ClickGetData.OtherAdjustments]);
+                    dd.CarryAmount = CommonMotions.cnvInt(detail[(int)ClickGetData.CarryAmount]);
+                    dd.ApprovalPersonCode = CommonMotions.cnvInt(detail[(int)ClickGetData.ApprovalPersonCode]);
+                    dd.ApprovalEndFlg = CommonMotions.cnvInt(detail[(int)ClickGetData.ApprovalEndFlg]);
+                    dd.ApprovalPersonName = CommonMotions.cnvString(detail[(int)ClickGetData.PersonName]);
+                    dd.DepartmentCode = CommonMotions.cnvInt(detail[(int)ClickGetData.DepartmentCode]);
+                    dd.ConstructionCode = CommonMotions.cnvInt(detail[(int)ClickGetData.ConstructionCode]);
+                    dd.ConstructionPersonCode = CommonMotions.cnvInt(detail[(int)ClickGetData.ConstructionPersonCode]);
+                    dd.ConstrSubPersonCode = CommonMotions.cnvInt(detail[(int)ClickGetData.ConstrSubPersonCode]);
+                    dd.ConstructionInstructor = CommonMotions.cnvInt(detail[(int)ClickGetData.ConstructionInstructor]);
+                    dd.DepositApprovals = new List<DepositApproval>();
+                    dd.Visible = CheckPermission(dd.DepartmentCode, dd.ConstructionPersonCode, dd.ConstrSubPersonCode, dd.ConstructionInstructor);
+                    dd.ApprovalDate = "";
+                    if (CommonMotions.cnvString(detail[(int)ClickGetData.ApprovalDate]) != "0001-01-01")
+                        dd.ApprovalDate = CommonMotions.cnvString(detail[(int)ClickGetData.ApprovalDate]);
+                    // 担当者承認済みの場合
+                    if (dd.IsApprovedByStaff)
+                    {
+                        var depositApprovals = new List<DepositApprovalInfo>();
+                        if (!SelectApprove(o.OrderersDivision, o.OrderersCode, dd.SeqNo, dd.LineCount, ref depositApprovals))
+                            return null;
+                        var detectApproval = false;
+                        var detectNonApproval = false;
+                        var upperApprovalInUser = false;
+                        foreach (var appInfo in depositApprovals)
+                        {
+                            var da = new DepositApproval()
+                            {
+                                ApprovalNo = appInfo.ApprovalNo,
+                                ApprovalPersonName = appInfo.ApprovalPersonName,
+                                ApprovalPerson = appInfo.ApprovalPerson,
+                                ApprovalAuthority = appInfo.ApprovalAuthority,
+                                ApprovalDate = "",
+                            };
+                            if (appInfo.ApprovalDate != DateTime.MinValue)
+                                da.ApprovalDate = appInfo.ApprovalDate.ToString("yyyy-MM-dd");
+                            dd.DepositApprovals.Add(da);
+                        }
+                        // 承認状態を設定
+                        if (!detectApproval)
+                            dd.Status = ApprovalStatus.InCharge;
+                        else if (detectNonApproval)
+                            dd.Status = ApprovalStatus.InApproval;
+                        else
+                            dd.Status = ApprovalStatus.Approved;
+                        dd.UpperApprovalInUser = upperApprovalInUser;
+                    }
+                    // 担当者未承認
+                    else
+                    {
+                        var defaultApproves = new List<ApproveData>();
+                        if (!SelectDefaultApprove(dd.DepartmentCode, ref defaultApproves))
+                            return null;
+                        foreach (var approve in defaultApproves)
+                        {
+                            var da = new DepositApproval()
+                            {
+                                Added = true,
+                                ApprovalPersonName = approve.Value,
+                                ApprovalPerson = approve.Key,
+                                ApprovalDate = "",
+                                ApprovalNo = approve.Order,
+                            };
+                            dd.DepositApprovals.Add(da);
+                        }
+                    }
+                    o.DepositDetails.Add(dd);
+                }
+                data.Add(o);
+            }
+            return data;
+        }
+
+        /// <summary>
+        /// 入金データを取得する。
+        /// </summary>
+        /// <returns></returns>
+        private ArrayList SelectDepositData()
+        {
+            try
+            {
+                var sql = new StringBuilder();
+                sql.Append("select ");
+                sql.Append("Dep.OrderersDivision, ");
+                sql.Append("Dep.OrderersCode, ");
+                sql.Append("Dep.TargetDate, ");
+                sql.Append("Dep.SeqNo, ");
+                sql.Append("DATE_FORMAT(Dep.DepositDate, '%Y/%m/%d') as DepositDate, ");
+                sql.Append("Dep.DepositAmountCash, ");
+                sql.Append("Dep.DepositAmountBill, ");
+                sql.Append("OdrM.CorporateStatusName, ");
+                sql.Append("OdrM.CorporateStatusPoint, ");
+                sql.Append("OdrM.OrderersName1, ");
+                sql.Append("OdrM.OrderersName2 ");
+                sql.Append("from DepositData Dep ");
+                sql.Append("left outer join OrderersMaster as OdrM ");
+                sql.Append("on OdrM. OrderCotegory = Dep.OrderersDivision and OdrM.OrderersCode = Dep.OrderersCode ");
+                sql.AppendFormat("where Dep.TargetDate = {0} ", m_Select_TargetDate);
+                sql.Append("order by Dep.OrderersDivision, Dep.OrderersCode, Dep.SeqNo ");
+                var depDb = new IODepositData();
+                var data = new ArrayList();
+                if (!depDb.ExecuteReader(sql.ToString(), ref data)) return new ArrayList();
+                return data;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return new ArrayList();
+            }
+        }
+
+        /// <summary>
+        /// 入金明細データを取得する。
+        /// </summary>
+        /// <param name="orderersDivision"></param>
+        /// <param name="orderersCode"></param>
+        /// <param name="targetDate"></param>
+        /// <returns></returns>
+        private ArrayList SelectDepositDetailData(int orderersDivision, int orderersCode, int targetDate)
+        {
+            try
+            {
+                var sql = new StringBuilder();
+                sql.Append("select ");
+                sql.Append("DepD.OrderersDivision, ");
+                sql.Append("DepD.OrderersCode, ");
+                sql.Append("DepD.TargetDate, ");
+                sql.Append("DepD.SeqNo, ");
+
+                sql.Append("null as DepositDate, ");
+                sql.Append("null, ");
+                sql.Append("null, ");
+                sql.Append("null, ");
+                sql.Append("null, ");
+                sql.Append("null, ");
+                sql.Append("null, ");
+
+                sql.Append("DepD.LineCount, ");
+                sql.Append("ifnull(DepD.RequestNo, 0) as RequestNo, ");
+                sql.Append("ifnull(DepD.OrderNo, 0) as OrderNo, ");
+                sql.Append("DepD.DepositAmount, ");
+                sql.Append("ifnull(DepD.DiscountAmount, 0) as DiscountAmount, ");
+                sql.Append("ifnull(DepD.CnstrPrice, 0) as CnstrPrice, ");
+                sql.Append("ifnull(DepD.Fees, 0) as Fees, ");
+                sql.Append("ifnull(DepD.OtherAdjustments, 0) as OtherAdjustments, ");
+                sql.Append("ifnull(DepD.CarryAmount, 0) as CarryAmount, ");
+                sql.Append("ifnull(DepD.ApprovalPersonCode, 0) as ApprovalPersonCode, ");
+                sql.Append("ifnull(DepD.ApprovalDate, 0) as ApprovalDate, ");
+                sql.Append("DepD.ApprovalEndFlg, ");
+                sql.Append("PicM.SealPrintName, ");
+                sql.Append("PicM2.DepartmentCode, ");
+                sql.Append("DATE_FORMAT(ReqT.BillCreationDate, '%Y/%m/%d') as BillCreationDate, ");
+                sql.Append("ReqT.BillPrice, ");
+                sql.Append("ReqT.TaxPrice, ");
+                sql.Append("Cbi.ConstructionCode, ");
+                sql.Append("Cbi.ConstructionPersonCode, ");
+                sql.Append("Cbi.ConstrSubPersonCode, ");
+                sql.Append("Cbi.ConstructionInstructor, ");
+                sql.Append("CbiD.DetailNo, ");
+                sql.Append("CbiD.DetailString ");
+                sql.Append("from DepositDataDetail DepD ");
+                sql.Append("left outer join PersonInChargeMaster as PicM on PicM.PersonCode = DepD.ApprovalPersonCode ");
+                sql.Append("left outer join RequestTotalData as ReqT on ReqT.RequestNo = DepD.RequestNo and ReqT.OrderNo = DepD.OrderNo ");
+                sql.Append("left outer join ConstructionBaseInfo as Cbi on Cbi.ConstructionCode = ReqT.RequestNo ");
+                sql.Append("left outer join ConstructionBaseInfoDetail as CbiD on CbiD.ConstructionCode = Cbi.ConstructionCode and CbiD.DetailNo = 2 ");
+                sql.Append("left outer join ConstructionBaseInfo as Cbi2 on Cbi2.ConstructionCode = Cbi.ConstructionCode ");
+                sql.Append("left outer join PersonInChargeMaster as PicM2 on PicM2.PersonCode = Cbi2.ConstructionPersonCode ");
+                sql.Append("left outer join ApprovalMaster as Am on Am.DepartmentCode = PicM2.DepartmentCode and Am.ApprovalCode = 3 and Am.ApprovalAuthority = 1 ");
+                sql.AppendFormat("where DepD.OrderersDivision = {0} and DepD.OrderersCode = {1} and DepD.TargetDate = {2} ", orderersDivision, orderersCode, m_Select_TargetDate);
+                sql.Append("group by ");
+                sql.Append("DepD.OrderersDivision, ");
+                sql.Append("DepD.OrderersCode, ");
+                sql.Append("DepD.TargetDate, ");
+                sql.Append("DepD.SeqNo, ");
+                sql.Append("DepD.LineCount, ");
+                sql.Append("DepD.RequestNo, ");
+                sql.Append("DepD.OrderNo, ");
+                sql.Append("DepD.DepositAmount, ");
+                sql.Append("DepD.DiscountAmount, ");
+                sql.Append("DepD.CnstrPrice, ");
+                sql.Append("DepD.Fees, ");
+                sql.Append("DepD.OtherAdjustments, ");
+                sql.Append("DepD.CarryAmount, ");
+                sql.Append("DepD.ApprovalPersonCode, ");
+                sql.Append("DepD.ApprovalDate, ");
+                sql.Append("DepD.ApprovalEndFlg, ");
+                sql.Append("PicM.SealPrintName, ");
+                sql.Append("PicM2.DepartmentCode, ");
+                sql.Append("ReqT.BillCreationDate, ");
+                sql.Append("ReqT.BillPrice, ");
+                sql.Append("ReqT.TaxPrice, ");
+                sql.Append("Cbi.ConstructionCode, ");
+                sql.Append("Cbi.ConstructionPersonCode, ");
+                sql.Append("Cbi.ConstrSubPersonCode, ");
+                sql.Append("Cbi.ConstructionInstructor, ");
+                sql.Append("CbiD.DetailNo, ");
+                sql.Append("CbiD.DetailString ");
+                sql.Append("order by DepD.OrderersDivision, DepD.OrderersCode, DepD.SeqNo, DepD.LineCount, DepD.RequestNo, DepD.OrderNo ");
+                var depDb = new IODepositData();
+                var data = new ArrayList();
+                if (!depDb.ExecuteReader(sql.ToString(), ref data)) return new ArrayList();
+                return data;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return new ArrayList();
+            }
+        }
+
+        /// <summary>
+        /// 入金確認承認データより、承認者を取得する。
+        /// </summary>
+        /// <param name="orderersDivision"></param>
+        /// <param name="orderersCode"></param>
+        /// <param name="seqNo"></param>
+        /// <param name="lineCount"></param>
+        /// <param name="depositApprovals"></param>
+        /// <returns></returns>
+        private bool SelectApprove(int orderersDivision, int orderersCode, int seqNo, int lineCount, ref List<DepositApprovalInfo> depositApprovals)
+        {
+            IODepositApprovalInfo ioDai = new IODepositApprovalInfo();
+            try
+            {
+                var sql = string.Format(" where OrderersDivision = {0} and OrderersCode = {1} and TargetDate = {2} and SeqNo = {3} and LineCount = {4} order by ApprovalNo",
+                    orderersDivision, orderersCode, m_Select_TargetDate.ToString(), seqNo, lineCount);
+                if (!ioDai.SelectAction(sql, ref depositApprovals))
+                    return false;
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                ioDai = null;
+            }
+        }
+
+        /// <summary>
+        /// 業者行の内容を更新する。
+        /// </summary>
+        /// <param name="depositOrderer"></param>
+        /// <param name="position"></param>
+        private void UpdateDepositOrdererRows(DepositOrderer depositOrderer, int position)
+        {
+            dgvMaster.SuspendLayout();
+            var x = dgvMaster.FirstDisplayedScrollingColumnIndex;
+            var y = dgvMaster.FirstDisplayedScrollingRowIndex;
+            try
+            {
+                RemoveDepositOrdererRows(depositOrderer);
+                AddDepositOrdererRows(depositOrderer, position);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.FirstDisplayedScrollingColumnIndex = x;
+                dgvMaster.FirstDisplayedScrollingRowIndex = y;
+                dgvMaster.ResumeLayout();
+            }
+        }
+
+        /// <summary>
+        /// 業者行を削除する。
+        /// </summary>
+        /// <param name="depositOrderer"></param>
+        private void RemoveDepositOrdererRows(DepositOrderer depositOrderer)
+        {
+            for (var i = dgvMaster.RowCount - 1; i >= 0; i--)
+            {
+                var cells = dgvMaster.Rows[i].Cells;
+                if (CommonMotions.cnvInt(cells[(int)DispColumn.OrderersDivision].Value) == depositOrderer.OrderersDivision
+                    && CommonMotions.cnvInt(cells[(int)DispColumn.OrderersCode].Value) == depositOrderer.OrderersCode)
+                {
+                    dgvMaster.Rows.RemoveAt(i);
+                }
+            }
+        }
+
+        /// <summary>
+        /// 業者行を追加する。
+        /// </summary>
+        /// <param name="depositOrderer"></param>
+        /// <param name="position"></param>
+        private void AddDepositOrdererRows(DepositOrderer depositOrderer, int position)
+        {
+            try
+            {
+                if (depositOrderer.Deleted)
+                    return;
+                // 明細行を作成
+                dgvMaster.Rows.Insert(position, depositOrderer.Size);
+                // いったんすべての行をReadOnlyにしておく
+                for (var i = position; i < position + depositOrderer.Size; i++)
+                    dgvMaster.Rows[i].ReadOnly = true;
+                var ordererRow = dgvMaster.Rows[position];
+                // 請求先情報の表示
+                ordererRow.Cells[(int)DispColumn.No].Value = depositOrderer.No;
+                ordererRow.Cells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+                ordererRow.Cells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+                ordererRow.Cells[(int)DispColumn.OrderersName].Value = depositOrderer.OrderersName;
+                if (depositOrderer.VisibleDepositDetails.Count == 0)
+                {
+                    ordererRow.Cells[(int)DispColumn.DepositDate].ReadOnly = false;
+                    ordererRow.Cells[(int)DispColumn.DepositAmountCash].ReadOnly = false;
+                    ordererRow.Cells[(int)DispColumn.DepositAmountBill].ReadOnly = false;
+                }
+                // 入金情報の表示
+                var index = 0;
+                foreach (var deposit in depositOrderer.VisibleDeposits)
+                {
+                    var row = dgvMaster.Rows[position + index];
+                    row.Cells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+                    row.Cells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+                    row.Cells[(int)DispColumn.SeqNo].Value = deposit.SeqNo;
+                    row.Cells[(int)DispColumn.DepositDate].Value = deposit.DepositDate;
+                    if (deposit.DepositAmountCash.HasValue)
+                        SetPrice(row.Cells, (int)DispColumn.DepositAmountCash, deposit.DepositAmountCash.Value);
+                    if (deposit.DepositAmountBill.HasValue)
+                        SetPrice(row.Cells, (int)DispColumn.DepositAmountBill, deposit.DepositAmountBill.Value);
+                    // 編集設定
+                    if (CanEditDeposit(depositOrderer))
+                    {
+                        row.Cells[(int)DispColumn.DepositDate].ReadOnly = false;
+                        row.Cells[(int)DispColumn.DepositAmountCash].ReadOnly = false;
+                        row.Cells[(int)DispColumn.DepositAmountBill].ReadOnly = false;
+                    }
+                    index++;
+                }
+                index = 0;
+                foreach (var depositDetail in depositOrderer.VisibleDepositDetails)
+                {
+                    var row = dgvMaster.Rows[position + index];
+                    row.Cells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+                    row.Cells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+                    row.Cells[(int)DispColumn.RequestNo].Value = depositDetail.RequestNo;
+                    row.Cells[(int)DispColumn.LineCount].Value = depositDetail.LineCount;
+                    row.Cells[(int)DispColumn.OrderNo].Value = depositDetail.OrderNo;
+                    row.Cells[(int)DispColumn.ConstructionName].Value = depositDetail.ConstructionName;
+                    row.Cells[(int)DispColumn.ConstructionName_Raw].Value = depositDetail.ConstructionNameRow;
+                    // TODO 入金予定日
+                    row.Cells[(int)DispColumn.BillCreationDate].Value = depositDetail.BillCreationDate;
+                    SetPrice(row.Cells, (int)DispColumn.BillPrice, depositDetail.BillPrice);
+                    SetPrice(row.Cells, (int)DispColumn.TaxPrice, depositDetail.TaxPrice);
+                    SetPrice(row.Cells, (int)DispColumn.DepositAmount, depositDetail.DepositAmount);
+                    SetPrice(row.Cells, (int)DispColumn.DiscountAmount, depositDetail.DiscountAmount);
+                    SetPrice(row.Cells, (int)DispColumn.CnstrPrice, depositDetail.CnstrPrice);
+                    SetPrice(row.Cells, (int)DispColumn.Fees, depositDetail.Fees);
+                    SetPrice(row.Cells, (int)DispColumn.OtherAdjustments, depositDetail.OtherAdjustments);
+                    SetPrice(row.Cells, (int)DispColumn.CarryAmount, depositDetail.CarryAmount);
+                    row.Cells[(int)DispColumn.PersonCode].Value = depositDetail.ApprovalPersonCode;
+                    row.Cells[(int)DispColumn.PersonName].Value = depositDetail.ApprovalPersonName;
+                    // 担当者未承認
+                    if (!depositDetail.IsApprovedByStaff)
+                    {
+                        row.Cells[(int)DispColumn.PersonName].Style.ForeColor = Color.Gray;
+                        row.Cells[(int)DispColumn.PersonDate].Value = "";
+                    }
+                    var j = (int)DispColumn.ApprovalName_1;
+                    foreach (var depositeApproval in depositDetail.DepositApprovals)
+                    {
+                        row.Cells[j].Value = depositeApproval.ApprovalPersonName;
+                        row.Cells[j + 1].Value = depositeApproval.ApprovalPerson;
+                        if (depositeApproval.ApprovalDate == "")
+                            row.Cells[j].Style.ForeColor = Color.Gray;
+                        dgvMaster.Columns[j].Visible = true;
+                        j += 5;
+                    }
+                    if (CanEditDepositDetail(depositDetail))
+                    {
+                        row.Cells[(int)DispColumn.DepositAmount].ReadOnly = false;
+                        row.Cells[(int)DispColumn.DiscountAmount].ReadOnly = false;
+                        row.Cells[(int)DispColumn.CnstrPrice].ReadOnly = false;
+                        row.Cells[(int)DispColumn.Fees].ReadOnly = false;
+                        row.Cells[(int)DispColumn.OtherAdjustments].ReadOnly = false;
+                        row.Cells[(int)DispColumn.CarryAmount].ReadOnly = false;
+                    }
+                    index++;
+                }
+                AddUnknownRow(depositOrderer, position);
+                AddBlankRow(depositOrderer, position);
+                AddTotalRow(depositOrderer, position);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// データを表示する。
+        /// </summary>
+        private void DisplayData()
+        {
+            try
+            {
+                // 選択対象月の退避
+                m_Select_TargetDate = CommonMotions.cnvInt(CommonMotions.cnvString(comboBox1.SelectedItem).Replace("/", ""));
+                depositOrderers = new List<DepositOrderer>();
+                dgvMaster.Rows.Clear();
+                // データの取得
+                depositOrderers = SelectDepositOrderers();
+                // 請求先単位で設定を行う。
+                dgvMaster.SuspendLayout();
+                for (var i = (int)DispColumn.ApprovalName_1; i <= (int)DispColumn.ApprovalName_10; i += 5)
+                    dgvMaster.Columns[i].Visible = false;
+                foreach (var deposit in depositOrderers)
+                {
+                    AddDepositOrdererRows(deposit, dgvMaster.RowCount);
+                }
+                isDirty = false;
+                ControlButton();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dgvMaster.ResumeLayout();
+                if (dgvMaster.Rows.Count > 0)
+                {
+                    dgvMaster.FirstDisplayedScrollingRowIndex = 0;
+                    dgvMaster.FirstDisplayedScrollingColumnIndex = 1;
+                    dgvMaster.CurrentCell = dgvMaster[1, 0];
+                }
+            }
+        }
+
+        /// <summary>
+        /// 不明行かを判定する。
+        /// </summary>
+        /// <param name="index"></param>
+        /// <returns></returns>
+        private bool IsUnknownRow(int index)
+        {
+            var cells = dgvMaster.Rows[index].Cells;
+            return CommonMotions.cnvString(cells[(int)DispColumn.ConstructionName].Value) == "不明"
+                && CommonMotions.cnvString(cells[(int)DispColumn.ConstructionName_Raw].Value) == "";
+        }
+
+        /// <summary>
+        /// 空白行かを判定する。
+        /// </summary>
+        /// <param name="index"></param>
+        /// <returns></returns>
+        private bool IsBlankRow(int index)
+        {
+            var cells = dgvMaster.Rows[index].Cells;
+            return CommonMotions.cnvString(cells[(int)DispColumn.SeqNo]) == ""
+                && CommonMotions.cnvString(cells[(int)DispColumn.LineCount]) == ""
+                && CommonMotions.cnvString(cells[(int)DispColumn.ConstructionName].Value) == ""
+                && CommonMotions.cnvString(cells[(int)DispColumn.ConstructionName_Raw].Value) == "";
+        }
+
+        /// <summary>
+        /// 不明行の設定を行う。
+        /// </summary>
+        /// <param name="index"></param>
+        private void AddUnknownRow(DepositOrderer depositOrderer, int index)
+        {
+            // 不明行金額の計算
+            var depositAmountCash = 0;
+            var depositAmountBill = 0;
+            foreach (var deposit in depositOrderer.Deposits)
+            {
+                depositAmountCash += deposit.DepositAmountCash.GetValueOrDefault(0);
+                depositAmountBill += deposit.DepositAmountBill.GetValueOrDefault(0);
+            }
+            var depositAmount = 0;
+            foreach (var depositDetail in depositOrderer.DepositDetails)
+            {
+                depositAmount += depositDetail.DepositAmount;
+            }
+            var unknownAmount = (depositAmountCash + depositAmountBill) - depositAmount;
+            if (unknownAmount <= 0)
+                return;
+            // 不明行は入金明細の一番下に作成する
+            var unknownIndex = index + depositOrderer.VisibleDepositDetails.Count;
+            // 入金明細が入金より多い場合は不明行を追加
+            if (depositOrderer.VisibleDepositDetails.Count >= depositOrderer.VisibleDeposits.Count)
+            {
+                dgvMaster.Rows.Insert(unknownIndex);
+                dgvMaster.Rows[unknownIndex].ReadOnly = true;
+            }
+            var row = dgvMaster.Rows[unknownIndex];
+            row.Cells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+            row.Cells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+            row.Cells[(int)DispColumn.ConstructionName].Value = "不明";
+            // 編集設定
+            var readOnly = !CanEditDeposit(depositOrderer);
+            row.Cells[(int)DispColumn.DepositDate].ReadOnly = readOnly;
+            row.Cells[(int)DispColumn.DepositAmountCash].ReadOnly = readOnly;
+            row.Cells[(int)DispColumn.DepositAmountBill].ReadOnly = readOnly;
+            SetPrice(row.Cells, (int)DispColumn.DepositAmount, unknownAmount);
+        }
+
+        private int CalculateDifference(DepositOrderer depositOrderer)
+        {
+            var depositAmountCash = 0;
+            var depositAmountBill = 0;
+            foreach (var deposit in depositOrderer.Deposits)
+            {
+                depositAmountCash += deposit.DepositAmountCash.GetValueOrDefault(0);
+                depositAmountBill += deposit.DepositAmountBill.GetValueOrDefault(0);
+            }
+            var depositAmount = 0;
+            foreach (var depositDetail in depositOrderer.DepositDetails)
+            {
+                depositAmount += depositDetail.DepositAmount;
+            }
+            return depositAmountCash + depositAmountBill - depositAmount;
+        }
+
+        /// <summary>
+        /// 合計行の設定を行う。
+        /// </summary>
+        /// <param name="index"></param>
+        private void AddTotalRow(DepositOrderer depositOrderer, int index)
+        {
+            var depositAmountCash = 0;
+            var depositAmountBill = 0;
+            foreach (var deposit in depositOrderer.Deposits)
+            {
+                depositAmountCash += deposit.DepositAmountCash.GetValueOrDefault(0);
+                depositAmountBill += deposit.DepositAmountBill.GetValueOrDefault(0);
+            }
+            var billPrice = 0;
+            var taxPrice = 0;
+            var depositAmount = 0;
+            var discountAmount = 0;
+            var cnstrPrice = 0;
+            var fees = 0;
+            var otherAdjustments = 0;
+            var carryAmount = 0;
+            foreach (var depositDetail in depositOrderer.DepositDetails)
+            {
+                billPrice += depositDetail.BillPrice;
+                taxPrice += depositDetail.TaxPrice;
+                depositAmount += depositDetail.DepositAmount;
+                discountAmount += depositDetail.DiscountAmount;
+                cnstrPrice += depositDetail.CnstrPrice;
+                fees += depositDetail.Fees;
+                otherAdjustments += depositDetail.OtherAdjustments;
+                carryAmount += depositDetail.CarryAmount;
+            }
+            var headerIndex = DetectHeaderIndex(index);
+            var headerCells = dgvMaster.Rows[headerIndex].Cells;
+            var subtotalIndex = dgvMaster.RowCount;
+            for (var i = headerIndex; i < dgvMaster.RowCount; i++)
+            {
+                var cells = dgvMaster.Rows[i].Cells;
+                if (CommonMotions.cnvInt(headerCells[(int)DispColumn.OrderersDivision].Value) != CommonMotions.cnvInt(cells[(int)DispColumn.OrderersDivision].Value)
+                    || CommonMotions.cnvInt(headerCells[(int)DispColumn.OrderersCode].Value) != CommonMotions.cnvInt(cells[(int)DispColumn.OrderersCode].Value))
+                {
+                    subtotalIndex = i;
+                    break;
+                }
+            }
+            dgvMaster.Rows.Insert(subtotalIndex, 4);
+            // 小計
+            dgvMaster.Rows[subtotalIndex].DefaultCellStyle.BackColor = Color.Coral;
+            dgvMaster.Rows[subtotalIndex].ReadOnly = true;
+            var subtotalCells = dgvMaster.Rows[subtotalIndex].Cells;
+            subtotalCells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+            subtotalCells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+            subtotalCells[(int)DispColumn.OrderersName].Value = "小計";
+            SetPrice(subtotalCells, (int)DispColumn.DepositAmountCash, depositAmountCash);
+            SetPrice(subtotalCells, (int)DispColumn.DepositAmountBill, depositAmountBill);
+            SetPrice(subtotalCells, (int)DispColumn.BillPrice, billPrice);
+            SetPrice(subtotalCells, (int)DispColumn.TaxPrice, taxPrice);
+            SetPrice(subtotalCells, (int)DispColumn.DepositAmount, depositAmount);
+            SetPrice(subtotalCells, (int)DispColumn.DiscountAmount, discountAmount);
+            SetPrice(subtotalCells, (int)DispColumn.CnstrPrice, cnstrPrice);
+            SetPrice(subtotalCells, (int)DispColumn.Fees, fees);
+            SetPrice(subtotalCells, (int)DispColumn.OtherAdjustments, otherAdjustments);
+            SetPrice(subtotalCells, (int)DispColumn.CarryAmount, carryAmount);
+            // 入金金額
+            dgvMaster.Rows[subtotalIndex + 1].DefaultCellStyle.BackColor = Color.Yellow;
+            dgvMaster.Rows[subtotalIndex + 1].ReadOnly = true;
+            var depositCells = dgvMaster.Rows[subtotalIndex + 1].Cells;
+            depositCells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+            depositCells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+            depositCells[(int)DispColumn.OrderersName].Value = "入金金額";
+            SetPrice(depositCells, (int)DispColumn.DepositAmountCash, depositAmountCash + depositAmountBill);
+            // 調整後金額
+            dgvMaster.Rows[subtotalIndex + 2].DefaultCellStyle.BackColor = Color.PaleTurquoise;
+            dgvMaster.Rows[subtotalIndex + 2].ReadOnly = true;
+            var adjustmentCells = dgvMaster.Rows[subtotalIndex + 2].Cells;
+            adjustmentCells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+            adjustmentCells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+            adjustmentCells[(int)DispColumn.OrderersName].Value = "調整後金額";
+            SetPrice(adjustmentCells, (int)DispColumn.DepositAmountCash, depositAmount);
+            // 差額
+            dgvMaster.Rows[subtotalIndex + 3].DefaultCellStyle.BackColor = Color.Chartreuse;
+            dgvMaster.Rows[subtotalIndex + 3].ReadOnly = true;
+            var differentCells = dgvMaster.Rows[subtotalIndex + 3].Cells;
+            differentCells[(int)DispColumn.OrderersDivision].Value = depositOrderer.OrderersDivision;
+            differentCells[(int)DispColumn.OrderersCode].Value = depositOrderer.OrderersCode;
+            differentCells[(int)DispColumn.OrderersName].Value = "差額";
+            SetPrice(differentCells, (int)DispColumn.DepositAmountCash, depositAmountCash + depositAmountBill - depositAmount);
+        }
+
+        private int DetectHeaderIndex(int index)
+        {
+            for (var i = index; i >= 0; i--)
+            {
+                if (CommonMotions.cnvString(dgvMaster.Rows[i].Cells[(int)DispColumn.OrderersName].Value) != "")
+                {
+                    return i;
+                }
+            }
+            return 0;
+        }
+
+        private int DetectHeaderIndex(DepositOrderer depositOrderer)
+        {
+            for (var i = 0; i < dgvMaster.RowCount; i++)
+            {
+                var cells = dgvMaster.Rows[i].Cells;
+                if (CommonMotions.cnvInt(cells[(int)DispColumn.OrderersDivision]) == depositOrderer.OrderersDivision
+                    && CommonMotions.cnvInt(cells[(int)DispColumn.OrderersCode]) == depositOrderer.OrderersCode)
+                {
+                    return i;
+                }
+            }
+            return 0;
+        }
+
+        private int DetectUnknownIndex(int index)
+        {
+            var headerIndex = DetectHeaderIndex(index);
+            for (var i = headerIndex; i < dgvMaster.Rows.Count; i++)
+            {
+                var constructionName = CommonMotions.cnvString(dgvMaster.Rows[i].Cells[(int)DispColumn.ConstructionName].Value);
+                if (constructionName == "" || constructionName == "不明")
+                {
+                    return i;
+                }
+            }
+            return 0;
+        }
+
+        private void SetPrice(DataGridViewCellCollection cells, int index, int price)
+        {
+            cells[index].Value = price.ToString("#,0");
+            cells[index].Style.ForeColor = Color.Black;
+            if (price < 0)
+            {
+                cells[index].Style.ForeColor = Color.Red;
+            }
+        }
+
+        private string ToOrdererName(int corporateStatusPoint, string corporateStatusName, string orderersName1, string orderersName2)
+        {
+            // 発注者名１△発注者名２
+            if (corporateStatusPoint == 0)
+            {
+                if (orderersName2 == "")
+                {
+                    return orderersName1;
+                }
+                return orderersName1 + "　" + orderersName2;
+            }
+            // 法人格名称△発注者名１△発注者名２
+            else if (corporateStatusPoint == 1)
+            {
+                if (orderersName2 == "")
+                {
+                    return corporateStatusName + "　" + orderersName1;
+                }
+                return corporateStatusName + orderersName1 + orderersName2;
+            }
+            // 発注者名１△法人格名称△発注者名２
+            if (orderersName2 == "")
+            {
+                return orderersName1 + "　" + corporateStatusName;
+            }
+            return orderersName1 + corporateStatusName + orderersName2;
+        }
+
+        /// <summary>
+        /// DataGridヘッダ色表示
+        /// </summary>
+        private void SetGridHeaderColor()
+        {
+            // ヘッダ色、-1:非表示、0:自動計算、1:総務、2：工事
+            int[] mc = {
+                -1,                     // ■編集状態
+                0,                      // No
+                -1,                     // ■発注先区分
+                -1,                     // ■発注者コード
+                -1,                     // ■連番
+                -1,                     // ■行番号
+                0,                      // 請求先名
+                1,                      // 入金日
+                1,                      // 入金金額 (振込み)
+                1,                      // 入金金額 (手形)
+                -1,                     // 請求No.
+                -1,                     // 受付番号
+                0,                      // 現場名
+                -1,                     // ■現場名 (DB登録値)
+                0,                      // 入金予定日
+                0,                      // 請求日
+                0,                      // 請求金額 (税抜)
+                0,                      // 請求金額 (消費税)
+                2,                      // 入金金額
+                2,                      // 値引金額
+                2,                      // 協力金
+                2,                      // 手数料
+                2,                      // その他調整
+                2,                      // 次回繰越
+                0,                      // 担当者承認
+                -1,                     // ■担当者コード
+                -1,                     // ■担当者日付
+                0,                      // 承認者１承認
+                -1,                     // ■承認者コード_1
+                -1,                     // ■承認権限区分_1
+                -1,                     // ■承認日付_1
+                -1,                     // ■承認順番_1
+                0,                      // 承認者２承認
+                -1,                     // ■承認者コード_2
+                -1,                     // ■承認権限区分_2
+                -1,                     // ■承認日付_2
+                -1,                     // ■承認順番_2
+                0,                      // 承認者３承認
+                -1,                     // ■承認者コード_3
+                -1,                     // ■承認権限区分_3
+                -1,                     // ■承認日付_3
+                -1,                     // ■承認順番_3
+                0,                      // 承認者４承認
+                -1,                     // ■承認者コード_4
+                -1,                     // ■承認権限区分_4
+                -1,                     // ■承認日付_4
+                -1,                     // ■承認順番_4
+                0,                      // 承認者５承認
+                -1,                     // ■承認者コード_5
+                -1,                     // ■承認権限区分_5
+                -1,                     // ■承認日付_5
+                -1,                     // ■承認順番_5
+                0,                      // 承認者６承認
+                -1,                     // ■承認者コード_6
+                -1,                     // ■承認権限区分_6
+                -1,                     // ■承認日付_6
+                -1,                     // ■承認順番_6
+                0,                      // 承認者７承認
+                -1,                     // ■承認者コード_7
+                -1,                     // ■承認権限区分_7
+                -1,                     // ■承認日付_7
+                -1,                     // ■承認順番_7
+                0,                      // 承認者８承認
+                -1,                     // ■承認者コード_8
+                -1,                     // ■承認権限区分_8
+                -1,                     // ■承認日付_8
+                -1,                     // ■承認順番_8
+                0,                      // 承認者９承認
+                -1,                     // ■承認者コード_9
+                -1,                     // ■承認権限区分_9
+                -1,                     // ■承認日付_9
+                -1,                     // ■承認順番_9
+                0,                      // 承認者１０承認
+                -1,                     // ■承認者コード_10
+                -1,                     // ■承認権限区分_10
+                -1,                     // ■承認日付_10
+                -1,                     // ■承認順番_10
+            };
+
+            dgvMaster.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dgvMaster.ColumnHeadersHeight = dgvMaster.ColumnHeadersHeight + 10;
+
+            // ヘッダーセルの値の設定
+            for (int i = 0; i < 77; i++)
+            {
+                // ヘッダーセルの色を設定
+                // 総務
+                if (mc[i] == 1)
+                {
+                    dgvMaster.Columns[i].HeaderCell.Style.BackColor = Color.Coral;
+                }
+                // 工事担当者
+                else if (mc[i] == 2)
+                {
+                    dgvMaster.Columns[i].HeaderCell.Style.BackColor = Color.SkyBlue;
+                }
+                // 表示・自動計算
+                else
+                {
+                    dgvMaster.Columns[i].HeaderCell.Style.BackColor = Color.PaleGreen;
+                }
+            }
+        }
+
+        /// <summary>
+        /// 表示権限のチェックを実施する。
+        /// </summary>
+        /// <param name="orderer"></param>
+        /// <returns></returns>
+        private bool CheckOrdererPermission(DepositOrderer orderer)
+        {
+            try
+            {
+                // 全部署対象
+                if (m_UserInfo.m_SecRange == SecRangeType.AllDepartment)
+                {
+                    return true;
+                }
+                var ioPdm = new IOMPersonDepartment();
+                var arDataPdm = new ArrayList();
+                var sql = new StringBuilder();
+                sql.Append("select count(*) from ConstructionBaseInfo Cbi ");
+                sql.Append("inner join PersonInChargeMaster PicM on PicM.PersonCode = Cbi.ConstructionPersonCode ");
+                sql.Append("inner join PersonDepartmentMaster PdM on PdM.DepartmentCode = PicM.DepartmentCode ");
+                sql.AppendFormat("where Cbi.OrderersDivision = {0} ", orderer.OrderersDivision);
+                sql.AppendFormat("and Cbi.OrderersCode = {0} ", orderer.OrderersCode);
+                sql.AppendFormat("and PdM.PersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                sql.AppendFormat("and PdM.DepartmentCode = {0} ", CommonMotions.LoginUserData.DepartmentCode);
+                // 自部門のみ表示の場合
+                if (m_UserInfo.m_SecRange == SecRangeType.OneDepartment)
+                {
+                    sql.Append("and Pdm.AffiliationFlg = 1 ");
+                }
+                // 担当分のみ対象の場合
+                else if (m_UserInfo.m_SecRange == SecRangeType.InCharge)
+                {
+                    sql.AppendFormat("and (Cbi.ConstructionPersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                    sql.AppendFormat("or Cbi.ConstrSubPersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                    sql.AppendFormat("or Cbi.ConstructionInstructor = {0}) ", CommonMotions.LoginUserData.PersonCode);
+                }
+                if (!ioPdm.ExecuteReader(sql.ToString(), ref arDataPdm))
+                    return false;
+                return CommonMotions.cnvInt(((object[])arDataPdm[0])[0]) > 0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 表示権限のチェックを実施する。
+        /// </summary>
+        /// <param name="DepartmentCode"></param>
+        /// <param name="ConstructionPersonCode"></param>
+        /// <param name="ConstrSubPersonCode"></param>
+        /// <param name="ConstructionInstructor"></param>
+        /// <returns></returns>
+        private bool CheckPermission(int DepartmentCode, int ConstructionPersonCode, int ConstrSubPersonCode, int ConstructionInstructor)
+        {
+            try
+            {
+                // 全部署対象
+                if (m_UserInfo.m_SecRange == SecRangeType.AllDepartment)
+                {
+                    return true;
+                }
+
+                // 複数部署対象、または自部署のみ対象
+                else if ((m_UserInfo.m_SecRange == SecRangeType.MultiDepartment) || (m_UserInfo.m_SecRange == SecRangeType.OneDepartment))
+                {
+                    var ioPdm = new IOMPersonDepartment();
+                    var arDataPdm = new ArrayList();
+                    var sql = new StringBuilder();
+                    sql.AppendLine("select Pdm.DepartmentCode ");
+                    sql.AppendLine("from PersonDepartmentMaster as Pdm ");
+                    sql.AppendFormat("where Pdm.PersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                    if (m_UserInfo.m_SecRange == SecRangeType.OneDepartment)
+                    {
+                        sql.AppendLine("and Pdm.AffiliationFlg = 1 ");
+                    }
+                    if (!ioPdm.ExecuteReader(sql.ToString(), ref arDataPdm))
+                        return false;
+                    foreach (object[] work in arDataPdm)
+                    {
+                        if (CommonMotions.cnvInt(work[0]) == DepartmentCode)
+                        {
+                            return true;
+                        }
+                    }
+                    return false;
+                }
+                // 担当分のみ対象
+                else
+                {
+                    if ((CommonMotions.LoginUserData.PersonCode == ConstructionPersonCode) ||
+                        (CommonMotions.LoginUserData.PersonCode == ConstrSubPersonCode) ||
+                        (CommonMotions.LoginUserData.PersonCode == ConstructionInstructor))
+                    {
+                        return true;
+                    }
+                    else
+                    {
+                        return false;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 担当未承認の承認者リスト
+        /// </summary>
+        /// <param name="departmentCode"></param>
+        /// <param name="approves"></param>
+        /// <returns></returns>
+        private bool SelectDefaultApprove(int departmentCode, ref List<ApproveData> approves)
+        {
+            var IoAm = new IOMApproval();
+            var arDataAm = new ArrayList();
+            var sql = new StringBuilder();
+            try
+            {
+                sql.AppendLine("select Am.APPROVALPERSON, Picm.SealPrintName,Am.ApprovalAuthority ");
+                sql.AppendLine("from ApprovalMaster as Am left join PersonInChargeMaster as Picm on Am.APPROVALPERSON = Picm.PERSONCODE ");
+                sql.AppendLine("where Am.APPROVALCODE = 98 ");
+                sql.AppendFormat("and Am.DepartmentCode = {0} ", departmentCode);
+                sql.AppendLine("order by Am.SEQNO desc ");
+
+                if (!IoAm.ExecuteReader(sql.ToString(), ref arDataAm)) return false;
+                approves = new List<ApproveData>();
+                int Order = 1;
+                foreach (object[] work in arDataAm)
+                {
+                    approves.Add(new ApproveData()
+                    {
+                        Key = CommonMotions.cnvInt(work[0]),
+                        Value = CommonMotions.cnvString(work[1]),
+                        Order = Order,
+                        ApprovalAuthority = CommonMotions.cnvInt(work[2])
+                    });
+                    Order++;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                IoAm = null;
+            }
+        }
+
+        private bool CanEditDeposit(DepositOrderer depositOrderer)
+        {
+            // 担当者の場合
+            if (m_UserInfo.m_Type == UserType.Staff)
+            {
+                // 承認済みなら編集不可
+                if (depositOrderer.HasApprovedByApprover)
+                    return false;
+            }
+            // 所属長、統括者の場合
+            else if (m_UserInfo.m_Type == UserType.SuperiorAuthority || m_UserInfo.m_Type == UserType.SupervisorAuthority)
+            {
+                if (depositOrderer.HasApprovedByLastApprover)
+                    return false;
+            }
+            // 特別権限の場合
+            else if (m_UserInfo.m_Type == UserType.PresidentAuthority)
+            {
+                if (depositOrderer.HasApprovedByLastApprover)
+                    return false;
+            }
+            return m_UserInfo.CanEditDeposit;
+        }
+
+        private bool CanEditDepositDetail(DepositDetail depositDetail)
+        {
+            // 担当者の場合
+            if (m_UserInfo.m_Type == UserType.Staff)
+            {
+                // 承認済みなら編集不可
+                if (depositDetail.IsApprovedByStaff || depositDetail.IsApprovedByApprover)
+                    return false;
+            }
+            // 所属長、統括者の場合
+            else if (m_UserInfo.m_Type == UserType.SuperiorAuthority || m_UserInfo.m_Type == UserType.SupervisorAuthority)
+            {
+                // 上位の承認者でなければ編集不可
+                if (!IsUpperLevelApprover(depositDetail))
+                    return false;
+            }
+            // 特別権限の場合
+            else if (m_UserInfo.m_Type == UserType.PresidentAuthority)
+            {
+                if (depositDetail.IsApprovedByLastApprover)
+                    return false;
+            }
+            return m_UserInfo.CanEditDepositDetail;
+        }
+
+        private bool IsUpperLevelApprover(DepositDetail depositDetail)
+        {
+            if (depositDetail.DepositApprovals.Count == 0)
+                return true;
+            var lastApproverIndex = depositDetail.DepositApprovals.FindLastIndex(da => da.ApprovalDate != "");
+            var myIndex = depositDetail.DepositApprovals.FindLastIndex(da => da.ApprovalPerson == CommonMotions.LoginUserData.PersonCode);
+            return myIndex > lastApproverIndex;
+        }
+
+        /// <summary>
+        /// 編集用空白行追加
+        /// </summary>
+        /// <param name="index"></param>
+        private void AddBlankRow(DepositOrderer depositOrderer, int index)
+        {
+            var headerIndex = DetectHeaderIndex(index);
+            var headerCells = dgvMaster.Rows[headerIndex].Cells;
+            var blankIndex = dgvMaster.RowCount;
+            for (var i = headerIndex; i < dgvMaster.RowCount; i++)
+            {
+                var cells = dgvMaster.Rows[i].Cells;
+                if (CommonMotions.cnvInt(headerCells[(int)DispColumn.OrderersDivision].Value) != CommonMotions.cnvInt(cells[(int)DispColumn.OrderersDivision].Value)
+                    || CommonMotions.cnvInt(headerCells[(int)DispColumn.OrderersCode].Value) != CommonMotions.cnvInt(cells[(int)DispColumn.OrderersCode].Value))
+                {
+                    blankIndex = i;
+                    break;
+                }
+            }
+            dgvMaster.Rows.Insert(blankIndex);
+            var row = dgvMaster.Rows[blankIndex];
+            row.ReadOnly = true;
+            row.Cells[(int)DispColumn.OrderersDivision].Value = headerCells[(int)DispColumn.OrderersDivision].Value;
+            row.Cells[(int)DispColumn.OrderersCode].Value = headerCells[(int)DispColumn.OrderersCode].Value;
+            var readOnly = !CanEditDeposit(depositOrderer);
+            row.Cells[(int)DispColumn.DepositDate].ReadOnly = readOnly;
+            row.Cells[(int)DispColumn.DepositAmountCash].ReadOnly = readOnly;
+            row.Cells[(int)DispColumn.DepositAmountBill].ReadOnly = readOnly;
+        }
+
+        /// <summary>
+        /// ユーザタイプ判定
+        /// </summary>
+        private void SetUserType()
+        {
+            IOMSecurity IoSm = new IOMSecurity();
+            ArrayList arDataSm = new ArrayList();
+            StringBuilder sql = new StringBuilder();
+
+            try
+            {
+                // システム管理者・特別権限
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement
+                 || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                {
+                    // 特別権限
+                    m_UserInfo.m_Type = UserType.PresidentAuthority;
+                }
+                // 統括者権限
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
+                {
+                    // 統括者権限
+                    m_UserInfo.m_Type = UserType.SupervisorAuthority;
+
+                }
+                // 所属長権限
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // 統括者権限
+                    m_UserInfo.m_Type = UserType.SuperiorAuthority;
+
+                }
+                // 一般権限
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // 一般権限
+                    m_UserInfo.m_Type = UserType.Staff;
+                }
+
+                sql.AppendLine("select Sm.SecRange, Sm.GeneralAffairs ");
+                sql.AppendLine("from SecurityMaster as Sm ");
+                sql.AppendFormat("where Sm.SecCode = {0} ", CommonMotions.LoginUserData.SecCode);
+
+                if (!IoSm.ExecuteReader(sql.ToString(), ref arDataSm)) return;
+
+                foreach (object[] work in arDataSm)
+                {
+                    m_UserInfo.m_SecRange = (SecRangeType)CommonMotions.cnvInt(work[0]);
+                    m_UserInfo.m_GeneralAffairsFlg = CommonMotions.cnvInt(work[1]);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", ex.Message);
+            }
+        }
+        
+        /// <summary>
+        /// ボタン制御
+        /// </summary>
+        private void ControlButton()
+        {
+            try
+            {
+                // TRS zzz
+                // 特別権限だったら無条件にボタンが有効になると思う。。。
+                // 表示件数が0の場合は、現場追加は無効でよいか？？？
+
+                // 総務担当外
+                if (m_UserInfo.m_GeneralAffairsFlg == 0)
+                {
+                    btnAddCmp.Enabled = false;
+                    btnDelCmp.Enabled = false;
+                    btnAddFld.Enabled = true;
+                }
+                // 総務担当
+                else
+                {
+                    btnAddCmp.Enabled = true;
+                    btnDelCmp.Enabled = true;
+                    btnAddFld.Enabled = false;
+                }
+
+                // 表示件数が0の場合は「現場追加」を無効
+                if (dgvMaster.RowCount <= 0)
+                {
+                    btnAddFld.Enabled = false;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 入金請求先情報を取得する。
+        /// </summary>
+        /// <param name="index"></param>
+        /// <returns></returns>
+        private DepositOrderer FindDepositOrderer(int index)
+        {
+            var cells = dgvMaster.Rows[index].Cells;
+            var orderersDivision = CommonMotions.cnvInt(cells[(int)DispColumn.OrderersDivision].Value);
+            var orderersCode = CommonMotions.cnvInt(cells[(int)DispColumn.OrderersCode].Value);
+            return FindDepositOrderer(orderersDivision, orderersCode);
+        }
+
+        /// <summary>
+        /// 入金請求先情報を取得する。
+        /// </summary>
+        /// <param name="orderersDivision"></param>
+        /// <param name="orderersCode"></param>
+        /// <returns></returns>
+        private DepositOrderer FindDepositOrderer(int orderersDivision, int orderersCode)
+        {
+            return depositOrderers.Find(dh => !dh.Deleted && dh.OrderersDivision == orderersDivision && dh.OrderersCode == orderersCode);
+        }
+
+        /// <summary>
+        /// 対象の行の請求先キーを取得する。
+        /// </summary>
+        /// <param name="index"></param>
+        /// <returns></returns>
+        private OrderersKey GetOrderersKey(int index)
+        {
+            var cells = dgvMaster.Rows[index].Cells;
+            return new OrderersKey()
+            {
+                OrderersDivision = CommonMotions.cnvInt(cells[(int)DispColumn.OrderersDivision].Value),
+                OrderersCode = CommonMotions.cnvInt(cells[(int)DispColumn.OrderersCode].Value),
+            };
+        }
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/SelectPayment/FrmSelectPayment.resx	(revision 51)
@@ -0,0 +1,351 @@
+﻿<?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="EditStatus.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="No.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderersDivision.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderersCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="SeqNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="LineCount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderersName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="DepositDate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="DepositAmountCash.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="DepositAmountBill.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="RequestNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OrderNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ConstructionName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ConstructionName_Raw.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="PaymentSchedule.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="BillCreationDate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="BillPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="TaxPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="DepositAmount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="DiscountAmount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="CnstrPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Fees.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="OtherAdjustments.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="CarryAmount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="PersonName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="PersonCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="PersonDate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalName_10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalCode_10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalAuthority_10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalDate_10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ApprovalOrder_10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.Designer.cs	(revision 51)
@@ -0,0 +1,312 @@
+﻿namespace ProcessManagement.Forms.DataEntry
+{
+    partial class StatusAndDateReq
+    {
+        /// <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()
+        {
+            this.label1 = new System.Windows.Forms.Label();
+            this.comboBox1 = new System.Windows.Forms.ComboBox();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.radioButton3 = new System.Windows.Forms.RadioButton();
+            this.radioButton4 = new System.Windows.Forms.RadioButton();
+            this.dateTimePicker1 = new System.Windows.Forms.DateTimePicker();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.radioButton1 = new System.Windows.Forms.RadioButton();
+            this.lblProgressNameB = new System.Windows.Forms.Label();
+            this.lblProgressNameA = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.lblMessageB = new System.Windows.Forms.Label();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnExecProc1 = new System.Windows.Forms.Button();
+            this.btnExecProc2 = new System.Windows.Forms.Button();
+            this.groupBox1.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(33, 19);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(102, 21);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "作成対象";
+            // 
+            // comboBox1
+            // 
+            this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBox1.FormattingEnabled = true;
+            this.comboBox1.Items.AddRange(new object[] {
+            "１回目",
+            "２回目",
+            "３回目"});
+            this.comboBox1.Location = new System.Drawing.Point(141, 15);
+            this.comboBox1.Name = "comboBox1";
+            this.comboBox1.Size = new System.Drawing.Size(182, 29);
+            this.comboBox1.TabIndex = 1;
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox1.Controls.Add(this.radioButton3);
+            this.groupBox1.Controls.Add(this.radioButton4);
+            this.groupBox1.Controls.Add(this.dateTimePicker1);
+            this.groupBox1.Location = new System.Drawing.Point(37, 65);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(620, 143);
+            this.groupBox1.TabIndex = 3;
+            this.groupBox1.TabStop = false;
+            this.groupBox1.Text = "請求日";
+            // 
+            // radioButton3
+            // 
+            this.radioButton3.AutoSize = true;
+            this.radioButton3.Location = new System.Drawing.Point(135, 102);
+            this.radioButton3.Name = "radioButton3";
+            this.radioButton3.Size = new System.Drawing.Size(396, 25);
+            this.radioButton3.TabIndex = 17;
+            this.radioButton3.Text = "印字しない（　　年　　月　　日）";
+            this.radioButton3.UseVisualStyleBackColor = true;
+            // 
+            // radioButton4
+            // 
+            this.radioButton4.AutoSize = true;
+            this.radioButton4.Checked = true;
+            this.radioButton4.Location = new System.Drawing.Point(135, 32);
+            this.radioButton4.Name = "radioButton4";
+            this.radioButton4.Size = new System.Drawing.Size(120, 25);
+            this.radioButton4.TabIndex = 18;
+            this.radioButton4.TabStop = true;
+            this.radioButton4.Text = "印字する";
+            this.radioButton4.UseVisualStyleBackColor = true;
+            // 
+            // dateTimePicker1
+            // 
+            this.dateTimePicker1.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dateTimePicker1.Location = new System.Drawing.Point(164, 65);
+            this.dateTimePicker1.Name = "dateTimePicker1";
+            this.dateTimePicker1.Size = new System.Drawing.Size(179, 28);
+            this.dateTimePicker1.TabIndex = 16;
+            this.dateTimePicker1.TabStop = false;
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox2.Controls.Add(this.radioButton2);
+            this.groupBox2.Controls.Add(this.radioButton1);
+            this.groupBox2.Controls.Add(this.lblProgressNameB);
+            this.groupBox2.Controls.Add(this.lblProgressNameA);
+            this.groupBox2.Controls.Add(this.label4);
+            this.groupBox2.Controls.Add(this.label3);
+            this.groupBox2.Controls.Add(this.label5);
+            this.groupBox2.Location = new System.Drawing.Point(37, 224);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(620, 200);
+            this.groupBox2.TabIndex = 7;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = "工事の進捗状態";
+            // 
+            // radioButton2
+            // 
+            this.radioButton2.AutoSize = true;
+            this.radioButton2.Location = new System.Drawing.Point(175, 29);
+            this.radioButton2.Name = "radioButton2";
+            this.radioButton2.Size = new System.Drawing.Size(143, 25);
+            this.radioButton2.TabIndex = 12;
+            this.radioButton2.Text = "変更しない";
+            this.radioButton2.UseVisualStyleBackColor = true;
+            // 
+            // radioButton1
+            // 
+            this.radioButton1.AutoSize = true;
+            this.radioButton1.Checked = true;
+            this.radioButton1.Location = new System.Drawing.Point(326, 29);
+            this.radioButton1.Name = "radioButton1";
+            this.radioButton1.Size = new System.Drawing.Size(120, 25);
+            this.radioButton1.TabIndex = 13;
+            this.radioButton1.TabStop = true;
+            this.radioButton1.Text = "変更する";
+            this.radioButton1.UseVisualStyleBackColor = true;
+            // 
+            // lblProgressNameB
+            // 
+            this.lblProgressNameB.BackColor = System.Drawing.Color.White;
+            this.lblProgressNameB.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblProgressNameB.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.lblProgressNameB.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblProgressNameB.Location = new System.Drawing.Point(204, 148);
+            this.lblProgressNameB.Name = "lblProgressNameB";
+            this.lblProgressNameB.Size = new System.Drawing.Size(360, 30);
+            this.lblProgressNameB.TabIndex = 7;
+            this.lblProgressNameB.Text = "請求準備";
+            this.lblProgressNameB.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblProgressNameA
+            // 
+            this.lblProgressNameA.BackColor = System.Drawing.Color.White;
+            this.lblProgressNameA.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblProgressNameA.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.lblProgressNameA.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblProgressNameA.Location = new System.Drawing.Point(204, 69);
+            this.lblProgressNameA.Name = "lblProgressNameA";
+            this.lblProgressNameA.Size = new System.Drawing.Size(360, 30);
+            this.lblProgressNameA.TabIndex = 8;
+            this.lblProgressNameA.Text = "施工完了";
+            this.lblProgressNameA.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.Location = new System.Drawing.Point(33, 153);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(171, 21);
+            this.label4.TabIndex = 9;
+            this.label4.Text = "実行後進捗状態";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 24F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.Location = new System.Drawing.Point(368, 107);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(32, 33);
+            this.label3.TabIndex = 10;
+            this.label3.Text = "⇓";
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.Location = new System.Drawing.Point(56, 74);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(148, 21);
+            this.label5.TabIndex = 11;
+            this.label5.Text = "現在進捗状態";
+            // 
+            // lblMessageB
+            // 
+            this.lblMessageB.AutoSize = true;
+            this.lblMessageB.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblMessageB.Location = new System.Drawing.Point(91, 439);
+            this.lblMessageB.Name = "lblMessageB";
+            this.lblMessageB.Size = new System.Drawing.Size(539, 21);
+            this.lblMessageB.TabIndex = 8;
+            this.lblMessageB.Text = "【印刷のみ】、【保存のみ】を選択してください。";
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(530, 480);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(140, 40);
+            this.btnCancel.TabIndex = 11;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            // 
+            // btnExecProc1
+            // 
+            this.btnExecProc1.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc1.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnExecProc1.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc1.Location = new System.Drawing.Point(234, 480);
+            this.btnExecProc1.Name = "btnExecProc1";
+            this.btnExecProc1.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc1.TabIndex = 9;
+            this.btnExecProc1.Text = "印刷のみ";
+            this.btnExecProc1.UseVisualStyleBackColor = false;
+            this.btnExecProc1.Click += new System.EventHandler(this.btnExecProc1_Click);
+            // 
+            // btnExecProc2
+            // 
+            this.btnExecProc2.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc2.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnExecProc2.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc2.Location = new System.Drawing.Point(382, 480);
+            this.btnExecProc2.Name = "btnExecProc2";
+            this.btnExecProc2.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc2.TabIndex = 10;
+            this.btnExecProc2.Text = "保存のみ";
+            this.btnExecProc2.UseVisualStyleBackColor = false;
+            // 
+            // StatusAndDateReq
+            // 
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+            this.BackColor = System.Drawing.Color.White;
+            this.ClientSize = new System.Drawing.Size(694, 536);
+            this.Controls.Add(this.btnCancel);
+            this.Controls.Add(this.btnExecProc1);
+            this.Controls.Add(this.btnExecProc2);
+            this.Controls.Add(this.lblMessageB);
+            this.Controls.Add(this.groupBox2);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.comboBox1);
+            this.Controls.Add(this.label1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "StatusAndDateReq";
+            this.ShowIcon = false;
+            this.Text = "実　行　確　認";
+            this.groupBox1.ResumeLayout(false);
+            this.groupBox1.PerformLayout();
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox2.PerformLayout();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox comboBox1;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.RadioButton radioButton3;
+        private System.Windows.Forms.RadioButton radioButton4;
+        private System.Windows.Forms.DateTimePicker dateTimePicker1;
+        private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.RadioButton radioButton2;
+        private System.Windows.Forms.RadioButton radioButton1;
+        private System.Windows.Forms.Label lblProgressNameB;
+        private System.Windows.Forms.Label lblProgressNameA;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label lblMessageB;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnExecProc1;
+        private System.Windows.Forms.Button btnExecProc2;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.cs	(revision 51)
@@ -0,0 +1,27 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace ProcessManagement.Forms.DataEntry
+{
+    public partial class StatusAndDateReq : Form
+    {
+        public StatusAndDateReq()
+        {
+            InitializeComponent();
+        }
+
+        private void btnExecProc1_Click(object sender, EventArgs e)
+        {
+            //MessageBox.Show("工事金額が全て請求されていませんが、\r\n請求書承認を申請してよろしいですか？", "請求書申請", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
+//            MessageBox.Show("請求書承認を申請してよろしいですか？", "請求書申請", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
+            MessageBox.Show("施工完了ではないため、請求書承認の申請はできません。", "請求書申請", MessageBoxButtons.OK, MessageBoxIcon.Error);
+        }
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/Request/StatusAndDateReq.resx	(revision 51)
@@ -0,0 +1,120 @@
+﻿<?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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SalesGraphData/FrmSalesGraphData.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SalesGraphData/FrmSalesGraphData.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/SalesGraphData/FrmSalesGraphData.cs	(revision 51)
@@ -71,8 +71,25 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
+        #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
         #region コンストラクタ
         public FrmSalesGraphData()
         {
@@ -93,9 +110,6 @@
         }
         #endregion
 
-        #region プロパティ
-        #endregion
-
         #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
@@ -144,6 +158,12 @@
 
             // 初期表示
             InitDataLoad();
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
         }
         #endregion
 
@@ -784,5 +804,27 @@
             DispGridData();
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                dgvMaster.ReadOnly = true;
+                btnDataEntry.Visible = false;
+                btnLineDelete.Visible = false;
+                btnLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.Designer.cs	(revision 51)
@@ -63,6 +63,11 @@
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle();
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle34 = new System.Windows.Forms.DataGridViewCellStyle();
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle35 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle36 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle37 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle38 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle39 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle40 = new System.Windows.Forms.DataGridViewCellStyle();
             this.label1 = new System.Windows.Forms.Label();
             this.btnEnd = new System.Windows.Forms.Button();
             this.TabControl1 = new System.Windows.Forms.TabControl();
@@ -88,6 +93,7 @@
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn43 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn44 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn45 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -107,6 +113,7 @@
             this.dataGridViewTextBoxColumn7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn38 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn48 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -135,6 +142,7 @@
             this.dataGridViewTextBoxColumn16 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn17 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn18 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn20 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn39 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn50 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -163,6 +171,7 @@
             this.dataGridViewTextBoxColumn25 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn26 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn28 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn35 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn46 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn52 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -191,6 +200,7 @@
             this.dataGridViewTextBoxColumn33 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn34 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn36 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn37 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn47 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn54 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -206,7 +216,6 @@
             this.label104 = new System.Windows.Forms.Label();
             this.label44 = new System.Windows.Forms.Label();
             this.btnTab5LineDel = new System.Windows.Forms.Button();
-            this.comboBox1 = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
             this.panel3 = new System.Windows.Forms.Panel();
             this.pnlApproval = new System.Windows.Forms.Panel();
             this.lblApprovalCount = new System.Windows.Forms.Label();
@@ -217,10 +226,11 @@
             this.btnNotApproval = new System.Windows.Forms.Button();
             this.btnOnHold = new System.Windows.Forms.Button();
             this.cmbDepartment = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
-            this.label9 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
             this.cmbConstructionPerson = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
-            this.label7 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
             this.label4 = new System.Windows.Forms.Label();
+            this.comboBox1 = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
             this.btnDataDelete = new System.Windows.Forms.Button();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.lblCellTotal = new System.Windows.Forms.Label();
@@ -281,7 +291,7 @@
             this.TabControl1.Location = new System.Drawing.Point(6, 92);
             this.TabControl1.Name = "TabControl1";
             this.TabControl1.SelectedIndex = 0;
-            this.TabControl1.Size = new System.Drawing.Size(1329, 554);
+            this.TabControl1.Size = new System.Drawing.Size(1334, 554);
             this.TabControl1.TabIndex = 1;
             this.TabControl1.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.tabControl1_DrawItem);
             // 
@@ -303,7 +313,7 @@
             this.tabPage1.Location = new System.Drawing.Point(4, 26);
             this.tabPage1.Name = "tabPage1";
             this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
-            this.tabPage1.Size = new System.Drawing.Size(1321, 524);
+            this.tabPage1.Size = new System.Drawing.Size(1326, 524);
             this.tabPage1.TabIndex = 0;
             this.tabPage1.Text = "交　　通　　費";
             // 
@@ -311,7 +321,7 @@
             // 
             this.label49.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label49.BackColor = System.Drawing.Color.White;
-            this.label49.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label49.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label49.ForeColor = System.Drawing.Color.Black;
             this.label49.Location = new System.Drawing.Point(906, 492);
             this.label49.Name = "label49";
@@ -337,7 +347,7 @@
             // 
             this.label51.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label51.BackColor = System.Drawing.Color.White;
-            this.label51.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label51.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label51.ForeColor = System.Drawing.Color.Black;
             this.label51.Location = new System.Drawing.Point(596, 492);
             this.label51.Name = "label51";
@@ -363,7 +373,7 @@
             // 
             this.label53.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label53.BackColor = System.Drawing.Color.White;
-            this.label53.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label53.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label53.ForeColor = System.Drawing.Color.Black;
             this.label53.Location = new System.Drawing.Point(286, 492);
             this.label53.Name = "label53";
@@ -453,6 +463,7 @@
             this.Column5,
             this.Column4,
             this.dataGridViewTextBoxColumn43,
+            this.Column9,
             this.dataGridViewTextBoxColumn44,
             this.dataGridViewTextBoxColumn45,
             this.Column2,
@@ -465,9 +476,8 @@
             this.dgvPage1.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvPage1.RowTemplate.Height = 24;
             this.dgvPage1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvPage1.Size = new System.Drawing.Size(1310, 482);
+            this.dgvPage1.Size = new System.Drawing.Size(1315, 482);
             this.dgvPage1.TabIndex = 116;
-            this.dgvPage1.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellClick);
             this.dgvPage1.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellContentClick);
             this.dgvPage1.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellDoubleClick);
             this.dgvPage1.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellEnter);
@@ -517,7 +527,7 @@
             this.dataGridViewTextBoxColumn41.ReadOnly = true;
             this.dataGridViewTextBoxColumn41.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn41.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn41.Width = 320;
+            this.dataGridViewTextBoxColumn41.Width = 300;
             // 
             // dataGridViewTextBoxColumn42
             // 
@@ -529,7 +539,7 @@
             this.dataGridViewTextBoxColumn42.Name = "dataGridViewTextBoxColumn42";
             this.dataGridViewTextBoxColumn42.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn42.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn42.Width = 320;
+            this.dataGridViewTextBoxColumn42.Width = 300;
             // 
             // Column6
             // 
@@ -577,12 +587,24 @@
             dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
             this.dataGridViewTextBoxColumn43.DefaultCellStyle = dataGridViewCellStyle6;
             this.dataGridViewTextBoxColumn43.Frozen = true;
-            this.dataGridViewTextBoxColumn43.HeaderText = "支　払　金　額";
+            this.dataGridViewTextBoxColumn43.HeaderText = "税抜支払金額";
             this.dataGridViewTextBoxColumn43.Name = "dataGridViewTextBoxColumn43";
             this.dataGridViewTextBoxColumn43.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn43.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn43.Width = 150;
+            this.dataGridViewTextBoxColumn43.Width = 110;
             // 
+            // Column9
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column9.Frozen = true;
+            this.Column9.HeaderText = "税込支払金額";
+            this.Column9.Name = "Column9";
+            this.Column9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column9.Width = 110;
+            // 
             // dataGridViewTextBoxColumn44
             // 
             this.dataGridViewTextBoxColumn44.Frozen = true;
@@ -594,15 +616,15 @@
             // 
             // dataGridViewTextBoxColumn45
             // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn45.DefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle8.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn45.DefaultCellStyle = dataGridViewCellStyle8;
             this.dataGridViewTextBoxColumn45.Frozen = true;
             this.dataGridViewTextBoxColumn45.HeaderText = "支払先名称";
             this.dataGridViewTextBoxColumn45.Name = "dataGridViewTextBoxColumn45";
             this.dataGridViewTextBoxColumn45.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn45.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn45.Width = 200;
+            this.dataGridViewTextBoxColumn45.Width = 175;
             // 
             // Column2
             // 
@@ -619,6 +641,7 @@
             this.Column3.HeaderText = "データ追加番号";
             this.Column3.Name = "Column3";
             this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column3.Visible = false;
             this.Column3.Width = 5;
             // 
@@ -627,7 +650,7 @@
             this.btnTab1LineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab1LineDel.BackColor = System.Drawing.Color.Red;
             this.btnTab1LineDel.ForeColor = System.Drawing.Color.White;
-            this.btnTab1LineDel.Location = new System.Drawing.Point(1186, 490);
+            this.btnTab1LineDel.Location = new System.Drawing.Point(1191, 490);
             this.btnTab1LineDel.Name = "btnTab1LineDel";
             this.btnTab1LineDel.Size = new System.Drawing.Size(130, 30);
             this.btnTab1LineDel.TabIndex = 102;
@@ -641,7 +664,7 @@
             this.btnTab1LineNew.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab1LineNew.BackColor = System.Drawing.Color.DarkSlateGray;
             this.btnTab1LineNew.ForeColor = System.Drawing.Color.White;
-            this.btnTab1LineNew.Location = new System.Drawing.Point(1048, 490);
+            this.btnTab1LineNew.Location = new System.Drawing.Point(1053, 490);
             this.btnTab1LineNew.Name = "btnTab1LineNew";
             this.btnTab1LineNew.Size = new System.Drawing.Size(130, 30);
             this.btnTab1LineNew.TabIndex = 101;
@@ -668,7 +691,7 @@
             this.tabPage2.Location = new System.Drawing.Point(4, 26);
             this.tabPage2.Name = "tabPage2";
             this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
-            this.tabPage2.Size = new System.Drawing.Size(1321, 524);
+            this.tabPage2.Size = new System.Drawing.Size(1326, 524);
             this.tabPage2.TabIndex = 1;
             this.tabPage2.Text = "購　入　品　費";
             // 
@@ -683,14 +706,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvPage2.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvPage2.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.dgvPage2.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvPage2.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle9;
             this.dgvPage2.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvPage2.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.dataGridViewTextBoxColumn1,
@@ -704,6 +727,7 @@
             this.dataGridViewTextBoxColumn7,
             this.dataGridViewTextBoxColumn8,
             this.dataGridViewTextBoxColumn9,
+            this.Column10,
             this.dataGridViewTextBoxColumn10,
             this.dataGridViewTextBoxColumn38,
             this.dataGridViewTextBoxColumn48,
@@ -716,20 +740,20 @@
             this.dgvPage2.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvPage2.RowTemplate.Height = 24;
             this.dgvPage2.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvPage2.Size = new System.Drawing.Size(1310, 482);
+            this.dgvPage2.Size = new System.Drawing.Size(1315, 482);
             this.dgvPage2.TabIndex = 136;
-            this.dgvPage2.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellClick);
             this.dgvPage2.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellContentClick);
             this.dgvPage2.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellDoubleClick);
             this.dgvPage2.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellEnter);
+            this.dgvPage2.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValidated);
             this.dgvPage2.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValueChanged);
             this.dgvPage2.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvPage_MouseUp);
             // 
             // dataGridViewTextBoxColumn1
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle9.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle9;
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle10.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle10;
             this.dataGridViewTextBoxColumn1.Frozen = true;
             this.dataGridViewTextBoxColumn1.HeaderText = "日付";
             this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
@@ -758,9 +782,9 @@
             // 
             // dataGridViewTextBoxColumn5
             // 
-            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle10.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn5.DefaultCellStyle = dataGridViewCellStyle10;
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle11.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn5.DefaultCellStyle = dataGridViewCellStyle11;
             this.dataGridViewTextBoxColumn5.Frozen = true;
             this.dataGridViewTextBoxColumn5.HeaderText = "工　事　名　称";
             this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5";
@@ -767,19 +791,19 @@
             this.dataGridViewTextBoxColumn5.ReadOnly = true;
             this.dataGridViewTextBoxColumn5.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn5.Width = 320;
+            this.dataGridViewTextBoxColumn5.Width = 300;
             // 
             // dataGridViewTextBoxColumn6
             // 
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle11.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle11;
+            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle12.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle12;
             this.dataGridViewTextBoxColumn6.Frozen = true;
             this.dataGridViewTextBoxColumn6.HeaderText = "支　払　内　容";
             this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6";
             this.dataGridViewTextBoxColumn6.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn6.Width = 320;
+            this.dataGridViewTextBoxColumn6.Width = 300;
             // 
             // dataGridViewButtonColumn1
             // 
@@ -813,8 +837,8 @@
             // 
             // dataGridViewTextBoxColumn8
             // 
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn8.DefaultCellStyle = dataGridViewCellStyle12;
+            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn8.DefaultCellStyle = dataGridViewCellStyle13;
             this.dataGridViewTextBoxColumn8.Frozen = true;
             this.dataGridViewTextBoxColumn8.HeaderText = "支払方法";
             this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8";
@@ -823,16 +847,28 @@
             // 
             // dataGridViewTextBoxColumn9
             // 
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle13.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn9.DefaultCellStyle = dataGridViewCellStyle13;
+            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle14.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn9.DefaultCellStyle = dataGridViewCellStyle14;
             this.dataGridViewTextBoxColumn9.Frozen = true;
-            this.dataGridViewTextBoxColumn9.HeaderText = "支　払　金　額";
+            this.dataGridViewTextBoxColumn9.HeaderText = "税抜支払金額";
             this.dataGridViewTextBoxColumn9.Name = "dataGridViewTextBoxColumn9";
             this.dataGridViewTextBoxColumn9.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn9.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn9.Width = 150;
+            this.dataGridViewTextBoxColumn9.Width = 110;
             // 
+            // Column10
+            // 
+            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle15.ForeColor = System.Drawing.Color.Black;
+            this.Column10.DefaultCellStyle = dataGridViewCellStyle15;
+            this.Column10.Frozen = true;
+            this.Column10.HeaderText = "税込支払金額";
+            this.Column10.Name = "Column10";
+            this.Column10.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column10.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column10.Width = 110;
+            // 
             // dataGridViewTextBoxColumn10
             // 
             this.dataGridViewTextBoxColumn10.Frozen = true;
@@ -844,15 +880,15 @@
             // 
             // dataGridViewTextBoxColumn38
             // 
-            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle14.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn38.DefaultCellStyle = dataGridViewCellStyle14;
+            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle16.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn38.DefaultCellStyle = dataGridViewCellStyle16;
             this.dataGridViewTextBoxColumn38.Frozen = true;
             this.dataGridViewTextBoxColumn38.HeaderText = "支払先名称";
             this.dataGridViewTextBoxColumn38.Name = "dataGridViewTextBoxColumn38";
             this.dataGridViewTextBoxColumn38.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn38.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn38.Width = 200;
+            this.dataGridViewTextBoxColumn38.Width = 175;
             // 
             // dataGridViewTextBoxColumn48
             // 
@@ -876,7 +912,7 @@
             // 
             this.label61.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label61.BackColor = System.Drawing.Color.White;
-            this.label61.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label61.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label61.ForeColor = System.Drawing.Color.Black;
             this.label61.Location = new System.Drawing.Point(906, 492);
             this.label61.Name = "label61";
@@ -902,7 +938,7 @@
             // 
             this.label63.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label63.BackColor = System.Drawing.Color.White;
-            this.label63.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label63.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label63.ForeColor = System.Drawing.Color.Black;
             this.label63.Location = new System.Drawing.Point(596, 492);
             this.label63.Name = "label63";
@@ -928,7 +964,7 @@
             // 
             this.label65.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label65.BackColor = System.Drawing.Color.White;
-            this.label65.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label65.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label65.ForeColor = System.Drawing.Color.Black;
             this.label65.Location = new System.Drawing.Point(286, 492);
             this.label65.Name = "label65";
@@ -942,7 +978,7 @@
             this.btnTab2LineNew.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab2LineNew.BackColor = System.Drawing.Color.DarkSlateGray;
             this.btnTab2LineNew.ForeColor = System.Drawing.Color.White;
-            this.btnTab2LineNew.Location = new System.Drawing.Point(1048, 490);
+            this.btnTab2LineNew.Location = new System.Drawing.Point(1053, 490);
             this.btnTab2LineNew.Name = "btnTab2LineNew";
             this.btnTab2LineNew.Size = new System.Drawing.Size(130, 30);
             this.btnTab2LineNew.TabIndex = 114;
@@ -1005,7 +1041,7 @@
             this.btnTab2LineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab2LineDel.BackColor = System.Drawing.Color.Red;
             this.btnTab2LineDel.ForeColor = System.Drawing.Color.White;
-            this.btnTab2LineDel.Location = new System.Drawing.Point(1186, 490);
+            this.btnTab2LineDel.Location = new System.Drawing.Point(1191, 490);
             this.btnTab2LineDel.Name = "btnTab2LineDel";
             this.btnTab2LineDel.Size = new System.Drawing.Size(130, 30);
             this.btnTab2LineDel.TabIndex = 102;
@@ -1031,7 +1067,7 @@
             this.tabPage3.Controls.Add(this.btnTab3LineDel);
             this.tabPage3.Location = new System.Drawing.Point(4, 26);
             this.tabPage3.Name = "tabPage3";
-            this.tabPage3.Size = new System.Drawing.Size(1321, 524);
+            this.tabPage3.Size = new System.Drawing.Size(1326, 524);
             this.tabPage3.TabIndex = 2;
             this.tabPage3.Text = "車両リース代";
             // 
@@ -1046,14 +1082,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvPage3.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvPage3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle15.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvPage3.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle15;
+            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle17.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle17.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle17.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle17.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle17.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvPage3.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle17;
             this.dgvPage3.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvPage3.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.dataGridViewTextBoxColumn11,
@@ -1067,6 +1103,7 @@
             this.dataGridViewTextBoxColumn16,
             this.dataGridViewTextBoxColumn17,
             this.dataGridViewTextBoxColumn18,
+            this.Column11,
             this.dataGridViewTextBoxColumn20,
             this.dataGridViewTextBoxColumn39,
             this.dataGridViewTextBoxColumn50,
@@ -1079,20 +1116,20 @@
             this.dgvPage3.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvPage3.RowTemplate.Height = 24;
             this.dgvPage3.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvPage3.Size = new System.Drawing.Size(1310, 482);
+            this.dgvPage3.Size = new System.Drawing.Size(1315, 482);
             this.dgvPage3.TabIndex = 144;
-            this.dgvPage3.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellClick);
             this.dgvPage3.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellContentClick);
             this.dgvPage3.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellDoubleClick);
             this.dgvPage3.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellEnter);
+            this.dgvPage3.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValidated);
             this.dgvPage3.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValueChanged);
             this.dgvPage3.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvPage_MouseUp);
             // 
             // dataGridViewTextBoxColumn11
             // 
-            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle16.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn11.DefaultCellStyle = dataGridViewCellStyle16;
+            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle18.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn11.DefaultCellStyle = dataGridViewCellStyle18;
             this.dataGridViewTextBoxColumn11.Frozen = true;
             this.dataGridViewTextBoxColumn11.HeaderText = "日付";
             this.dataGridViewTextBoxColumn11.Name = "dataGridViewTextBoxColumn11";
@@ -1121,9 +1158,9 @@
             // 
             // dataGridViewTextBoxColumn14
             // 
-            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle17.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn14.DefaultCellStyle = dataGridViewCellStyle17;
+            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle19.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn14.DefaultCellStyle = dataGridViewCellStyle19;
             this.dataGridViewTextBoxColumn14.Frozen = true;
             this.dataGridViewTextBoxColumn14.HeaderText = "工　事　名　称";
             this.dataGridViewTextBoxColumn14.Name = "dataGridViewTextBoxColumn14";
@@ -1130,19 +1167,19 @@
             this.dataGridViewTextBoxColumn14.ReadOnly = true;
             this.dataGridViewTextBoxColumn14.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn14.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn14.Width = 320;
+            this.dataGridViewTextBoxColumn14.Width = 300;
             // 
             // dataGridViewTextBoxColumn15
             // 
-            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle18.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn15.DefaultCellStyle = dataGridViewCellStyle18;
+            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle20.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn15.DefaultCellStyle = dataGridViewCellStyle20;
             this.dataGridViewTextBoxColumn15.Frozen = true;
             this.dataGridViewTextBoxColumn15.HeaderText = "支　払　内　容";
             this.dataGridViewTextBoxColumn15.Name = "dataGridViewTextBoxColumn15";
             this.dataGridViewTextBoxColumn15.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn15.Width = 320;
+            this.dataGridViewTextBoxColumn15.Width = 300;
             // 
             // dataGridViewButtonColumn4
             // 
@@ -1176,8 +1213,8 @@
             // 
             // dataGridViewTextBoxColumn17
             // 
-            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn17.DefaultCellStyle = dataGridViewCellStyle19;
+            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn17.DefaultCellStyle = dataGridViewCellStyle21;
             this.dataGridViewTextBoxColumn17.Frozen = true;
             this.dataGridViewTextBoxColumn17.HeaderText = "支払方法";
             this.dataGridViewTextBoxColumn17.Name = "dataGridViewTextBoxColumn17";
@@ -1186,16 +1223,28 @@
             // 
             // dataGridViewTextBoxColumn18
             // 
-            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle20.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn18.DefaultCellStyle = dataGridViewCellStyle20;
+            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle22.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn18.DefaultCellStyle = dataGridViewCellStyle22;
             this.dataGridViewTextBoxColumn18.Frozen = true;
-            this.dataGridViewTextBoxColumn18.HeaderText = "支　払　金　額";
+            this.dataGridViewTextBoxColumn18.HeaderText = "税抜支払金額";
             this.dataGridViewTextBoxColumn18.Name = "dataGridViewTextBoxColumn18";
             this.dataGridViewTextBoxColumn18.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn18.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn18.Width = 150;
+            this.dataGridViewTextBoxColumn18.Width = 110;
             // 
+            // Column11
+            // 
+            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle23.ForeColor = System.Drawing.Color.Black;
+            this.Column11.DefaultCellStyle = dataGridViewCellStyle23;
+            this.Column11.Frozen = true;
+            this.Column11.HeaderText = "税込支払金額";
+            this.Column11.Name = "Column11";
+            this.Column11.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column11.Width = 110;
+            // 
             // dataGridViewTextBoxColumn20
             // 
             this.dataGridViewTextBoxColumn20.Frozen = true;
@@ -1207,15 +1256,15 @@
             // 
             // dataGridViewTextBoxColumn39
             // 
-            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle21.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn39.DefaultCellStyle = dataGridViewCellStyle21;
+            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle24.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn39.DefaultCellStyle = dataGridViewCellStyle24;
             this.dataGridViewTextBoxColumn39.Frozen = true;
             this.dataGridViewTextBoxColumn39.HeaderText = "支払先名称";
             this.dataGridViewTextBoxColumn39.Name = "dataGridViewTextBoxColumn39";
             this.dataGridViewTextBoxColumn39.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn39.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn39.Width = 200;
+            this.dataGridViewTextBoxColumn39.Width = 175;
             // 
             // dataGridViewTextBoxColumn50
             // 
@@ -1239,7 +1288,7 @@
             // 
             this.label73.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label73.BackColor = System.Drawing.Color.White;
-            this.label73.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label73.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label73.ForeColor = System.Drawing.Color.Black;
             this.label73.Location = new System.Drawing.Point(906, 492);
             this.label73.Name = "label73";
@@ -1265,7 +1314,7 @@
             // 
             this.label75.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label75.BackColor = System.Drawing.Color.White;
-            this.label75.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label75.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label75.ForeColor = System.Drawing.Color.Black;
             this.label75.Location = new System.Drawing.Point(596, 492);
             this.label75.Name = "label75";
@@ -1291,7 +1340,7 @@
             // 
             this.label77.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label77.BackColor = System.Drawing.Color.White;
-            this.label77.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label77.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label77.ForeColor = System.Drawing.Color.Black;
             this.label77.Location = new System.Drawing.Point(286, 492);
             this.label77.Name = "label77";
@@ -1305,7 +1354,7 @@
             this.btnTab3LineNew.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab3LineNew.BackColor = System.Drawing.Color.DarkSlateGray;
             this.btnTab3LineNew.ForeColor = System.Drawing.Color.White;
-            this.btnTab3LineNew.Location = new System.Drawing.Point(1048, 490);
+            this.btnTab3LineNew.Location = new System.Drawing.Point(1053, 490);
             this.btnTab3LineNew.Name = "btnTab3LineNew";
             this.btnTab3LineNew.Size = new System.Drawing.Size(130, 30);
             this.btnTab3LineNew.TabIndex = 114;
@@ -1368,7 +1417,7 @@
             this.btnTab3LineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab3LineDel.BackColor = System.Drawing.Color.Red;
             this.btnTab3LineDel.ForeColor = System.Drawing.Color.White;
-            this.btnTab3LineDel.Location = new System.Drawing.Point(1186, 490);
+            this.btnTab3LineDel.Location = new System.Drawing.Point(1191, 490);
             this.btnTab3LineDel.Name = "btnTab3LineDel";
             this.btnTab3LineDel.Size = new System.Drawing.Size(130, 30);
             this.btnTab3LineDel.TabIndex = 102;
@@ -1394,7 +1443,7 @@
             this.tabPage4.Controls.Add(this.btnTab4LineDel);
             this.tabPage4.Location = new System.Drawing.Point(4, 26);
             this.tabPage4.Name = "tabPage4";
-            this.tabPage4.Size = new System.Drawing.Size(1321, 524);
+            this.tabPage4.Size = new System.Drawing.Size(1326, 524);
             this.tabPage4.TabIndex = 3;
             this.tabPage4.Text = "駐車場・資材置き場";
             // 
@@ -1409,14 +1458,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvPage4.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvPage4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle22.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle22.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle22.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle22.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle22.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle22.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvPage4.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle22;
+            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle25.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle25.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle25.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle25.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle25.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle25.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvPage4.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle25;
             this.dgvPage4.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvPage4.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.dataGridViewTextBoxColumn19,
@@ -1430,6 +1479,7 @@
             this.dataGridViewTextBoxColumn25,
             this.dataGridViewTextBoxColumn26,
             this.dataGridViewTextBoxColumn28,
+            this.Column12,
             this.dataGridViewTextBoxColumn35,
             this.dataGridViewTextBoxColumn46,
             this.dataGridViewTextBoxColumn52,
@@ -1442,20 +1492,20 @@
             this.dgvPage4.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvPage4.RowTemplate.Height = 24;
             this.dgvPage4.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvPage4.Size = new System.Drawing.Size(1310, 482);
+            this.dgvPage4.Size = new System.Drawing.Size(1315, 482);
             this.dgvPage4.TabIndex = 152;
-            this.dgvPage4.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellClick);
             this.dgvPage4.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellContentClick);
             this.dgvPage4.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellDoubleClick);
             this.dgvPage4.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellEnter);
+            this.dgvPage4.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValidated);
             this.dgvPage4.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValueChanged);
             this.dgvPage4.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvPage_MouseUp);
             // 
             // dataGridViewTextBoxColumn19
             // 
-            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle23.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn19.DefaultCellStyle = dataGridViewCellStyle23;
+            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle26.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn19.DefaultCellStyle = dataGridViewCellStyle26;
             this.dataGridViewTextBoxColumn19.Frozen = true;
             this.dataGridViewTextBoxColumn19.HeaderText = "日付";
             this.dataGridViewTextBoxColumn19.Name = "dataGridViewTextBoxColumn19";
@@ -1484,9 +1534,9 @@
             // 
             // dataGridViewTextBoxColumn23
             // 
-            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle24.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn23.DefaultCellStyle = dataGridViewCellStyle24;
+            dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle27.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn23.DefaultCellStyle = dataGridViewCellStyle27;
             this.dataGridViewTextBoxColumn23.Frozen = true;
             this.dataGridViewTextBoxColumn23.HeaderText = "工　事　名　称";
             this.dataGridViewTextBoxColumn23.Name = "dataGridViewTextBoxColumn23";
@@ -1493,19 +1543,19 @@
             this.dataGridViewTextBoxColumn23.ReadOnly = true;
             this.dataGridViewTextBoxColumn23.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn23.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn23.Width = 320;
+            this.dataGridViewTextBoxColumn23.Width = 300;
             // 
             // dataGridViewTextBoxColumn24
             // 
-            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle25.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn24.DefaultCellStyle = dataGridViewCellStyle25;
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle28.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn24.DefaultCellStyle = dataGridViewCellStyle28;
             this.dataGridViewTextBoxColumn24.Frozen = true;
             this.dataGridViewTextBoxColumn24.HeaderText = "支　払　内　容";
             this.dataGridViewTextBoxColumn24.Name = "dataGridViewTextBoxColumn24";
             this.dataGridViewTextBoxColumn24.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn24.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn24.Width = 320;
+            this.dataGridViewTextBoxColumn24.Width = 300;
             // 
             // dataGridViewButtonColumn7
             // 
@@ -1539,8 +1589,8 @@
             // 
             // dataGridViewTextBoxColumn26
             // 
-            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn26.DefaultCellStyle = dataGridViewCellStyle26;
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn26.DefaultCellStyle = dataGridViewCellStyle29;
             this.dataGridViewTextBoxColumn26.Frozen = true;
             this.dataGridViewTextBoxColumn26.HeaderText = "支払方法";
             this.dataGridViewTextBoxColumn26.Name = "dataGridViewTextBoxColumn26";
@@ -1549,16 +1599,28 @@
             // 
             // dataGridViewTextBoxColumn28
             // 
-            dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle27.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn28.DefaultCellStyle = dataGridViewCellStyle27;
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle30.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn28.DefaultCellStyle = dataGridViewCellStyle30;
             this.dataGridViewTextBoxColumn28.Frozen = true;
-            this.dataGridViewTextBoxColumn28.HeaderText = "支　払　金　額";
+            this.dataGridViewTextBoxColumn28.HeaderText = "税抜支払金額";
             this.dataGridViewTextBoxColumn28.Name = "dataGridViewTextBoxColumn28";
             this.dataGridViewTextBoxColumn28.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn28.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn28.Width = 150;
+            this.dataGridViewTextBoxColumn28.Width = 110;
             // 
+            // Column12
+            // 
+            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle31.ForeColor = System.Drawing.Color.Black;
+            this.Column12.DefaultCellStyle = dataGridViewCellStyle31;
+            this.Column12.Frozen = true;
+            this.Column12.HeaderText = "税込支払金額";
+            this.Column12.Name = "Column12";
+            this.Column12.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column12.Width = 110;
+            // 
             // dataGridViewTextBoxColumn35
             // 
             this.dataGridViewTextBoxColumn35.Frozen = true;
@@ -1570,15 +1632,15 @@
             // 
             // dataGridViewTextBoxColumn46
             // 
-            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle28.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn46.DefaultCellStyle = dataGridViewCellStyle28;
+            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle32.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn46.DefaultCellStyle = dataGridViewCellStyle32;
             this.dataGridViewTextBoxColumn46.Frozen = true;
             this.dataGridViewTextBoxColumn46.HeaderText = "支払先名称";
             this.dataGridViewTextBoxColumn46.Name = "dataGridViewTextBoxColumn46";
             this.dataGridViewTextBoxColumn46.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn46.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn46.Width = 200;
+            this.dataGridViewTextBoxColumn46.Width = 175;
             // 
             // dataGridViewTextBoxColumn52
             // 
@@ -1602,7 +1664,7 @@
             // 
             this.label85.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label85.BackColor = System.Drawing.Color.White;
-            this.label85.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label85.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label85.ForeColor = System.Drawing.Color.Black;
             this.label85.Location = new System.Drawing.Point(906, 492);
             this.label85.Name = "label85";
@@ -1628,7 +1690,7 @@
             // 
             this.label87.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label87.BackColor = System.Drawing.Color.White;
-            this.label87.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label87.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label87.ForeColor = System.Drawing.Color.Black;
             this.label87.Location = new System.Drawing.Point(596, 492);
             this.label87.Name = "label87";
@@ -1654,7 +1716,7 @@
             // 
             this.label89.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label89.BackColor = System.Drawing.Color.White;
-            this.label89.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label89.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label89.ForeColor = System.Drawing.Color.Black;
             this.label89.Location = new System.Drawing.Point(286, 492);
             this.label89.Name = "label89";
@@ -1668,7 +1730,7 @@
             this.btnTab4LineNew.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab4LineNew.BackColor = System.Drawing.Color.DarkSlateGray;
             this.btnTab4LineNew.ForeColor = System.Drawing.Color.White;
-            this.btnTab4LineNew.Location = new System.Drawing.Point(1048, 490);
+            this.btnTab4LineNew.Location = new System.Drawing.Point(1053, 490);
             this.btnTab4LineNew.Name = "btnTab4LineNew";
             this.btnTab4LineNew.Size = new System.Drawing.Size(130, 30);
             this.btnTab4LineNew.TabIndex = 114;
@@ -1731,7 +1793,7 @@
             this.btnTab4LineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab4LineDel.BackColor = System.Drawing.Color.Red;
             this.btnTab4LineDel.ForeColor = System.Drawing.Color.White;
-            this.btnTab4LineDel.Location = new System.Drawing.Point(1186, 490);
+            this.btnTab4LineDel.Location = new System.Drawing.Point(1191, 490);
             this.btnTab4LineDel.Name = "btnTab4LineDel";
             this.btnTab4LineDel.Size = new System.Drawing.Size(130, 30);
             this.btnTab4LineDel.TabIndex = 102;
@@ -1757,7 +1819,7 @@
             this.tabPage5.Controls.Add(this.btnTab5LineDel);
             this.tabPage5.Location = new System.Drawing.Point(4, 26);
             this.tabPage5.Name = "tabPage5";
-            this.tabPage5.Size = new System.Drawing.Size(1321, 524);
+            this.tabPage5.Size = new System.Drawing.Size(1326, 524);
             this.tabPage5.TabIndex = 4;
             this.tabPage5.Text = "宿　　泊　　費";
             // 
@@ -1772,14 +1834,14 @@
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvPage5.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvPage5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle29.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle29.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle29.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle29.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle29.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle29.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvPage5.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle29;
+            dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle33.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle33.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle33.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle33.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle33.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle33.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvPage5.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle33;
             this.dgvPage5.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvPage5.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.dataGridViewTextBoxColumn27,
@@ -1793,6 +1855,7 @@
             this.dataGridViewTextBoxColumn33,
             this.dataGridViewTextBoxColumn34,
             this.dataGridViewTextBoxColumn36,
+            this.Column13,
             this.dataGridViewTextBoxColumn37,
             this.dataGridViewTextBoxColumn47,
             this.dataGridViewTextBoxColumn54,
@@ -1805,20 +1868,20 @@
             this.dgvPage5.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
             this.dgvPage5.RowTemplate.Height = 24;
             this.dgvPage5.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvPage5.Size = new System.Drawing.Size(1310, 482);
+            this.dgvPage5.Size = new System.Drawing.Size(1315, 482);
             this.dgvPage5.TabIndex = 160;
-            this.dgvPage5.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellClick);
             this.dgvPage5.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellContentClick);
             this.dgvPage5.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellDoubleClick);
             this.dgvPage5.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellEnter);
+            this.dgvPage5.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValidated);
             this.dgvPage5.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPage_CellValueChanged);
             this.dgvPage5.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvPage_MouseUp);
             // 
             // dataGridViewTextBoxColumn27
             // 
-            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle30.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn27.DefaultCellStyle = dataGridViewCellStyle30;
+            dataGridViewCellStyle34.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle34.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn27.DefaultCellStyle = dataGridViewCellStyle34;
             this.dataGridViewTextBoxColumn27.Frozen = true;
             this.dataGridViewTextBoxColumn27.HeaderText = "日付";
             this.dataGridViewTextBoxColumn27.Name = "dataGridViewTextBoxColumn27";
@@ -1847,9 +1910,9 @@
             // 
             // dataGridViewTextBoxColumn31
             // 
-            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle31.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn31.DefaultCellStyle = dataGridViewCellStyle31;
+            dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle35.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn31.DefaultCellStyle = dataGridViewCellStyle35;
             this.dataGridViewTextBoxColumn31.Frozen = true;
             this.dataGridViewTextBoxColumn31.HeaderText = "工　事　名　称";
             this.dataGridViewTextBoxColumn31.Name = "dataGridViewTextBoxColumn31";
@@ -1856,19 +1919,19 @@
             this.dataGridViewTextBoxColumn31.ReadOnly = true;
             this.dataGridViewTextBoxColumn31.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn31.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn31.Width = 320;
+            this.dataGridViewTextBoxColumn31.Width = 300;
             // 
             // dataGridViewTextBoxColumn32
             // 
-            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle32.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn32.DefaultCellStyle = dataGridViewCellStyle32;
+            dataGridViewCellStyle36.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle36.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn32.DefaultCellStyle = dataGridViewCellStyle36;
             this.dataGridViewTextBoxColumn32.Frozen = true;
             this.dataGridViewTextBoxColumn32.HeaderText = "支　払　内　容";
             this.dataGridViewTextBoxColumn32.Name = "dataGridViewTextBoxColumn32";
             this.dataGridViewTextBoxColumn32.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn32.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn32.Width = 320;
+            this.dataGridViewTextBoxColumn32.Width = 300;
             // 
             // dataGridViewButtonColumn10
             // 
@@ -1902,8 +1965,8 @@
             // 
             // dataGridViewTextBoxColumn34
             // 
-            dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn34.DefaultCellStyle = dataGridViewCellStyle33;
+            dataGridViewCellStyle37.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn34.DefaultCellStyle = dataGridViewCellStyle37;
             this.dataGridViewTextBoxColumn34.Frozen = true;
             this.dataGridViewTextBoxColumn34.HeaderText = "支払方法";
             this.dataGridViewTextBoxColumn34.Name = "dataGridViewTextBoxColumn34";
@@ -1912,16 +1975,28 @@
             // 
             // dataGridViewTextBoxColumn36
             // 
-            dataGridViewCellStyle34.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle34.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn36.DefaultCellStyle = dataGridViewCellStyle34;
+            dataGridViewCellStyle38.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle38.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn36.DefaultCellStyle = dataGridViewCellStyle38;
             this.dataGridViewTextBoxColumn36.Frozen = true;
-            this.dataGridViewTextBoxColumn36.HeaderText = "支　払　金　額";
+            this.dataGridViewTextBoxColumn36.HeaderText = "税抜支払金額";
             this.dataGridViewTextBoxColumn36.Name = "dataGridViewTextBoxColumn36";
             this.dataGridViewTextBoxColumn36.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn36.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn36.Width = 150;
+            this.dataGridViewTextBoxColumn36.Width = 110;
             // 
+            // Column13
+            // 
+            dataGridViewCellStyle39.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle39.ForeColor = System.Drawing.Color.Black;
+            this.Column13.DefaultCellStyle = dataGridViewCellStyle39;
+            this.Column13.Frozen = true;
+            this.Column13.HeaderText = "税込支払金額";
+            this.Column13.Name = "Column13";
+            this.Column13.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column13.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column13.Width = 110;
+            // 
             // dataGridViewTextBoxColumn37
             // 
             this.dataGridViewTextBoxColumn37.Frozen = true;
@@ -1933,15 +2008,15 @@
             // 
             // dataGridViewTextBoxColumn47
             // 
-            dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle35.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn47.DefaultCellStyle = dataGridViewCellStyle35;
+            dataGridViewCellStyle40.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle40.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn47.DefaultCellStyle = dataGridViewCellStyle40;
             this.dataGridViewTextBoxColumn47.Frozen = true;
             this.dataGridViewTextBoxColumn47.HeaderText = "支払先名称";
             this.dataGridViewTextBoxColumn47.Name = "dataGridViewTextBoxColumn47";
             this.dataGridViewTextBoxColumn47.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.dataGridViewTextBoxColumn47.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn47.Width = 200;
+            this.dataGridViewTextBoxColumn47.Width = 175;
             // 
             // dataGridViewTextBoxColumn54
             // 
@@ -1965,7 +2040,7 @@
             // 
             this.label97.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label97.BackColor = System.Drawing.Color.White;
-            this.label97.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label97.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label97.ForeColor = System.Drawing.Color.Black;
             this.label97.Location = new System.Drawing.Point(906, 492);
             this.label97.Name = "label97";
@@ -1991,7 +2066,7 @@
             // 
             this.label99.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label99.BackColor = System.Drawing.Color.White;
-            this.label99.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label99.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label99.ForeColor = System.Drawing.Color.Black;
             this.label99.Location = new System.Drawing.Point(596, 492);
             this.label99.Name = "label99";
@@ -2017,7 +2092,7 @@
             // 
             this.label101.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.label101.BackColor = System.Drawing.Color.White;
-            this.label101.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.label101.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label101.ForeColor = System.Drawing.Color.Black;
             this.label101.Location = new System.Drawing.Point(286, 492);
             this.label101.Name = "label101";
@@ -2031,7 +2106,7 @@
             this.btnTab5LineNew.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab5LineNew.BackColor = System.Drawing.Color.DarkSlateGray;
             this.btnTab5LineNew.ForeColor = System.Drawing.Color.White;
-            this.btnTab5LineNew.Location = new System.Drawing.Point(1048, 490);
+            this.btnTab5LineNew.Location = new System.Drawing.Point(1053, 490);
             this.btnTab5LineNew.Name = "btnTab5LineNew";
             this.btnTab5LineNew.Size = new System.Drawing.Size(130, 30);
             this.btnTab5LineNew.TabIndex = 114;
@@ -2094,7 +2169,7 @@
             this.btnTab5LineDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnTab5LineDel.BackColor = System.Drawing.Color.Red;
             this.btnTab5LineDel.ForeColor = System.Drawing.Color.White;
-            this.btnTab5LineDel.Location = new System.Drawing.Point(1186, 490);
+            this.btnTab5LineDel.Location = new System.Drawing.Point(1191, 490);
             this.btnTab5LineDel.Name = "btnTab5LineDel";
             this.btnTab5LineDel.Size = new System.Drawing.Size(130, 30);
             this.btnTab5LineDel.TabIndex = 102;
@@ -2103,19 +2178,6 @@
             this.btnTab5LineDel.UseVisualStyleBackColor = false;
             this.btnTab5LineDel.Click += new System.EventHandler(this.btnTabLineDel_Click);
             // 
-            // comboBox1
-            // 
-            this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.comboBox1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.comboBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.comboBox1.FormattingEnabled = true;
-            this.comboBox1.Location = new System.Drawing.Point(127, 5);
-            this.comboBox1.Name = "comboBox1";
-            this.comboBox1.Size = new System.Drawing.Size(160, 29);
-            this.comboBox1.TabIndex = 0;
-            this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
-            this.comboBox1.Enter += new System.EventHandler(this.comboBox1_Enter);
-            // 
             // panel3
             // 
             this.panel3.Anchor = System.Windows.Forms.AnchorStyles.Top;
@@ -2124,9 +2186,9 @@
             this.panel3.Controls.Add(this.pnlApproval);
             this.panel3.Controls.Add(this.pnlApprovalButton);
             this.panel3.Controls.Add(this.cmbDepartment);
-            this.panel3.Controls.Add(this.label9);
+            this.panel3.Controls.Add(this.label2);
             this.panel3.Controls.Add(this.cmbConstructionPerson);
-            this.panel3.Controls.Add(this.label7);
+            this.panel3.Controls.Add(this.label3);
             this.panel3.Controls.Add(this.label4);
             this.panel3.Controls.Add(this.comboBox1);
             this.panel3.Location = new System.Drawing.Point(6, 40);
@@ -2242,25 +2304,25 @@
             this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbDepartment.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold);
             this.cmbDepartment.FormattingEnabled = true;
-            this.cmbDepartment.Location = new System.Drawing.Point(433, 5);
+            this.cmbDepartment.Location = new System.Drawing.Point(437, 4);
             this.cmbDepartment.Name = "cmbDepartment";
             this.cmbDepartment.Size = new System.Drawing.Size(260, 29);
             this.cmbDepartment.TabIndex = 1;
-            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_SelectedIndexChanged);
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
             this.cmbDepartment.Enter += new System.EventHandler(this.cmbDepartment_Enter);
             // 
-            // label9
+            // label2
             // 
-            this.label9.BackColor = System.Drawing.Color.SandyBrown;
-            this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label9.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label9.ForeColor = System.Drawing.Color.Black;
-            this.label9.Location = new System.Drawing.Point(311, 5);
-            this.label9.Name = "label9";
-            this.label9.Size = new System.Drawing.Size(114, 29);
-            this.label9.TabIndex = 108;
-            this.label9.Text = "担当部署";
-            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label2.BackColor = System.Drawing.Color.SandyBrown;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(309, 5);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(120, 27);
+            this.label2.TabIndex = 108;
+            this.label2.Text = "担当部署";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // cmbConstructionPerson
             // 
@@ -2269,25 +2331,25 @@
             this.cmbConstructionPerson.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbConstructionPerson.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.cmbConstructionPerson.FormattingEnabled = true;
-            this.cmbConstructionPerson.Location = new System.Drawing.Point(839, 5);
+            this.cmbConstructionPerson.Location = new System.Drawing.Point(841, 4);
             this.cmbConstructionPerson.Name = "cmbConstructionPerson";
             this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 29);
             this.cmbConstructionPerson.TabIndex = 2;
-            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbConstructionPerson_SelectedIndexChanged);
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
             this.cmbConstructionPerson.Enter += new System.EventHandler(this.cmbConstructionPerson_Enter);
             // 
-            // label7
+            // label3
             // 
-            this.label7.BackColor = System.Drawing.Color.SandyBrown;
-            this.label7.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label7.ForeColor = System.Drawing.Color.Black;
-            this.label7.Location = new System.Drawing.Point(717, 5);
-            this.label7.Name = "label7";
-            this.label7.Size = new System.Drawing.Size(114, 29);
-            this.label7.TabIndex = 106;
-            this.label7.Text = "担　当　者";
-            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label3.BackColor = System.Drawing.Color.SandyBrown;
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(713, 5);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(120, 27);
+            this.label3.TabIndex = 106;
+            this.label3.Text = "担　当　者";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
             // label4
             // 
@@ -2295,11 +2357,24 @@
             this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label4.Location = new System.Drawing.Point(5, 5);
             this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(114, 29);
+            this.label4.Size = new System.Drawing.Size(120, 27);
             this.label4.TabIndex = 104;
             this.label4.Text = "対象年月";
             this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // comboBox1
+            // 
+            this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.comboBox1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.comboBox1.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.comboBox1.FormattingEnabled = true;
+            this.comboBox1.Location = new System.Drawing.Point(133, 4);
+            this.comboBox1.Name = "comboBox1";
+            this.comboBox1.Size = new System.Drawing.Size(160, 29);
+            this.comboBox1.TabIndex = 0;
+            this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
+            this.comboBox1.Enter += new System.EventHandler(this.comboBox1_Enter);
+            // 
             // btnDataDelete
             // 
             this.btnDataDelete.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
@@ -2399,13 +2474,13 @@
         private System.Windows.Forms.Panel panel3;
         private System.Windows.Forms.Label label4;
         private ProcessManagement.Forms.CustomControls.ComboBoxEX cmbConstructionPerson;
-        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label label3;
         private System.Windows.Forms.Button btnTab2LineDel;
         private System.Windows.Forms.Button btnTab3LineDel;
         private System.Windows.Forms.Button btnTab4LineDel;
         private System.Windows.Forms.Button btnTab5LineDel;
         private ProcessManagement.Forms.CustomControls.ComboBoxEX cmbDepartment;
-        private System.Windows.Forms.Label label9;
+        private System.Windows.Forms.Label label2;
         private CustomControls.DataGridViewEX dgvPage1;
         private System.Windows.Forms.Button btnTab1LineNew;
         private System.Windows.Forms.Button btnTab2LineNew;
@@ -2471,6 +2546,23 @@
         private CustomControls.DataGridViewEX dgvPage3;
         private CustomControls.DataGridViewEX dgvPage4;
         private CustomControls.DataGridViewEX dgvPage5;
+        private System.Windows.Forms.Label lblCellTotal;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn40;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn41;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn42;
+        private System.Windows.Forms.DataGridViewButtonColumn Column6;
+        private System.Windows.Forms.DataGridViewButtonColumn Column7;
+        private System.Windows.Forms.DataGridViewButtonColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn43;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn44;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn45;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4;
@@ -2482,6 +2574,7 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn7;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn8;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn9;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn10;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn38;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn48;
@@ -2497,6 +2590,7 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn16;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn17;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn18;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column11;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn20;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn39;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn50;
@@ -2512,6 +2606,7 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn25;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn26;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn28;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column12;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn35;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn46;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn52;
@@ -2527,25 +2622,10 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn33;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn34;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn36;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column13;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn37;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn47;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn54;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn55;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn40;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn41;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn42;
-        private System.Windows.Forms.DataGridViewButtonColumn Column6;
-        private System.Windows.Forms.DataGridViewButtonColumn Column7;
-        private System.Windows.Forms.DataGridViewButtonColumn Column8;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn43;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn44;
-        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn45;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
-        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
-        private System.Windows.Forms.Label lblCellTotal;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.cs	(revision 51)
@@ -69,63 +69,67 @@
         private enum DispGridColumn
         {
             /// <summary>
-            /// 表示日付
+            ///  1:表示日付
             /// </summary>
             DispDays = 0,
             /// <summary>
-            /// 支払日日付
+            ///  2:支払日日付
             /// </summary>
             Days,
             /// <summary>
-            /// 工事番号
+            ///  3:工事番号
             /// </summary>
             ConstractionCode,
             /// <summary>
-            /// 工事名称
+            ///  4:工事名称
             /// </summary>
             ConstractionName,
             /// <summary>
-            /// 支払い内容
+            ///  5:支払い内容
             /// </summary>
             PaymentContent,
             /// <summary>
-            /// 個人クレジット
+            ///  6:個人クレジット
             /// </summary>
             PaymentButton1,
             /// <summary>
-            /// 現金
+            ///  7:現金
             /// </summary>
             PaymentButton2,
             /// <summary>
-            /// 法人クレジット
+            ///  8:法人クレジット
             /// </summary>
             PaymentButton3,
             /// <summary>
-            /// 支払い方法種別
+            ///  9:支払い方法種別
             /// </summary>
             PaymentType,
             /// <summary>
-            /// 支払い方法種別名称
+            /// 10:支払い方法種別名称
             /// </summary>
             PaymentTypeName,
             /// <summary>
-            /// 支払い金額
+            /// 11:税抜支払金額
             /// </summary>
             EntryPrice,
             /// <summary>
-            /// 仕入れ先コード
+            /// 12:税込支払金額
             /// </summary>
+            EntryPriceInTax,
+            /// <summary>
+            /// 13:仕入れ先コード
+            /// </summary>
             SuppliersCode,
             /// <summary>
-            /// 仕入れ先名称
+            /// 14:仕入れ先名称
             /// </summary>
             SuppliersName,
             /// <summary>
-            /// 固定フラグ
+            /// 15:固定フラグ
             /// </summary>
             FixFlg,
             /// <summary>
-            /// データ追加番号
+            /// 16:データ追加番号
             /// </summary>
             DataAddCount,
         }
@@ -370,6 +374,9 @@
                 // 担当者のセット
                 SetcombBoxPerson();
 
+                // コンボボックス初期表示
+                InitCombBox();
+
                 // 初期表示
                 InitDataLoad();
 
@@ -425,9 +432,6 @@
 
                 // 終了ボタンがONならば前プロセスに戻る
                 if (m_CloseingProcessOn) ClsExcute.BackProcess();
-
-                // 終了時に工事詳細台帳とのデータ連携を行う
-                LinkageLedgerData();
             }
             catch (System.Exception ex)
             {
@@ -577,21 +581,6 @@
         }
         #endregion
 
-        #region セルクリック
-        /// <summary>
-        /// セルクリック
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void dgvPage_CellClick(object sender, DataGridViewCellEventArgs e)
-        {
-            //int CurTabCnt = TabControl1.SelectedIndex;
-            //int RowCnt = m_dispGridControl[CurTabCnt].CurrentRow.Index;
-
-            //InputAreaButtonLock(CurTabCnt, RowCnt);
-        }
-        #endregion
-
         int cmbDepartment_index = -1;
         #region 部署コンボボックス変更前取得
         /// <summary>
@@ -611,13 +600,13 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
         {
             if (m_bInitFlg) return;
-            
+
             if (m_bChengeAns)
             {
-                if (MessageBox.Show("データに変更があります、登録しますか？。"
+                if (MessageBox.Show("データに変更があります、登録せずに部署を変更しますか？。"
                                 , "部署変更確認"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
                 {
@@ -628,12 +617,15 @@
 
             // 担当者コンボボックスをセットする
             SetcombBoxPerson();
-            
+
             // データ表示
             for (int ix = (int)InputTabCount.Transport; ix <= (int)InputTabCount.Lodging; ix++)
             {
                 // データを表示する
                 SetGridData(ix);
+
+                // 参照時はロックする
+                if (m_EditLock) SeeModeLock(ix, true);
             }
 
             // データ変更フラグクリア
@@ -660,13 +652,13 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbConstructionPerson_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
         {
             if (m_bInitFlg) return;
-            
+
             if (m_bChengeAns)
             {
-                if (MessageBox.Show("データに変更があります、登録しますか？。"
+                if (MessageBox.Show("データに変更があります、登録せずに担当者を変更しますか？。"
                                 , "担当者変更確認"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
                 {
@@ -674,11 +666,15 @@
                     return;
                 }
             }
+            SetPerosonToDepartment();
             // データ表示
             for (int ix = (int)InputTabCount.Transport; ix <= (int)InputTabCount.Lodging; ix++)
             {
                 // データを表示する
                 SetGridData(ix);
+
+                // 参照時はロックする
+                if (m_EditLock) SeeModeLock(ix, true);
             }
 
             // データ変更フラグクリア
@@ -711,7 +707,7 @@
 
             if (m_bChengeAns)
             {
-                if (MessageBox.Show("データに変更があります、登録しますか？。"
+                if (MessageBox.Show("データに変更があります、登録せずに年月を変更しますか？。"
                                 , "対象年月変更確認"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
                 {
@@ -725,6 +721,9 @@
             {
                 // データを表示する
                 SetGridData(ix);
+
+                // 参照時はロックする
+                if (m_EditLock) SeeModeLock(ix, true);
             }
 
             // データ変更フラグクリア
@@ -742,6 +741,9 @@
         {
             try
             {
+                // 参照時は処理しない
+                if (m_EditLock) return;
+
                 DataGridView dgv = (DataGridView)sender;
                 DataGridViewRow dgvRow = dgv.CurrentRow;
 
@@ -803,6 +805,9 @@
         {
             try
             {
+                // 参照時は処理しない
+                if (m_EditLock) return;
+
                 // 対象タブページ取得
                 int CurTabCnt = TabControl1.SelectedIndex;
 
@@ -840,17 +845,36 @@
             // データ登録処理
             if (!DataEntryProcess()) return;
 
-            // 初期表示
-            int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;
+            // 終了時に工事詳細台帳とのデータ連携を行う
+            LinkageLedgerData();
+
+            CommonMotions.EntryEndMessage("交通費・購入品データ");
+
+            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;
+            }
+            
             // 一般ユーザーは登録後終了する
-            if (CommonMotions.LoginUserData.SecurityManagement == User)
+            if (bSelFlg)
             {
                 this.Close();
             }
             else
             {
-                cmbDepartment.SelectedIndex = -1;
-                cmbConstructionPerson.SelectedIndex = -1;
+                // 対象がコンボボックスデータにあればセットする
+                if (SearchDepartmentCombBoxItem(CommonMotions.LoginUserData.DepartmentCode))
+                    cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                if (SearchPersonCombBoxItem(CommonMotions.LoginUserData.PersonCode))
+                    cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
             }
         }
         #endregion
@@ -865,11 +889,28 @@
         {
             // データ削除処理
             if (!RemoveGridData()) return;
-            
-            // 初期表示
-            int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
-            if (CommonMotions.LoginUserData.SecurityManagement == User)
+
+            // 終了時に工事詳細台帳とのデータ連携を行う
+            LinkageLedgerData();
+
+            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;
+            }
+
+            // 一般ユーザーは登録後終了する
+            if (bSelFlg)
+            {
                 this.Close();
             }
             else
@@ -890,6 +931,9 @@
         {
             try
             {
+                // 参照時は処理しない
+                if (m_EditLock) return;
+
                 // データグリッドがActiveでなければ処理しない
                 if (ActiveControl == null) return;
                 if (!ActiveControl.GetType().Equals(typeof(DataGridViewEX)))
@@ -933,20 +977,38 @@
         {
             try
             {
+                // 参照時は処理しない
+                if (m_EditLock) return;
+
                 DataGridView dgv = (DataGridView)sender;
-                DataGridViewCell CurCell= dgv.CurrentCell;
+                DataGridViewRow CurRow = dgv.CurrentRow;
+                DataGridViewCell CurCell = dgv.CurrentCell;
                 // 対象タブページ取得
                 int CurTabCnt = TabControl1.SelectedIndex;
-
+                double CurValue = 0;
+                double CalcValue = 0;
                 switch (e.ColumnIndex)
                 {
                     case (int)DispGridColumn.EntryPrice:
-                        // 支払金額
+                        CurValue = CommonMotions.cnvInt(CurCell.Value);
+                        // 税抜支払金額
                         CurCell.Value = CommonMotions.cnvInt(CurCell.Value).ToString("#,#");
+                        CalcValue = CommonMotions.cnvRound(CurValue * (1.00 + (CommonMotions.SystemMasterData.ConsumptionTax / 100.0)));
+                        CurRow.Cells[(int)DispGridColumn.EntryPriceInTax].Value = CalcValue.ToString("#,#");
                         m_bChengeAns = true;
                         // 合計を表示する
                         TotalPrice(CurTabCnt);
                         break;
+                    case (int)DispGridColumn.EntryPriceInTax:
+                        CurValue = CommonMotions.cnvInt(CurCell.Value);
+                        // 税込支払金額
+                        CurCell.Value = CommonMotions.cnvInt(CurCell.Value).ToString("#,#");
+                        CalcValue = CommonMotions.cnvRound(CurValue / (1.00 + (CommonMotions.SystemMasterData.ConsumptionTax / 100.0)));
+                        CurRow.Cells[(int)DispGridColumn.EntryPrice].Value = CalcValue.ToString("#,#");
+                        m_bChengeAns = true;
+                        // 合計を表示する
+                        TotalPrice(CurTabCnt);
+                        break;
                     default:
                         break;
                 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCosts.resx	(revision 51)
@@ -150,6 +150,9 @@
   <metadata name="dataGridViewTextBoxColumn43.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="dataGridViewTextBoxColumn44.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -195,6 +198,9 @@
   <metadata name="dataGridViewTextBoxColumn9.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="dataGridViewTextBoxColumn10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -240,6 +246,9 @@
   <metadata name="dataGridViewTextBoxColumn18.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="dataGridViewTextBoxColumn20.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -285,6 +294,9 @@
   <metadata name="dataGridViewTextBoxColumn28.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="dataGridViewTextBoxColumn35.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -330,6 +342,9 @@
   <metadata name="dataGridViewTextBoxColumn36.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>
   <metadata name="dataGridViewTextBoxColumn37.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/TAndPCosts/FrmTAndPCostsAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/TAndPCosts/FrmTAndPCostsAuxiliary.cs	(revision 51)
@@ -38,38 +38,6 @@
                     m_CellSize[col.Index] = col.Width;
                 }
 
-                // システム権限によってコンボボックスの表示を変える
-                int Admin = CommonDefine.AdminSecurityManagement;                                                           // システム管理者
-                int President = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key;        // 最高責任者
-                int Supervisor = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key;      // 統括責任者
-                int Superior = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key;          // 所　属　長
-                int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;                  // 一般ユーザー
-                if (CommonMotions.LoginUserData.SecurityManagement == Admin
-                    || CommonMotions.LoginUserData.SecurityManagement == President
-                    || CommonMotions.LoginUserData.SecurityManagement == Supervisor)
-                {
-                    // システム管理者
-                    // 最高機密管理者
-                    // 統括機密管理者
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == Superior)
-                {
-                    // 所属長（部署コンボ非表示）
-                    label9.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label7.Location = label9.Location;
-                    cmbConstructionPerson.Location = cmbDepartment.Location;
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == User)
-                {
-                    // 一般使用者（自分のみアクセス可能）
-                    // 部署・担当者コンボ非表示
-                    label9.Visible = false;
-                    cmbDepartment.Visible = false;
-                    label7.Visible = false;
-                    cmbConstructionPerson.Visible = false;
-                }
-
                 // グリッドコントロールのセット
                 m_dispGridControl = new DataGridView[] { dgvPage1, dgvPage2, dgvPage3, dgvPage4, dgvPage5 };
 
@@ -166,7 +134,8 @@
             try
             {
                 // 存在月を担当者毎経費データより取得する
-                string strSQL = "SELECT DATE_FORMAT(ACTIONDATE,'%Y/%m'), COUNT(*) FROM CostDataOfPerson GROUP BY DATE_FORMAT(ACTIONDATE,'%Y/%m') ORDER BY 1";
+                //string strSQL = "SELECT TO_CHAR(ACTIONDATE,'YYYY/MM'), COUNT(*) FROM CostDataOfPerson GROUP BY TO_CHAR(ACTIONDATE,'YYYY/MM') ORDER BY 1";
+                string strSQL = "SELECT DATE_FORMAT(ACTIONDATE,'%Y/%m/'), COUNT(*) FROM CostDataOfPerson GROUP BY DATE_FORMAT(ACTIONDATE,'%Y/%m') ORDER BY 1";
                 ArrayList arList = new ArrayList();
                 CostDB.ExecuteReader(strSQL, ref arList);
 
@@ -209,6 +178,186 @@
         }
         #endregion
 
+        #region コンボボックス初期表示
+        /// <summary>
+        /// コンボボックス初期表示
+        /// </summary>
+        private void InitCombBox()
+        {
+            try
+            {
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    InitCombBox_OLD();
+                }
+                else
+                {
+                    InitCombBox_NEW();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示（旧）
+        /// <summary>
+        /// コンボボックス初期表示（旧）
+        /// </summary>
+        private void InitCombBox_OLD()
+        {
+            try
+            {
+                // システム権限によってデータアクセスに制限がある
+                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)
+                {
+                    // システム管理者
+                    // 最高機密管理者
+                    // 統括機密管理者
+                    // 総務部所属者は全て見える
+
+                    // 部署・担当者コンボ表示
+                    DispAllCombBoxControl(true);
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                {
+                    // 所属長
+                    // 部署コンボ非表示
+                    NonDispDepCombBox();
+                }
+                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                {
+                    // 一般使用者（自分のみアクセス可能）
+                    // 部署・担当者コンボ非表示
+                    DispAllCombBoxControl(false);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region コンボボックス初期表示（新）
+        /// <summary>
+        /// コンボボックス初期表示（新）
+        /// </summary>
+        private void InitCombBox_NEW()
+        {
+            try
+            {
+                int AllPath = (int)CommonDefine.SecurityRangePos.AllPath;           // 全部署
+                int Multiple = (int)CommonDefine.SecurityRangePos.Multiple;         // 複数部署
+                int Only = (int)CommonDefine.SecurityRangePos.Only;                 // 自部署のみ
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // 自担当者のみ
+
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                    || CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[AllPath].Key)
+                {
+                    // 部署・担当者コンボ表示
+                    DispAllCombBoxControl(true);
+                }
+                else 
+                {
+                    if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Multiple].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(true);
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[Only].Key)
+                    {
+                        // 部署コンボ非表示
+                        NonDispDepCombBox();
+                    }
+                    else if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRangeList[None].Key)
+                    {
+                        // 部署・担当者コンボ表示
+                        DispAllCombBoxControl(false);
+                    }
+                }
+
+                // 初期設定対象がコンボボックスデータにあればセットする
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックスの非表示処理
+        /// <summary>
+        /// 部署コンボボックスの非表示処理
+        /// </summary>
+        private void NonDispDepCombBox()
+        {
+            try
+            {
+                // 部署コンボ非表示
+                label2.Visible = false;
+                cmbDepartment.Visible = false;
+
+                // 表示位置のセット
+                Point loc3 = label3.Location;
+                loc3.X = label2.Location.X + 10;
+                label3.Location = loc3;
+
+                Point loc4 = cmbConstructionPerson.Location;
+                loc4.X = label3.Location.X + label3.Width + 10;
+                cmbConstructionPerson.Location = loc4;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 全コンボボックス表示をON/OFFする
+        /// <summary>
+        /// 全コンボボックス表示をON/OFFする
+        /// </summary>
+        private void DispAllCombBoxControl(bool bDsp)
+        {
+            try
+            {
+                // 部署・担当者コンボ非表示
+                label2.Visible = bDsp;
+                cmbDepartment.Visible = bDsp;
+                label3.Visible = bDsp;
+                cmbConstructionPerson.Visible = bDsp;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 部署コンボボックスをセットする
         /// <summary>
         /// 部署コンボボックスへ文字をセットする
@@ -216,38 +365,62 @@
         private bool SetcmbDepartment()
         {
             IOMDepartment depDB = new IOMDepartment();
-            List<DepartmentMaster> workList = new List<DepartmentMaster>();
+            bool bSave = m_bInitFlg;
+            m_bInitFlg = true;
             try
             {
 
-                cmbConstructionPerson.DataSource = null;
-                cmbConstructionPerson.Items.Clear();
-                cmbConstructionPerson.Text = "";
+                cmbDepartment.DataSource = null;
+                cmbDepartment.Items.Clear();
+                cmbDepartment.Text = "";
 
-                string strSQL = " WHERE DELETEFLG = 0";
+                string strSQL = string.Empty;
+                // 部署マスタを検索する
+                strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
+                strSQL += " WHERE A.DELETEFLG = 0";
 
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // 所属長
-                    strSQL = string.Format(" AND DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    // システム権限によってデータアクセスに制限がある
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // 所属長
+                        // 一般使用者（自分のみアクセス可能）
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                else
                 {
-                    // 一般使用者（自分のみアクセス可能）
-                    // 部署・担当者コンボ非表示
-                    return true;
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // 参照部署マスタより取得する
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
                 }
+                strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
+                strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
+                strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
+                strSQL += " ORDER BY A.DISPLAYORDER ASC";
 
                 // 部署マスタ読込
-                strSQL += " ORDER BY DISPLAYORDER ASC";
-                if (!depDB.SelectAction(strSQL, ref workList)) return false;
+                ArrayList arList = new ArrayList();
+                if (!depDB.ExecuteReader(strSQL, ref arList)) return false;
 
                 List<KeyValuePair<int, string>> ConstructionDataList = new List<KeyValuePair<int, string>>();
                 ConstructionDataList.Add(new KeyValuePair<int, string>(0, ""));
 
-                foreach (DepartmentMaster work in workList)
+                foreach (object[] work in arList)
                 {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(work.DepartmentCode, work.DepartmentString);
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(CommonMotions.cnvInt(work[0])
+                                                                                    , CommonMotions.cnvString(work[1]));
 
                     ConstructionDataList.Add(keyval);
                 }
@@ -255,7 +428,17 @@
                 // コンボボックス初期表示
                 ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
 
-                cmbDepartment.SelectedIndex = -1;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // 所属長
+                    // 一般使用者（自分のみアクセス可能）
+                    if (CommonMotions.LoginUserData.SecurityManagement != CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
+                }
+
                 return true;
             }
             catch (Exception ex)
@@ -266,10 +449,44 @@
             finally
             {
                 depDB.close(); depDB = null;
+                m_bInitFlg = bSave;
             }
         }
         #endregion
-        
+
+        #region 部署コンボボックスに対象があるかをチェックする
+        /// <summary>
+        /// 部署コンボボックスに対象があるかをチェックする
+        /// </summary>
+        /// <param name="Department"></param>
+        /// <returns></returns>
+        private bool SearchDepartmentCombBoxItem(int Department)
+        {
+            try
+            {
+                bool bRet = false;
+
+                // 対象がコンボボックスデータにあればセットする
+                for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                    if (wrkPair.Key == Department)
+                    {
+                        bRet = true;
+                        break;
+                    }
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
         #region 担当者コンボボックスデータセット
         /// <summary>
         /// 担当者コンボボックスへ文字をセットする
@@ -318,8 +535,17 @@
 
                 // コンボボックス初期表示
                 ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, DataList);
-                cmbConstructionPerson.SelectedIndex = -1;
 
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
+                {
+                    // 一般ユーザーで総務部所属者ではない場合、ログイン者のコードをセットする
+                    if (CommonMotions.LoginUserData.SecurityManagement != CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
+                }
             }
             catch (Exception ex)
             {
@@ -332,6 +558,82 @@
         }
         #endregion
 
+        #region 担当者コンボボックスに対象があるかをチェックする
+        /// <summary>
+        /// 担当者コンボボックスに対象があるかをチェックする
+        /// </summary>
+        /// <param name="PersonCode"></param>
+        /// <returns></returns>
+        private bool SearchPersonCombBoxItem(int PersonCode)
+        {
+            try
+            {
+                bool bRet = false;
+                for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                {
+                    KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                    if (wrkPair.Key == PersonCode)
+                    {
+                        bRet = true;
+                        break;
+                    }
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 担当者コンボボックスセット時部署をセットする
+        /// <summary>
+        /// 担当者コンボボックスセット時部署をセットする
+        /// </summary>
+        /// <returns></returns>
+        private bool SetPerosonToDepartment()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // コンボボックスより選択担当者を取得する
+                int PersonCode = GetConstructionPersonCode();
+                if (PersonCode < 1) return false;
+
+                int DepartmentCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+
+                string strSQL = PersonDB.CreatePrimarykeyString(PersonCode);
+                PersonInChargeMaster PersonRec = new PersonInChargeMaster();
+                PersonDB.SelectAction(strSQL, ref PersonRec);
+
+                // 部署コンボボックスへ部署コードセット
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_bInitFlg;
+                    m_bInitFlg = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcombBoxPerson();    // 担当者コンボボックス変更
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_bInitFlg = bSave;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
         #region 画面サイズ変更時のセルサイズ変更
         /// <summary>
         /// 画面サイズ変更時のセルサイズ変更
@@ -390,6 +692,9 @@
                 {
                     // データを表示する
                     SetGridData(ix);
+                    
+                    // 参照時はロックする
+                    if (m_EditLock) SeeModeLock(ix, true);
                 }
                 return true;
             }
@@ -448,10 +753,14 @@
             /// </summary>
             PaymentContent,
             /// <summary>
-            /// 入力金額
+            /// 税抜支払金額
             /// </summary>
             EntryPrice,
             /// <summary>
+            /// 税込支払金額
+            /// </summary>
+            EntryPriceInTax,
+            /// <summary>
             /// 仕入れ先コード
             /// </summary>
             SuppliersCode,
@@ -509,8 +818,15 @@
                 {
                     // ロック解除
                     SeeModeLock(TargetTab, false);
-                    // 前月は2週目より以降はロックする
-                    if (DateTimeUtil.GetWeekOfMounth(DateTime.Now) > 2) SeeModeLock(TargetTab, true);
+                    if (PersonCode != 20160701) // ※※※※※特殊処理※※※※※
+                    {
+                        if (DateTimeUtil.GetWeekOfMounth(DateTime.Now) > 2) SeeModeLock(TargetTab, true);
+                    }
+                    else
+                    {
+                        // 前月は2週目より以降はロックする
+                        if (DateTimeUtil.GetWeekOfMounth(DateTime.Now) > 2) SeeModeLock(TargetTab, false);
+                    }
 
                 }
                 else if (iCompare > 0)
@@ -519,8 +835,17 @@
                     SeeModeLock(TargetTab, false);
                 }
                 else
-                {   // 前前月はロックする
-                    SeeModeLock(TargetTab, true);
+                {
+                    if (PersonCode != 20160701)  // ※※※※※特殊処理※※※※※
+                    {
+                        // 前前月はロックする
+                        SeeModeLock(TargetTab, true);
+                    }
+                    else
+                    {
+                        // 前前月はロックする
+                        SeeModeLock(TargetTab, false);
+                    }
                 }
             }
             catch (Exception ex)
@@ -560,8 +885,9 @@
 
                 // データ読込
                 string strSQL = "SELECT";
-                strSQL += " DATE_FORMAT(ACTIONDATE,'DD'), DATATYPE, CONSTRUCTIONCODE, PAYMENTCONTENT,";
-                strSQL += " ENTRYPRICE, SUPPLIERSCODE, SUPPLIERSNAME, COMPLATEFLG,";
+                //strSQL += " TO_CHAR(ACTIONDATE,'DD'), DATATYPE, CONSTRUCTIONCODE, PAYMENTCONTENT,";
+                strSQL += " DATE_FORMAT(ACTIONDATE,'/%d'), DATATYPE, CONSTRUCTIONCODE, PAYMENTCONTENT,";
+                strSQL += " ENTRYPRICE, ENTRYPRICEINTAX, SUPPLIERSCODE, SUPPLIERSNAME, COMPLATEFLG,";
                 strSQL += " APPROVALFLG, DATAADDCOUNT, PaymentType";
                 strSQL += " FROM CostDataOfPerson";
                 strSQL += string.Format(" WHERE PERSONCODE = {0}", PersonCode);
@@ -637,7 +963,8 @@
                                     ButtonTop[0], ButtonTop[1], ButtonTop[2],                                       // 種別ボタン
                                     paymentType,                                                                    // 支払方法種別
                                     s_PaymentTypeString[paymentType],                                               // 支払方法種別名称
-                                    CommonMotions.cnvInt(wrkobj[(int)CostsDataCol.EntryPrice]).ToString("#,0"),     // 入力金額
+                                    CommonMotions.cnvDouble(wrkobj[(int)CostsDataCol.EntryPrice]).ToString("#,0"),     // 入力金額(税抜)
+                                    CommonMotions.cnvDouble(wrkobj[(int)CostsDataCol.EntryPriceInTax]).ToString("#,0"),// 入力金額(税込)
                                     CommonMotions.cnvInt(wrkobj[(int)CostsDataCol.SuppliersCode]),                  // 仕入先コード
                                     wrkobj[(int)CostsDataCol.SuppliersName].ToString(),                             // 仕入先名
                                     FixFlg,                                                                         // 固定フラグ
@@ -771,6 +1098,9 @@
                 DataGridView dgv = m_dispGridControl[CurTabCnt];
                 DataGridViewRow CurRow = dgv.CurrentRow;
 
+                bool LastRow = false;
+                if ((dgv.RowCount - 1) == dgv.CurrentRow.Index) LastRow = true;
+
                 // 対象日付取得
                 int TargetDay = CommonMotions.cnvInt(CurRow.Cells[(int)DispGridColumn.Days].Value);
 
@@ -784,6 +1114,9 @@
                 // 日付セット
                 dgv.Rows[InsertCnt].Cells[(int)DispGridColumn.Days].Value = TargetDay;
 
+                // 最終行で行追加は視点を1行上げる
+                if (LastRow) dgv.FirstDisplayedScrollingRowIndex ++;
+                
                 // データ変更フラグON
                 m_bChengeAns = true;
             }
@@ -1044,6 +1377,7 @@
 
                 // まず削除する
                 string strSQL = string.Format(" WHERE PersonCode = {0}", PersonCode);
+                //strSQL += string.Format(" AND TO_CHAR(ActionDate,'YYYY/MM') = '{0}'", TargetMonth);
                 strSQL += string.Format(" AND DATE_FORMAT(ActionDate,'%Y/%m') = '{0}'", TargetMonth);
                 CostDB.DeleteAction(strSQL, false);
 
@@ -1102,8 +1436,10 @@
                 costRec.SuppliersName = CommonMotions.cnvString(dgvRow.Cells[(int)DispGridColumn.SuppliersName].Value);
                 // 支払内容
                 costRec.PaymentContent = CommonMotions.cnvString(dgvRow.Cells[(int)DispGridColumn.PaymentContent].Value);
-                // 金額
+                // 金額(税抜)
                 costRec.EntryPrice = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.EntryPrice].Value);
+                // 金額(税込)
+                costRec.EntryPriceInTax = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.EntryPriceInTax].Value);
                 // 支払方法区分
                 costRec.PaymentType = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.PaymentType].Value);
             }
@@ -1125,10 +1461,22 @@
             bool bAns = true;
             try
             {
-                // 一般ユーザー
-                int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;
-                if (CommonMotions.LoginUserData.SecurityManagement != User)
+                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;
+                }
+                if (bSelFlg)
+                {
                     if (CommonMotions.cnvInt(cmbConstructionPerson.SelectedValue) == 0)
                     {
                         MessageBox.Show("担当者を選択してください。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
@@ -1288,9 +1636,11 @@
                 int PersonCode = GetConstructionPersonCode();
                 if (PersonCode == 0) return;
 
-                frm.PersonCode = PersonCode;
                 // 工事担当者検索
                 frm.PersonCharge = (int)FrmConstructionDiag.PersonChargePoint.Construction;
+                frm.PersonCode = PersonCode;
+                frm.ProcessNo = (int)ClsExcute.ProcessExecuteNo.TAndPCosts;
+
                 frm.ShowDialog();
                 // 終了コード確認
                 if (frm.EndButton == DialogResult.No) return;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/AlwaysEmployment/AlwaysEmployment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/AlwaysEmployment/AlwaysEmployment.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/AlwaysEmployment/AlwaysEmployment.cs	(revision 51)
@@ -88,12 +88,6 @@
         }
 
         /// <summary>
-        /// 修正モード名称
-        /// </summary>
-        private static string EditModeStringNew = "新規";
-        private static string EditModeStringEdit = "修正";
-
-        /// <summary>
         /// 工事詳細台帳計算対象名称
         /// </summary>
         private string[] PersonLedgerDivNoName = new string[] { "計算対象外", "計算対象" };
@@ -137,6 +131,11 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
@@ -154,6 +153,15 @@
         {
             set { m_PasswordInputFlg = value; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -235,6 +243,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             m_bEventStop = false;
         }
         #endregion
@@ -273,6 +287,8 @@
                 // データ登録
                 if (!PersonInChargeMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("外注者情報データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -314,26 +330,48 @@
                 if (MessageBox.Show("表示中のデータを削除します。", "削除確認"
                     , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
 
-                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
-                // 
-                string strWhere = string.Format(" Where PersonCode = {0}", m_dispControl[(int)Dispcount.PersonCode].Text.ToString());
+                picDB.connect(); picDB.beginTran();
+
+                PersonInChargeMaster workList = new PersonInChargeMaster();
+                // データ存在確認
+                int PersonCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.PersonCode].Text);
+                string strWhere = string.Format(" Where PersonCode = {0}", PersonCode);
                 // データ読込
-                if (!picDB.SelectAction(strWhere, ref workList))
+                if (!picDB.SelectAction(strWhere, ref workList, false))
                 {
                     MessageBox.Show("削除確認に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return;
                 }
+
                 // 終了年月日
-                workList[0].StartDate = DateTime.Now;
+                if (!picDB.UpdateFeild(PersonCode, (int)IOMPersonInCharge.ColumnCnt.EndDate, DateTime.Now, false))
+                {
+                    picDB.rollback();
+                    MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
                 // 削除フラグ
-                workList[0].DeleteFlg = 1;
-                // データ更新
-                if (!picDB.UpdateAction(strWhere, workList[0]))
+                if (!picDB.UpdateFeild(PersonCode, (int)IOMPersonInCharge.ColumnCnt.DeleteFlg, 1, false))
                 {
+                    picDB.rollback();
                     MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return;
                 }
+                picDB.commit();
 
+                CommonMotions.RemoveEndMessage("外注者情報データ");
+
+                //// 終了年月日
+                //workList[0].EndDate = DateTime.Now;
+                //// 削除フラグ
+                //workList[0].DeleteFlg = 1;
+                //// データ更新
+                //if (!picDB.UpdateAction(strWhere, workList[0]))
+                //{
+                //    MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                //    return;
+                //}
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -405,7 +443,7 @@
                 m_dispControl[(int)Dispcount.PersonCode].Text = string.Format("{0:00000000}", personcode + 1);
             }
             // 新規時はパスワードを同じにする
-            if (m_dispControl[(int)Dispcount.EditMode].Text.Trim().Equals(EditModeStringNew))
+            if (m_dispControl[(int)Dispcount.EditMode].Text.Trim().Equals(CommonDefine.EditModeStringNew))
             {
                 m_dispControl[(int)Dispcount.PassWord].Text = m_dispControl[(int)Dispcount.PersonCode].Text;
             }
@@ -477,7 +515,17 @@
                 DispMentenanceData();
 
                 // モード表示
-                m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringEdit;
+                if (m_EditLock)
+                    m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringRef;
+                else
+                    m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringEdit;
+
+                // 参照時はデータ変更させない
+                if (m_EditLock)
+                {
+                    ExecReadOnly();
+                }
+
                 // フォーカスセット
                 m_dispControl[(int)Dispcount.PersonName].Focus();
             }
@@ -530,7 +578,7 @@
             ControlLock();
 
             // モード表示
-            m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringNew;
+            m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringNew;
             // フォーカスセット
             m_dispControl[(int)Dispcount.PersonName].Focus();
         }
@@ -916,6 +964,7 @@
                 string strWhere = "";
                 if (strDate.Length != 0)
                 {
+                    //strWhere = string.Format(" Where TO_CHAR(StartDate,'YYYY/MM') = '{0}'", strDate);
                     strWhere = string.Format(" Where DATE_FORMAT(StartDate,'%Y/%m') = '{0}'", strDate);
                 }
                 iRet = picDB.SelectMaxPersonCodeCount(strWhere);
@@ -1288,5 +1337,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/AlwaysEmployment/AlwaysEmployment.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/AlwaysEmployment/AlwaysEmployment.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/AlwaysEmployment/AlwaysEmployment.designer.cs	(revision 51)
@@ -135,7 +135,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 11;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.cs	(revision 51)
@@ -79,9 +79,23 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -104,7 +118,7 @@
         }
         #endregion
 
-        #region イベントメソッド
+        #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
         /// </summary>
@@ -125,6 +139,9 @@
             // 前プロセスに戻る
             ClsExcute.BackProcess();
         }
+        #endregion
+
+        #region 終了ボタンクリック
         /// <summary>
         /// 終了ボタンクリック
         /// </summary>
@@ -134,7 +151,9 @@
         {
             this.Close();
         }
+        #endregion
 
+        #region 初期フォームロード
         /// <summary>
         /// 初期フォームロード
         /// </summary>
@@ -154,9 +173,17 @@
 
             cmbApprovalList.Focus();
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             m_bInitFlg = false;
         }
+        #endregion
 
+        #region フィールド値変更フラグ
         /// <summary>
         /// フィールド値変更フラグ
         /// </summary>
@@ -166,7 +193,9 @@
         {
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region 登録ボタン押下
         /// <summary>
         /// 登録ボタン押下
         /// </summary>
@@ -185,6 +214,8 @@
                 // データ登録
                 if (!ApprovalMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("承認経路データ");
+
                 // 表示行退避
                 int iIndex = dgvGridData.FirstDisplayedScrollingRowIndex;
 
@@ -211,7 +242,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 削除ボタン押下
         /// <summary>
         /// 削除ボタン押下
         /// </summary>
@@ -236,6 +269,8 @@
                 string strDel = AppDB.CreatePrimarykeyString(iApprovalCode, iDepartmentCode);
                 if (!AppDB.DeleteAction(strDel)) return;
 
+                CommonMotions.RemoveEndMessage("承認経路データ");
+
                 // クリア
                 cmbApprovalList.SelectedIndex = -1;
                 cmbDepartment.SelectedIndex = -1;
@@ -255,7 +290,9 @@
                 AppDB.close(); AppDB = null;
             }
         }
+        #endregion
 
+        #region Entryキーでの移動処理
         /// <summary>
         /// Entryキーでの移動処理
         /// </summary>
@@ -276,6 +313,9 @@
                 e.SuppressKeyPress = true;
             }
         }
+        #endregion
+
+        #region データ選択ボタン押下
         /// <summary>
         /// データ選択ボタン押下
         /// </summary>
@@ -285,6 +325,9 @@
         {
             MasterToDataDrid();
         }
+        #endregion
+
+        #region データ選択解除ボタン押下
         /// <summary>
         /// データ選択解除ボタン押下
         /// </summary>
@@ -294,6 +337,9 @@
         {
             GridDataDelete();
         }
+        #endregion
+
+        #region 承認コンボボックス変化時
         /// <summary>
         /// 承認コンボボックス変化時
         /// </summary>
@@ -304,6 +350,9 @@
             if (m_bInitFlg) return;
             DispMentenanceData();
         }
+        #endregion
+
+        #region 部署コンボボックス変化時
         /// <summary>
         /// 部署コンボボックス変化時
         /// </summary>
@@ -314,6 +363,9 @@
             if (m_bInitFlg) return;
             DispMentenanceData();
         }
+        #endregion
+
+        #region アップキー押下
         /// <summary>
         /// アップキー押下
         /// </summary>
@@ -334,6 +386,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region ダウンキー押下処理
         /// <summary>
         /// ダウンキー押下処理
         /// </summary>
@@ -356,6 +411,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region データグリッドダブルクリック
         /// <summary>
         /// データグリッドダブルクリック
         /// </summary>
@@ -365,6 +423,9 @@
         {
             GridDataDelete();
         }
+        #endregion
+
+        #region マスターグリッドダブルクリック
         /// <summary>
         /// マスターグリッドダブルクリック
         /// </summary>
@@ -376,7 +437,7 @@
         }
         #endregion
 
-        #region プライベートメソッド
+        #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
         /// </summary>
@@ -417,7 +478,9 @@
                 return false;
             }
         }
+        #endregion
 
+        #region 承認経路マスタ登録
         /// <summary>
         /// 承認経路マスタ登録
         /// </summary>
@@ -470,6 +533,9 @@
                 AppMDB.close(); AppMDB = null;
             }
         }
+        #endregion
+
+        #region 初期時データ取得
         /// <summary>
         /// 初期時データ取得
         /// </summary>
@@ -532,6 +598,9 @@
                 dmDB.close(); dmDB = null;
             }
         }
+        #endregion
+
+        #region 更新データ表示処理
         /// <summary>
         /// 更新データ表示処理
         /// </summary>
@@ -607,6 +676,12 @@
                     if (AddrowCnt != 0) dgvGridData.Rows.Add(AddrowCnt);
                 }
 
+                // 参照時はデータ変更させない
+                if (m_EditLock)
+                {
+                    ExecReadOnly();
+                }
+
                 m_bChengeAns = false;
             }
             catch (Exception ex)
@@ -621,6 +696,9 @@
 
             }
         }
+        #endregion
+
+        #region 承認区分コンボボックスセット
         /// <summary>
         /// 承認区分コンボボックスセット
         /// </summary>
@@ -649,6 +727,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region 部署コンボボックス初期表示処理
         /// <summary>
         /// 部署コンボボックス初期表示処理
         /// </summary>
@@ -688,6 +769,9 @@
                 dmDB.close(); dmDB = null;
             }
         }
+        #endregion
+
+        #region マスタグリッドよりデータグリッドへの移動
         /// <summary>
         /// マスタグリッドよりデータグリッドへの移動
         /// </summary>
@@ -746,6 +830,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region データグリッド行削除
         /// <summary>
         /// データグリッド行削除
         /// </summary>
@@ -772,5 +859,29 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                dgvGridData.ReadOnly = true;
+                dgvMaster.Visible = false;
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataSelect.Visible = false;
+                btnDataUnSelect.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ApprovalRoute/FrmApprovalRoute.designer.cs	(revision 51)
@@ -121,7 +121,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 11;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             this.btnDataDelete.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmApprovalRoute_KeyDown);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/BusinessType/FrmBusinessTypeMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/BusinessType/FrmBusinessTypeMaster.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/BusinessType/FrmBusinessTypeMaster.cs	(revision 51)
@@ -75,27 +75,12 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
-        #endregion
 
-        #region コンストラクタ
-        public FrmBusinessTypeMaster()
-        {
-            InitializeComponent();
-        }
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
-        #region デストラクタ
-        ~FrmBusinessTypeMaster()
-        {
-            try
-            {
-                GC.Collect();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
 
         #region プロパティ
         /// <summary>
@@ -119,9 +104,40 @@
         {
             get { return m_BusinessTypeCode; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
+        #region コンストラクタ
+        public FrmBusinessTypeMaster()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmBusinessTypeMaster()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region イベントメソッド
+        
+        #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
         /// </summary>
@@ -142,6 +158,9 @@
             // 前プロセスに戻る
             ClsExcute.BackProcess();
         }
+        #endregion
+
+        #region 終了ボタン押下
         /// <summary>
         /// 終了ボタン押下
         /// </summary>
@@ -159,7 +178,9 @@
             //m_EndButton = true;
             Close();
         }
+        #endregion
 
+        #region フォームロード
         /// <summary>
         /// フォームロード
         /// </summary>
@@ -180,8 +201,16 @@
 
             // ボタン表示の制御
             ButtonVisble(this);
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
         }
+        #endregion
 
+        #region 行データクリア
         /// <summary>
         /// 行データクリア
         /// </summary>
@@ -193,7 +222,9 @@
             dgvMaster[(int)DispColumn.DisplayOrder, iIndex].Value = "";
             dgvMaster[(int)DispColumn.NameString, iIndex].Value = "";
         }
+        #endregion
 
+        #region グリッド採番処理
         /// <summary>
         /// グリッド採番処理
         /// </summary>
@@ -212,6 +243,9 @@
                     r.Cells[(int)DispColumn.DisplayOrder].Value = "0";
             }
         }
+        #endregion
+
+        #region 行追加ボタン押下
         /// <summary>
         /// 行追加ボタン押下
         /// </summary>
@@ -290,7 +324,9 @@
             //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
             //dgvMaster.CurrentCell = dgvMaster[0, iIndex];
         }
+        #endregion
 
+        #region フィールド値変更フラグ
         /// <summary>
         /// フィールド値変更フラグ
         /// </summary>
@@ -300,7 +336,9 @@
         {
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region セル値変化
         /// <summary>
         /// セル値変化
         /// </summary>
@@ -320,6 +358,9 @@
             // 変更フラグON
             m_bChengeAns = true;
         }
+        #endregion
+
+        #region 行削除ボタン押下
         /// <summary>
         /// 行削除ボタン押下
         /// </summary>
@@ -351,6 +392,8 @@
 
                 uDB.commit();
 
+                CommonMotions.RemoveEndMessage("法人格情報行");
+
                 // データ表示
                 if (!DispGridData()) return;
 
@@ -369,7 +412,9 @@
                 uDB.close(); uDB = null;
             }
         }
+        #endregion
 
+        #region 登録ボタン押下
         /// <summary>
         /// 登録ボタン押下
         /// </summary>
@@ -389,7 +434,10 @@
                 int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
 
                 // データ登録
-                BusinessTypeMasterDataEntry();
+                if (BusinessTypeMasterDataEntry())
+                {
+                    CommonMotions.EntryEndMessage("法人格情報");
+                }
 
                 // データ表示
                 if (!DispGridData()) return;
@@ -405,7 +453,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region IMEのコントロール
         /// <summary>
         /// IMEのコントロール
         /// </summary>
@@ -434,7 +484,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region アップキー押下
         /// <summary>
         /// アップキー押下
         /// </summary>
@@ -461,6 +513,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region ダウンキー押下処理
         /// <summary>
         /// ダウンキー押下処理
         /// </summary>
@@ -487,7 +542,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region セルクリック
         /// <summary>
         /// セルクリック
         /// </summary>
@@ -495,9 +552,14 @@
         /// <param name="e"></param>
         private void dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
         {
+            // 参照は処理しない
+            if (m_EditLock) return;
+
             dgvMaster_CellDoubleClick(sender, e);
         }
+        #endregion
 
+        #region セルダブルクリック
         /// <summary>
         /// セルダブルクリック
         /// </summary>
@@ -515,7 +577,9 @@
             m_BusinessTypeName = CommonMotions.cnvString(dgv.Rows[e.RowIndex].Cells[(int)DispColumn.NameString].Value);
             btnEnd_Click(sender, (EventArgs)e);
         }
+        #endregion
 
+        #region Formキーダウン処理
         /// <summary>
         /// Formキーダウン処理
         /// </summary>
@@ -531,10 +595,13 @@
                 return;
             }
         }
+        #endregion
 
         #endregion
 
         #region プライベートメソッド
+
+        #region 初期表示処理
         /// <summary>
         /// 初期表示処理
         /// </summary>
@@ -562,7 +629,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
         /// </summary>
@@ -600,12 +669,14 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-      }
+        }
+        #endregion
 
+        #region 法人格マスタデータ登録
         /// <summary>
         /// 法人格マスタデータ登録
         /// </summary>
-        private void BusinessTypeMasterDataEntry()
+        private bool BusinessTypeMasterDataEntry()
         {
             IOMBusinessType uDB = new IOMBusinessType();
             try
@@ -654,7 +725,7 @@
                     {
                         uDB.rollback();
                         MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return;
+                        return false;
                     }
 
                     if (uList.Count == 0)
@@ -668,7 +739,7 @@
                         {
                             uDB.rollback();
                             MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                     else
@@ -678,7 +749,7 @@
                         {
                             uDB.rollback();
                             MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                 }
@@ -685,10 +756,13 @@
 
                 // 成功したらcommit
                 uDB.commit();
+
+                return true;
             }
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
             }
             finally
             {
@@ -695,7 +769,9 @@
                 uDB.close(); uDB = null;
             }
         }
+        #endregion
 
+        #region 法人格マスタ表示
         /// <summary>
         /// 法人格マスタ表示
         /// </summary>
@@ -755,7 +831,9 @@
             }
             return true;
         }
+        #endregion
 
+        #region ボタンの表示・非表示制御
         /// <summary>
         /// ボタンの表示・非表示制御
         /// </summary>
@@ -773,16 +851,19 @@
 
             foreach (Control ctrl in Parent.Controls)
             {
-                if (ctrl.GetType().Equals(typeof(Button)))
-                {
-                    // 終了ボタン以外を制御する
-                    if (ctrl.Name.ToString() != btnEnd.Name.ToString()) ctrl.Visible = bAns;
-                }
+                if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                // 終了ボタン以外を制御する
+                if (ctrl.Name.Equals(btnEnd.Name)) continue;
+
+                ctrl.Visible = bAns;
             }
             // グリッドの読込のみ制御
             dgvMaster.ReadOnly = m_DialogFlg;
         }
+        #endregion
 
+        #region グリッド最終行での処理
         /// <summary>
         /// グリッド最終行での処理
         /// </summary>
@@ -805,5 +886,35 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                foreach (Control ctrl in this.Controls)
+                {
+                    // ボタンを対象に処理する
+                    if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.Equals(btnEnd.Name)) continue;
+
+                    ctrl.Visible = false;
+                }
+                // グリッドの読込のみ制御
+                dgvMaster.ReadOnly = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendar.cs	(revision 51)
@@ -31,16 +31,6 @@
 
         #endregion
 
-        #region コンストラクタ
-        /// <summary>
-        /// コンストラクタ
-        /// </summary>
-        public FrmCalendar()
-        {
-            InitializeComponent();
-        }
-        #endregion
-
         #region 変数
         /// <summary>
         /// 初期フラグ
@@ -52,8 +42,35 @@
         private bool m_bChengeAns = false;
 
         private CalennderPage m_CalendPage = new CalennderPage();
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
+        #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// コンストラクタ
+        /// </summary>
+        public FrmCalendar()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
         #region 画面ロード
         /// <summary>
         /// 画面ロード
@@ -65,14 +82,19 @@
 
             // 営業年度取得
             SetnumUDYear();
-            //Console.WriteLine("S1:" + DateTime.Now.ToString("hh:mm:ss.fff"));
+
             // 初期化
             InitCreatePage();
-            //Console.WriteLine("S2:" + DateTime.Now.ToString("hh:mm:ss.fff"));
+
             // カレンダー表示
             DisplayCalender();
-            //Console.WriteLine("S3:" + DateTime.Now.ToString("hh:mm:ss.fff"));
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             m_bChengeAns = false;
             m_initDataLoad = false;
         }
@@ -116,6 +138,8 @@
 
             if (!HolidayCalenderEntry()) return;
 
+            CommonMotions.EntryEndMessage("会社休日データ");
+
             this.Close();
         }
         #endregion
@@ -140,6 +164,8 @@
 
                 m_bChengeAns = false;
 
+                CommonMotions.RemoveEndMessage("会社休日データ");
+
                 // 終了
                 this.Close();
 
@@ -175,6 +201,9 @@
         /// <param name="e"></param>
         private void lblDayData_DoubleClick(object sender, EventArgs e)
         {
+            // 参照時は処理しない
+            if (m_EditLock) return;
+
             Label lblData = (Label)sender;
             // 色を変える
             if (lblData.BackColor == Color.Red) lblData.BackColor = Color.White;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendarAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendarAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Calender/FrmCalendarAuxiliary.cs	(revision 51)
@@ -21,10 +21,6 @@
     {
         #region 定数
         /// <summary>
-        /// 曜日文字
-        /// </summary>
-        public static string[] s_DayOfTheWeek = new string[] { "日", "月", "火", "水", "木", "金", "土" };
-        /// <summary>
         /// カラムポジション
         /// </summary>
         public static int[] s_ColumnPosision = new int[] { 3, 43, 83, 123, 163, 203, 243 };
@@ -77,7 +73,7 @@
                                 case 0:
                                     m_CalendPage.MonthryData[i].lblWeekTitle[ix] = new Label();
                                     // 曜日表示
-                                    m_CalendPage.MonthryData[i].lblWeekTitle[ix].Text = s_DayOfTheWeek[ix];
+                                    m_CalendPage.MonthryData[i].lblWeekTitle[ix].Text = CommonDefine.DayOfTheWeekString[ix];
                                     m_CalendPage.MonthryData[i].lblWeekTitle[ix].TextAlign = ContentAlignment.MiddleCenter;
 
                                     break;
@@ -561,8 +557,8 @@
         /// <returns></returns>
         private bool DispFeildCheck()
         {
-            int iNGno = 0;
-            int iLength = 0;
+            //int iNGno = 0;
+            //int iLength = 0;
             try
             {
                 // 対象年度
@@ -569,16 +565,16 @@
                 //if (txtInput01.Text.Length != 0) iLength++;
                 //if (!CommonMotions.DispFieldIntCheck(txtInput01, true)) iNGno = 1;
 
-                if (iLength == 0)
-                {
-                    MessageBox.Show("データが入力されていません、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
-                    return false;
-                }
-                if (iNGno != 0)
-                {
-                    MessageBox.Show("対象年度に入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
-                    return false;
-                }
+                //if (iLength == 0)
+                //{
+                //    MessageBox.Show("データが入力されていません、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                //    return false;
+                //}
+                //if (iNGno != 0)
+                //{
+                //    MessageBox.Show("対象年度に入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                //    return false;
+                //}
 
                 return true;
             }
@@ -602,8 +598,10 @@
                 // 当年度取得
                 int ToYear = CommonMotions.SystemMasterData.ConstructionYear;
 
-                string strSQL = "SELECT DATE_FORMAT(Holiday ,'YYYY'), COUNT(*) FROM HOLIDAYCALENDERMASTER";
-                strSQL += " GROUP BY DATE_FORMAT(Holiday ,'YYYY') ORDER BY DATE_FORMAT(Holiday ,'YYYY')";
+                //string strSQL = "SELECT TO_CHAR(Holiday ,'YYYY'), COUNT(*) FROM HOLIDAYCALENDERMASTER";
+                //strSQL += " GROUP BY TO_CHAR(Holiday ,'YYYY') ORDER BY TO_CHAR(Holiday ,'YYYY')";
+                string strSQL = "SELECT DATE_FORMAT(Holiday ,'%Y'), COUNT(*) FROM HOLIDAYCALENDERMASTER";
+                strSQL += " GROUP BY DATE_FORMAT(Holiday ,'%Y') ORDER BY DATE_FORMAT(Holiday ,'%Y')";
 
                 ArrayList arList = new ArrayList();
                 int Max = 0;
@@ -663,5 +661,23 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+            }
+            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 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.cs	(revision 51)
@@ -121,9 +121,23 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -211,6 +225,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フラグ初期化
             m_bChengeAns = false;
             m_bInitFlg = false;
@@ -285,6 +305,8 @@
                 // データ登録
                 if (!ComponentMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("積算大項目データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -347,6 +369,8 @@
                 // 関連情報を削除する
                 clinkDB.DeleteAction(strSQL);
 
+                CommonMotions.RemoveEndMessage("積算大項目データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -469,9 +493,16 @@
             // 更新データ取得
             DispMentenanceData();
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フォーカスセット
             m_dispControl[(int)DispControl.ComponentName].Focus();
 
+            m_bChengeAns = false;
         }
         #endregion
 
@@ -960,7 +991,10 @@
                     ((ComboBox)m_dispControl[(int)DispControl.SubItems]).SelectedValue = wrklist[0].SubitemsFlg;        // 下位項目
                     ((ComboBox)m_dispControl[(int)DispControl.DirectInput]).SelectedValue = wrklist[0].DirectInputFlg;  // 直接入力許可
                     ((ComboBox)m_dispControl[(int)DispControl.MyExpenses]).SelectedValue = wrklist[0].MyExpensesFlg;    // 自社経費
-                    m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                    // ”修正”
+                    if (m_EditLock)
+                        m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringRef;                 // ”参照”
+                    else
+                        m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                // ”修正”
 
                     // 編集前退避
                     m_dispControl[(int)DispControl.BeforeComponentName].Text = wrklist[0].ComponentName.ToString();     // 工種名称
@@ -1059,5 +1093,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Component/FrmComponent.designer.cs	(revision 51)
@@ -124,7 +124,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 5;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.cs	(revision 51)
@@ -113,9 +113,23 @@
         /// 表示コントロール保持配列
         /// </summary>
         private Control[] m_dispControl = new Control[1];
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -195,6 +209,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フラグ初期化
             m_bChengeAns = false;
         }
@@ -245,6 +265,8 @@
                 // データ登録
                 if (!ComponentLinkMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("大項目・中項目関連データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -307,6 +329,8 @@
 
                 linkDB.commit();
 
+                CommonMotions.RemoveEndMessage("大項目・中項目関連データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -388,6 +412,12 @@
             // 更新データ取得
             DispMentenanceData();
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フォーカスセット
             m_dispControl[(int)DispControl.WorkList].Focus();
 
@@ -854,5 +884,28 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnLineAdd.Visible = false;
+                btnLineDel.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ComponentLink/FrmComponentLink.designer.cs	(revision 51)
@@ -29,16 +29,16 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle 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();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.btnDataDelete = new System.Windows.Forms.Button();
@@ -100,7 +100,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 5;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
@@ -153,14 +153,14 @@
             this.dgvItemList.AllowUserToResizeRows = false;
             this.dgvItemList.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvItemList.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle11.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvItemList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle11;
+            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.dgvItemList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
             this.dgvItemList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvItemList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.dataGridViewTextBoxColumn1,
@@ -179,10 +179,10 @@
             // dataGridViewTextBoxColumn1
             // 
             this.dataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle12.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle12.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle12;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle2;
             this.dataGridViewTextBoxColumn1.Frozen = true;
             this.dataGridViewTextBoxColumn1.HeaderText = "№";
             this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
@@ -201,10 +201,10 @@
             // 
             // dataGridViewTextBoxColumn4
             // 
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle13.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle13.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle13;
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle3;
             this.dataGridViewTextBoxColumn4.Frozen = true;
             this.dataGridViewTextBoxColumn4.HeaderText = "中項目名称";
             this.dataGridViewTextBoxColumn4.MaxInputLength = 50;
@@ -278,14 +278,14 @@
             this.dgvComponentList.AllowUserToResizeRows = false;
             this.dgvComponentList.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvComponentList.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle14.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle14.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle14.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle14.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle14.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvComponentList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle14;
+            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.dgvComponentList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
             this.dgvComponentList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvComponentList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column0,
@@ -308,9 +308,9 @@
             // Column0
             // 
             this.Column0.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle15.ForeColor = System.Drawing.Color.Black;
-            this.Column0.DefaultCellStyle = dataGridViewCellStyle15;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
+            this.Column0.DefaultCellStyle = dataGridViewCellStyle5;
             this.Column0.Frozen = true;
             this.Column0.HeaderText = "№";
             this.Column0.Name = "Column0";
@@ -320,8 +320,8 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle16.ForeColor = System.Drawing.Color.Black;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle16;
+            dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle6;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "構成キー";
             this.Column1.Name = "Column1";
@@ -332,9 +332,9 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle17.ForeColor = System.Drawing.Color.Black;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle17;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle7;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "大項目名称";
             this.Column2.MaxInputLength = 50;
@@ -345,9 +345,9 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle18.ForeColor = System.Drawing.Color.Black;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle18;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle8.ForeColor = System.Drawing.Color.Black;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle8;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "下位";
             this.Column3.Name = "Column3";
@@ -357,10 +357,10 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle19.Font = new System.Drawing.Font("ＭＳ ゴシック", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle19.ForeColor = System.Drawing.Color.Black;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle19;
+            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.Column4.DefaultCellStyle = dataGridViewCellStyle9;
             this.Column4.Frozen = true;
             this.Column4.HeaderText = "入力";
             this.Column4.Name = "Column4";
@@ -370,10 +370,10 @@
             // 
             // Column6
             // 
-            dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle20.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle20.ForeColor = System.Drawing.Color.Black;
-            this.Column6.DefaultCellStyle = dataGridViewCellStyle20;
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle10.ForeColor = System.Drawing.Color.Black;
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle10;
             this.Column6.Frozen = true;
             this.Column6.HeaderText = "経費";
             this.Column6.Name = "Column6";
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.cs	(revision 51)
@@ -112,9 +112,23 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -201,6 +215,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フラグ初期化
             m_bChengeAns = false;
         }
@@ -277,6 +297,8 @@
                 // データ登録
                 if (!ConstructionItemMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("積算中項目データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -352,6 +374,8 @@
                 ciDB.commit();
                 specDB.commit();
 
+                CommonMotions.RemoveEndMessage("積算中項目データ");
+
                 // 2015/11/13 論理削除は使わない
                 //List<ConstructionItemMaster> workList = new List<ConstructionItemMaster>();
                 //// 
@@ -910,16 +934,26 @@
                 if (wrklist.Count != 0)
                 {
                     // データ表示
-                    m_dispControl[(int)DispControl.ItemCode].Text = wrklist[0].ItemCode.ToString();                 // 工種コード
-                    m_dispControl[(int)DispControl.ItemName].Text = wrklist[0].ItemName.ToString();                 // 工種名称
-                    ((ComboBox)m_dispControl[(int)DispControl.SubItems]).SelectedValue = wrklist[0].SubitemsFlg;     // 下位項目
+                    m_dispControl[(int)DispControl.ItemCode].Text = wrklist[0].ItemCode.ToString();                     // 工種コード
+                    m_dispControl[(int)DispControl.ItemName].Text = wrklist[0].ItemName.ToString();                     // 工種名称
+                    ((ComboBox)m_dispControl[(int)DispControl.SubItems]).SelectedValue = wrklist[0].SubitemsFlg;        // 下位項目
                     ((ComboBox)m_dispControl[(int)DispControl.MyExpenses]).SelectedValue = wrklist[0].MyExpensesFlg;    // 自社経費
-                    m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                // ”修正”
 
                     // 編集前退避
-                    m_dispControl[(int)DispControl.BeforeItemName].Text = wrklist[0].ItemName.ToString();           // 工種名称
+                    m_dispControl[(int)DispControl.BeforeItemName].Text = wrklist[0].ItemName.ToString();               // 工種名称
+
+                    if (m_EditLock)
+                        m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringRef;                 // 参照
+                    else
+                        m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                // 修正
                 }
 
+                // 参照時はデータ変更させない
+                if (m_EditLock)
+                {
+                    ExecReadOnly();
+                }
+
                 m_bChengeAns = false;
             }
             catch (Exception ex)
@@ -987,5 +1021,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionItem/FrmConstructionItem.designer.cs	(revision 51)
@@ -112,7 +112,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 4;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.cs	(revision 51)
@@ -114,9 +114,23 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -196,6 +210,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フラグ初期化
             m_bChengeAns = false;
         }
@@ -269,6 +289,8 @@
                 // データ登録
                 if (!ConstructionWorkMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("積算小項目データ");
+
                 // 変更フラグクリア
                 m_bChengeAns = false;
 
@@ -327,6 +349,8 @@
                     return;
                 }
 
+                CommonMotions.RemoveEndMessage("積算小項目データ");
+
                 // クリア
                 ClearDisplay();
 
@@ -447,6 +471,12 @@
             // 更新データ取得
             DispMentenanceData();
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フォーカスセット
             m_dispControl[(int)DispControl.ItemName].Focus();
 
@@ -987,10 +1017,19 @@
                     m_dispControl[(int)DispControl.ItemName].Text = wrklist[0].ItemName.ToString();         // 作業名称
                     m_dispControl[(int)DispControl.SpecName].Text = wrklist[0].SpecName.ToString();         // 規格・寸法名称
                     m_dispControl[(int)DispControl.UnitScale].Text = wrklist[0].UnitName.ToString();        // 単位名称
-                    m_dispControl[(int)DispControl.UnitPrice].Text = wrklist[0].UnitPrice.ToString("#,0");       // 単価
-                    m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;       // ”修正”
+                    m_dispControl[(int)DispControl.UnitPrice].Text = wrklist[0].UnitPrice.ToString("#,0");  // 単価
+                    if (EditLock)
+                        m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringRef;     // 参照
+                    else
+                        m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;    // 修正
                 }
 
+                // 参照時はデータ変更させない
+                if (m_EditLock)
+                {
+                    ExecReadOnly();
+                }
+
                 m_bChengeAns = false;
             }
             catch (Exception ex)
@@ -1004,5 +1043,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionSpec/FrmConstructionSpec.designer.cs	(revision 51)
@@ -123,7 +123,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 5;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.cs	(revision 51)
@@ -56,7 +56,7 @@
             PublicFlg,
         }
 
-        private enum DispControl
+        private enum DispCtrl
         {
             TypeCode = 0,
             TypeName,
@@ -90,10 +90,24 @@
         /// <summary>
         /// 表示コントロール保持配列
         /// </summary>
-        private Control[] m_dispControl = new Control[4];
+        private Control[] m_dispControl;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -176,6 +190,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             m_bChengeAns = false;
         }
         #endregion
@@ -199,7 +219,7 @@
                 if (cControl != null)
                 {
                     // 最後の入力フィールドならば登録ボタンへ
-                    if (cControl.Name == m_dispControl[(int)DispControl.PublicFlg].Name)
+                    if (cControl.Name == m_dispControl[(int)DispCtrl.PublicFlg].Name)
                     {
                         btnDataEntry.Focus();
                         return;
@@ -248,6 +268,8 @@
                 // データ登録
                 if (!ConstructionTypeDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("工事種別データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -306,6 +328,8 @@
                     return;
                 }
 
+                CommonMotions.RemoveEndMessage("工事種別データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -428,7 +452,7 @@
             DispMentenanceData();
 
             // フォーカスセット
-            m_dispControl[(int)DispControl.TypeName].Focus();
+            m_dispControl[(int)DispCtrl.TypeName].Focus();
 
         }
         #endregion
@@ -488,11 +512,11 @@
                 }
 
                 // モード表示
-                m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringNew;
+                m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringNew;
                 // コンボボックスクリア
                 cmbPublicFlg.SelectedIndex = -1;
                 // フォーカスセット
-                m_dispControl[(int)DispControl.TypeName].Focus();
+                m_dispControl[(int)DispCtrl.TypeName].Focus();
             }
             catch (System.Exception ex)
             {
@@ -527,10 +551,13 @@
         /// </summary>
         private void SetDisplayObject()
         {
-            m_dispControl[(int)DispControl.TypeCode] = lblTypeCode;
-            m_dispControl[(int)DispControl.TypeName] = txtInput1;
-            m_dispControl[(int)DispControl.PublicFlg] = cmbPublicFlg;
-            m_dispControl[(int)DispControl.EditMode] = lblEditMode;
+            int DspCtrlCnt = Enum.GetNames(typeof(DispCtrl)).Length;
+            m_dispControl = new Control[DspCtrlCnt];
+
+            m_dispControl[(int)DispCtrl.TypeCode] = lblTypeCode;
+            m_dispControl[(int)DispCtrl.TypeName] = txtInput1;
+            m_dispControl[(int)DispCtrl.PublicFlg] = cmbPublicFlg;
+            m_dispControl[(int)DispCtrl.EditMode] = lblEditMode;
         }
         #endregion
 
@@ -575,13 +602,13 @@
             try
             {
                 //構成名称
-                if (m_dispControl[(int)DispControl.TypeName].Text != null)
+                if (m_dispControl[(int)DispCtrl.TypeName].Text != null)
                     // レングスチェック
-                    bAns = CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.TypeName], s_TypeNameLength, true);
+                    bAns = CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.TypeName], s_TypeNameLength, true);
                 bRet &= bAns;
 
                 // 工事種別フラグ
-                if (m_dispControl[(int)DispControl.PublicFlg].Text == null || m_dispControl[(int)DispControl.PublicFlg].Text.Length == 0)
+                if (m_dispControl[(int)DispCtrl.PublicFlg].Text == null || m_dispControl[(int)DispCtrl.PublicFlg].Text.Length == 0)
                     bAns = false;
                 else
                     bAns = true;
@@ -668,8 +695,8 @@
 
                 // データセット
                 ci.TypeCode = m_TypeCode;
-                ci.NameString = m_dispControl[(int)DispControl.TypeName].Text.ToString();
-                ci.PublicFlg = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)DispControl.PublicFlg]).SelectedValue.ToString());
+                ci.NameString = m_dispControl[(int)DispCtrl.TypeName].Text.ToString();
+                ci.PublicFlg = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)DispCtrl.PublicFlg]).SelectedValue.ToString());
                 ci.DeleteFlg = 0;
                 // 表示順はセットしない
                 ci.DisplayOrder = 0;
@@ -829,12 +856,22 @@
                 if (wrklist.Count != 0)
                 {
                     // データ表示
-                    m_dispControl[(int)DispControl.TypeCode].Text = wrklist[0].TypeCode.ToString();                     // 種別コード
-                    m_dispControl[(int)DispControl.TypeName].Text = wrklist[0].NameString.ToString();                   // 種別名称
-                    ((ComboBox)m_dispControl[(int)DispControl.PublicFlg]).SelectedValue = wrklist[0].PublicFlg;         // 工事種別
-                    m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                    // ”修正”
+                    m_dispControl[(int)DispCtrl.TypeCode].Text = wrklist[0].TypeCode.ToString();                    // 種別コード
+                    m_dispControl[(int)DispCtrl.TypeName].Text = wrklist[0].NameString.ToString();                  // 種別名称
+                    ((ComboBox)m_dispControl[(int)DispCtrl.PublicFlg]).SelectedValue = wrklist[0].PublicFlg;        // 工事種別
+
+                    if (m_EditLock)
+                        m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringRef;                // 参照
+                    else
+                        m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringEdit;               // 修正
                 }
 
+                // 参照時はデータ変更させない
+                if (m_EditLock)
+                {
+                    ExecReadOnly();
+                }
+
                 m_bChengeAns = false;
             }
             catch (Exception ex)
@@ -875,5 +912,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/ConstructionType/FrmConstructionType.designer.cs	(revision 51)
@@ -107,7 +107,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 5;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.cs	(revision 51)
@@ -124,9 +124,23 @@
         /// 構成コード
         /// </summary>
         private int m_DepartmentCode = 0;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -208,6 +222,11 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
             // フラグ初期化
             m_bChengeAns = false;
             m_bInitDataFlg = false;
@@ -268,6 +287,8 @@
                 // データ登録
                 if (!DepartmentMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("部署データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -347,6 +368,8 @@
                     }
                 }
 
+                CommonMotions.RemoveEndMessage("部署データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -473,6 +496,12 @@
             // 更新データ取得
             DispMentenanceData();
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フォーカスセット
             m_dispControl[(int)DispControl.RatioGrid].Focus();
 
@@ -1014,7 +1043,10 @@
                 ((ComboBox)m_dispControl[(int)DispControl.ActionSchdule]).SelectedValue = dmList[0].ActionScheduleFlg;
                 ((ComboBox)m_dispControl[(int)DispControl.StaffAssign]).SelectedValue = dmList[0].StaffAssignFlg;
 
-                m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                       // ”修正”
+                if (m_EditLock)
+                    m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringRef;                     // ”参照”
+                else
+                    m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                    // ”修正”
 
                 m_bChengeAns = false;
             }
@@ -1138,5 +1170,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Department/FrmDepartment.designer.cs	(revision 51)
@@ -44,22 +44,22 @@
             this.txtInput01 = new System.Windows.Forms.TextBox();
             this.label2 = new System.Windows.Forms.Label();
             this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.numUDPeriod = new System.Windows.Forms.NumericUpDown();
             this.lblDepartmentCode = new System.Windows.Forms.Label();
             this.cmbActionScheduleDsp = new System.Windows.Forms.ComboBox();
+            this.dgvExpenses = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.label3 = new System.Windows.Forms.Label();
             this.lblStaticItemCode = new System.Windows.Forms.Label();
             this.label4 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
             this.cmbStaStaffAssignDsp = new System.Windows.Forms.ComboBox();
             this.btnDataLineEntry = new System.Windows.Forms.Button();
             this.lblEditMode = new System.Windows.Forms.Label();
             this.btnDispDown = new System.Windows.Forms.Button();
             this.btnDispUp = new System.Windows.Forms.Button();
-            this.label5 = new System.Windows.Forms.Label();
-            this.numUDPeriod = new System.Windows.Forms.NumericUpDown();
-            this.dgvExpenses = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.Column3 = 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();
@@ -118,7 +118,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 5;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
@@ -188,6 +188,17 @@
             this.tableLayoutPanel1.Size = new System.Drawing.Size(600, 266);
             this.tableLayoutPanel1.TabIndex = 0;
             // 
+            // numUDPeriod
+            // 
+            this.numUDPeriod.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.numUDPeriod.Location = new System.Drawing.Point(153, 63);
+            this.numUDPeriod.Name = "numUDPeriod";
+            this.numUDPeriod.ReadOnly = true;
+            this.numUDPeriod.Size = new System.Drawing.Size(84, 23);
+            this.numUDPeriod.TabIndex = 37;
+            this.numUDPeriod.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDPeriod.ValueChanged += new System.EventHandler(this.numUDPeriod_ValueChanged);
+            // 
             // lblDepartmentCode
             // 
             this.lblDepartmentCode.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -211,6 +222,75 @@
             this.cmbActionScheduleDsp.TabIndex = 3;
             this.cmbActionScheduleDsp.TextChanged += new System.EventHandler(this.valueChange);
             // 
+            // dgvExpenses
+            // 
+            this.dgvExpenses.AllowUserToAddRows = false;
+            this.dgvExpenses.AllowUserToDeleteRows = false;
+            this.dgvExpenses.AllowUserToResizeColumns = false;
+            this.dgvExpenses.AllowUserToResizeRows = false;
+            this.dgvExpenses.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
+            this.dgvExpenses.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            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.dataGridViewTextBoxColumn3,
+            this.Column3});
+            this.tableLayoutPanel1.SetColumnSpan(this.dgvExpenses, 2);
+            this.dgvExpenses.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.dgvExpenses.Location = new System.Drawing.Point(3, 93);
+            this.dgvExpenses.Name = "dgvExpenses";
+            this.dgvExpenses.RowHeadersVisible = false;
+            this.dgvExpenses.RowHeadersWidth = 20;
+            this.dgvExpenses.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvExpenses.RowTemplate.Height = 21;
+            this.dgvExpenses.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvExpenses.Size = new System.Drawing.Size(580, 105);
+            this.dgvExpenses.TabIndex = 2;
+            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;
+            // 
+            // 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 = 460;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
+            dataGridViewCellStyle3.NullValue = null;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column3.Frozen = true;
+            this.Column3.HeaderText = "経費率";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            // 
             // label3
             // 
             this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -250,6 +330,19 @@
             this.label4.Text = "人員配置表示";
             this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // label5
+            // 
+            this.label5.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(3, 63);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(144, 23);
+            this.label5.TabIndex = 0;
+            this.label5.Text = "経費対象期";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // cmbStaStaffAssignDsp
             // 
             this.cmbStaStaffAssignDsp.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
@@ -313,99 +406,6 @@
             this.btnDispUp.UseVisualStyleBackColor = true;
             this.btnDispUp.Click += new System.EventHandler(this.btnDispUp_Click);
             // 
-            // label5
-            // 
-            this.label5.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
-            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label5.ForeColor = System.Drawing.Color.Black;
-            this.label5.Location = new System.Drawing.Point(3, 63);
-            this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(144, 23);
-            this.label5.TabIndex = 0;
-            this.label5.Text = "経費対象期";
-            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // numUDPeriod
-            // 
-            this.numUDPeriod.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.numUDPeriod.Location = new System.Drawing.Point(153, 63);
-            this.numUDPeriod.Name = "numUDPeriod";
-            this.numUDPeriod.ReadOnly = true;
-            this.numUDPeriod.Size = new System.Drawing.Size(84, 23);
-            this.numUDPeriod.TabIndex = 37;
-            this.numUDPeriod.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            this.numUDPeriod.ValueChanged += new System.EventHandler(this.numUDPeriod_ValueChanged);
-            // 
-            // dgvExpenses
-            // 
-            this.dgvExpenses.AllowUserToAddRows = false;
-            this.dgvExpenses.AllowUserToDeleteRows = false;
-            this.dgvExpenses.AllowUserToResizeColumns = false;
-            this.dgvExpenses.AllowUserToResizeRows = false;
-            this.dgvExpenses.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
-            this.dgvExpenses.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            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.dataGridViewTextBoxColumn3,
-            this.Column3});
-            this.tableLayoutPanel1.SetColumnSpan(this.dgvExpenses, 2);
-            this.dgvExpenses.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.dgvExpenses.Location = new System.Drawing.Point(3, 93);
-            this.dgvExpenses.Name = "dgvExpenses";
-            this.dgvExpenses.RowHeadersVisible = false;
-            this.dgvExpenses.RowHeadersWidth = 20;
-            this.dgvExpenses.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvExpenses.RowTemplate.Height = 21;
-            this.dgvExpenses.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvExpenses.Size = new System.Drawing.Size(580, 105);
-            this.dgvExpenses.TabIndex = 2;
-            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;
-            // 
-            // 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 = 460;
-            // 
-            // Column3
-            // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
-            dataGridViewCellStyle3.NullValue = null;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle3;
-            this.Column3.Frozen = true;
-            this.Column3.HeaderText = "経費率";
-            this.Column3.Name = "Column3";
-            this.Column3.ReadOnly = true;
-            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
             // dgvWorkList
             // 
             this.dgvWorkList.AllowUserToAddRows = false;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Division/FrmDivisionMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Division/FrmDivisionMaster.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Division/FrmDivisionMaster.cs	(revision 51)
@@ -73,6 +73,11 @@
         /// ダイアログ使用時フラグ
         /// </summary>
         private bool m_DialogFlg = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
@@ -99,6 +104,15 @@
             get { return m_NameCode; }
             set { m_NameCode = value; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -121,7 +135,7 @@
         }
         #endregion
 
-        #region イベントメソッド
+        #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
         /// </summary>
@@ -141,6 +155,9 @@
             // 前プロセスに戻る
             ClsExcute.BackProcess();
         }
+        #endregion
+
+        #region 終了ボタン押下
         /// <summary>
         /// 終了ボタン押下
         /// </summary>
@@ -150,7 +167,9 @@
         {
             this.Close();
         }
+        #endregion
 
+        #region フォームロード
         /// <summary>
         /// フォームロード
         /// </summary>
@@ -160,6 +179,7 @@
         {
             // 初期表示
             InitDataLoad();
+            
             // ダイアログ使用時
             if (m_DialogFlg)
             {
@@ -166,10 +186,23 @@
                 //フォームの幅だけを変更する
                 this.SetBounds(this.Left, this.Top, (this.Width - 40), this.Height, BoundsSpecified.Width);
             }
+
             // フォームサイズ固定
             this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // ボタン表示の制御
+            ButtonVisble(this);
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
         }
+        #endregion
 
+        #region 行データクリア
         /// <summary>
         /// 行データクリア
         /// </summary>
@@ -183,6 +216,9 @@
             dgvMaster[(int)DispColumn.NewFlg, iIndex].Value = "1";
 
         }
+        #endregion
+
+        #region グリッド採番処理
         /// <summary>
         /// グリッド採番処理
         /// </summary>
@@ -201,6 +237,9 @@
                     r.Cells[(int)DispColumn.No].Value = "0";
             }
         }
+        #endregion
+
+        #region 行追加ボタン押下
         /// <summary>
         /// 行追加ボタン押下
         /// </summary>
@@ -283,7 +322,9 @@
             //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
             //dgvMaster.CurrentCell = dgvMaster[0, iIndex];
         }
+        #endregion
 
+        #region フィールド値変更フラグ
         /// <summary>
         /// フィールド値変更フラグ
         /// </summary>
@@ -293,7 +334,9 @@
         {
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region セル値変化
         /// <summary>
         /// セル値変化
         /// </summary>
@@ -313,7 +356,10 @@
             // 変更フラグON
             m_bChengeAns = true;
         }
-                /// <summary>
+        #endregion
+
+        #region 行削除ボタン押下
+        /// <summary>
         /// 行削除ボタン押下
         /// </summary>
         /// <param name="sender"></param>
@@ -347,6 +393,8 @@
 
                 nmDB.commit();
 
+                CommonMotions.RemoveEndMessage(string.Format("{0}データ行", lblTitle.Text));
+
                 // データ表示
                 if (!DispGridData()) return;
 
@@ -366,7 +414,9 @@
                 nmDB = null;
             }
         }
+        #endregion
 
+        #region 登録ボタン押下
         /// <summary>
         /// 登録ボタン押下
         /// </summary>
@@ -391,6 +441,8 @@
                 // データ登録
                 DivisionMasterDataEntry();
 
+                CommonMotions.EntryEndMessage(string.Format("{0}データ", lblTitle.Text));
+
                 // データ表示
                 if (!DispGridData()) return;
 
@@ -405,6 +457,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region IMEのコントロール
         /// <summary>
         /// IMEのコントロール
         /// </summary>
@@ -433,7 +488,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region アップキー押下
         /// <summary>
         /// アップキー押下
         /// </summary>
@@ -460,6 +517,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region ダウンキー押下処理
         /// <summary>
         /// ダウンキー押下処理
         /// </summary>
@@ -486,7 +546,10 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region セルクリック
+        /// <summary>
         /// セルクリック
         /// </summary>
         /// <param name="sender"></param>
@@ -495,7 +558,9 @@
         {
             dgvMaster_CellDoubleClick(sender, e);
         }
+        #endregion
 
+        #region セルダブルクリック
         /// <summary>
         /// セルダブルクリック
         /// </summary>
@@ -512,7 +577,9 @@
 
             this.Close();
         }
+        #endregion
 
+        #region Formキーダウン処理
         /// <summary>
         /// Formキーダウン処理
         /// </summary>
@@ -530,7 +597,7 @@
         }
         #endregion
 
-        #region プライベートメソッド
+        #region 初期表示処理
         /// <summary>
         /// 初期表示処理
         /// </summary>
@@ -560,7 +627,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
         /// </summary>
@@ -599,8 +668,10 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-      }
+        }
+        #endregion
 
+        #region 区分マスタデータ登録
         /// <summary>
         /// 区分マスタデータ登録
         /// </summary>
@@ -704,9 +775,11 @@
                 nmDB = null;
             }
         }
+        #endregion
 
+        #region 区分マスタ表示
         /// <summary>
-        /// 名称マスタ表示
+        /// 区分マスタ表示
         /// </summary>
         /// <returns></returns>
         private bool DispGridData()
@@ -719,7 +792,6 @@
                 // グリッドの行を0に戻す
                 dgvMaster.Rows.Clear();
 
-
                 // SQL作成
                 string strSQL = string.Format(" Where DivisionCode = {0} And DeleteFlg = 0 Order By DisplayOrder ASC", m_DivisionCode);
                 // 表示順マスタ取得
@@ -768,8 +840,41 @@
                 cmDB = null;
             }
         }
+        #endregion
 
+        #region ボタンの表示・非表示制御
         /// <summary>
+        /// ボタンの表示・非表示制御
+        /// </summary>
+        private void ButtonVisble(Control Parent)
+        {
+            bool bAns = true;
+            if (m_DialogFlg)
+            {
+
+                bAns = false;
+            }
+            else
+            {
+                bAns = true;
+            }
+
+            foreach (Control ctrl in Parent.Controls)
+            {
+                if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                // 終了ボタン以外を制御する
+                if (ctrl.Name.Equals(btnEnd.Name)) continue;
+                        
+                ctrl.Visible = bAns;
+            }
+            // グリッドの読込のみ制御
+            dgvMaster.ReadOnly = m_DialogFlg;
+        }
+        #endregion
+
+        #region グリッド最終行での処理
+        /// <summary>
         /// グリッド最終行での処理
         /// </summary>
         private void GridLastLine()
@@ -791,5 +896,32 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                foreach (Control ctrl in this.Controls)
+                {
+                    if (!ctrl.GetType().Equals(typeof(Button))) continue;
+                 
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.Equals(btnEnd.Name)) continue;
+                    
+                    ctrl.Visible = false;
+                }
+                // グリッドの読込のみ制御
+                dgvMaster.ReadOnly = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Expenses/FrmExpenses.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Expenses/FrmExpenses.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Expenses/FrmExpenses.cs	(revision 51)
@@ -555,7 +555,7 @@
         /// </summary>
         private bool DispDivisionGridData()
         {
-            IOMDivision cmDB = new IOMDivision();
+            IOMConstructionType cmDB = new IOMConstructionType();
             try
             {
                 // グリッドの行を0に戻す
@@ -566,18 +566,17 @@
                 //string DivisionName = CommonDefine.DivisionMasterCode[2];
                 //int DivisionCode = CommonDefine.DivisionMasterCode.First(x => x.Value == DivisionName).Key;
 
-                string strSQL = cmDB.CreatePrimarykeyString((int)CommonDefine.DivisionMasterCodeDefine.ConstructionClass);
-                strSQL += " And DeleteFlg = 0 Order By DisplayOrder ASC";
-                List<DivisionMaster> cm = new List<DivisionMaster>();
+                string strSQL = " And DeleteFlg = 0 Order By DisplayOrder ASC";
+                List<ConstructionTypeMaster> cm = new List<ConstructionTypeMaster>();
                 // 区分マスタ取得
                 if (!cmDB.SelectAction(strSQL, ref cm)) return false;
 
                 // データ表示
                 int icnt = 0;
-                foreach (DivisionMaster work in cm)
+                foreach (ConstructionTypeMaster work in cm)
                 {
                     dgvWorkList.Rows.Add(work.DisplayOrder
-                                        , work.NameCode
+                                        , work.TypeCode
                                         , work.NameString.ToString());
                     dgvWorkList.Rows[icnt++].Cells[(int)DispColumn.DivisionName].ToolTipText = work.NameString.ToString();
 
@@ -630,14 +629,10 @@
 
                 // 経費率マスタ取得
                 // ValueからKeyを検索
-                //string DivisionName = CommonDefine.DivisionMasterCode[2];
-                //int DivisionCode = CommonDefine.DivisionMasterCode.First(x => x.Value == DivisionName).Key;
-                //string KeihirituName = CommonDefine.DivisionMasterCode[3];
-                //int KeihirituCode = CommonDefine.DivisionMasterCode.First(x => x.Value == KeihirituName).Key;
                 int DivisionCode = (int)CommonDefine.DivisionMasterCodeDefine.ConstructionClass;
                 int KeihirituCode = (int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses;
 
-                string strSQL = "SET @rownum=0; Select";
+                string strSQL = "Select";
                 strSQL += " A.NameCode,";
                 strSQL += " A.NameString,";
                 strSQL += " B.NameCode,";
@@ -646,15 +641,18 @@
                 strSQL += " B.ExpensesRatio";
                 strSQL += " From DivisionMaster A,";
                 strSQL += " (Select";
-                strSQL += " @rownum:=@rownum+1 RecNo,";
+                strSQL += " ROW_NUMBER() OVER (ORDER BY SA.DisplayOrder) RecNo,";
                 strSQL += " SA.NameCode,";
                 strSQL += " SA.NameString,";
                 strSQL += " SA.DisplayOrder,";
                 strSQL += " IFNULL(SB.ExpensesRatio, 0) ExpensesRatio";
+                //strSQL += " From DivisionMaster SA, ExpensesMaster SB";
                 strSQL += " From DivisionMaster SA";
-                strSQL += " RIGHT OUTER JOIN ExpensesMaster SB";
-                strSQL += " On SA.NameCode = SB.NameCode";
-                strSQL += string.Format(" And {0} = SB.DivisionCode", m_ExpensesCode);
+                //strSQL += string.Format(" Where SA.DivisionCode = {0}", KeihirituCode);
+                //strSQL += " And SA.NameCode = SB.NameCode(+)";
+                strSQL += " LEFT OUTER JOIN ExpensesMaster SB ON SA.NameCode = SB.NameCode";
+                //strSQL += string.Format(" And SB.DivisionCode(+) = {0}", m_ExpensesCode);
+                strSQL += string.Format(" LEFT OUTER JOIN ExpensesMaster SB ON SB.DivisionCode = {0}", m_ExpensesCode);
                 strSQL += string.Format(" Where SA.DivisionCode = {0}", KeihirituCode);
                 strSQL += " Order By SA.DisplayOrder) B";
                 strSQL += string.Format(" Where A.DivisionCode = {0}", DivisionCode);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Expenses/FrmExpenses.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Expenses/FrmExpenses.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Expenses/FrmExpenses.designer.cs	(revision 51)
@@ -106,7 +106,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 3;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.cs	(revision 51)
@@ -0,0 +1,1287 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*------------------------ 部署マスタメンテ画面 ----------------------------*
+//  2015/12/04  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmMaterialItemsMaster : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示順番
+        /// </summary>
+        // 表示コントロール定義
+        private enum DispColumn
+        {
+            RowState = 0,
+            DisplayOrder,
+            MaterialItemKey,
+            NameString,
+        }
+        // 経費グリッドカラム
+        private enum ExpGridColumn
+        {
+            ExpensesCode = 0,
+            ExpensesName,
+            Ratio,
+        }
+        private enum GridColumn
+        {
+            No = 0,
+            DepartmentCode,
+            DepartmentString,
+        }
+
+        /// <summary>
+        /// 行動予定表示コンボ文字列
+        /// </summary>
+        private static readonly string[] cmbDspString = new string[] { "表示する", "表示しない" };
+
+        /// <summary>
+        /// Cell幅サイズ
+        /// </summary>
+        private static int[] s_CellSize = new int[] { 0, 460, 100 };
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// フィールド値変化フラグ
+        /// </summary>
+        private bool m_bChengeAns = false;
+        /// <summary>
+        /// 表示コントロール保持配列
+        /// </summary>
+        private Control[] m_dispControl = new Control[6];
+        /// <summary>
+        /// 終了ボタン押下フラグ
+        /// </summary>
+        private bool m_EndButton = false;
+        /// <summary>
+        /// <summary>
+        /// 資材種類一覧リスト
+        /// </summary>
+        List<String[]> lstDgvWorkListData = new List<String[]>();
+        /// <summary>
+        /// <summary>
+        /// スクロールバー表示オブジェクト
+        /// </summary>
+        VScrollBar vsBar = new VScrollBar();
+
+        /// <summary>
+        /// 構成コード
+        /// </summary>
+        private int m_DepartmentCode = 0;
+
+        /// <summary>
+        /// データ操作
+        /// </summary>
+        private IOMaterialItem  m_IoMt = null;
+        private IOMaterialInfo m_IoMi = null; 
+        private IOMaterialTypes m_IoMtype = null;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialItemsMaster()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialItemsMaster()
+        {
+            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 FrmMaterialItemsEntry_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            try
+            {
+                if (m_EndButton) return;
+                if (m_bChengeAns)
+                {
+                    if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        e.Cancel = true;
+                        return;
+                    }
+                }
+
+                // 前プロセスに戻る
+                ClsExcute.BackProcess();
+            }
+            finally
+            {
+                // ロック解除用
+                if (e.Cancel != true && m_IoMt != null)
+                {
+                    m_IoMt.rollback();
+                    m_IoMt.close();
+                    m_IoMt = null;
+                }
+                if (e.Cancel != true && m_IoMi != null)
+                {
+                    m_IoMi.rollback();
+                    m_IoMi.close();
+                    m_IoMi = null;
+                }
+
+            }
+        }
+        #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 FrmMaterialItemsEntry_Load(object sender, EventArgs e)
+        {
+            // 行削除押下時にロックを実行する為
+            try
+            {
+                m_IoMt = new IOMaterialItem();
+                m_IoMt.connect();
+                m_IoMt.SetLockWaitime(1);
+                m_IoMt.beginTran();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                this.Close();
+            }
+
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // データ表示
+            InitDataLoad();
+
+            if (m_EditLock)
+            {
+                btnDataEntry.Enabled = false;
+                btnLineEntry.Enabled = false;
+                btnDataDelete.Enabled = false;
+            }
+
+            // フラグ初期化
+            m_bChengeAns = false;
+
+
+        }
+        #endregion
+
+        #region キーダウン
+        /// <summary>
+        /// Entryキーでの移動処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialItemsEntry_KeyDown(object sender, KeyEventArgs e)
+        {
+            // DataGridviewは処理しない
+            if (ActiveControl.Name.Equals("dgvMaster"))
+            {
+                // セル更新
+                dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+
+                Console.Write("場所 {0} ", "FrmMaterialItemsEntry_KeyDown");
+                Console.WriteLine("     {0} 行目 更新", dgvMaster.CurrentCell.RowIndex);
+
+                //// 最終行時の処理
+                //GridLastLine();
+                return;
+            }
+        }
+        #endregion
+
+        #region フィールド値変更
+        /// <summary>
+        /// フィールド値変更フラグ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void valueChange(object sender, EventArgs e)
+        {
+            m_bChengeAns = true;
+
+            // セル更新
+            dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+
+            Console.Write("場所 {0} ", "valueChange");
+            Console.WriteLine("     {0} 行目 更新", dgvMaster.CurrentCell.RowIndex);
+
+        }
+        #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 (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+
+                // データ登録
+                MasterDataEntry();
+
+
+                // 表示行退避
+                int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                // 再表示
+                DispGridData();
+
+                // 表示行復元
+                dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+
+                // フォーカス初期化
+                dgvMaster.Focus();
+
+                // 変更フラグクリア
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+            }
+        }
+        #endregion
+
+        #region 削除ボタン
+        /// <summary>
+        /// 削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineDelete_Click(object sender, EventArgs e)
+        {
+            IOConstructionMaterialInfo miDB = new IOConstructionMaterialInfo();
+            List<MaterialInfo> MiList = new List<MaterialInfo>();
+            try
+            {
+
+                if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)DispColumn.NameString].Value)) return;
+
+                // 工事資材情報確認確認
+                int iItemCnt = miDB.SelectMaterialItemCount(int.Parse(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemKey].Value.ToString()));
+                if (iItemCnt > 0)
+                {
+                    MessageBox.Show("貸出中の工事が存在するため削除できません。", "削除確認"
+                    , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+
+                if (MessageBox.Show("選択中のデータを削除します。", "削除確認"
+                    , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+
+                // ロック
+                if (!m_IoMt.RowLock(int.Parse(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemKey].Value.ToString()), false))
+                {
+                    MessageBox.Show("他のユーザで編集中のため、処理できません。", "削除確認"
+                    , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                // ロック（資材情報）
+                if (m_IoMi == null)
+                {
+                    m_IoMi = new IOMaterialInfo();
+                    m_IoMi.connect();
+                    m_IoMi.beginTran();
+                }
+                if (!m_IoMi.RowLockUpdate(int.Parse(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemKey].Value.ToString()),false))
+                {
+                    m_IoMt.rollback();
+                    MessageBox.Show("他のユーザで編集中のため、処理できません。", "削除確認"
+                    , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                //削除実施
+                string strSQL = m_IoMt.CreatePrimarykeyString(CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemKey].Value));
+                if (!m_IoMt.DeleteAction(strSQL, false))
+                {
+                    m_IoMt.rollback();
+                    m_IoMi.rollback();
+                    MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                //削除実施(資材情報)
+                m_IoMi.SelectAction(strSQL, ref MiList, false);
+                if (MiList.Count > 0)
+                {
+                    if (!m_IoMi.DeleteAction(strSQL, false))
+                    {
+                        m_IoMt.rollback();
+                        m_IoMi.rollback();
+                        MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+                }
+
+
+                // 表示行退避
+                int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                // 再表示
+                if (!DispGridData()) return;
+
+                // 表示行復元
+                dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+
+                m_bChengeAns = true;
+
+                // セル更新
+                dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+
+            }
+            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 btnDataLineEntry_Click(object sender, EventArgs e)
+        {
+            
+            try
+            {
+                // モード表示
+                //lblEditMode.Text = CommonDefine.EditModeStringNew;
+
+                // 登録フォームの活性制御
+                controllDgvMaster(sender,e);
+
+            }
+            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 controllDgvMaster(object sender, EventArgs e)
+        {
+
+            try
+            {
+                // モードが「新規」の場合
+                ////if (CommonMotions.cnvString(CommonDefine.EditModeStringNew).Equals(lblEditMode.Text)) 
+                //{
+                //    //// 「単独」が選択されている場合
+                //    //if (radioButton1.Checked)
+                //    //{
+                        
+                //    //    // 自動的に選択されている行を外す
+                //    //    dgvMaster.CurrentRow.Selected = false;
+                //    //    dgvMaster.Enabled = false;
+                //    //}
+                //    //else
+                //    //{
+                //    //    dgvMaster.Enabled = true;
+
+                //    //}
+                //}
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 行選択
+        /// <summary>
+        /// 行選択時処理
+        /// </summary>
+        private void DataSelectRow()
+        {
+            if (m_bChengeAns)
+            {
+                if (MessageBox.Show("データに変更があります、登録内容を破棄してよろしいですか？。", "終了確認"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    return;
+                }
+            }
+            if (dgvMaster.Rows.Count < 1) return;
+            if (dgvMaster.CurrentRow.Index < 0) return;
+            // 空白行は処理しない
+            if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)GridColumn.DepartmentCode].Value))
+            {
+                return;
+            }
+
+            m_DepartmentCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)GridColumn.DepartmentCode].Value);
+
+            // データ取得
+            DispGridData();
+
+            // フォーカスセット
+            m_dispControl[(int)GridColumn.No].Focus();
+
+        }
+        #endregion
+
+
+        #region グリッドクリック
+        /// <summary>
+        /// グリッドクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvWorkList_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // 行選択時処理
+            //DataSelectRow();
+        }
+        #endregion
+
+        #region セル入力後処理
+        /// <summary>
+        /// セル入力後処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvExpenses_CellValidated(object sender, DataGridViewCellEventArgs e)
+        {
+            //DataGridViewTextBoxCell wrkTxt = (DataGridViewTextBoxCell)dgvMaster[e.ColumnIndex, e.RowIndex];
+
+            //if (wrkTxt.ReadOnly) return;
+            //wrkTxt.Value = CommonMotions.cnvDouble(wrkTxt.Value).ToString("0.00");
+        }
+        #endregion
+
+        #region 行アップボタン
+        /// <summary>
+        /// アップボタン
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDispUp_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 先頭は処理しない
+                if (dgvMaster.CurrentRow.Index == 0) return;
+
+                int irowcnt = dgvMaster.CurrentRow.Index;
+                if (irowcnt == 0) return;
+                if (CommonMotions.chkObjectIsNull(dgvMaster.Rows[irowcnt - 1].Cells[(int)DispColumn.NameString].Value)) return;
+
+                // グリッドアップキー処理
+                DataGridViewAction.GridRowUpAction((DataGridView)dgvMaster, (int)DispColumn.MaterialItemKey, (int)DispColumn.NameString);
+
+                m_bChengeAns = true;
+                // セル更新
+                dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+
+            }
+            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 btnDispDown_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 最終行は処理しない
+                if ((dgvMaster.CurrentRow.Index + 1) == dgvMaster.Rows.Count) return;
+
+                int irowcnt = dgvMaster.CurrentRow.Index;
+                if (CommonMotions.chkObjectIsNull(dgvMaster.Rows[irowcnt + 1].Cells[(int)DispColumn.NameString].Value)) return;
+                if (CommonMotions.cnvString(dgvMaster.Rows[irowcnt + 1].Cells[(int)DispColumn.NameString].Value).Length == 0) return;
+
+                // グリッドダウンキー処理
+                DataGridViewAction.GridRowDownAction((DataGridView)dgvMaster, (int)DispColumn.MaterialItemKey, (int)DispColumn.NameString);
+
+                m_bChengeAns = true;
+                // セル更新
+                dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        #endregion
+
+
+        #region 表示オブジェクトの取得
+        /// <summary>
+        /// 表示オブジェクトの取得
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            ////m_dispControl[(int)DispControl.DepartmentCode] = lblRegistrationDate;
+            //m_dispControl[(int)DispControl.DepartmentString] = txtInput01;
+            //m_dispControl[(int)DispControl.RatioGrid] = dgvMaster;
+            ////m_dispControl[(int)DispControl.StaffAssign] = cmbMaterialTypesDsp;
+            //m_dispControl[(int)DispControl.EditMode] = lblEditMode;
+        }
+        #endregion
+
+
+        #region 画面項目のチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            bool bAns = true;
+            string sErrmsg = "";
+
+            try
+            {
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+
+                    // 入力無は処理しない
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.MaterialItemKey].Value).Length == 0
+                            && CommonMotions.chkObjectIsNull(r.Cells[(int)DispColumn.NameString].Value)) continue;
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.MaterialItemKey].Value).Length == 0
+                            && CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value).Length == 0) continue;
+
+                    //名称
+                    bAns = true;
+                    if (CommonMotions.chkObjectIsNull(r.Cells[(int)DispColumn.NameString].Value) || ((string)r.Cells[(int)DispColumn.NameString].Value).Length == 0)
+                    {
+                        bAns = false;
+                        sErrmsg = "資材品目の名称が入力されていません。";
+                    }
+                    else if (r.Cells[(int)DispColumn.NameString].Value != null)
+                    {
+                        // レングスチェック
+                        bAns = CommonMotions.chkStringLength(CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value), 40);
+                        if (bAns == false)
+                        {
+                            sErrmsg = "入力エラーがあります、確認してください。";
+                        }
+                    }
+
+                    if (bAns)
+                    {
+                        // 重複行調査
+                        DataGridViewRow[] rows = dgvMaster.Rows.Cast<DataGridViewRow>()
+                                                                    .Where(x => (string)x.Cells[(int)DispColumn.NameString].Value == (string)r.Cells[(int)DispColumn.NameString].Value).ToArray();
+                        if (rows.Count() > 1)
+                        {
+                            bAns = false;
+                            sErrmsg = "同一の資材品目が既に存在します。";
+                        }
+                    }
+
+                    // 背景色変更
+                    CommonMotions.chgBackColor(r.Cells[(int)DispColumn.NameString], bAns);
+                    bRet &= bAns;
+
+
+                }
+
+                if (!bRet)
+                {
+                    MessageBox.Show(sErrmsg, "データ確認"
+                                                , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                }
+
+                return bRet;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region マスタ登録
+        /// <summary>
+        /// マスタ登録
+        /// </summary>
+        private void MasterDataEntry()
+        {
+            try
+            {
+                // 番号降り直し
+                int ino = 0;
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    // 入力無は処理しない
+                    if (CommonMotions.chkObjectIsNull(r.Cells[(int)DispColumn.NameString].Value)) continue;
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value).Length == 0) continue;
+
+                    // 番号セット
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = (++ino).ToString();
+                }
+
+                m_IoMtype = new IOMaterialTypes();
+                m_IoMtype.connect();
+                if (m_IoMtype.RowLock(int.Parse(cmbTypes.SelectedValue.ToString()), false) == false)
+                {
+                    MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    m_IoMtype.rollback();
+                    return;
+                }
+
+                string strKindWhere = m_IoMtype.CreatePrimarykeyString(int.Parse(cmbTypes.SelectedValue.ToString())) + " and DELETEFLG=0";
+                List<MaterialKindMaster> mKindList = new List<MaterialKindMaster>();
+                // 資材種類マスタ存在確認
+                if (!m_IoMtype.SelectAction(strKindWhere, ref mKindList, false))
+                {
+                    m_IoMt.rollback();
+                    m_IoMtype.rollback();
+                    MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+                if(mKindList.Count()!=1)
+                {
+                    MessageBox.Show("資材種類が存在しません。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    m_IoMtype.rollback();
+                    return;
+                }
+
+                // データを画面より取得
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    // 入力無は処理しない
+                    if (CommonMotions.chkObjectIsNull(r.Cells[(int)DispColumn.NameString].Value)) continue;
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value).Length == 0) continue;
+
+                    // 更新無は処理しない
+                    //if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Unchanged) continue;
+
+                    MaterialItemMaster uwork = new MaterialItemMaster();
+
+                    // データセット
+                    if (CommonMotions.chkCellBlank(r.Cells[(int)DispColumn.MaterialItemKey].Value))
+                    {
+                        // 新規時キーセット
+                        // 履歴がない場合は過去の最大値をとる
+                        uwork.MaterialItemCode = m_IoMt.SelectMaxMaterialItemKeyCount(string.Empty, false) + 1;
+                    }
+                    else
+                    {
+                        uwork.MaterialItemCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialItemKey].Value);
+                    }
+                    uwork.MaterialKindCode = int.Parse(cmbTypes.SelectedValue.ToString());
+                    uwork.MaterialItemName = CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value);
+                    uwork.DisplayOrder = CommonMotions.cnvInt(r.Cells[(int)DispColumn.DisplayOrder].Value);
+
+
+                    // SQL作成
+                    string strSQL = m_IoMt.CreatePrimarykeyString(uwork.MaterialItemCode);
+                    List<MaterialItemMaster> mList = new List<MaterialItemMaster>();
+
+                    // 資材品目マスタ取得
+                    if (!m_IoMt.SelectAction(strSQL, ref mList, false))
+                    {
+                        m_IoMt.rollback();
+                        m_IoMtype.rollback();
+                        MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    if (mList.Count == 0)
+                    {
+                        // データがない場合は追加
+                        mList.Clear();
+                        mList.Add(uwork);
+
+                        // データ登録
+                        if (!m_IoMt.InsertAction(mList, false))
+                        {
+                            m_IoMt.rollback();
+                            m_IoMtype.rollback();
+                            MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+                    }
+                    else
+                    {
+                        // 更新ロック
+                        if (!m_IoMt.RowLock(uwork.MaterialItemCode, false))
+                        {
+                            MessageBox.Show("他のユーザで編集中のため、処理できません。", "登録エラー"
+                            , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            m_IoMtype.rollback();
+                            return;
+                        }
+
+                        // データ登録
+                        if (!m_IoMt.UpdateAction(strSQL, uwork, false))
+                        {
+                            m_IoMt.rollback();
+                            m_IoMtype.rollback();
+                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+                    }
+                }
+
+                // 成功したらcommit
+                m_IoMt.commit();
+                m_IoMi.commit();
+                m_IoMtype.commit();
+
+                if (m_IoMi != null)
+                {
+                    m_IoMi.close();
+                    m_IoMi = null;
+                    m_IoMtype.close();
+                    m_IoMtype = null;
+                }
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                //素材種類表示
+                LoadMaterialKind();
+
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        #region グリッドデータ表示
+        /// <summary>
+        /// グリッドデータ表示
+        /// </summary>
+        private bool DispGridData()
+        {
+
+            try
+            {
+                ItemListDisplay();
+
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+
+
+        #region グリッドの有効行をカウントする
+        /// <summary>
+        /// グリッドの有効行をカウントする
+        /// </summary>
+        /// <returns></returns>
+        private int GetGridLineEffectivenessCount()
+        {
+            try
+            {
+                int linecount = 0;
+                foreach (DataGridViewRow wrkRow in dgvMaster.Rows)
+                {
+                    if (CommonMotions.chkCellBlank(wrkRow.Cells[(int)GridColumn.DepartmentString].Value)) continue;
+
+                    linecount++;
+                }
+                return linecount;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region 資材種類コンボボックスの値変更時
+        /// <summary>
+        /// 資材種類コンボボックスの値変更
+        /// </summary>
+        /// <returns></returns>
+        private void cmbTypes_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            if (cmbTypes.SelectedValue != null && cmbTypes.SelectedValue.ToString() != txtTypeBefore.Text)
+            {
+                if (m_bChengeAns)
+                {
+                    if (MessageBox.Show("データに変更があります、登録せずに資材種類を変更してよろしいですか？。", "確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        cmbTypes.SelectedValue = CommonMotions.cnvInt(txtTypeBefore.Text);
+                        return;
+                    }
+                }
+                ItemListDisplay();
+            }
+        }
+        #endregion
+
+        /// <summary>
+        /// 行データクリア
+        /// </summary>
+        /// <param name="iIndex">行カウント</param>
+        private void SetRowClearData(int iIndex)
+        {
+            // クリアデータセット
+            dgvMaster[(int)DispColumn.RowState, iIndex].Value = DataRowState.Unchanged;
+            dgvMaster[(int)DispColumn.DisplayOrder, iIndex].Value = "";
+            dgvMaster[(int)DispColumn.MaterialItemKey, iIndex].Value = "";
+            dgvMaster[(int)DispColumn.NameString, iIndex].Value = "";
+        }
+        /// <summary>
+        /// グリッド最終行での処理
+        /// </summary>
+        private void GridLastLine()
+        {
+            // 最終行判定
+            if (dgvMaster.CurrentCell.RowIndex == dgvMaster.Rows.Count - 1)
+            {
+                // 最終列判定
+                if (dgvMaster.CurrentCell.ColumnIndex == (int)DispColumn.NameString)
+                {
+                    // 1行追加
+                    dgvMaster.Rows.Add();
+                    // クリアデータセット
+                    SetRowClearData(dgvMaster.Rows.Count - 1);
+                    // №再採番
+                    LineReNumbering();
+                }
+
+            }
+        }
+        /// <summary>
+        /// グリッド採番処理
+        /// </summary>
+        private void LineReNumbering()
+        {
+            int icnt = 1;
+            foreach (DataGridViewRow r in dgvMaster.Rows)
+            {
+                // 表示されているものだけ採番
+                if (r.Visible)
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = (icnt++).ToString();
+                else
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = "999";
+            }
+        }
+        /// <summary>
+        /// 行数統一処理
+        /// </summary>
+        private void unifyLines(DataGridView dgv)
+        {
+            // 表示行が足りない場合は追加する
+            if (dgv.Rows.Count <= CommonDefine.s_MaxInitLineCountMastamente)
+            {
+                int iAddLine = CommonDefine.s_MaxInitLineCountMastamente - dgv.Rows.Count;
+                for (int i = 0; i < iAddLine; i++)
+                {
+                    dgv.Rows.Add();
+                }
+            }
+        }
+
+        /// <summary>
+        /// 行追加押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineEntry_Click(object sender, EventArgs e)
+        {
+            // 行がない場合は作成して抜ける
+            if (dgvMaster.Rows.Count == 0)
+            {
+                if (MessageBox.Show("行を追加します", "追加確認"
+                                    , MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.Cancel) return;
+
+                // 行追加
+                dgvMaster.Rows.Add();
+                // クリアデータセット
+                SetRowClearData(0);
+                // №再採番
+                LineReNumbering();
+                //　変更フラグOn
+                valueChange(sender, e);
+                // フォーカス移動
+                dgvMaster.Focus();
+                return;
+            }
+
+            // メッセージ表示
+            BtnTextCustomMessageBox msg = new BtnTextCustomMessageBox();
+            msg.ButtonText.No = "前へ追加";
+            msg.ButtonText.Yes = "後へ追加";
+            msg.ButtonText.Cancel = "キャンセル";
+            DialogResult resRet = msg.Show("行の前・後を選択してください。", "追加確認"
+                                            , MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
+
+            // キャンセルは処理しない
+            if (resRet == DialogResult.Cancel) return;
+
+            // カレント行取得
+            int iIndex = dgvMaster.CurrentRow.Index;
+            // 最終行
+            if (iIndex == dgvMaster.RowCount - 1)
+            {
+                if (resRet == DialogResult.No)
+                {
+                    // 前
+                    dgvMaster.Rows.Insert(iIndex);
+                }
+                else if (resRet == DialogResult.Yes)
+                {
+                    // 後
+                    dgvMaster.Rows.Add();
+                    iIndex = (dgvMaster.RowCount - 1);
+                }
+            }
+            else
+            {
+                if (resRet == DialogResult.Yes)
+                {
+                    // 後ろ
+                    ++iIndex;
+                }
+                dgvMaster.Rows.Insert(iIndex);
+            }
+
+            // クリアデータセット
+            SetRowClearData(iIndex);
+
+            // №再採番
+            LineReNumbering();
+
+            //　変更フラグOn
+            valueChange(sender, e);
+
+            // フォーカス移動
+            dgvMaster.Focus();
+
+        }
+
+        /// <summary>
+        /// 素材種類のロード
+        /// </summary>
+        private void LoadMaterialKind()
+        {
+            IOMaterialTypes IoMt = new IOMaterialTypes();
+            try
+            {
+                List<MaterialKindMaster> itemList = new List<MaterialKindMaster>();
+                if (!IoMt.SelectAction(" Where DeleteFlg = 0 Order By DisplayOrder ASC", ref itemList)) return;
+                if (itemList.Count == 0) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                //DataList.Add(new KeyValuePair<int, string>(0, ""));
+                // データ表示
+                for (int i = 0; i < itemList.Count; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(itemList[i].MaterialKindCode, itemList[i].MaterialKindName);
+
+                    DataList.Add(keyval);
+                }
+
+                //初期選択があるため事前に指定
+                cmbTypes.ValueMember = "Key";
+                cmbTypes.DisplayMember = "Value";
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbTypes, DataList, false);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoMt.close();
+                IoMt = null;
+            }
+        }
+
+        /// <summary>
+        /// 資材品目の表示
+        /// </summary>
+        private void ItemListDisplay()
+        {
+            List<MaterialItemMaster> mim = new List<MaterialItemMaster>();
+
+            if (cmbTypes.SelectedIndex < 0) return;
+
+            string strMaterialKindCode = cmbTypes.SelectedValue.ToString();
+
+            try
+            {
+                dgvMaster.Rows.Clear();
+
+                // 資材品目抽出条件
+                string strSQL = string.Format(" Where MaterialKindCode = {0} And DeleteFlg = 0 Order By DisplayOrder ASC", strMaterialKindCode);
+                if (!m_IoMt.SelectAction(strSQL, ref mim,false)) return;
+
+                // データ表示
+                int icnt = 0;
+                foreach (MaterialItemMaster work in mim)
+                {
+                    dgvMaster.Rows.Add((icnt + 1)
+                                        , work.MaterialItemCode.ToString()
+                                        , work.MaterialItemName);
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RowState].Value = DataRowState.Unchanged;
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemKey].Value = work.MaterialItemCode;
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.NameString].Value = work.MaterialItemName;
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.NameString].ToolTipText = work.MaterialItemName;
+                    icnt++;
+                }
+
+                // №再採番
+                LineReNumbering();
+
+                m_bChengeAns = false;
+
+                txtTypeBefore.Text = cmbTypes.SelectedValue.ToString();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// セル値変化
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            // インデックス外は処理しない
+            if (e.RowIndex < 0 || e.ColumnIndex < 0) return;
+            // null値は処理しない
+            if (dgvMaster.Rows[e.RowIndex].Cells[e.ColumnIndex].Value == null) return;
+
+            // 値が変わればツールチップを変更する
+            dgvMaster.Rows[e.RowIndex].Cells[e.ColumnIndex].ToolTipText
+                = CommonMotions.cnvString(((DataGridView)sender).Rows[e.RowIndex].Cells[e.ColumnIndex].Value);
+            // 変更フラグON
+            m_bChengeAns = true;
+            // セル更新
+            dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified;
+            Console.Write("場所 {0} ", "dgvMaster_CellValueChanged");
+            Console.WriteLine("     {0} 行目 更新", dgvMaster.CurrentCell.RowIndex);
+
+        }
+
+        private void dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            setButtonEnable();
+        }
+
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // ダイアログとして使用するとき以外は処理しない
+
+        }
+
+        private void dgvMaster_CellEnter(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                if (dgv.CurrentCell.ReadOnly) return;
+
+                //列によってIMEのモードを変更する
+                if (dgv.Columns[e.ColumnIndex].Name.Equals("Column3"))
+                {
+                    dgv.ImeMode = ImeMode.On;
+                }
+                else
+                {
+                    dgv.ImeMode = ImeMode.Disable;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+        /// <summary>
+        /// ボタン制御
+        /// </summary>
+        private void setButtonEnable()
+        {       
+            try
+            {
+                // 一覧が1行選択されている場合、ボタンを活性にする
+                if (dgvMaster.SelectedCells.Count == 1)
+                {
+                    btnLineEntry.Enabled = true;
+                    btnDataDelete.Enabled = true;
+                    btnDispUp.Enabled = true;
+                    btnDispDown.Enabled = true;
+                }
+                // 一覧が選択されていない場合、ボタンを非活性にする
+                else
+                {
+                    btnLineEntry.Enabled = false;
+                    btnDataDelete.Enabled = false;
+                    btnDispUp.Enabled = false;
+                    btnDispDown.Enabled = false;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// PreviewKeyDownイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
+        {
+            //複数選択時は削除させない
+            if(e.KeyCode == Keys.Delete && dgvMaster.SelectedCells.Count!=1)
+            {
+                dgvMaster.ClearSelection();
+            }
+        }
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.designer.cs	(revision 51)
@@ -0,0 +1,307 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.Master
+{
+    partial class FrmMaterialItemsMaster
+    {
+        /// <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();
+            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.btnDispDown = new System.Windows.Forms.Button();
+            this.btnDispUp = new System.Windows.Forms.Button();
+            this.label6 = new System.Windows.Forms.Label();
+            this.btnLineEntry = new System.Windows.Forms.Button();
+            this.txtTypeBefore = new System.Windows.Forms.TextBox();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cmbTypes = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).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(8, 319);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataEntry.TabIndex = 4;
+            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(386, 319);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 6;
+            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)(128)))), ((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(120, 8);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(292, 34);
+            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(260, 319);
+            this.btnDataDelete.Name = "btnDataDelete";
+            this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
+            this.btnDataDelete.TabIndex = 5;
+            this.btnDataDelete.Text = "行削除";
+            this.btnDataDelete.UseVisualStyleBackColor = false;
+            this.btnDataDelete.Click += new System.EventHandler(this.btnLineDelete_Click);
+            // 
+            // btnDispDown
+            // 
+            this.btnDispDown.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispDown.ForeColor = System.Drawing.Color.Black;
+            this.btnDispDown.Location = new System.Drawing.Point(490, 195);
+            this.btnDispDown.Name = "btnDispDown";
+            this.btnDispDown.Size = new System.Drawing.Size(40, 40);
+            this.btnDispDown.TabIndex = 27;
+            this.btnDispDown.TabStop = false;
+            this.btnDispDown.Text = "▼";
+            this.btnDispDown.UseVisualStyleBackColor = true;
+            this.btnDispDown.Click += new System.EventHandler(this.btnDispDown_Click);
+            // 
+            // btnDispUp
+            // 
+            this.btnDispUp.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispUp.ForeColor = System.Drawing.Color.Black;
+            this.btnDispUp.Location = new System.Drawing.Point(490, 153);
+            this.btnDispUp.Name = "btnDispUp";
+            this.btnDispUp.Size = new System.Drawing.Size(40, 40);
+            this.btnDispUp.TabIndex = 26;
+            this.btnDispUp.TabStop = false;
+            this.btnDispUp.Text = "▲";
+            this.btnDispUp.UseVisualStyleBackColor = true;
+            this.btnDispUp.Click += new System.EventHandler(this.btnDispUp_Click);
+            // 
+            // label6
+            // 
+            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.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label6.ForeColor = System.Drawing.Color.Black;
+            this.label6.Location = new System.Drawing.Point(8, 48);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(100, 24);
+            this.label6.TabIndex = 36;
+            this.label6.Text = "資材種類";
+            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnLineEntry
+            // 
+            this.btnLineEntry.BackColor = System.Drawing.Color.Yellow;
+            this.btnLineEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnLineEntry.ForeColor = System.Drawing.Color.Black;
+            this.btnLineEntry.Location = new System.Drawing.Point(134, 319);
+            this.btnLineEntry.Name = "btnLineEntry";
+            this.btnLineEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnLineEntry.TabIndex = 37;
+            this.btnLineEntry.TabStop = false;
+            this.btnLineEntry.Text = "行追加";
+            this.btnLineEntry.UseVisualStyleBackColor = false;
+            this.btnLineEntry.Click += new System.EventHandler(this.btnLineEntry_Click);
+            // 
+            // txtTypeBefore
+            // 
+            this.txtTypeBefore.Location = new System.Drawing.Point(324, 48);
+            this.txtTypeBefore.Name = "txtTypeBefore";
+            this.txtTypeBefore.Size = new System.Drawing.Size(154, 23);
+            this.txtTypeBefore.TabIndex = 40;
+            this.txtTypeBefore.Visible = false;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column4,
+            this.Column1,
+            this.Column2,
+            this.Column3});
+            this.dgvMaster.Location = new System.Drawing.Point(8, 78);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersWidth = 24;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(474, 235);
+            this.dgvMaster.TabIndex = 39;
+            this.dgvMaster.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellClick);
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            this.dgvMaster.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellEnter);
+            this.dgvMaster.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellValueChanged);
+            this.dgvMaster.PreviewKeyDown += new System.Windows.Forms.PreviewKeyDownEventHandler(this.dgvMaster_PreviewKeyDown);
+            // 
+            // Column4
+            // 
+            this.Column4.HeaderText = "RowState";
+            this.Column4.Name = "Column4";
+            this.Column4.Visible = false;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            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;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column2.HeaderText = "キー項目";
+            this.Column2.Name = "Column2";
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Visible = false;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column3.HeaderText = "資材品目";
+            this.Column3.Name = "Column3";
+            this.Column3.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Width = 350;
+            // 
+            // cmbTypes
+            // 
+            this.cmbTypes.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbTypes.FormattingEnabled = true;
+            this.cmbTypes.Location = new System.Drawing.Point(114, 48);
+            this.cmbTypes.Name = "cmbTypes";
+            this.cmbTypes.Size = new System.Drawing.Size(204, 24);
+            this.cmbTypes.TabIndex = 38;
+            this.cmbTypes.SelectedIndexChanged += new System.EventHandler(this.cmbTypes_SelectedIndexChanged);
+            // 
+            // FrmMaterialItemsMaster
+            // 
+            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(538, 356);
+            this.Controls.Add(this.txtTypeBefore);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.cmbTypes);
+            this.Controls.Add(this.btnLineEntry);
+            this.Controls.Add(this.label6);
+            this.Controls.Add(this.btnDispDown);
+            this.Controls.Add(this.btnDispUp);
+            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.ForeColor = System.Drawing.Color.White;
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.Name = "FrmMaterialItemsMaster";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMaterialItemsEntry_FormClosing);
+            this.Load += new System.EventHandler(this.FrmMaterialItemsEntry_Load);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmMaterialItemsEntry_KeyDown);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #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 System.Windows.Forms.Button btnDispDown;
+        private System.Windows.Forms.Button btnDispUp;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Button btnLineEntry;
+        private ComboBoxEX cmbTypes;
+        private DataGridViewEX dgvMaster;
+        private System.Windows.Forms.TextBox txtTypeBefore;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialItemsMaster/FrmMaterialItemsMaster.resx	(revision 51)
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column4.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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialTypesMaster/FrmMaterialTypesMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialTypesMaster/FrmMaterialTypesMaster.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialTypesMaster/FrmMaterialTypesMaster.cs	(revision 51)
@@ -0,0 +1,989 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Linq;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+//*------------------------ 単位マスタメンテ画面 ----------------------*
+//  2015/07/14  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmMaterialTypesMaster : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispColumn
+        {
+            RowState = 0,
+            DeleteFlg,
+            DisplayOrder,
+            MaterialTypesKey,
+            NameString,
+        }
+
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// フィールド値変化フラグ
+        /// </summary>
+        private bool m_bChengeAns = false;
+
+        /// <summary>
+        /// 初期時グリッドカウント
+        /// </summary>
+        private int m_initDataCount = 0;
+        /// <summary>
+        /// ダイアログ使用フラグ
+        /// </summary>
+        private bool m_DialogFlg = false;
+        /// <summary>
+        /// 単位文字
+        /// </summary>
+        private string m_UnitName = string.Empty;
+        /// <summary>
+        /// 単位キー
+        /// </summary>
+        private int m_UnitKey = 0;
+        /// <summary>
+        /// 終了ボタン押下フラグ
+        /// </summary>
+        private bool m_EndButton = false;
+        
+        /// <summary>
+        /// データ操作
+        /// </summary>
+        private IOMaterialTypes m_IoMt = null;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialTypesMaster()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialTypesMaster()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+        #region プロパティ
+        /// <summary>
+        /// ダイアログ使用時フラグ
+        /// </summary>
+        public bool DialogUsed
+        {
+            set { m_DialogFlg = value; }
+        }
+        /// <summary>
+        /// 単位文字取得
+        /// </summary>
+        public string UnitName
+        {
+            get { return m_UnitName; }
+        }
+        /// <summary>
+        /// 単位キー取得
+        /// </summary>
+        public int UnitKey
+        {
+            get { return m_UnitKey; }
+        }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+
+        #region イベントメソッド
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialTypesMaster_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            try
+            {
+                if (m_EndButton) return;
+                if (m_bChengeAns)
+                {
+                    if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        e.Cancel = true;
+                        return;
+                    }
+                }
+
+                // 前プロセスに戻る
+                ClsExcute.BackProcess();
+            }
+            finally
+            {
+                // ロック解除用
+                if (e.Cancel != true && m_IoMt != null)
+                {
+                    m_IoMt.rollback();
+                    m_IoMt.close();
+                    m_IoMt = null;
+                }
+            }
+        }
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialTypesMaster_Load(object sender, EventArgs e)
+        {
+            // 行削除押下時にロックを実行する為
+            try
+            {
+                m_IoMt = new IOMaterialTypes();
+                m_IoMt.connect();
+                m_IoMt.SetLockWaitime(1);
+                m_IoMt.beginTran();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                this.Close();
+            }
+
+            // 初期表示
+            InitDataLoad();
+
+            if (m_EditLock)
+            {
+                btnDataEntry.Enabled = false;
+                btnLineEntry.Enabled = false;
+                btnLineDelete.Enabled = false;
+            }
+
+            // ダイアログ使用時
+            if (m_DialogFlg)
+            {
+                //フォームの幅だけを変更する
+                this.SetBounds(this.Left, this.Top, (this.Width - 40), this.Height, BoundsSpecified.Width);
+            }
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+
+
+        }
+
+        /// <summary>
+        /// 行データクリア
+        /// </summary>
+        /// <param name="iIndex">行カウント</param>
+        private void SetRowClearData(int iIndex)
+        {            
+            // クリアデータセット
+            dgvMaster[(int)DispColumn.RowState, iIndex].Value = DataRowState.Unchanged;
+            dgvMaster[(int)DispColumn.DeleteFlg, iIndex].Value = "0";
+            dgvMaster[(int)DispColumn.DisplayOrder, iIndex].Value = "";
+            dgvMaster[(int)DispColumn.MaterialTypesKey, iIndex].Value = "";
+            dgvMaster[(int)DispColumn.NameString, iIndex].Value = "";
+        }
+
+        /// <summary>
+        /// グリッド採番処理
+        /// </summary>
+        private void LineReNumbering()
+        {
+            int icnt = 1;
+            foreach (DataGridViewRow r in dgvMaster.Rows)
+            {
+                // 表示されているものだけ採番
+                if (r.Visible)
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = (icnt++).ToString();
+            }
+        }
+        /// <summary>
+        /// 行追加ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineEntry_Click(object sender, EventArgs e)
+        {
+            // 行がない場合は作成して抜ける
+            if (dgvMaster.Rows.Count == 0)
+            {
+                if (MessageBox.Show("行を追加します", "追加確認"
+                                    , MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.Cancel) return;
+
+                // 行追加
+                dgvMaster.Rows.Add();
+                // クリアデータセット
+                SetRowClearData(0);
+                // №再採番
+                LineReNumbering();
+                //　変更フラグOn
+                valueChange(sender, e);
+                // フォーカス移動
+                dgvMaster.Focus();
+                return;
+            }
+
+            // メッセージ表示
+            BtnTextCustomMessageBox msg = new BtnTextCustomMessageBox();
+            msg.ButtonText.No = "前へ追加";
+            msg.ButtonText.Yes = "後へ追加";
+            msg.ButtonText.Cancel = "キャンセル";
+            DialogResult resRet = msg.Show("行の前・後を選択してください。", "追加確認"
+                                            , MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
+
+            // キャンセルは処理しない
+            if (resRet == DialogResult.Cancel) return;
+
+            // カレント行取得
+            int iIndex = dgvMaster.CurrentRow.Index;
+            // 最終行
+            if (iIndex == dgvMaster.RowCount - 1)
+            {
+                if (resRet == DialogResult.No)
+                {
+                    // 前
+                    dgvMaster.Rows.Insert(iIndex);
+                }
+                else if (resRet == DialogResult.Yes)
+                {
+                    // 後
+                    dgvMaster.Rows.Add();
+                    iIndex = (dgvMaster.RowCount - 1);
+                }
+            }
+            else
+            {
+                if (resRet == DialogResult.Yes)
+                {
+                    // 後ろ
+                    ++iIndex;
+                }
+                dgvMaster.Rows.Insert(iIndex);
+            }
+
+            // クリアデータセット
+            SetRowClearData(iIndex);
+
+            // №再採番
+            LineReNumbering();
+
+            //　変更フラグOn
+            valueChange(sender, e);
+
+            // フォーカス移動
+            dgvMaster.Focus();
+            //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+            //dgvMaster.CurrentCell = dgvMaster[0, iIndex];
+        }
+
+        /// <summary>
+        /// フィールド値変更フラグ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void valueChange(object sender, EventArgs e)
+        {
+            m_bChengeAns = true;
+            // セル更新
+            dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified; 
+
+        }
+
+        /// <summary>
+        /// セル値変化
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            // インデックス外は処理しない
+            if (e.RowIndex < 0 || e.ColumnIndex < 0) return;
+            // null値は処理しない
+            if (dgvMaster.Rows[e.RowIndex].Cells[e.ColumnIndex].Value == null) return;
+
+            // 値が変わればツールチップを変更する
+            dgvMaster.Rows[e.RowIndex].Cells[e.ColumnIndex].ToolTipText
+                = CommonMotions.cnvString(((DataGridView)sender).Rows[e.RowIndex].Cells[e.ColumnIndex].Value);
+            // 変更フラグON
+            m_bChengeAns = true;
+            // セル更新
+            dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified; 
+
+        }
+        /// <summary>
+        /// 行削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineDelete_Click(object sender, EventArgs e)
+        {
+            IOMaterialItem miDB = new IOMaterialItem();
+
+            try
+            {
+                string kindCode = dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialTypesKey].Value.ToString();
+                if(kindCode!="")
+                { 
+                    if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)DispColumn.NameString].Value)) return;
+
+                    // 資材品目確認
+                    int iItemCnt = miDB.SelectkindItemCount(int.Parse(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialTypesKey].Value.ToString()));
+                    if (iItemCnt > 0)
+                    {
+                        MessageBox.Show("資材品目が存在する資材種類の削除はできません。", "削除確認"
+                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    // 削除確認
+                    if (MessageBox.Show("選択した行データを削除します。", "削除確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+
+                    // ロック 
+                    if (!m_IoMt.RowLock(int.Parse(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialTypesKey].Value.ToString()), false))
+                    {
+                        MessageBox.Show("他のユーザで編集中のため、処理できません。", "削除確認"
+                        , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    //削除実施
+                    string strSQL = m_IoMt.CreatePrimarykeyString(CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialTypesKey].Value));
+                    if (!m_IoMt.DeleteAction(strSQL, false))
+                    {
+                        m_IoMt.rollback();
+                        MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+ 
+                    // 表示行退避
+                    int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                     // データ表示
+                    if (!DispGridData()) return;
+
+                    // 表示行復元
+                    dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+                }
+                else
+                {
+                    //今回追加したばかりの行についてはその場で削除
+                    // 削除確認
+                    if (MessageBox.Show("選択した行データを削除します。", "削除確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+                    dgvMaster.Rows.RemoveAt(dgvMaster.CurrentRow.Index);
+                    LineReNumbering();
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                miDB = null;
+            }
+        }
+
+        /// <summary>
+        /// 登録ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                //データチェック
+                if (!DispFeildCheck()) return;
+
+                if (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+
+                // 表示行退避
+                int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
+
+                // データ登録
+                MateriakTypesMasterDataEntry();
+
+                // データ表示
+                if (!DispGridData()) return;
+
+                // 表示行復元
+                dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
+
+                // 変更フラグクリア
+                m_bChengeAns = false;
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// IMEのコントロール
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellEnter(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                if (dgv.CurrentCell.ReadOnly) return;
+
+                //列によってIMEのモードを変更する
+                if (dgv.Columns[e.ColumnIndex].Name.Equals("Column3"))
+                {
+                    dgv.ImeMode = ImeMode.On;
+                }
+                else
+                {
+                    dgv.ImeMode = ImeMode.Disable;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// アップキー押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDispUp_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 先頭は処理しない
+                if (dgvMaster.CurrentRow.Index == 0) return;
+
+                int irowcnt = dgvMaster.CurrentRow.Index;
+                if (irowcnt == 0) return;
+                if (CommonMotions.chkObjectIsNull(dgvMaster.Rows[irowcnt - 1].Cells[(int)DispColumn.NameString].Value)) return;
+
+                // グリッドアップキー処理
+                DataGridViewAction.GridRowUpAction((DataGridView)dgvMaster, (int)DispColumn.MaterialTypesKey, (int)DispColumn.NameString);
+
+                m_bChengeAns = true;
+                // セル更新
+                dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified; 
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        /// <summary>
+        /// ダウンキー押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDispDown_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 最終行は処理しない
+                if ((dgvMaster.CurrentRow.Index + 1) == dgvMaster.Rows.Count) return;
+
+
+                int irowcnt = dgvMaster.CurrentRow.Index;
+                if (CommonMotions.chkObjectIsNull(dgvMaster.Rows[irowcnt + 1].Cells[(int)DispColumn.NameString].Value)) return;
+                if (CommonMotions.cnvString(dgvMaster.Rows[irowcnt + 1].Cells[(int)DispColumn.NameString].Value).Length == 0) return;
+
+                // グリッドダウンキー処理
+                DataGridViewAction.GridRowDownAction((DataGridView)dgvMaster, (int)DispColumn.MaterialTypesKey, (int)DispColumn.NameString);
+
+                m_bChengeAns = true;
+                // セル更新
+                dgvMaster.Rows[dgvMaster.CurrentCell.RowIndex].Cells[(int)DispColumn.RowState].Value = DataRowState.Modified; 
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// セルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            setButtonEnable();
+        }
+
+        /// <summary>
+        /// セルダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // ダイアログとして使用するとき以外は処理しない
+            if (!m_DialogFlg) return;
+
+            if (e.RowIndex < 0) return;
+
+            m_UnitKey = CommonMotions.cnvInt(((DataGridView)sender).Rows[e.RowIndex].Cells[(int)DispColumn.MaterialTypesKey].Value);
+            m_UnitName = CommonMotions.cnvString(((DataGridView)sender).Rows[e.RowIndex].Cells[(int)DispColumn.NameString].Value);
+            btnEnd_Click(sender, (EventArgs)e);
+        }
+
+        /// <summary>
+        /// Formキーダウン処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialTypesMaster_KeyDown(object sender, KeyEventArgs e)
+        {
+            // DataGridviewは処理しない
+            if (ActiveControl.Name.Equals("dgvMaster"))
+            {
+               
+                // 最終行時の処理
+                GridLastLine();
+                return;
+            }
+        }
+
+        #endregion
+
+        #region プライベートメソッド
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                if (!DispGridData()) return;
+
+                m_bChengeAns = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            bool bAns = true;
+            string sErrmsg = "";
+            try
+            {
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+
+                    // 入力無は処理しない
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.MaterialTypesKey].Value).Length == 0
+                            && CommonMotions.chkObjectIsNull(r.Cells[(int)DispColumn.NameString].Value)) continue;
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.MaterialTypesKey].Value).Length == 0  
+                            && CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value).Length == 0) continue;
+
+                    // 削除行は処理しない
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.DeleteFlg].Value) == "1") continue;
+
+                    //名称
+                    bAns = true;
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value).Length == 0 )
+                    {
+                        bAns = false;
+                        sErrmsg = "資材種類の名称が入力されていません。";
+                    }
+                    else 
+                    {
+                        // レングスチェック
+                        bAns = CommonMotions.chkStringLength(CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value), 40);
+                        if (bAns == false)
+                        {
+                            sErrmsg = "入力エラーがあります、確認してください。";
+                        }
+                    }
+
+                    if (bAns)
+                    { 
+                        // 重複行調査
+                        DataGridViewRow[] rows = dgvMaster.Rows.Cast<DataGridViewRow>()
+                                                                    .Where(x =>x.Cells[(int)DispColumn.DeleteFlg].Value.ToString() == "0" && (string)x.Cells[(int)DispColumn.NameString].Value == (string)r.Cells[(int)DispColumn.NameString].Value).ToArray();
+                        if (rows.Count() > 1)
+                        {
+                            bAns = false;
+                            sErrmsg = "同一の資材種類が既に存在します。";
+                        }
+                    }
+                    // 背景色変更
+                    CommonMotions.chgBackColor(r.Cells[(int)DispColumn.NameString], bAns);
+                    bRet &= bAns;
+                }
+
+                if (!bRet)
+                {
+                    MessageBox.Show(sErrmsg, "データ確認"
+                                                , MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                }
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// マスタデータ登録
+        /// </summary>
+        private void MateriakTypesMasterDataEntry()
+        { 
+            try 
+            {
+                // 番号降り直し
+                int ino = 0;
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    // 入力無は処理しない
+                    if (CommonMotions.chkObjectIsNull(r.Cells[(int)DispColumn.NameString].Value)) continue;
+
+                    // 番号セット
+                    if (r.Cells[(int)DispColumn.DeleteFlg].Value.ToString() == "1")
+                        r.Cells[(int)DispColumn.DisplayOrder].Value = "999";
+                    else
+                        r.Cells[(int)DispColumn.DisplayOrder].Value = (++ino).ToString();
+                }
+
+                // データを画面より取得
+                foreach (DataGridViewRow r in dgvMaster.Rows)
+                {
+                    // 入力無は処理しない
+                    if (CommonMotions.chkObjectIsNull(r.Cells[(int)DispColumn.NameString].Value)) continue;
+                    if (CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value).Length == 0) continue;
+
+                    // 更新無は処理しない
+                    //if ((DataRowState)r.Cells[(int)DispColumn.RowState].Value == DataRowState.Unchanged) continue;
+
+                    MaterialKindMaster uwork = new MaterialKindMaster();
+
+                    // データセット
+                    if (CommonMotions.chkCellBlank(r.Cells[(int)DispColumn.MaterialTypesKey].Value))
+                    {
+                        // 新規時キーセット
+                        // 履歴がない場合は過去の最大値をとる
+                        uwork.MaterialKindCode = m_IoMt.SelectMaxMaterialKindKeyCount(string.Empty, false) + 1;
+                    }
+                    else
+                    {
+                        uwork.MaterialKindCode = CommonMotions.cnvInt(r.Cells[(int)DispColumn.MaterialTypesKey].Value);
+                    }
+                    uwork.MaterialKindName = CommonMotions.cnvString(r.Cells[(int)DispColumn.NameString].Value);
+                    uwork.DisplayOrder = CommonMotions.cnvInt(r.Cells[(int)DispColumn.DisplayOrder].Value);
+                    uwork.DeleteFlg = CommonMotions.cnvInt(r.Cells[(int)DispColumn.DeleteFlg].Value);
+
+                    // SQL作成
+                    string strSQL = m_IoMt.CreatePrimarykeyString(uwork.MaterialKindCode);
+                    List<MaterialKindMaster> mList = new List<MaterialKindMaster>();
+
+                    // 資材種類マスタ取得
+                    if (!m_IoMt.SelectAction(strSQL, ref mList, false))
+                    {
+                        m_IoMt.rollback();
+                        MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return;
+                    }
+
+                    if (mList.Count == 0)
+                    {
+                        // データがない場合は追加
+                        mList.Clear();
+                        mList.Add(uwork);
+
+                        // データ登録
+                        if (!m_IoMt.InsertAction(mList, false))
+                        {
+                            m_IoMt.rollback();
+                            MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+                    }
+                    else
+                    {
+                        // 更新ロック
+                        if (!m_IoMt.RowLock(uwork.MaterialKindCode, false))
+                        {
+                            MessageBox.Show("他のユーザで編集中のため、処理できません。", "削除確認"
+                            , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+
+                        // データ登録
+                        if (!m_IoMt.UpdateAction(strSQL, uwork, false))
+                        {
+                            m_IoMt.rollback();
+                            MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                            return;
+                        }
+                    }
+                }
+
+                // 成功したらcommit
+                m_IoMt.commit();
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 資材種類登録表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DispGridData()
+        {
+            List<MaterialKindMaster> cm = new List<MaterialKindMaster>();
+
+            try
+            {
+
+
+                    // グリッドの行を0に戻す
+                    dgvMaster.Rows.Clear();
+                    
+                    // SQL作成
+                    string strSQL = " Where DeleteFlg = 0 Order By DisplayOrder ASC"; 
+                    // 表示順マスタ取得
+                    if (!m_IoMt.SelectAction(strSQL, ref cm,false)) return false;
+
+                    // データ表示
+                    int icnt = 0;
+                    foreach (MaterialKindMaster work in cm)
+                    {
+                        dgvMaster.Rows.Add((icnt + 1)
+                                            , work.MaterialKindCode
+                                            , work.MaterialKindName.ToString());
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RowState ].Value = DataRowState.Unchanged;
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.DeleteFlg].Value = work.DeleteFlg.ToString();
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialTypesKey].Value = work.MaterialKindCode.ToString();
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.NameString].Value = work.MaterialKindName;
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.NameString].ToolTipText = work.MaterialKindName;
+                        if (work.DeleteFlg == 1)
+                        {
+                            dgvMaster.Rows[icnt].Visible = false;
+                        }
+                        icnt++;
+                    }
+
+
+                // №再採番
+                LineReNumbering();
+
+                //// 表示行が足りない場合は追加する
+                //if (dgvMaster.Rows.Count <= CommonDefine.s_MaxInitLineCountMastamente)
+                //{
+                //    int iAddLine = CommonDefine.s_MaxInitLineCountMastamente - dgvMaster.Rows.Count;
+                //    for (int i = 0; i < iAddLine; i++)
+                //    {
+                //        dgvMaster.Rows.Add();
+                //    }
+                //}
+
+                    //dgvMaster.Rows.Add();
+                    // クリアデータセット
+                    //SetRowClearData(dgvMaster.Rows.Count - 1);
+
+                // 読込時データカウント取得
+                m_initDataCount = cm.Count;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                //cmDB.close();
+                //cmDB = null;
+            }
+            return true;
+        }
+
+        /// <summary>
+        /// ボタンの表示・非表示制御
+        /// </summary>
+        private void ButtonVisble(Control Parent)
+        {
+            bool bAns = true;
+            if (m_DialogFlg){
+
+                bAns = false;
+            }
+            else
+            {
+                bAns = true;
+            }
+
+            foreach (Control ctrl in Parent.Controls)
+            {
+                if (ctrl.GetType().Equals(typeof(Button)))
+                {
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.ToString() != btnEnd.Name.ToString()) ctrl.Visible = bAns;
+                }
+            }
+            // グリッドの読込のみ制御
+            dgvMaster.ReadOnly = m_DialogFlg;
+        }
+
+        /// <summary>
+        /// グリッド最終行での処理
+        /// </summary>
+        private void GridLastLine()
+        {
+            // 最終行判定
+            if (dgvMaster.CurrentCell.RowIndex == dgvMaster.Rows.Count - 1)
+            {
+                // 最終列判定
+                if (dgvMaster.CurrentCell.ColumnIndex == (int)DispColumn.NameString)
+                {
+                    // 1行追加
+                    //dgvMaster.Rows.Add();
+                    // クリアデータセット
+                    //SetRowClearData(dgvMaster.Rows.Count - 1);
+                    // №再採番
+                    LineReNumbering();
+                }
+
+            }
+        }
+
+        /// <summary>
+        /// ボタン制御
+        /// </summary>
+        private void setButtonEnable()
+        {
+            try
+            {
+                // 一覧が選択されている場合、ボタンを活性にする
+                if (dgvMaster.SelectedCells.Count == 1)
+                {
+                    btnLineEntry.Enabled = true;
+                    btnLineDelete.Enabled = true;
+                    btnDispUp.Enabled = true;
+                    btnDispDown.Enabled = true;
+                }
+                // 一覧が選択されていない場合、ボタンを非活性にする
+                else
+                {
+                    btnLineEntry.Enabled = false;
+                    btnLineDelete.Enabled = false;
+                    btnDispUp.Enabled = false;
+                    btnDispDown.Enabled = false;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+
+        /// <summary>
+        /// PreviewKeyDownイベント
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
+        {
+            //複数選択時は削除させない
+            if (e.KeyCode == Keys.Delete && dgvMaster.SelectedCells.Count != 1)
+            {
+                dgvMaster.ClearSelection();
+            }
+        }
+
+        #endregion
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialTypesMaster/FrmMaterialTypesMaster.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialTypesMaster/FrmMaterialTypesMaster.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Material/MaterialTypesMaster/FrmMaterialTypesMaster.resx	(revision 51)
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column5.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="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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Orderer/FrmOrderers.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Orderer/FrmOrderers.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Orderer/FrmOrderers.cs	(revision 51)
@@ -83,11 +83,6 @@
             PointRear,
             ChangeOrdersChange,
         }
-        /// <summary>
-        /// 修正モード名称
-        /// </summary>
-        private static string EditModeStringNew = "新規";
-        private static string EditModeStringEdit = "修正";
         #endregion
 
         #region 変数
@@ -108,10 +103,6 @@
         /// 発注者コード
         /// </summary>
         private int m_OrderersCode = 0;
-        /// <summary>
-        /// 閲覧フラグ
-        /// </summary>
-        private bool m_bBrowseFlg = false;
 
         /// <summary>
         /// 表示コントロール保持配列
@@ -126,6 +117,11 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
@@ -145,13 +141,14 @@
             set { m_OrderersCode = value; }
             get { return m_OrderersCode; }
         }
+
         /// <summary>
-        /// 閲覧フラグ
+        /// 参照フラグ
         /// </summary>
-        public bool BrowseFlg
+        public bool EditLock
         {
-            get { return m_bBrowseFlg; }
-            set { m_bBrowseFlg = value; }
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
         }
         #endregion
 
@@ -175,7 +172,7 @@
         }
         #endregion
 
-        #region イベントメソッド
+        #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
         /// </summary>
@@ -184,7 +181,7 @@
         private void FrmOrderers_FormClosing(object sender, FormClosingEventArgs e)
         {
             if (m_EndButton) return;
-            if (m_bChengeAns && !m_bBrowseFlg)
+            if (m_bChengeAns && !m_EditLock)
             {
                 if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
@@ -196,6 +193,9 @@
             // 前プロセスに戻る
             ClsExcute.BackProcess();
         }
+        #endregion
+
+        #region 終了ボタンクリック
         /// <summary>
         /// 終了ボタンクリック
         /// </summary>
@@ -205,7 +205,9 @@
         {
             this.Close();
         }
+        #endregion
 
+        #region 初期フォームロード
         /// <summary>
         /// 初期フォームロード
         /// </summary>
@@ -236,13 +238,20 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // 初期フラグON
             m_bInitChangeOff = false;
 
-
             dgvMaster.Focus();
         }
+        #endregion
 
+        #region フィールド値変更フラグ
         /// <summary>
         /// フィールド値変更フラグ
         /// </summary>
@@ -252,7 +261,9 @@
         {
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region 登録ボタン押下
         /// <summary>
         /// 登録ボタン押下
         /// </summary>
@@ -271,6 +282,8 @@
                 // データ登録
                 if (!OrderersMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("発注者情報データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -296,7 +309,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 削除ボタン押下
         /// <summary>
         /// 削除ボタン押下
         /// </summary>
@@ -327,6 +342,8 @@
                     return;
                 }
 
+                CommonMotions.RemoveEndMessage("発注者情報データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -357,7 +374,9 @@
                 orDB = null;
             }
         }
+        #endregion
 
+        #region Entryキーでの移動処理
         /// <summary>
         /// Entryキーでの移動処理
         /// </summary>
@@ -378,7 +397,9 @@
                 e.SuppressKeyPress = true;
             }
         }
+        #endregion
 
+        #region 行選択時処理
         /// <summary>
         /// 行選択時処理
         /// </summary>
@@ -405,7 +426,6 @@
                 return;
             }
 
-
             m_OrderersCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispListColumn.ORDERERS_CODE].Value);
 
             // クリア
@@ -418,11 +438,24 @@
             DispMentenanceData();
 
             // モード表示
-            m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringEdit;
+            if (m_EditLock)
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringRef;
+            else
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringEdit;
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フォーカスセット
             m_dispControl[(int)Dispcount.OrderersName1].Focus();
 
         }
+        #endregion
+
+        #region グリッド選択処理
         /// <summary>
         /// グリッド選択処理
         /// </summary>
@@ -442,6 +475,9 @@
             // 行選択時処理
             DataSelectRow();
         }
+        #endregion
+
+        #region 選択ボタン押下
         /// <summary>
         /// 選択ボタン押下
         /// </summary>
@@ -452,6 +488,9 @@
             // 行選択時処理
             DataSelectRow();
         }
+        #endregion
+
+        #region 新規データ追加押下
         /// <summary>
         /// 新規データ追加押下
         /// </summary>
@@ -484,7 +523,7 @@
                 }
 
                 // モード表示
-                m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringNew;
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringNew;
                 // フォーカスセット
                 m_dispControl[(int)Dispcount.OrderersName1].Focus();
             }
@@ -498,7 +537,9 @@
                 orDB = null;
             }
         }
+        #endregion
 
+        #region 住所検索ボタン押下
         /// <summary>
         /// 住所検索ボタン押下
         /// </summary>
@@ -560,7 +601,9 @@
                 Fad = null;
             }
         }
+        #endregion
 
+        #region アップキー押下
         /// <summary>
         /// アップキー押下
         /// </summary>
@@ -573,7 +616,9 @@
 
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region ダウンキー押下処理
         /// <summary>
         /// ダウンキー押下処理
         /// </summary>
@@ -586,6 +631,9 @@
 
             m_bChengeAns = true;
         }
+        #endregion
+
+        #region 発注者区分変更
         /// <summary>
         /// 発注者区分変更
         /// </summary>
@@ -599,6 +647,9 @@
             // グリッド表示
             DispGridData();
         }
+        #endregion
+
+        #region 法人格radioButton変化有
         /// <summary>
         /// 法人格radioButton変化有
         /// </summary>
@@ -611,7 +662,7 @@
         }
         #endregion
 
-        #region プライベートメソッド
+        #region 表示オブジェクトの取得
         /// <summary>
         /// 表示オブジェクトの取得
         /// </summary>
@@ -635,7 +686,9 @@
             m_dispControl[(int)Dispcount.PointRear] = rdbPoint3;
             m_dispControl[(int)Dispcount.ChangeOrdersChange] = cmbChangeOrdersDivision;
         }
-        
+        #endregion
+
+        #region 画面ロック
         /// <summary>
         /// 画面ロック
         /// </summary>
@@ -648,7 +701,9 @@
                     wrk.Enabled = bctrl;
             }
         }
+        #endregion
 
+        #region 画面クリア
         /// <summary>
         /// 画面クリア
         /// </summary>
@@ -660,19 +715,6 @@
                 if (wrk.GetType().Equals(typeof(RadioButton))) continue;
                 if (wrk.GetType().Equals(typeof(Button))) continue;
                 wrk.Text = "";
-                // 閲覧時は入力できない
-                if (m_bBrowseFlg)
-                {
-                    if (wrk.GetType().Equals(typeof(TextBox)))
-                    {
-                        ((TextBox)wrk).ReadOnly = true;
-                        continue;
-                    }
-                    if (wrk.GetType().Equals(typeof(ComboBox)))
-                    {
-                        ((ComboBox)wrk).Enabled = true;
-                    }
-                }
             }
             
             // 新規時は発注者コードを表示しない
@@ -691,7 +733,9 @@
             rdbPoint1.Checked = true;
             m_bChengeAns = false;
         }
+        #endregion
 
+        #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
         /// </summary>
@@ -752,7 +796,9 @@
                 return false;
             }
         }
+        #endregion
 
+        #region 発注者マスタ登録
         /// <summary>
         /// 発注者マスタ登録
         /// </summary>
@@ -917,6 +963,9 @@
             }
             return true;
         }
+        #endregion
+
+        #region 初期時データ取得
         /// <summary>
         /// 初期時データ取得
         /// </summary>
@@ -929,7 +978,8 @@
                 // 発注者取得クラス領域
                 List<OrderersMaster> wrk = new List<OrderersMaster>();
                 // 発注者取得SQL
-                string strSql = orDB.CreatePrimarykeyString(CommonMotions.cnvInt(cmbDivision.SelectedValue.ToString())) + " And DeleteFlg = 0 Order By DisplayOrder ASC";
+                string strSql = orDB.CreatePrimarykeyString(CommonMotions.cnvInt(cmbDivision.SelectedValue.ToString()));
+                strSql += " And DeleteFlg = 0 Order By DisplayOrder ASC";
                 // グリッドの行を0に戻す
                 dgvMaster.Rows.Clear();
                 // 作業名称取得
@@ -939,14 +989,6 @@
                 int ino = 1;
                 foreach (OrderersMaster work in wrk)
                 {
-                    //string wrkDisp = "";
-                    //if (work.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.Forword)
-                    //    wrkDisp = work.CorporateStatusName + "　" + work.OrderersName1 + "　" + work.OrderersName2;
-                    //else if (work.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.Back)
-                    //    wrkDisp = work.OrderersName1 + "　" + work.CorporateStatusName + "　" + work.OrderersName2;
-                    //else
-                    //    wrkDisp = work.OrderersName1 + "　" + work.OrderersName2;
-
                     // 発注者名を法人格を含めて連結する
                     string wrkDisp = CommonMotions.OrderersNameUnion(work);
 
@@ -966,16 +1008,6 @@
                     }
                 }
 
-                // 閲覧時は変更できない
-                if (m_bBrowseFlg)
-                {
-                    btnDataLineEntry.Visible = false;
-                    btnDataDelete.Visible = false;
-                    btnDataEntry.Visible = false;
-                    btnSerchZip.Visible = false;
-                    panel5.Enabled = false;
-                }
-
                 // 行を選択しない
                 dgvMaster.ClearSelection();
 
@@ -995,6 +1027,9 @@
                 orDB = null;
             }
         }
+        #endregion
+
+        #region 更新データ表示処理
         /// <summary>
         /// 更新データ表示処理
         /// </summary>
@@ -1052,6 +1087,9 @@
                 odDB = null;
             }
         }
+        #endregion
+
+        #region 法人格コンボボックスセット
         /// <summary>
         /// 法人格コンボボックスセット
         /// </summary>
@@ -1085,6 +1123,9 @@
                 btDB = null;
             }
         }
+        #endregion
+
+        #region 発注者区分コンボボックスセット
         /// <summary>
         /// 発注者区分コンボボックスセット
         /// </summary>
@@ -1127,5 +1168,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Orderer/FrmOrderers.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Orderer/FrmOrderers.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Orderer/FrmOrderers.designer.cs	(revision 51)
@@ -136,7 +136,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 11;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             this.btnDataDelete.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmOrderers_KeyDown);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.cs	(revision 51)
@@ -21,8 +21,8 @@
 //*---------------------------- 担当者マスタメンテ画面 -----------------------*
 //  2015/07/13  Ver1.0.0.0      Create Source           
 //  2015/08/07  Ver2.0.0.0      Create Source           
+//  2016/11/16  Ver2.1.0.0      Update Source           
 //
-//
 //*----------------------------------------------------------------------------*
 namespace ProcessManagement.Forms.Master
 {
@@ -34,6 +34,8 @@
         #endregion
 
         #region 定数
+
+        #region 処理定数
         /// <summary>
         /// 担当者名最大文字数(UTF-8 Length)
         /// </summary>
@@ -58,8 +60,11 @@
         /// 印鑑表示名最大文字数(UTF-8 Length)
         /// </summary>
         private const int s_SealPrintNameLength = 5;
+        #endregion
+
+        #region 一覧グリッド表示順番
         /// <summary>
-        /// 表示順番
+        /// 一覧グリッド表示順番
         /// </summary>
         private enum DispListColumn
         {
@@ -69,9 +74,39 @@
             START_DATE,
             END_DATE,
         }
-        private enum Dispcount
+        #endregion
+
+        #region 給与グリッド表示順
+        /// <summary>
+        /// 給与グリッド表示順
+        /// </summary>
+        private enum SalaryGridColumn
         {
-            PersonCode = 0,
+            StartData = 0,
+            MonthlySalary,
+            YearSalary,
+        }
+        #endregion
+
+        #region 参照部署グリッド表示順
+        /// <summary>
+        /// 参照部署グリッド表示順
+        /// </summary>
+        private enum RefDepGridColumn
+        {
+            DepCode = 0,
+            DepName,
+        }
+        #endregion
+
+        #region 画面コントロール定義
+        /// <summary>
+        /// 画面コントロール
+        /// </summary>
+        private enum DispCtrl
+        {
+            EditMode = 0,
+            PersonCode,
             PersonName,
             StartDate,
             EndDate,
@@ -78,28 +113,41 @@
             PassWord,
             MonthlySalary,
             YearSalary,
-            SecurityManagement,
-            MessageColor,
+            SalaryStDate,
+            SecManage,
             Department,
             DisplayString,
             Qualification,
             SealPrintName,
             LedgerFlg,
-            EditMode,
+            MessageColor,
+            SecRank,
+            SecRange,
+            RefDepartment,
+            SecurityManegement,
         }
+        #endregion
 
+        #region 工事詳細台帳計算対象名称
         /// <summary>
-        /// 修正モード名称
+        /// 工事詳細台帳計算対象名称
         /// </summary>
-        private static string EditModeStringNew = "新規";
-        private static string EditModeStringEdit = "修正";
+        private string[] PersonLedgerDivNoName = new string[] { "計算対象外", "計算対象" };
+        #endregion
 
+        #region グリッド固定行
         /// <summary>
-        /// 工事詳細台帳計算対象名称
+        /// 給与グリッド固定行
         /// </summary>
-        private string[] PersonLedgerDivNoName = new string[] { "計算対象外", "計算対象" };
+        const int s_FixRowsSalaryGrid = 4;
+        /// <summary>
+        /// 参照部署グリッド固定行
+        /// </summary>
+        const int s_FixRowsRefDepGrid = 5;
         #endregion
 
+        #endregion
+
         #region 変数
         /// <summary>
         /// イベントストップフラグ
@@ -115,6 +163,11 @@
         private bool m_bChengeAns = false;
 
         /// <summary>
+        /// 日付変更フラグ
+        /// </summary>
+        private bool m_bDateChange = false;
+
+        /// <summary>
         /// 担当者コード
         /// </summary>
         private int m_PersonCode = 0;
@@ -138,6 +191,11 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
@@ -155,6 +213,15 @@
         {
             set { m_PasswordInputFlg = value; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -236,6 +303,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             m_bEventStop = false;
         }
         #endregion
@@ -248,7 +321,7 @@
         /// <param name="e"></param>
         private void valueChange(object sender, EventArgs e)
         {
-            m_bChengeAns = true;
+            if (!m_EditLock) m_bChengeAns = true;
         }
         #endregion
 
@@ -268,12 +341,11 @@
                 if (MessageBox.Show("表示中のデータを登録します。", "登録確認"
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
 
-                // 編集データグリッドへ移動
-
-
                 // データ登録
                 if (!PersonInChargeMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("担当者情報データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -315,26 +387,48 @@
                 if (MessageBox.Show("表示中のデータを削除します。", "削除確認"
                     , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
 
-                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
-                // 
-                string strWhere = string.Format(" Where PersonCode = {0}", m_dispControl[(int)Dispcount.PersonCode].Text.ToString());
+                picDB.connect(); picDB.beginTran();
+
+                PersonInChargeMaster workList = new PersonInChargeMaster();
+                // データ存在確認
+                int PersonCode = CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.PersonCode].Text);
+                string strWhere = string.Format(" Where PersonCode = {0}", PersonCode);
                 // データ読込
-                if (!picDB.SelectAction(strWhere, ref workList))
+                if (!picDB.SelectAction(strWhere, ref workList, false))
                 {
                     MessageBox.Show("削除確認に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return;
                 }
+
                 // 終了年月日
-                workList[0].StartDate = DateTime.Now;
+                if (!picDB.UpdateFeild(PersonCode, (int)IOMPersonInCharge.ColumnCnt.EndDate, DateTime.Now, false))
+                {
+                    picDB.rollback();
+                    MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
                 // 削除フラグ
-                workList[0].DeleteFlg = 1;
-                // データ更新
-                if (!picDB.UpdateAction(strWhere, workList[0]))
+                if (!picDB.UpdateFeild(PersonCode, (int)IOMPersonInCharge.ColumnCnt.DeleteFlg, 1, false))
                 {
+                    picDB.rollback();
                     MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return;
                 }
+                picDB.commit();
 
+                CommonMotions.RemoveEndMessage("担当者情報データ");
+
+                //// 終了年月日
+                //workList[0].EndDate = DateTime.Now;
+                //// 削除フラグ
+                //workList[0].DeleteFlg = 1;
+                //// データ更新
+                //if (!picDB.UpdateAction(strWhere, workList[0]))
+                //{
+                //    MessageBox.Show("削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                //    return;
+                //}
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -367,53 +461,6 @@
         }
         #endregion
 
-        #region 開始年月日入力後処理
-        /// <summary>
-        /// 開始年月日入力後処理
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void txtInputDate_TextChanged(object sender, EventArgs e)
-        {
-            TextBox txtbox = (TextBox)sender;
-
-            // 新規のときのみ処理する
-            if (lblPersonCode.Text.Length != 0) return;
-
-            // 終了日付の場合は処理を終了する
-            if (txtbox == (TextBox)m_dispControl[(int)Dispcount.EndDate]) return;
-
-            // 日付をyyyy/mm/dd形式で表示する
-            if (txtbox.Text.Length == 0) return;
-
-            // 日付がおかしくないかをチェックする
-            if(!CommonMotions.chkDate(txtbox.Text.ToString())) return;
-
-            // 日付編集表示
-            DateTime wrkDt = DateTime.Parse(txtbox.Text);
-            txtbox.Text = wrkDt.ToShortDateString();
-
-            // 担当者コード用にyyyy/mmを取得する
-            string work = wrkDt.Year.ToString("0000") + "/" + wrkDt.Month.ToString("00");
-        
-            // 担当者コードの基を取得する
-            int personcode = GetMaxPersonCode(work);
-            if (personcode == 0)
-            {   // 対象月に登録者がいない場合は1番で作成
-                m_dispControl[(int)Dispcount.PersonCode].Text = work.Replace("/", "") + string.Format("{0:00}", 1);
-            }
-            else
-            {   // 対象月に登録者がいた場合はその番号+1にする
-                m_dispControl[(int)Dispcount.PersonCode].Text = string.Format("{0:00000000}", personcode + 1);
-            }
-            // 新規時はパスワードを同じにする
-            if (m_dispControl[(int)Dispcount.EditMode].Text.Trim().Equals(EditModeStringNew))
-            {
-                m_dispControl[(int)Dispcount.PassWord].Text = m_dispControl[(int)Dispcount.PersonCode].Text;
-            }
-        }
-        #endregion
-
         #region Entryキーでの移動処理
         /// <summary>
         /// Entryキーでの移動処理
@@ -437,63 +484,10 @@
         }
         #endregion
 
-        #region 行選択時処理
+        #region 一覧グリッド選択処理
         /// <summary>
-        /// 行選択時処理
+        /// 一覧グリッド選択処理
         /// </summary>
-        private void DataSelectRow()
-        {
-            try
-            {
-                if (m_bChengeAns)
-                {
-                    if (MessageBox.Show("データに変更があります、登録内容を破棄してよろしいですか？。", "終了確認"
-                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
-                    {
-                        return;
-                    }
-                }
-                if (dgvMaster.Rows.Count < 1) return;
-                if (dgvMaster.CurrentRow.Index < 0) return;
-
-                // 空白行は処理しない
-                if (CommonMotions.chkObjectIsNull(dgvMaster.CurrentRow.Cells[(int)DispListColumn.PERSON_CODE].Value) ||
-                    CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispListColumn.PERSON_CODE].Value).Length == 0)
-                {
-                    // クリア
-                    ClearDisplay();
-                    // フィールドロック解除
-                    ControlLock(false);
-                    return;
-                }
-
-                m_PersonCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispListColumn.PERSON_CODE].Value);
-
-                // クリア
-                ClearDisplay();
-
-                // フィールドロック解除
-                ControlLock();
-
-                // 更新データ取得
-                DispMentenanceData();
-
-                // モード表示
-                m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringEdit;
-                // フォーカスセット
-                m_dispControl[(int)Dispcount.PersonName].Focus();
-            }
-            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 dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
@@ -531,10 +525,12 @@
             // フィールドロック解除
             ControlLock();
 
+            // 旧セキュリティ区分セット
+            m_dispControl[(int)DispCtrl.SecurityManegement].Text = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key.ToString();
             // モード表示
-            m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringNew;
+            m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringNew;
             // フォーカスセット
-            m_dispControl[(int)Dispcount.PersonName].Focus();
+            m_dispControl[(int)DispCtrl.PersonName].Focus();
         }
         #endregion
 
@@ -588,23 +584,12 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbSecurityManagement_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbSecManage_SelectedValueChanged(object sender, EventArgs e)
         {
             if (m_bEventStop) return;
 
-            int wrk = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.SecurityManagement]).SelectedValue.ToString());
-            if (wrk == 0 || wrk == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-            {
-                label15.Visible = false;
-                lblMessageColor.Visible = false;
-                btnBackColor.Visible = false;
-            }
-            else
-            {
-                label15.Visible = true;
-                lblMessageColor.Visible = true;
-                btnBackColor.Visible = true;
-            }
+            // 参照部署表示
+            CtrlRefDepDisp();
         }
         #endregion
 
@@ -620,679 +605,146 @@
 
             wrkTxt.Text = CommonMotions.cnvDouble(wrkTxt.Text).ToString("#,0");
             // 月給入力時
-            if (wrkTxt.Name == m_dispControl[(int)Dispcount.MonthlySalary].Name)
+            if (wrkTxt.Name == m_dispControl[(int)DispCtrl.MonthlySalary].Name)
             {
-                m_dispControl[(int)Dispcount.YearSalary].Text = CommonMotions.cnvRound(CommonMotions.cnvDouble(wrkTxt.Text) * s_MonthCount).ToString("#,#0");
+                m_dispControl[(int)DispCtrl.YearSalary].Text = CommonMotions.cnvRound(CommonMotions.cnvDouble(wrkTxt.Text) * s_MonthCount).ToString("#,#0");
             }
         }
         #endregion
 
-        #region 初期時データ取得
+        #region 色選択ボタン
         /// <summary>
-        /// 初期時データ取得
+        /// 色選択ボタン変更
         /// </summary>
-        private bool DispGridData()
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnBackColor_Click(object sender, EventArgs e)
         {
-            // 担当者マスタクラス
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            ColorDialog cd = new ColorDialog();
             try
             {
-                // 担当者マスタ取得クラス領域
-                List<PersonInChargeMaster> pic = new List<PersonInChargeMaster>();
-                // 担当者マスタ取得SQL
-                string strSql = string.Format(" Where EmployeeClassFlg = {0} And DeleteFlg = 0 Order By DisplayOrder ASC", (int)CommonDefine.EmployeeClassFlg.Regular);
-                // グリッドの行を0に戻す
-                dgvMaster.Rows.Clear(); ;
-                // 担当者マスタ取得
-                if (!picDB.SelectAction(strSql, ref pic)) return false;
+                // ボタンの時
+                if (!sender.GetType().Equals(typeof(Button))) return;
+                Button ClickButton = (Button)sender;
 
-                // データ表示
-                int ino = 1, icnt = 0;
-                foreach (PersonInChargeMaster work in pic)
-                {
-                    dgvMaster.Rows.Add((ino++).ToString()
-                                        , work.PersonCode
-                                        , work.PersonName
-                                        , work.StartDate.ToShortDateString()
-                                        , work.EndDate.ToShortDateString()
-                                        , work.PassWord
-                                        , work.SecurityManagement.ToString());
+                //色の作成部分を表示可能にする、デフォルトがTrueのため必要はない
+                cd.AllowFullOpen = true;
+                //純色だけに制限しない、デフォルトがFalseのため必要はない
+                cd.SolidColorOnly = false;
+                //[作成した色]に指定した色（RGB値）を表示する
+                cd.CustomColors = new int[] {
+                        0x33, 0x66, 0x99, 0xCC, 0x3300, 0x3333,
+                        0x3366, 0x3399, 0x33CC, 0x6600, 0x6633,
+                        0x6666, 0x6699, 0x66CC, 0x9900, 0x9933};
 
-                    dgvMaster.Rows[icnt++].Cells[(int)DispListColumn.PERSON_NAME].ToolTipText = work.PersonName;
-                }
-                // 表示行が足りない場合は追加する
-                if (dgvMaster.Rows.Count <= CommonDefine.s_MaxInitLineCountMastamente)
+                //ダイアログを表示する
+                if (cd.ShowDialog() == DialogResult.OK)
                 {
-                    int iAddLine = CommonDefine.s_MaxInitLineCountMastamente - dgvMaster.Rows.Count;
-                    for (int i = 0; i < iAddLine; i++)
-                    {
-                        dgvMaster.Rows.Add();
-                    }
+                    //選択された色の取得
+                    m_dispControl[(int)DispCtrl.MessageColor].BackColor = cd.Color;
                 }
-
-                // 読込時データカウント取得
-                m_initDataCount = pic.Count;
-
-                // 行を選択しない
-                dgvMaster.ClearSelection();
-
-                return true;
-
             }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                picDB.close();
-                picDB = null;
-            }
-        }
-        #endregion
-
-        #region 更新データ表示処理
-        /// <summary>
-        /// 更新データ表示処理
-        /// </summary>
-        /// <param name="iLinecnt">行カウント</param>
-        /// <returns></returns>
-        private bool DispMentenanceData()
-        {
-            // 担当者マスタクラス
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            try
-            {
-                // 担当者マスタ取得クラス領域
-                PersonInChargeMaster picList = new PersonInChargeMaster();
-
-                // 担当者マスタ取得SQL
-                string strSql = string.Format(" Where PersonCode = {0}", m_PersonCode.ToString());
-
-                // 担当者マスタ取得
-                if (!picDB.SelectAction(strSql, ref picList)) return false;
-
-                // データ表示
-                // データ表示
-                m_dispControl[(int)Dispcount.PersonCode].Text = picList.PersonCode.ToString();
-                m_dispControl[(int)Dispcount.PersonName].Text = picList.PersonName;
-                m_dispControl[(int)Dispcount.StartDate].Text = picList.StartDate.ToShortDateString();
-
-                if (picList.EndDate != DateTime.MinValue)
-                    m_dispControl[(int)Dispcount.EndDate].Text = picList.EndDate.ToShortDateString();
-
-                m_dispControl[(int)Dispcount.PassWord].Text = picList.PassWord;
-
-                m_dispControl[(int)Dispcount.MonthlySalary].Text = picList.MonthlySalary.ToString("#,#0");
-                m_dispControl[(int)Dispcount.YearSalary].Text = picList.YearSalary.ToString("#,#0");
-
-                // 一般使用者は承認色を使用しない
-                if (picList.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    label15.Visible = false;
-                    m_dispControl[(int)Dispcount.MessageColor].Visible = false;
-                    btnBackColor.Visible = false;
-                }
-                else
-                {
-                    label15.Visible = true;
-                    m_dispControl[(int)Dispcount.MessageColor].Visible = true;
-                    btnBackColor.Visible = true;
-
-                    // 背景色設定
-                    m_dispControl[(int)Dispcount.MessageColor].BackColor = CommonMotions.getBackForeColor(picList.MsgBackColor
-                                                                        , CommonDefine.PalceOfColor.BackColor);
-                }
-
-                m_bEventStop = true;
-                ((ComboBox)m_dispControl[(int)Dispcount.SecurityManagement]).SelectedValue = picList.SecurityManagement;
-                ((ComboBox)m_dispControl[(int)Dispcount.Department]).SelectedValue = picList.DepartmentCode;
-                m_bEventStop = false;
-
-                ((ComboBox)m_dispControl[(int)Dispcount.LedgerFlg]).SelectedValue = picList.LedgerFlg;
-
-                m_dispControl[(int)Dispcount.DisplayString].Text = picList.DisplayString;
-                m_dispControl[(int)Dispcount.Qualification].Text = picList.Qualification;
-                m_dispControl[(int)Dispcount.SealPrintName].Text = picList.SealPrintName;
-
-
-                m_bChengeAns = false;
-
-
-                return true;
-
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                picDB.close();
-                picDB = null;
-            }
-        }
-        #endregion
-
-        #region 画面ロック
-        /// <summary>
-        /// 画面ロック
-        /// </summary>
-        private void ControlLock(bool bctrl = true)
-        {
-            foreach (Control wrk in m_dispControl)
-            {
-                if (CommonMotions.chkObjectIsNull(wrk)) continue;
-                if (!wrk.GetType().Equals(typeof(Label)))
-                    wrk.Enabled = bctrl;
-            }
-        }
-        #endregion
-
-        #region 画面クリア
-        /// <summary>
-        /// 画面クリア
-        /// </summary>
-        private void ClearDisplay()
-        {
-            foreach (Control wrk in m_dispControl)
-            {
-                if (CommonMotions.chkObjectIsNull(wrk)) continue;
-                wrk.Text = "";
-                CommonMotions.chgBackColor(wrk, true);
-            }
-
-            // 新規時は担当者コードを表示しない
-            if (m_PersonCode == 0)
-            {
-                lblPersonLabel.Visible = false;
-                lblPersonCode.Visible = false;
-            }
-            else
-            {
-                lblPersonLabel.Visible = true;
-                lblPersonCode.Visible = true;
-            }
-            // コンボボックス初期処理
-            SetSecurityManagementCombBox();
-            SetDepartmentCombBox();
-            SetCalcLedgerCombBox();
-
-            m_bChengeAns = false;
-        }
-        #endregion
-
-        #region 画面項目のチェック
-        /// <summary>
-        /// 画面項目のチェック
-        /// </summary>
-        /// <returns></returns>
-        private bool DispFeildCheck()
-        {
-            bool bRet = true;
-            int iLength = 0;
-            try
-            {
-                // 担当者名
-                if (m_dispControl[(int)Dispcount.PersonName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.PersonName], s_PersonNameLength, true);
-
-                // マスタ使用開始年月
-                if (m_dispControl[(int)Dispcount.StartDate].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)Dispcount.StartDate], true);
-
-                // マスタ使用終了年月
-                if (m_dispControl[(int)Dispcount.EndDate].Text.Length != 0) iLength++;
-                if (m_dispControl[(int)Dispcount.EndDate].Text != CommonDefine.s_UndecidedString)
-                    bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)Dispcount.EndDate]);
-
-                //　パスワード
-                if (m_dispControl[(int)Dispcount.PassWord].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.PassWord], s_PassWordLength, true);
-
-                //　セキュリティ区分
-                if (m_dispControl[(int)Dispcount.SecurityManagement].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldIndispensable(m_dispControl[(int)Dispcount.SecurityManagement]);
-
-                // 表示・印刷名称
-                if (m_dispControl[(int)Dispcount.DisplayString].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.DisplayString], s_DisplayStringLength);
-
-                //　部署コード
-                int SecVal = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.SecurityManagement]).SelectedValue.ToString());
-                if (SecVal > CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                {
-                    if (m_dispControl[(int)Dispcount.Department].Text.Length != 0) iLength++;
-                    bRet &= CommonMotions.DispFieldIndispensable(m_dispControl[(int)Dispcount.Department]);
-                }
-                
-                // 月給金額
-                if (m_dispControl[(int)Dispcount.MonthlySalary].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)Dispcount.MonthlySalary], true);
-
-                // 年棒金額
-                if (m_dispControl[(int)Dispcount.YearSalary].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)Dispcount.YearSalary], true);
-
-                // 資格情報
-                if (m_dispControl[(int)Dispcount.Qualification].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Qualification], s_QualificationLength, false);
-
-                // 印鑑表示名
-                if (m_dispControl[(int)Dispcount.SealPrintName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.SealPrintName], s_SealPrintNameLength, false);
-
-                if (iLength == 0)
-                {
-                    MessageBox.Show("データが入力されていません、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
-                    return false;
-                }
-                if (!bRet)
-                {
-                    MessageBox.Show("入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
-                    return false;
-                }
-
-                return true;
-            }
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
             }
-        }
-        #endregion
-
-        #region 登録月の最大値担当者コードを取得する
-        /// <summary>
-        /// 登録月の最大値担当者コードを取得する
-        /// </summary>
-        /// <returns></returns>
-        private int GetMaxPersonCode(string strDate)
-        {
-            int iRet = 0;
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            try
-            {
-                // データ更新
-                string strWhere = "";
-                if (strDate.Length != 0)
-                {
-                    strWhere = string.Format(" Where DATE_FORMAT(StartDate,'%Y/%m') = '{0}'", strDate);
-                }
-                iRet = picDB.SelectMaxPersonCodeCount(strWhere);
-
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return iRet;
-            }
             finally
             {
-                picDB.close();
-                picDB = null;
+                cd.Dispose();
             }
-            return iRet;
         }
         #endregion
 
-        #region 担当者マスタ登録
+        #region 日付エリアの入力後処理
         /// <summary>
-        /// 担当者マスタ登録
+        /// 日付エリアの入力後処理
         /// </summary>
-        private bool PersonInChargeMasterDataEntry()
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void txtInput_Validated(object sender, EventArgs e)
         {
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            try
-            {
-                //// 一括処理なので接続を行う
-                picDB.connect();
-                picDB.beginTran();
+            TextBox txtbox = (TextBox)sender;
 
-                // 表示順を更新する
-                foreach (DataGridViewRow wrkRow in dgvMaster.Rows)
-                {
-                    // 担当者コード無は処理しない
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispListColumn.PERSON_CODE].Value)) continue;
-
-                    List<PersonInChargeMaster> cwrow = new List<PersonInChargeMaster>();
-
-                    // 検索文字列作成
-                    string SQLRow = picDB.CreatePrimarykeyString(
-                                                CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.PERSON_CODE].Value));
-
-                    // データ取得
-                    if (!picDB.SelectAction(SQLRow, ref cwrow, false)) break;
-                    // 表示順変更
-                    cwrow[0].DisplayOrder = CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.DISPLAY_ORDER].Value);
-                    // データ更新
-                    picDB.UpdateAction(SQLRow, cwrow[0], false);
-                }
-
-                PersonInChargeMaster work = new PersonInChargeMaster();
-                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
-
-                // 担当者コード
-                work.PersonCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.PersonCode].Text.ToString());
-
-                // 担当者名
-                work.PersonName = m_dispControl[(int)Dispcount.PersonName].Text.ToString();
-
-                // 開始年月日
-                if (m_dispControl[(int)Dispcount.StartDate].Text.Length != 0)
-                    work.StartDate = CommonMotions.cnvDate(m_dispControl[(int)Dispcount.StartDate].Text);
-
-                // 終了年月日
-                if (m_dispControl[(int)Dispcount.EndDate].Text.Length != 0)
-                    work.EndDate = CommonMotions.cnvDate(m_dispControl[(int)Dispcount.EndDate].Text);
-
-                // パスワード
-                if (m_dispControl[(int)Dispcount.PassWord].Text.Length != 0)
-                    work.PassWord = m_dispControl[(int)Dispcount.PassWord].Text;
-
-                // 月給金額
-                if (m_dispControl[(int)Dispcount.MonthlySalary].Text.Length != 0)
-                    work.MonthlySalary = CommonMotions.cnvDouble(m_dispControl[(int)Dispcount.MonthlySalary].Text);
-
-                // 年俸金額
-                if (m_dispControl[(int)Dispcount.YearSalary].Text.Length != 0)
-                    work.YearSalary = CommonMotions.cnvDouble(m_dispControl[(int)Dispcount.YearSalary].Text);
-
-                // 機密区分
-                if (m_dispControl[(int)Dispcount.SecurityManagement].Text.Length != 0)
-                    work.SecurityManagement = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.SecurityManagement]).SelectedValue.ToString());
-
-                // 工事詳細台帳
-                if (m_dispControl[(int)Dispcount.LedgerFlg].Text.Length != 0)
-                    work.LedgerFlg = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.LedgerFlg]).SelectedValue.ToString());
-
-                // メッセージ背景色
-                if (m_dispControl[(int)Dispcount.MessageColor].Visible)
-                {
-                    Control wrkCtrl = m_dispControl[(int)Dispcount.MessageColor];
-                    work.MsgBackColor = String.Format("0x{0:X2}{1:X2}{2:X2}"
-                                        , wrkCtrl.BackColor.R, wrkCtrl.BackColor.G, wrkCtrl.BackColor.B);
-                }
-
-                // 表示・印刷文字列
-                if (m_dispControl[(int)Dispcount.DisplayString].Text.Length != 0)
-                    work.DisplayString = m_dispControl[(int)Dispcount.DisplayString].Text;
-
-                // 部署コード
-                if (m_dispControl[(int)Dispcount.Department].Text.Length != 0)
-                    work.DepartmentCode = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.Department]).SelectedValue.ToString());
-
-                // 資格情報
-                work.Qualification = m_dispControl[(int)Dispcount.Qualification].Text.ToString();
-
-                // 印鑑表示名
-                work.SealPrintName = m_dispControl[(int)Dispcount.SealPrintName].Text.ToString();
-
-                // 社員区分（社員）
-                work.EmployeeClassFlg = (int)CommonDefine.EmployeeClassFlg.Regular;
-
-                // 削除フラグ
-                work.DeleteFlg = 0;
-
-                // 表示順はセットしない
-                work.DisplayOrder = 0;
-
-                // 
-                string strWhere = string.Format(" Where PersonCode = {0}", work.PersonCode.ToString());
-
-                if (!picDB.SelectAction(strWhere, ref workList, false))
-                {
-                    picDB.rollback();
-                    MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                if (workList.Count == 0)
-                {
-                    // 表示順セット
-                    work.DisplayOrder = picDB.SelectMaxDisplayCount("", false) + 1;
-                    // データがない場合
-                    workList.Clear();
-                    workList.Add(work);
-                    // データ登録
-                    if(!picDB.InsertAction(workList, false))
-                    {
-                        picDB.rollback();
-                        MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
-                }
-                else
-                {
-                    // 表示順セット
-                    work.DisplayOrder = workList[0].DisplayOrder;
-                    // データがある場合
-                    // データ更新
-                    if(!picDB.UpdateAction(strWhere, work, false))
-                    {
-                        picDB.rollback();
-                        MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
-                }
-
-                // 成功したらcommit
-                picDB.commit();
-
-                // コードクリア
-                m_PersonCode = 0;
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                picDB.close();
-                picDB = null;
-            }
+            // 入力後処理
+            InputDateField(txtbox);
         }
         #endregion
 
-        #region 表示オブジェクトの取得
+        #region 日付フィールド値変更時
         /// <summary>
-        /// 表示オブジェクトの取得
+        /// 日付フィールド値変更時
         /// </summary>
-        private void SetDisplayObject()
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void txtInput_TextChanged(object sender, EventArgs e)
         {
-            int DspCtrlCnt = Enum.GetNames(typeof(Dispcount)).Length;
-            m_dispControl = new Control[DspCtrlCnt];
-
-            m_dispControl[(int)Dispcount.PersonCode] = lblPersonCode;
-            m_dispControl[(int)Dispcount.PersonName] = txtInput1;
-            m_dispControl[(int)Dispcount.StartDate] = txtInput2;
-            m_dispControl[(int)Dispcount.EndDate] = txtInput3;
-            m_dispControl[(int)Dispcount.PassWord] = txtInput4;
-            m_dispControl[(int)Dispcount.MonthlySalary] = txtInput6;
-            m_dispControl[(int)Dispcount.YearSalary] = txtInput7;
-            m_dispControl[(int)Dispcount.SecurityManagement] = cmbSecurityManagement;
-            m_dispControl[(int)Dispcount.MessageColor] = lblMessageColor;
-            m_dispControl[(int)Dispcount.Department] = cmbDepartment;
-            m_dispControl[(int)Dispcount.DisplayString] = txtInput5;
-            m_dispControl[(int)Dispcount.Qualification] = txtInput8;
-            m_dispControl[(int)Dispcount.SealPrintName] = txtInput9;
-            m_dispControl[(int)Dispcount.LedgerFlg] = cmbLedgerFlg;
-
-            m_dispControl[(int)Dispcount.EditMode] = lblEditMode;
+            m_bDateChange = true;
         }
         #endregion
 
-        #region 機密区分コンボボックス初期表示処理
+        #region 給与追加ボタン
         /// <summary>
-        /// 機密区分コンボボックス初期表示処理
+        /// 給与追加ボタン
         /// </summary>
-        private void SetSecurityManagementCombBox()
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnSalaryAdd_Click(object sender, EventArgs e)
         {
-            m_bEventStop = true;
-            try
-            {
-                // コンボボックスクリア
-                cmbSecurityManagement.DataSource = null;
-                cmbSecurityManagement.Items.Clear();
-
-                // 選択項目クリア
-                cmbSecurityManagement.Text = "";
-
-                //コンボボックスのデータをセットする
-
-                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
-                DataList.Add(new KeyValuePair<int, string>(0, ""));
-                foreach (KeyValuePair<int, string> wrk in CommonDefine.SystemManageDiv)
-                {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.Key, wrk.Value);
-
-                    DataList.Add(keyval);
-                }
-                // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbSecurityManagement, DataList);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                m_bEventStop = false;
-            }
+            // 給与グリッド追加
+            SalaryGridDataAdd();
         }
         #endregion
 
-        #region 部署コンボボックス初期表示処理
+        #region 給与削除ボタン
         /// <summary>
-        /// 部署コンボボックス初期表示処理
+        /// 給与削除ボタン
         /// </summary>
-        private void SetDepartmentCombBox()
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnSalaryDelete_Click(object sender, EventArgs e)
         {
-            IOMDepartment dmDB = new IOMDepartment();
-            m_bEventStop = true;
-            try
-            {
-                // コンボボックスクリア
-                cmbDepartment.DataSource = null;
-                cmbDepartment.Items.Clear();
+            DataGridView dgv = dgvSalary;
+            int rowCnt = dgv.CurrentRow.Index;
 
-                // 選択項目クリア
-                cmbDepartment.Text = "";
+            // データ無行は処理しない
+            string sStartDate = CommonMotions.cnvDate(dgv.Rows[rowCnt].Cells[(int)SalaryGridColumn.StartData].Value).ToShortDateString();
+            if (sStartDate.Length == 0) return;
 
-                //コンボボックスのデータをセットする
-                string strSQL = " Where DeleteFlg = 0 Order By DisplayOrder";
-                List<DepartmentMaster> data = new List<DepartmentMaster>();
-                if (!dmDB.SelectAction(strSQL, ref data)) return;
-
-                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
-                foreach (DepartmentMaster wrk in data)
-                {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.DepartmentCode, wrk.DepartmentString);
-
-                    DataList.Add(keyval);
-                }
-                // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbDepartment, DataList);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                dmDB.close();
-                dmDB = null;
-
-                m_bEventStop = false;
-            }
+            // 給与グリッド削除
+            SalaryGridDataRemove(rowCnt);
         }
         #endregion
 
-        #region 工事詳細台帳計算対象コンボボックス初期表示処理
+        #region 参照部署追加ボタン
         /// <summary>
-        /// 工事詳細台帳計算対象コンボボックス初期表示処理
+        /// 参照部署追加ボタン
         /// </summary>
-        private void SetCalcLedgerCombBox()
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnRefDepAdd_Click(object sender, EventArgs e)
         {
-            m_bEventStop = true;
-            try
-            {
-                // コンボボックスクリア
-                cmbLedgerFlg.DataSource = null;
-                cmbLedgerFlg.Items.Clear();
-
-                // 選択項目クリア
-                cmbLedgerFlg.Text = "";
-
-                //コンボボックスのデータをセットする
-
-                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
-                for (int i = 0; i < PersonLedgerDivNoName.Length; i++)
-                {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(i, PersonLedgerDivNoName[i]);
-
-                    DataList.Add(keyval);
-                }
-                // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbLedgerFlg, DataList);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                m_bEventStop = false;
-            }
+            // 参照部署グリッド追加
+            RefDepGridDataAdd();
         }
         #endregion
 
-        #region 色選択ボタン
+        #region 参照部署削除ボタン
         /// <summary>
-        /// 色選択ボタン変更
+        /// 参照部署削除ボタン
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void btnBackColor_Click(object sender, EventArgs e)
+        private void btnRefDepDel_Click(object sender, EventArgs e)
         {
-            ColorDialog cd = new ColorDialog();
-            try
-            {
-                // ボタンの時
-                if (!sender.GetType().Equals(typeof(Button))) return;
-                Button ClickButton = (Button)sender;
+            DataGridView dgv = dgvRefDepartment;
+            int rowCnt = dgv.CurrentRow.Index;
 
-                //色の作成部分を表示可能にする、デフォルトがTrueのため必要はない
-                cd.AllowFullOpen = true;
-                //純色だけに制限しない、デフォルトがFalseのため必要はない
-                cd.SolidColorOnly = false;
-                //[作成した色]に指定した色（RGB値）を表示する
-                cd.CustomColors = new int[] {
-                        0x33, 0x66, 0x99, 0xCC, 0x3300, 0x3333,
-                        0x3366, 0x3399, 0x33CC, 0x6600, 0x6633,
-                        0x6666, 0x6699, 0x66CC, 0x9900, 0x9933};
+            // データ無行は処理しない
+            string sDepName = CommonMotions.cnvDate(dgv.Rows[rowCnt].Cells[(int)RefDepGridColumn.DepName].Value).ToShortDateString();
+            if (sDepName.Length == 0) return;
 
-                //ダイアログを表示する
-                if (cd.ShowDialog() == DialogResult.OK)
-                {
-                    //選択された色の取得
-                    m_dispControl[(int)Dispcount.MessageColor].BackColor = cd.Color;
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                cd.Dispose();
-            }
+            // 部署グリッド削除
+            RefDepGridDataRemove(rowCnt);
         }
         #endregion
     }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.designer.cs	(revision 51)
@@ -34,47 +34,71 @@
             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();
             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.lblEditMode = new System.Windows.Forms.Label();
+            this.btnDataSelect = new System.Windows.Forms.Button();
+            this.btnDataLineEntry = new System.Windows.Forms.Button();
+            this.btnDispDown = new System.Windows.Forms.Button();
+            this.btnDispUp = new System.Windows.Forms.Button();
+            this.panel1 = new System.Windows.Forms.Panel();
             this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
-            this.cmbLedgerFlg = new System.Windows.Forms.ComboBox();
+            this.lblPersonCode = new System.Windows.Forms.Label();
             this.btnBackColor = new System.Windows.Forms.Button();
-            this.lblMessageColor = new System.Windows.Forms.Label();
-            this.lblPersonCode = new System.Windows.Forms.Label();
             this.lblPersonLabel = new System.Windows.Forms.Label();
             this.label3 = new System.Windows.Forms.Label();
+            this.lblMessageColor = new System.Windows.Forms.Label();
             this.txtInput1 = new System.Windows.Forms.TextBox();
             this.label8 = new System.Windows.Forms.Label();
             this.txtInput2 = new System.Windows.Forms.TextBox();
             this.label9 = new System.Windows.Forms.Label();
-            this.txtInput3 = new System.Windows.Forms.TextBox();
-            this.label4 = new System.Windows.Forms.Label();
+            this.txtInput3 = new ProcessManagement.Forms.CustomControls.TextBoxEX();
             this.txtInput4 = new System.Windows.Forms.TextBox();
-            this.cmbSecurityManagement = new System.Windows.Forms.ComboBox();
-            this.label6 = new System.Windows.Forms.Label();
-            this.label5 = new System.Windows.Forms.Label();
-            this.cmbDepartment = new System.Windows.Forms.ComboBox();
-            this.txtInput5 = new System.Windows.Forms.TextBox();
+            this.label15 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.dgvSalary = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.SalaryColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SalaryColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SalaryColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.label7 = new System.Windows.Forms.Label();
+            this.txtInput6 = new System.Windows.Forms.TextBox();
             this.label10 = new System.Windows.Forms.Label();
-            this.txtInput6 = new System.Windows.Forms.TextBox();
             this.txtInput7 = new System.Windows.Forms.TextBox();
-            this.label2 = new System.Windows.Forms.Label();
             this.label11 = new System.Windows.Forms.Label();
+            this.txtInput10 = new System.Windows.Forms.TextBox();
+            this.btnSalaryAdd = new System.Windows.Forms.Button();
+            this.btnSalaryDel = new System.Windows.Forms.Button();
             this.label12 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
             this.label13 = new System.Windows.Forms.Label();
+            this.label14 = new System.Windows.Forms.Label();
+            this.label16 = new System.Windows.Forms.Label();
+            this.cmbDepartment = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.txtInput5 = new System.Windows.Forms.TextBox();
             this.txtInput8 = new System.Windows.Forms.TextBox();
-            this.label14 = new System.Windows.Forms.Label();
             this.txtInput9 = new System.Windows.Forms.TextBox();
-            this.label15 = new System.Windows.Forms.Label();
-            this.label16 = new System.Windows.Forms.Label();
-            this.lblEditMode = new System.Windows.Forms.Label();
-            this.btnDataSelect = new System.Windows.Forms.Button();
-            this.btnDataLineEntry = new System.Windows.Forms.Button();
-            this.btnDispDown = new System.Windows.Forms.Button();
-            this.btnDispUp = new System.Windows.Forms.Button();
+            this.cmbLedgerFlg = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.label17 = new System.Windows.Forms.Label();
+            this.cmbSecManage = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.label18 = new System.Windows.Forms.Label();
+            this.lblSecRank = new System.Windows.Forms.Label();
+            this.lblSecRange = new System.Windows.Forms.Label();
+            this.dgvRefDepartment = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.TextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cmbRefDepartment = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.btnRefDepAdd = new System.Windows.Forms.Button();
+            this.btnRefDepDel = new System.Windows.Forms.Button();
             this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -83,7 +107,11 @@
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.lblSecurtyManegement = new System.Windows.Forms.Label();
+            this.panel1.SuspendLayout();
             this.tableLayoutPanel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvSalary)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvRefDepartment)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
             this.SuspendLayout();
             // 
@@ -95,7 +123,7 @@
             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 = 10;
+            this.btnDataEntry.TabIndex = 16;
             this.btnDataEntry.Text = "内容登録";
             this.btnDataEntry.UseVisualStyleBackColor = false;
             this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
@@ -108,7 +136,7 @@
             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 = 12;
+            this.btnEnd.TabIndex = 18;
             this.btnEnd.Text = "終　了";
             this.btnEnd.UseVisualStyleBackColor = false;
             this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
@@ -134,51 +162,134 @@
             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 = 11;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.TabIndex = 17;
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
+            // lblEditMode
+            // 
+            this.lblEditMode.BackColor = System.Drawing.Color.White;
+            this.lblEditMode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblEditMode.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblEditMode.Location = new System.Drawing.Point(600, 40);
+            this.lblEditMode.Name = "lblEditMode";
+            this.lblEditMode.Size = new System.Drawing.Size(117, 32);
+            this.lblEditMode.TabIndex = 8;
+            this.lblEditMode.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // 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.Location = new System.Drawing.Point(300, 650);
+            this.btnDataSelect.Name = "btnDataSelect";
+            this.btnDataSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnDataSelect.TabIndex = 0;
+            this.btnDataSelect.TabStop = false;
+            this.btnDataSelect.Text = "選　択";
+            this.btnDataSelect.UseVisualStyleBackColor = false;
+            this.btnDataSelect.Click += new System.EventHandler(this.btnDataSelect_Click);
+            // 
+            // btnDataLineEntry
+            // 
+            this.btnDataLineEntry.BackColor = System.Drawing.Color.PaleGreen;
+            this.btnDataLineEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataLineEntry.Location = new System.Drawing.Point(428, 650);
+            this.btnDataLineEntry.Name = "btnDataLineEntry";
+            this.btnDataLineEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataLineEntry.TabIndex = 0;
+            this.btnDataLineEntry.TabStop = false;
+            this.btnDataLineEntry.Text = "新規登録";
+            this.btnDataLineEntry.UseVisualStyleBackColor = false;
+            this.btnDataLineEntry.Click += new System.EventHandler(this.btnDataLineEntry_Click);
+            // 
+            // btnDispDown
+            // 
+            this.btnDispDown.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispDown.Location = new System.Drawing.Point(554, 332);
+            this.btnDispDown.Name = "btnDispDown";
+            this.btnDispDown.Size = new System.Drawing.Size(40, 40);
+            this.btnDispDown.TabIndex = 15;
+            this.btnDispDown.TabStop = false;
+            this.btnDispDown.Text = "▼";
+            this.btnDispDown.UseVisualStyleBackColor = true;
+            this.btnDispDown.Click += new System.EventHandler(this.btnDispDown_Click);
+            // 
+            // btnDispUp
+            // 
+            this.btnDispUp.Font = new System.Drawing.Font("ＭＳ 明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispUp.Location = new System.Drawing.Point(554, 268);
+            this.btnDispUp.Name = "btnDispUp";
+            this.btnDispUp.Size = new System.Drawing.Size(40, 40);
+            this.btnDispUp.TabIndex = 14;
+            this.btnDispUp.TabStop = false;
+            this.btnDispUp.Text = "▲";
+            this.btnDispUp.UseVisualStyleBackColor = true;
+            this.btnDispUp.Click += new System.EventHandler(this.btnDispUp_Click);
+            // 
+            // panel1
+            // 
+            this.panel1.AutoScroll = true;
+            this.panel1.Controls.Add(this.tableLayoutPanel1);
+            this.panel1.Location = new System.Drawing.Point(600, 100);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(610, 540);
+            this.panel1.TabIndex = 16;
+            // 
             // tableLayoutPanel1
             // 
-            this.tableLayoutPanel1.ColumnCount = 3;
+            this.tableLayoutPanel1.ColumnCount = 4;
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 27F));
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 48F));
-            this.tableLayoutPanel1.Controls.Add(this.cmbLedgerFlg, 1, 13);
-            this.tableLayoutPanel1.Controls.Add(this.btnBackColor, 2, 8);
-            this.tableLayoutPanel1.Controls.Add(this.lblMessageColor, 1, 8);
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
             this.tableLayoutPanel1.Controls.Add(this.lblPersonCode, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.btnBackColor, 2, 23);
             this.tableLayoutPanel1.Controls.Add(this.lblPersonLabel, 0, 0);
             this.tableLayoutPanel1.Controls.Add(this.label3, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.lblMessageColor, 1, 23);
             this.tableLayoutPanel1.Controls.Add(this.txtInput1, 1, 1);
             this.tableLayoutPanel1.Controls.Add(this.label8, 0, 2);
             this.tableLayoutPanel1.Controls.Add(this.txtInput2, 1, 2);
             this.tableLayoutPanel1.Controls.Add(this.label9, 0, 3);
             this.tableLayoutPanel1.Controls.Add(this.txtInput3, 1, 3);
-            this.tableLayoutPanel1.Controls.Add(this.label4, 0, 7);
             this.tableLayoutPanel1.Controls.Add(this.txtInput4, 1, 4);
-            this.tableLayoutPanel1.Controls.Add(this.cmbSecurityManagement, 1, 7);
-            this.tableLayoutPanel1.Controls.Add(this.label6, 0, 9);
-            this.tableLayoutPanel1.Controls.Add(this.label5, 0, 10);
-            this.tableLayoutPanel1.Controls.Add(this.cmbDepartment, 1, 9);
-            this.tableLayoutPanel1.Controls.Add(this.txtInput5, 1, 10);
+            this.tableLayoutPanel1.Controls.Add(this.label15, 0, 23);
+            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 4);
+            this.tableLayoutPanel1.Controls.Add(this.dgvSalary, 0, 7);
             this.tableLayoutPanel1.Controls.Add(this.label7, 0, 5);
-            this.tableLayoutPanel1.Controls.Add(this.label10, 0, 6);
             this.tableLayoutPanel1.Controls.Add(this.txtInput6, 1, 5);
-            this.tableLayoutPanel1.Controls.Add(this.txtInput7, 1, 6);
-            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 4);
-            this.tableLayoutPanel1.Controls.Add(this.label11, 2, 5);
-            this.tableLayoutPanel1.Controls.Add(this.label12, 2, 6);
-            this.tableLayoutPanel1.Controls.Add(this.label13, 0, 11);
-            this.tableLayoutPanel1.Controls.Add(this.txtInput8, 1, 11);
-            this.tableLayoutPanel1.Controls.Add(this.label14, 0, 12);
-            this.tableLayoutPanel1.Controls.Add(this.txtInput9, 1, 12);
-            this.tableLayoutPanel1.Controls.Add(this.label15, 0, 8);
-            this.tableLayoutPanel1.Controls.Add(this.label16, 0, 13);
-            this.tableLayoutPanel1.Location = new System.Drawing.Point(600, 100);
+            this.tableLayoutPanel1.Controls.Add(this.label10, 2, 5);
+            this.tableLayoutPanel1.Controls.Add(this.txtInput7, 3, 5);
+            this.tableLayoutPanel1.Controls.Add(this.label11, 0, 6);
+            this.tableLayoutPanel1.Controls.Add(this.txtInput10, 1, 6);
+            this.tableLayoutPanel1.Controls.Add(this.btnSalaryAdd, 2, 6);
+            this.tableLayoutPanel1.Controls.Add(this.btnSalaryDel, 3, 6);
+            this.tableLayoutPanel1.Controls.Add(this.label12, 0, 18);
+            this.tableLayoutPanel1.Controls.Add(this.label4, 0, 17);
+            this.tableLayoutPanel1.Controls.Add(this.label6, 0, 10);
+            this.tableLayoutPanel1.Controls.Add(this.label5, 0, 11);
+            this.tableLayoutPanel1.Controls.Add(this.label13, 0, 12);
+            this.tableLayoutPanel1.Controls.Add(this.label14, 0, 13);
+            this.tableLayoutPanel1.Controls.Add(this.label16, 0, 14);
+            this.tableLayoutPanel1.Controls.Add(this.cmbDepartment, 1, 10);
+            this.tableLayoutPanel1.Controls.Add(this.txtInput5, 1, 11);
+            this.tableLayoutPanel1.Controls.Add(this.txtInput8, 1, 12);
+            this.tableLayoutPanel1.Controls.Add(this.txtInput9, 1, 13);
+            this.tableLayoutPanel1.Controls.Add(this.cmbLedgerFlg, 1, 14);
+            this.tableLayoutPanel1.Controls.Add(this.label17, 0, 15);
+            this.tableLayoutPanel1.Controls.Add(this.cmbSecManage, 1, 15);
+            this.tableLayoutPanel1.Controls.Add(this.label18, 0, 16);
+            this.tableLayoutPanel1.Controls.Add(this.lblSecRank, 1, 16);
+            this.tableLayoutPanel1.Controls.Add(this.lblSecRange, 1, 17);
+            this.tableLayoutPanel1.Controls.Add(this.dgvRefDepartment, 0, 19);
+            this.tableLayoutPanel1.Controls.Add(this.cmbRefDepartment, 0, 22);
+            this.tableLayoutPanel1.Controls.Add(this.btnRefDepAdd, 2, 22);
+            this.tableLayoutPanel1.Controls.Add(this.btnRefDepDel, 3, 22);
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(1, 1);
             this.tableLayoutPanel1.Name = "tableLayoutPanel1";
-            this.tableLayoutPanel1.RowCount = 14;
+            this.tableLayoutPanel1.RowCount = 24;
             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));
@@ -188,68 +299,52 @@
             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, 42F));
             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.Size = new System.Drawing.Size(610, 490);
-            this.tableLayoutPanel1.TabIndex = 0;
+            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, 35F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 40F));
+            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.Size = new System.Drawing.Size(580, 817);
+            this.tableLayoutPanel1.TabIndex = 1;
             // 
-            // cmbLedgerFlg
+            // lblPersonCode
             // 
-            this.cmbLedgerFlg.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.cmbLedgerFlg, 2);
-            this.cmbLedgerFlg.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbLedgerFlg.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbLedgerFlg.FormattingEnabled = true;
-            this.cmbLedgerFlg.Location = new System.Drawing.Point(155, 462);
-            this.cmbLedgerFlg.Name = "cmbLedgerFlg";
-            this.cmbLedgerFlg.Size = new System.Drawing.Size(300, 24);
-            this.cmbLedgerFlg.TabIndex = 16;
+            this.lblPersonCode.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblPersonCode.BackColor = System.Drawing.Color.White;
+            this.lblPersonCode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblPersonCode.ForeColor = System.Drawing.Color.Black;
+            this.lblPersonCode.Location = new System.Drawing.Point(148, 5);
+            this.lblPersonCode.Name = "lblPersonCode";
+            this.lblPersonCode.Size = new System.Drawing.Size(139, 25);
+            this.lblPersonCode.TabIndex = 4;
+            this.lblPersonCode.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
             // 
             // btnBackColor
             // 
-            this.btnBackColor.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.btnBackColor.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.btnBackColor.BackColor = System.Drawing.SystemColors.Control;
             this.btnBackColor.ForeColor = System.Drawing.Color.Black;
-            this.btnBackColor.Location = new System.Drawing.Point(319, 286);
+            this.btnBackColor.Location = new System.Drawing.Point(293, 820);
             this.btnBackColor.Name = "btnBackColor";
-            this.btnBackColor.Size = new System.Drawing.Size(120, 23);
+            this.btnBackColor.Size = new System.Drawing.Size(139, 29);
             this.btnBackColor.TabIndex = 16;
             this.btnBackColor.TabStop = false;
             this.btnBackColor.Text = "背景色選択";
             this.btnBackColor.UseVisualStyleBackColor = false;
             this.btnBackColor.Visible = false;
-            this.btnBackColor.Click += new System.EventHandler(this.btnBackColor_Click);
             // 
-            // lblMessageColor
-            // 
-            this.lblMessageColor.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.lblMessageColor.BackColor = System.Drawing.Color.White;
-            this.lblMessageColor.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblMessageColor.ForeColor = System.Drawing.Color.Black;
-            this.lblMessageColor.Location = new System.Drawing.Point(155, 286);
-            this.lblMessageColor.Name = "lblMessageColor";
-            this.lblMessageColor.Size = new System.Drawing.Size(150, 23);
-            this.lblMessageColor.TabIndex = 31;
-            this.lblMessageColor.Text = "メッセージ色";
-            this.lblMessageColor.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            this.lblMessageColor.Visible = false;
-            // 
-            // lblPersonCode
-            // 
-            this.lblPersonCode.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.lblPersonCode.BackColor = System.Drawing.Color.White;
-            this.lblPersonCode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblPersonCode.ForeColor = System.Drawing.Color.Black;
-            this.lblPersonCode.Location = new System.Drawing.Point(155, 5);
-            this.lblPersonCode.Name = "lblPersonCode";
-            this.lblPersonCode.Size = new System.Drawing.Size(150, 25);
-            this.lblPersonCode.TabIndex = 4;
-            this.lblPersonCode.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            this.lblPersonCode.TextChanged += new System.EventHandler(this.valueChange);
-            // 
             // lblPersonLabel
             // 
             this.lblPersonLabel.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -258,7 +353,7 @@
             this.lblPersonLabel.ForeColor = System.Drawing.Color.Black;
             this.lblPersonLabel.Location = new System.Drawing.Point(3, 5);
             this.lblPersonLabel.Name = "lblPersonLabel";
-            this.lblPersonLabel.Size = new System.Drawing.Size(144, 25);
+            this.lblPersonLabel.Size = new System.Drawing.Size(139, 25);
             this.lblPersonLabel.TabIndex = 23;
             this.lblPersonLabel.Text = "担当者コード";
             this.lblPersonLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -271,20 +366,34 @@
             this.label3.ForeColor = System.Drawing.Color.Black;
             this.label3.Location = new System.Drawing.Point(3, 40);
             this.label3.Name = "label3";
-            this.label3.Size = new System.Drawing.Size(144, 25);
+            this.label3.Size = new System.Drawing.Size(139, 25);
             this.label3.TabIndex = 26;
             this.label3.Text = "担当者名";
             this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // lblMessageColor
+            // 
+            this.lblMessageColor.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblMessageColor.BackColor = System.Drawing.Color.White;
+            this.lblMessageColor.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMessageColor.ForeColor = System.Drawing.Color.Black;
+            this.lblMessageColor.Location = new System.Drawing.Point(148, 823);
+            this.lblMessageColor.Name = "lblMessageColor";
+            this.lblMessageColor.Size = new System.Drawing.Size(139, 23);
+            this.lblMessageColor.TabIndex = 31;
+            this.lblMessageColor.Text = "メッセージ色";
+            this.lblMessageColor.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblMessageColor.Visible = false;
+            // 
             // txtInput1
             // 
             this.txtInput1.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.txtInput1, 2);
+            this.tableLayoutPanel1.SetColumnSpan(this.txtInput1, 3);
             this.txtInput1.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput1.Location = new System.Drawing.Point(155, 41);
+            this.txtInput1.Location = new System.Drawing.Point(148, 41);
             this.txtInput1.MaxLength = 100;
             this.txtInput1.Name = "txtInput1";
-            this.txtInput1.Size = new System.Drawing.Size(450, 23);
+            this.txtInput1.Size = new System.Drawing.Size(429, 23);
             this.txtInput1.TabIndex = 1;
             this.txtInput1.TextChanged += new System.EventHandler(this.valueChange);
             // 
@@ -296,7 +405,7 @@
             this.label8.ForeColor = System.Drawing.Color.Black;
             this.label8.Location = new System.Drawing.Point(3, 75);
             this.label8.Name = "label8";
-            this.label8.Size = new System.Drawing.Size(144, 25);
+            this.label8.Size = new System.Drawing.Size(139, 25);
             this.label8.TabIndex = 28;
             this.label8.Text = "開始年月日";
             this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -305,13 +414,13 @@
             // 
             this.txtInput2.Anchor = System.Windows.Forms.AnchorStyles.Left;
             this.txtInput2.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtInput2.Location = new System.Drawing.Point(155, 76);
+            this.txtInput2.Location = new System.Drawing.Point(148, 76);
             this.txtInput2.MaxLength = 11;
             this.txtInput2.Name = "txtInput2";
-            this.txtInput2.Size = new System.Drawing.Size(150, 23);
+            this.txtInput2.Size = new System.Drawing.Size(139, 23);
             this.txtInput2.TabIndex = 2;
-            this.txtInput2.TextChanged += new System.EventHandler(this.valueChange);
-            this.txtInput2.Validated += new System.EventHandler(this.txtInputDate_TextChanged);
+            this.txtInput2.TextChanged += new System.EventHandler(this.txtInput_TextChanged);
+            this.txtInput2.Validated += new System.EventHandler(this.txtInput_Validated);
             // 
             // label9
             // 
@@ -321,7 +430,7 @@
             this.label9.ForeColor = System.Drawing.Color.Black;
             this.label9.Location = new System.Drawing.Point(3, 110);
             this.label9.Name = "label9";
-            this.label9.Size = new System.Drawing.Size(144, 25);
+            this.label9.Size = new System.Drawing.Size(139, 25);
             this.label9.TabIndex = 30;
             this.label9.Text = "終了年月日";
             this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
@@ -330,103 +439,124 @@
             // 
             this.txtInput3.Anchor = System.Windows.Forms.AnchorStyles.Left;
             this.txtInput3.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtInput3.Location = new System.Drawing.Point(155, 111);
+            this.txtInput3.Location = new System.Drawing.Point(148, 111);
             this.txtInput3.MaxLength = 11;
             this.txtInput3.Name = "txtInput3";
-            this.txtInput3.Size = new System.Drawing.Size(150, 23);
+            this.txtInput3.Size = new System.Drawing.Size(139, 23);
             this.txtInput3.TabIndex = 3;
-            this.txtInput3.TextChanged += new System.EventHandler(this.valueChange);
+            this.txtInput3.TextChanged += new System.EventHandler(this.txtInput_TextChanged);
+            this.txtInput3.Validated += new System.EventHandler(this.txtInput_Validated);
             // 
-            // label4
-            // 
-            this.label4.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label4.ForeColor = System.Drawing.Color.Black;
-            this.label4.Location = new System.Drawing.Point(3, 250);
-            this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(144, 25);
-            this.label4.TabIndex = 30;
-            this.label4.Text = "機密区分";
-            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // txtInput4
             // 
             this.txtInput4.Anchor = System.Windows.Forms.AnchorStyles.Left;
             this.txtInput4.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtInput4.Location = new System.Drawing.Point(155, 146);
+            this.txtInput4.Location = new System.Drawing.Point(148, 146);
             this.txtInput4.MaxLength = 11;
             this.txtInput4.Name = "txtInput4";
-            this.txtInput4.Size = new System.Drawing.Size(150, 23);
+            this.txtInput4.Size = new System.Drawing.Size(139, 23);
             this.txtInput4.TabIndex = 4;
             this.txtInput4.TextChanged += new System.EventHandler(this.valueChange);
             // 
-            // cmbSecurityManagement
+            // label15
             // 
-            this.cmbSecurityManagement.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.cmbSecurityManagement, 2);
-            this.cmbSecurityManagement.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbSecurityManagement.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbSecurityManagement.FormattingEnabled = true;
-            this.cmbSecurityManagement.Location = new System.Drawing.Point(155, 252);
-            this.cmbSecurityManagement.Name = "cmbSecurityManagement";
-            this.cmbSecurityManagement.Size = new System.Drawing.Size(300, 24);
-            this.cmbSecurityManagement.TabIndex = 5;
-            this.cmbSecurityManagement.SelectedIndexChanged += new System.EventHandler(this.cmbSecurityManagement_SelectedIndexChanged);
-            this.cmbSecurityManagement.TextChanged += new System.EventHandler(this.valueChange);
+            this.label15.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label15.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label15.ForeColor = System.Drawing.Color.Black;
+            this.label15.Location = new System.Drawing.Point(3, 822);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(139, 25);
+            this.label15.TabIndex = 30;
+            this.label15.Text = "指摘事項色";
+            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label15.Visible = false;
             // 
-            // label6
+            // label2
             // 
-            this.label6.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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, 320);
-            this.label6.Name = "label6";
-            this.label6.Size = new System.Drawing.Size(144, 25);
-            this.label6.TabIndex = 30;
-            this.label6.Text = "部署";
-            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(139, 25);
+            this.label2.TabIndex = 30;
+            this.label2.Text = "パスワード";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // label5
+            // dgvSalary
             // 
-            this.label5.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label5.ForeColor = System.Drawing.Color.Black;
-            this.label5.Location = new System.Drawing.Point(3, 355);
-            this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(144, 25);
-            this.label5.TabIndex = 30;
-            this.label5.Text = "役職名称";
-            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.dgvSalary.AllowUserToAddRows = false;
+            this.dgvSalary.AllowUserToDeleteRows = false;
+            this.dgvSalary.AllowUserToResizeColumns = false;
+            this.dgvSalary.AllowUserToResizeRows = false;
+            this.dgvSalary.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.dgvSalary.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvSalary.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.dgvSalary.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvSalary.ColumnHeadersHeight = 24;
+            this.dgvSalary.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvSalary.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.SalaryColumn1,
+            this.SalaryColumn2,
+            this.SalaryColumn3});
+            this.tableLayoutPanel1.SetColumnSpan(this.dgvSalary, 4);
+            this.dgvSalary.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvSalary.Location = new System.Drawing.Point(3, 248);
+            this.dgvSalary.MultiSelect = false;
+            this.dgvSalary.Name = "dgvSalary";
+            this.dgvSalary.RowHeadersVisible = false;
+            this.dgvSalary.RowHeadersWidth = 18;
+            this.dgvSalary.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.tableLayoutPanel1.SetRowSpan(this.dgvSalary, 3);
+            this.dgvSalary.RowTemplate.Height = 20;
+            this.dgvSalary.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvSalary.Size = new System.Drawing.Size(570, 106);
+            this.dgvSalary.TabIndex = 21;
+            this.dgvSalary.TabStop = false;
             // 
-            // cmbDepartment
+            // SalaryColumn1
             // 
-            this.cmbDepartment.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.cmbDepartment, 2);
-            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbDepartment.FormattingEnabled = true;
-            this.cmbDepartment.Location = new System.Drawing.Point(155, 322);
-            this.cmbDepartment.Name = "cmbDepartment";
-            this.cmbDepartment.Size = new System.Drawing.Size(300, 24);
-            this.cmbDepartment.TabIndex = 6;
-            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbSecurityManagement_SelectedIndexChanged);
-            this.cmbDepartment.TextChanged += new System.EventHandler(this.valueChange);
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.SalaryColumn1.DefaultCellStyle = dataGridViewCellStyle2;
+            this.SalaryColumn1.Frozen = true;
+            this.SalaryColumn1.HeaderText = "給与開始年月日";
+            this.SalaryColumn1.Name = "SalaryColumn1";
+            this.SalaryColumn1.ReadOnly = true;
+            this.SalaryColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.SalaryColumn1.Width = 190;
             // 
-            // txtInput5
+            // SalaryColumn2
             // 
-            this.txtInput5.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.txtInput5, 2);
-            this.txtInput5.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput5.Location = new System.Drawing.Point(155, 356);
-            this.txtInput5.MaxLength = 40;
-            this.txtInput5.Name = "txtInput5";
-            this.txtInput5.Size = new System.Drawing.Size(250, 23);
-            this.txtInput5.TabIndex = 7;
-            this.txtInput5.TextChanged += new System.EventHandler(this.valueChange);
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.SalaryColumn2.DefaultCellStyle = dataGridViewCellStyle3;
+            this.SalaryColumn2.Frozen = true;
+            this.SalaryColumn2.HeaderText = "月給与額";
+            this.SalaryColumn2.Name = "SalaryColumn2";
+            this.SalaryColumn2.ReadOnly = true;
+            this.SalaryColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.SalaryColumn2.Width = 180;
             // 
+            // SalaryColumn3
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.SalaryColumn3.DefaultCellStyle = dataGridViewCellStyle4;
+            this.SalaryColumn3.Frozen = true;
+            this.SalaryColumn3.HeaderText = "年給与額";
+            this.SalaryColumn3.Name = "SalaryColumn3";
+            this.SalaryColumn3.ReadOnly = true;
+            this.SalaryColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.SalaryColumn3.Width = 180;
+            // 
             // label7
             // 
             this.label7.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -435,11 +565,23 @@
             this.label7.ForeColor = System.Drawing.Color.Black;
             this.label7.Location = new System.Drawing.Point(3, 180);
             this.label7.Name = "label7";
-            this.label7.Size = new System.Drawing.Size(144, 25);
+            this.label7.Size = new System.Drawing.Size(139, 25);
             this.label7.TabIndex = 30;
-            this.label7.Text = "月給金額";
+            this.label7.Text = "月給与額(円)";
             this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // txtInput6
+            // 
+            this.txtInput6.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput6.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtInput6.Location = new System.Drawing.Point(148, 181);
+            this.txtInput6.MaxLength = 11;
+            this.txtInput6.Name = "txtInput6";
+            this.txtInput6.Size = new System.Drawing.Size(139, 23);
+            this.txtInput6.TabIndex = 5;
+            this.txtInput6.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            this.txtInput6.Validated += new System.EventHandler(this.txtInputSalary_Validated);
+            // 
             // label10
             // 
             this.label10.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -446,80 +588,138 @@
             this.label10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
             this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label10.ForeColor = System.Drawing.Color.Black;
-            this.label10.Location = new System.Drawing.Point(3, 215);
+            this.label10.Location = new System.Drawing.Point(293, 180);
             this.label10.Name = "label10";
-            this.label10.Size = new System.Drawing.Size(144, 25);
+            this.label10.Size = new System.Drawing.Size(139, 25);
             this.label10.TabIndex = 30;
-            this.label10.Text = "年俸金額";
+            this.label10.Text = "年給与額(円)";
             this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // txtInput6
-            // 
-            this.txtInput6.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.txtInput6.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtInput6.Location = new System.Drawing.Point(155, 181);
-            this.txtInput6.MaxLength = 11;
-            this.txtInput6.Name = "txtInput6";
-            this.txtInput6.Size = new System.Drawing.Size(150, 23);
-            this.txtInput6.TabIndex = 4;
-            this.txtInput6.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
-            this.txtInput6.TextChanged += new System.EventHandler(this.valueChange);
-            this.txtInput6.Validated += new System.EventHandler(this.txtInputSalary_Validated);
-            // 
             // txtInput7
             // 
             this.txtInput7.Anchor = System.Windows.Forms.AnchorStyles.Left;
             this.txtInput7.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtInput7.Location = new System.Drawing.Point(155, 216);
+            this.txtInput7.Location = new System.Drawing.Point(438, 181);
             this.txtInput7.MaxLength = 11;
             this.txtInput7.Name = "txtInput7";
-            this.txtInput7.Size = new System.Drawing.Size(150, 23);
-            this.txtInput7.TabIndex = 4;
+            this.txtInput7.Size = new System.Drawing.Size(139, 23);
+            this.txtInput7.TabIndex = 6;
             this.txtInput7.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
-            this.txtInput7.TextChanged += new System.EventHandler(this.valueChange);
             this.txtInput7.Validated += new System.EventHandler(this.txtInputSalary_Validated);
             // 
-            // label2
-            // 
-            this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(144, 25);
-            this.label2.TabIndex = 30;
-            this.label2.Text = "パスワード";
-            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // label11
             // 
             this.label11.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label11.AutoSize = true;
-            this.label11.BackColor = System.Drawing.Color.Transparent;
-            this.label11.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label11.ForeColor = System.Drawing.Color.White;
-            this.label11.Location = new System.Drawing.Point(319, 183);
+            this.label11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label11.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(3, 215);
             this.label11.Name = "label11";
-            this.label11.Size = new System.Drawing.Size(30, 19);
+            this.label11.Size = new System.Drawing.Size(139, 25);
             this.label11.TabIndex = 30;
-            this.label11.Text = "円";
+            this.label11.Text = "給与開始年月日";
             this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // txtInput10
+            // 
+            this.txtInput10.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput10.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtInput10.Location = new System.Drawing.Point(148, 216);
+            this.txtInput10.MaxLength = 11;
+            this.txtInput10.Name = "txtInput10";
+            this.txtInput10.Size = new System.Drawing.Size(139, 23);
+            this.txtInput10.TabIndex = 7;
+            this.txtInput10.TextChanged += new System.EventHandler(this.txtInput_TextChanged);
+            this.txtInput10.Validated += new System.EventHandler(this.txtInput_Validated);
+            // 
+            // btnSalaryAdd
+            // 
+            this.btnSalaryAdd.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.btnSalaryAdd.BackColor = System.Drawing.Color.Green;
+            this.btnSalaryAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnSalaryAdd.ForeColor = System.Drawing.Color.White;
+            this.btnSalaryAdd.Location = new System.Drawing.Point(293, 213);
+            this.btnSalaryAdd.Name = "btnSalaryAdd";
+            this.btnSalaryAdd.Size = new System.Drawing.Size(139, 29);
+            this.btnSalaryAdd.TabIndex = 32;
+            this.btnSalaryAdd.TabStop = false;
+            this.btnSalaryAdd.Text = "給与追加";
+            this.btnSalaryAdd.UseVisualStyleBackColor = false;
+            this.btnSalaryAdd.Click += new System.EventHandler(this.btnSalaryAdd_Click);
+            // 
+            // btnSalaryDel
+            // 
+            this.btnSalaryDel.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.btnSalaryDel.BackColor = System.Drawing.Color.Red;
+            this.btnSalaryDel.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnSalaryDel.ForeColor = System.Drawing.Color.White;
+            this.btnSalaryDel.Location = new System.Drawing.Point(438, 213);
+            this.btnSalaryDel.Name = "btnSalaryDel";
+            this.btnSalaryDel.Size = new System.Drawing.Size(139, 29);
+            this.btnSalaryDel.TabIndex = 33;
+            this.btnSalaryDel.TabStop = false;
+            this.btnSalaryDel.Text = "給与削除";
+            this.btnSalaryDel.UseVisualStyleBackColor = false;
+            this.btnSalaryDel.Click += new System.EventHandler(this.btnSalaryDelete_Click);
+            // 
             // label12
             // 
             this.label12.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label12.AutoSize = true;
-            this.label12.BackColor = System.Drawing.Color.Transparent;
-            this.label12.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label12.ForeColor = System.Drawing.Color.White;
-            this.label12.Location = new System.Drawing.Point(319, 218);
+            this.label12.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.tableLayoutPanel1.SetColumnSpan(this.label12, 4);
+            this.label12.ForeColor = System.Drawing.Color.Black;
+            this.label12.Location = new System.Drawing.Point(3, 642);
             this.label12.Name = "label12";
-            this.label12.Size = new System.Drawing.Size(30, 19);
+            this.label12.Size = new System.Drawing.Size(570, 25);
             this.label12.TabIndex = 30;
-            this.label12.Text = "円";
+            this.label12.Text = "参照部署";
             this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // label4
+            // 
+            this.label4.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(3, 607);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(139, 25);
+            this.label4.TabIndex = 30;
+            this.label4.Text = "セキュリティ範囲";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label6
+            // 
+            this.label6.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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, 362);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(139, 25);
+            this.label6.TabIndex = 30;
+            this.label6.Text = "所属部署";
+            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label5
+            // 
+            this.label5.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(3, 397);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(139, 25);
+            this.label5.TabIndex = 30;
+            this.label5.Text = "役職名称";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // label13
             // 
             this.label13.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -526,25 +726,13 @@
             this.label13.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
             this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label13.ForeColor = System.Drawing.Color.Black;
-            this.label13.Location = new System.Drawing.Point(3, 390);
+            this.label13.Location = new System.Drawing.Point(3, 432);
             this.label13.Name = "label13";
-            this.label13.Size = new System.Drawing.Size(144, 25);
+            this.label13.Size = new System.Drawing.Size(139, 25);
             this.label13.TabIndex = 30;
             this.label13.Text = "資格情報";
             this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // txtInput8
-            // 
-            this.txtInput8.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.txtInput8, 2);
-            this.txtInput8.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput8.Location = new System.Drawing.Point(155, 391);
-            this.txtInput8.MaxLength = 120;
-            this.txtInput8.Name = "txtInput8";
-            this.txtInput8.Size = new System.Drawing.Size(450, 23);
-            this.txtInput8.TabIndex = 8;
-            this.txtInput8.TextChanged += new System.EventHandler(this.valueChange);
-            // 
             // label14
             // 
             this.label14.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -551,112 +739,254 @@
             this.label14.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
             this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label14.ForeColor = System.Drawing.Color.Black;
-            this.label14.Location = new System.Drawing.Point(3, 425);
+            this.label14.Location = new System.Drawing.Point(3, 467);
             this.label14.Name = "label14";
-            this.label14.Size = new System.Drawing.Size(144, 25);
+            this.label14.Size = new System.Drawing.Size(139, 25);
             this.label14.TabIndex = 30;
             this.label14.Text = "印鑑表示名";
             this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // label16
+            // 
+            this.label16.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label16.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label16.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label16.ForeColor = System.Drawing.Color.Black;
+            this.label16.Location = new System.Drawing.Point(3, 502);
+            this.label16.Name = "label16";
+            this.label16.Size = new System.Drawing.Size(139, 25);
+            this.label16.TabIndex = 30;
+            this.label16.Text = "台帳計算対象";
+            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbDepartment
+            // 
+            this.cmbDepartment.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.cmbDepartment, 2);
+            this.cmbDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDepartment.FormattingEnabled = true;
+            this.cmbDepartment.Location = new System.Drawing.Point(148, 362);
+            this.cmbDepartment.Name = "cmbDepartment";
+            this.cmbDepartment.Size = new System.Drawing.Size(284, 24);
+            this.cmbDepartment.TabIndex = 9;
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.valueChange);
+            // 
+            // txtInput5
+            // 
+            this.txtInput5.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.txtInput5, 2);
+            this.txtInput5.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput5.Location = new System.Drawing.Point(148, 398);
+            this.txtInput5.MaxLength = 40;
+            this.txtInput5.Name = "txtInput5";
+            this.txtInput5.Size = new System.Drawing.Size(250, 23);
+            this.txtInput5.TabIndex = 10;
+            this.txtInput5.TextChanged += new System.EventHandler(this.valueChange);
+            // 
+            // txtInput8
+            // 
+            this.txtInput8.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.txtInput8, 3);
+            this.txtInput8.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput8.Location = new System.Drawing.Point(148, 433);
+            this.txtInput8.MaxLength = 120;
+            this.txtInput8.Name = "txtInput8";
+            this.txtInput8.Size = new System.Drawing.Size(429, 23);
+            this.txtInput8.TabIndex = 11;
+            this.txtInput8.TextChanged += new System.EventHandler(this.valueChange);
+            // 
             // txtInput9
             // 
             this.txtInput9.Anchor = System.Windows.Forms.AnchorStyles.Left;
             this.txtInput9.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput9.Location = new System.Drawing.Point(155, 426);
+            this.txtInput9.Location = new System.Drawing.Point(148, 468);
             this.txtInput9.MaxLength = 11;
             this.txtInput9.Name = "txtInput9";
-            this.txtInput9.Size = new System.Drawing.Size(150, 23);
-            this.txtInput9.TabIndex = 9;
+            this.txtInput9.Size = new System.Drawing.Size(139, 23);
+            this.txtInput9.TabIndex = 12;
             this.txtInput9.TextChanged += new System.EventHandler(this.valueChange);
             // 
-            // label15
+            // cmbLedgerFlg
             // 
-            this.label15.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label15.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label15.ForeColor = System.Drawing.Color.Black;
-            this.label15.Location = new System.Drawing.Point(3, 285);
-            this.label15.Name = "label15";
-            this.label15.Size = new System.Drawing.Size(144, 25);
-            this.label15.TabIndex = 30;
-            this.label15.Text = "指摘事項色";
-            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            this.label15.Visible = false;
+            this.cmbLedgerFlg.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.cmbLedgerFlg.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbLedgerFlg.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbLedgerFlg.FormattingEnabled = true;
+            this.cmbLedgerFlg.Location = new System.Drawing.Point(148, 502);
+            this.cmbLedgerFlg.Name = "cmbLedgerFlg";
+            this.cmbLedgerFlg.Size = new System.Drawing.Size(139, 24);
+            this.cmbLedgerFlg.TabIndex = 13;
+            this.cmbLedgerFlg.TextChanged += new System.EventHandler(this.valueChange);
             // 
-            // label16
+            // label17
             // 
-            this.label16.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label16.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label16.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label16.ForeColor = System.Drawing.Color.Black;
-            this.label16.Location = new System.Drawing.Point(3, 460);
-            this.label16.Name = "label16";
-            this.label16.Size = new System.Drawing.Size(144, 25);
-            this.label16.TabIndex = 30;
-            this.label16.Text = "台帳計算対象";
-            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.label17.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label17.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label17.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label17.ForeColor = System.Drawing.Color.Black;
+            this.label17.Location = new System.Drawing.Point(3, 537);
+            this.label17.Name = "label17";
+            this.label17.Size = new System.Drawing.Size(139, 25);
+            this.label17.TabIndex = 30;
+            this.label17.Text = "機密区分";
+            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // lblEditMode
+            // cmbSecManage
             // 
-            this.lblEditMode.BackColor = System.Drawing.Color.White;
-            this.lblEditMode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblEditMode.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblEditMode.Location = new System.Drawing.Point(600, 40);
-            this.lblEditMode.Name = "lblEditMode";
-            this.lblEditMode.Size = new System.Drawing.Size(117, 32);
-            this.lblEditMode.TabIndex = 8;
-            this.lblEditMode.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.cmbSecManage.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.cmbSecManage, 2);
+            this.cmbSecManage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbSecManage.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbSecManage.FormattingEnabled = true;
+            this.cmbSecManage.Location = new System.Drawing.Point(148, 539);
+            this.cmbSecManage.Name = "cmbSecManage";
+            this.cmbSecManage.Size = new System.Drawing.Size(284, 24);
+            this.cmbSecManage.TabIndex = 8;
+            this.cmbSecManage.SelectedValueChanged += new System.EventHandler(this.cmbSecManage_SelectedValueChanged);
+            this.cmbSecManage.TextChanged += new System.EventHandler(this.valueChange);
             // 
-            // btnDataSelect
+            // label18
             // 
-            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.Location = new System.Drawing.Point(300, 650);
-            this.btnDataSelect.Name = "btnDataSelect";
-            this.btnDataSelect.Size = new System.Drawing.Size(120, 30);
-            this.btnDataSelect.TabIndex = 0;
-            this.btnDataSelect.TabStop = false;
-            this.btnDataSelect.Text = "選　択";
-            this.btnDataSelect.UseVisualStyleBackColor = false;
-            this.btnDataSelect.Click += new System.EventHandler(this.btnDataSelect_Click);
+            this.label18.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label18.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label18.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label18.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label18.ForeColor = System.Drawing.Color.Black;
+            this.label18.Location = new System.Drawing.Point(3, 572);
+            this.label18.Name = "label18";
+            this.label18.Size = new System.Drawing.Size(139, 25);
+            this.label18.TabIndex = 30;
+            this.label18.Text = "セキュリティ区分";
+            this.label18.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // btnDataLineEntry
+            // lblSecRank
             // 
-            this.btnDataLineEntry.BackColor = System.Drawing.Color.PaleGreen;
-            this.btnDataLineEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataLineEntry.Location = new System.Drawing.Point(428, 650);
-            this.btnDataLineEntry.Name = "btnDataLineEntry";
-            this.btnDataLineEntry.Size = new System.Drawing.Size(120, 30);
-            this.btnDataLineEntry.TabIndex = 0;
-            this.btnDataLineEntry.TabStop = false;
-            this.btnDataLineEntry.Text = "新規登録";
-            this.btnDataLineEntry.UseVisualStyleBackColor = false;
-            this.btnDataLineEntry.Click += new System.EventHandler(this.btnDataLineEntry_Click);
+            this.lblSecRank.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblSecRank.BackColor = System.Drawing.SystemColors.Window;
+            this.tableLayoutPanel1.SetColumnSpan(this.lblSecRank, 2);
+            this.lblSecRank.Location = new System.Drawing.Point(148, 573);
+            this.lblSecRank.Name = "lblSecRank";
+            this.lblSecRank.Size = new System.Drawing.Size(284, 23);
+            this.lblSecRank.TabIndex = 34;
+            this.lblSecRank.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
             // 
-            // btnDispDown
+            // lblSecRange
             // 
-            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(554, 332);
-            this.btnDispDown.Name = "btnDispDown";
-            this.btnDispDown.Size = new System.Drawing.Size(40, 40);
-            this.btnDispDown.TabIndex = 15;
-            this.btnDispDown.TabStop = false;
-            this.btnDispDown.Text = "▼";
-            this.btnDispDown.UseVisualStyleBackColor = true;
-            this.btnDispDown.Click += new System.EventHandler(this.btnDispDown_Click);
+            this.lblSecRange.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblSecRange.BackColor = System.Drawing.SystemColors.Window;
+            this.tableLayoutPanel1.SetColumnSpan(this.lblSecRange, 2);
+            this.lblSecRange.Location = new System.Drawing.Point(148, 608);
+            this.lblSecRange.Name = "lblSecRange";
+            this.lblSecRange.Size = new System.Drawing.Size(284, 23);
+            this.lblSecRange.TabIndex = 34;
+            this.lblSecRange.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
             // 
-            // btnDispUp
+            // dgvRefDepartment
             // 
-            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(554, 268);
-            this.btnDispUp.Name = "btnDispUp";
-            this.btnDispUp.Size = new System.Drawing.Size(40, 40);
-            this.btnDispUp.TabIndex = 14;
-            this.btnDispUp.TabStop = false;
-            this.btnDispUp.Text = "▲";
-            this.btnDispUp.UseVisualStyleBackColor = true;
-            this.btnDispUp.Click += new System.EventHandler(this.btnDispUp_Click);
+            this.dgvRefDepartment.AllowUserToAddRows = false;
+            this.dgvRefDepartment.AllowUserToDeleteRows = false;
+            this.dgvRefDepartment.AllowUserToResizeColumns = false;
+            this.dgvRefDepartment.AllowUserToResizeRows = false;
+            this.dgvRefDepartment.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.dgvRefDepartment.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvRefDepartment.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.dgvRefDepartment.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            this.dgvRefDepartment.ColumnHeadersHeight = 24;
+            this.dgvRefDepartment.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvRefDepartment.ColumnHeadersVisible = false;
+            this.dgvRefDepartment.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column8,
+            this.TextBoxColumn1});
+            this.tableLayoutPanel1.SetColumnSpan(this.dgvRefDepartment, 4);
+            this.dgvRefDepartment.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvRefDepartment.Location = new System.Drawing.Point(3, 675);
+            this.dgvRefDepartment.MultiSelect = false;
+            this.dgvRefDepartment.Name = "dgvRefDepartment";
+            this.dgvRefDepartment.RowHeadersWidth = 18;
+            this.dgvRefDepartment.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.tableLayoutPanel1.SetRowSpan(this.dgvRefDepartment, 3);
+            this.dgvRefDepartment.RowTemplate.Height = 20;
+            this.dgvRefDepartment.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvRefDepartment.Size = new System.Drawing.Size(570, 104);
+            this.dgvRefDepartment.TabIndex = 21;
+            this.dgvRefDepartment.TabStop = false;
             // 
+            // Column8
+            // 
+            this.Column8.Frozen = true;
+            this.Column8.HeaderText = "部署コード";
+            this.Column8.Name = "Column8";
+            this.Column8.ReadOnly = true;
+            this.Column8.Visible = false;
+            // 
+            // TextBoxColumn1
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.TextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle6;
+            this.TextBoxColumn1.Frozen = true;
+            this.TextBoxColumn1.HeaderText = "参　照　部　署　名　称";
+            this.TextBoxColumn1.Name = "TextBoxColumn1";
+            this.TextBoxColumn1.ReadOnly = true;
+            this.TextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.TextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.TextBoxColumn1.Width = 530;
+            // 
+            // cmbRefDepartment
+            // 
+            this.cmbRefDepartment.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.cmbRefDepartment, 2);
+            this.cmbRefDepartment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbRefDepartment.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbRefDepartment.FormattingEnabled = true;
+            this.cmbRefDepartment.Location = new System.Drawing.Point(3, 789);
+            this.cmbRefDepartment.Name = "cmbRefDepartment";
+            this.cmbRefDepartment.Size = new System.Drawing.Size(284, 24);
+            this.cmbRefDepartment.TabIndex = 15;
+            this.cmbRefDepartment.TextChanged += new System.EventHandler(this.valueChange);
+            // 
+            // btnRefDepAdd
+            // 
+            this.btnRefDepAdd.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.btnRefDepAdd.BackColor = System.Drawing.Color.Green;
+            this.btnRefDepAdd.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnRefDepAdd.ForeColor = System.Drawing.Color.White;
+            this.btnRefDepAdd.Location = new System.Drawing.Point(293, 785);
+            this.btnRefDepAdd.Name = "btnRefDepAdd";
+            this.btnRefDepAdd.Size = new System.Drawing.Size(139, 29);
+            this.btnRefDepAdd.TabIndex = 32;
+            this.btnRefDepAdd.TabStop = false;
+            this.btnRefDepAdd.Text = "参照部署追加";
+            this.btnRefDepAdd.UseVisualStyleBackColor = false;
+            this.btnRefDepAdd.Click += new System.EventHandler(this.btnRefDepAdd_Click);
+            // 
+            // btnRefDepDel
+            // 
+            this.btnRefDepDel.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.btnRefDepDel.BackColor = System.Drawing.Color.Red;
+            this.btnRefDepDel.Font = new System.Drawing.Font("ＭＳ 明朝", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnRefDepDel.ForeColor = System.Drawing.Color.White;
+            this.btnRefDepDel.Location = new System.Drawing.Point(438, 785);
+            this.btnRefDepDel.Name = "btnRefDepDel";
+            this.btnRefDepDel.Size = new System.Drawing.Size(139, 29);
+            this.btnRefDepDel.TabIndex = 33;
+            this.btnRefDepDel.TabStop = false;
+            this.btnRefDepDel.Text = "参照部署削除";
+            this.btnRefDepDel.UseVisualStyleBackColor = false;
+            this.btnRefDepDel.Click += new System.EventHandler(this.btnRefDepDel_Click);
+            // 
             // dgvMaster
             // 
             this.dgvMaster.AllowUserToAddRows = false;
@@ -665,14 +995,14 @@
             this.dgvMaster.AllowUserToResizeRows = false;
             this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
             this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column1,
@@ -696,9 +1026,9 @@
             // 
             // Column1
             // 
-            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.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle8.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle8;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "№";
             this.Column1.Name = "Column1";
@@ -708,8 +1038,8 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle9;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "担当者コード";
             this.Column2.Name = "Column2";
@@ -719,9 +1049,9 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle10;
             this.Column3.HeaderText = "担　当　者　名";
             this.Column3.Name = "Column3";
             this.Column3.ReadOnly = true;
@@ -756,6 +1086,15 @@
             this.Column7.Name = "Column7";
             this.Column7.Visible = false;
             // 
+            // lblSecurtyManegement
+            // 
+            this.lblSecurtyManegement.BackColor = System.Drawing.Color.White;
+            this.lblSecurtyManegement.Location = new System.Drawing.Point(1127, 10);
+            this.lblSecurtyManegement.Name = "lblSecurtyManegement";
+            this.lblSecurtyManegement.Size = new System.Drawing.Size(83, 26);
+            this.lblSecurtyManegement.TabIndex = 19;
+            this.lblSecurtyManegement.Visible = false;
+            // 
             // FrmPersonInCharge
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -762,6 +1101,8 @@
             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.lblSecurtyManegement);
+            this.Controls.Add(this.panel1);
             this.Controls.Add(this.btnDispDown);
             this.Controls.Add(this.btnDispUp);
             this.Controls.Add(this.btnDataSelect);
@@ -768,7 +1109,6 @@
             this.Controls.Add(this.btnDataLineEntry);
             this.Controls.Add(this.lblEditMode);
             this.Controls.Add(this.dgvMaster);
-            this.Controls.Add(this.tableLayoutPanel1);
             this.Controls.Add(this.label1);
             this.Controls.Add(this.btnDataDelete);
             this.Controls.Add(this.btnDataEntry);
@@ -783,8 +1123,11 @@
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmPersonInCharge_FormClosing);
             this.Load += new System.EventHandler(this.FrmPersonInCharge_Load);
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmPersonInCharge_KeyDown);
+            this.panel1.ResumeLayout(false);
             this.tableLayoutPanel1.ResumeLayout(false);
             this.tableLayoutPanel1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvSalary)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvRefDepartment)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
             this.ResumeLayout(false);
 
@@ -796,15 +1139,6 @@
         private System.Windows.Forms.Button btnEnd;
         private System.Windows.Forms.Label label1;
         private System.Windows.Forms.Button btnDataDelete;
-        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
-        private System.Windows.Forms.Label lblPersonLabel;
-        private System.Windows.Forms.Label lblPersonCode;
-        private System.Windows.Forms.Label label3;
-        private System.Windows.Forms.TextBox txtInput1;
-        private System.Windows.Forms.Label label8;
-        private System.Windows.Forms.TextBox txtInput2;
-        private System.Windows.Forms.Label label9;
-        private System.Windows.Forms.TextBox txtInput3;
         private DataGridViewEX dgvMaster;
         private System.Windows.Forms.Label lblEditMode;
         private System.Windows.Forms.Button btnDataSelect;
@@ -811,10 +1145,6 @@
         private System.Windows.Forms.Button btnDataLineEntry;
         private System.Windows.Forms.Button btnDispDown;
         private System.Windows.Forms.Button btnDispUp;
-        private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.Label label4;
-        private System.Windows.Forms.TextBox txtInput4;
-        private System.Windows.Forms.ComboBox cmbSecurityManagement;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
@@ -822,24 +1152,56 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
-        private System.Windows.Forms.Label label5;
-        private System.Windows.Forms.TextBox txtInput5;
-        private System.Windows.Forms.Label label6;
-        private System.Windows.Forms.ComboBox cmbDepartment;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Label lblPersonCode;
+        private System.Windows.Forms.Button btnBackColor;
+        private System.Windows.Forms.Label lblPersonLabel;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label lblMessageColor;
+        private System.Windows.Forms.TextBox txtInput1;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.TextBox txtInput2;
+        private System.Windows.Forms.Label label9;
+        private ProcessManagement.Forms.CustomControls.TextBoxEX txtInput3;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.TextBox txtInput4;
+        private ProcessManagement.Forms.CustomControls.ComboBoxEX cmbSecManage;
         private System.Windows.Forms.Label label7;
         private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Label label15;
         private System.Windows.Forms.TextBox txtInput6;
         private System.Windows.Forms.TextBox txtInput7;
-        private System.Windows.Forms.Label label11;
-        private System.Windows.Forms.Label label12;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label5;
         private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.Label label14;
+        private System.Windows.Forms.Label label16;
+        private ProcessManagement.Forms.CustomControls.ComboBoxEX cmbDepartment;
+        private System.Windows.Forms.TextBox txtInput5;
         private System.Windows.Forms.TextBox txtInput8;
-        private System.Windows.Forms.Label label14;
         private System.Windows.Forms.TextBox txtInput9;
-        private System.Windows.Forms.Label label15;
-        private System.Windows.Forms.Label lblMessageColor;
-        private System.Windows.Forms.Button btnBackColor;
-        private System.Windows.Forms.ComboBox cmbLedgerFlg;
-        private System.Windows.Forms.Label label16;
+        private ProcessManagement.Forms.CustomControls.ComboBoxEX cmbLedgerFlg;
+        private DataGridViewEX dgvSalary;
+        private System.Windows.Forms.Label label11;
+        private System.Windows.Forms.TextBox txtInput10;
+        private System.Windows.Forms.Button btnSalaryAdd;
+        private System.Windows.Forms.Button btnSalaryDel;
+        private System.Windows.Forms.Label label12;
+        private ProcessManagement.Forms.CustomControls.ComboBoxEX cmbRefDepartment;
+        private System.Windows.Forms.Button btnRefDepAdd;
+        private System.Windows.Forms.Button btnRefDepDel;
+        private DataGridViewEX dgvRefDepartment;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.DataGridViewTextBoxColumn TextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn SalaryColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn SalaryColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn SalaryColumn3;
+        private System.Windows.Forms.Label label17;
+        private System.Windows.Forms.Label label18;
+        private System.Windows.Forms.Label lblSecRank;
+        private System.Windows.Forms.Label lblSecRange;
+        private System.Windows.Forms.Label lblSecurtyManegement;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInCharge.resx	(revision 51)
@@ -117,6 +117,24 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
+  <metadata name="tableLayoutPanel1.Locked" 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="SalaryColumn3.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="TextBoxColumn1.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>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInChargeAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInChargeAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/PersonInCharge/FrmPersonInChargeAuxiliary.cs	(revision 51)
@@ -0,0 +1,1437 @@
+﻿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;
+
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmPersonInCharge
+    {
+        #region 画面ロック
+        /// <summary>
+        /// 画面ロック
+        /// </summary>
+        private void ControlLock(bool bctrl = true)
+        {
+            foreach (Control wrk in m_dispControl)
+            {
+                if (CommonMotions.chkObjectIsNull(wrk)) continue;
+                if (!wrk.GetType().Equals(typeof(Label)))
+                    wrk.Enabled = bctrl;
+            }
+            btnBackColor.Enabled = bctrl;
+            btnSalaryAdd.Enabled = bctrl;
+            btnSalaryDel.Enabled = bctrl;
+            btnRefDepAdd.Enabled = bctrl;
+            btnRefDepDel.Enabled = bctrl;
+        }
+        #endregion
+
+        #region 画面クリア
+        /// <summary>
+        /// 画面クリア
+        /// </summary>
+        private void ClearDisplay()
+        {
+            foreach (Control wrk in m_dispControl)
+            {
+                if (CommonMotions.chkObjectIsNull(wrk)) continue;
+                wrk.Text = "";
+                CommonMotions.chgBackColor(wrk, true);
+            }
+
+            // 新規時は担当者コードを表示しない
+            if (m_PersonCode == 0)
+            {
+                lblPersonLabel.Visible = false;
+                lblPersonCode.Visible = false;
+            }
+            else
+            {
+                lblPersonLabel.Visible = true;
+                lblPersonCode.Visible = true;
+            }
+            // コンボボックス初期処理
+            SetSecurityManagementCombBox();
+            SetDepartmentCombBox(cmbDepartment);
+            SetDepartmentCombBox(cmbRefDepartment);
+            SetCalcLedgerCombBox();
+
+            // グリッドクリア
+            dgvSalary.Rows.Clear();
+            dgvRefDepartment.Rows.Clear();
+
+            m_bChengeAns = false;
+        }
+        #endregion
+
+        #region 行選択時処理
+        /// <summary>
+        /// 行選択時処理
+        /// </summary>
+        private void DataSelectRow()
+        {
+            try
+            {
+                if (m_bChengeAns)
+                {
+                    if (MessageBox.Show("データに変更があります、登録内容を破棄してよろしいですか？。", "終了確認"
+                                    , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                    {
+                        return;
+                    }
+                }
+                if (dgvMaster.Rows.Count < 1) return;
+                if (dgvMaster.CurrentRow.Index < 0) return;
+
+                // 空白行は処理しない
+                if (CommonMotions.chkObjectIsNull(dgvMaster.CurrentRow.Cells[(int)DispListColumn.PERSON_CODE].Value) ||
+                    CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispListColumn.PERSON_CODE].Value).Length == 0)
+                {
+                    // クリア
+                    ClearDisplay();
+                    // フィールドロック解除
+                    ControlLock(false);
+                    return;
+                }
+
+                m_PersonCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispListColumn.PERSON_CODE].Value);
+
+                // クリア
+                ClearDisplay();
+
+                // フィールドロック解除
+                ControlLock();
+
+                // 更新データ取得
+                DispMentenanceData();
+
+                // モード表示
+                if (m_EditLock)
+                    m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringRef;
+                else
+                    m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringEdit;
+
+                // 参照時はデータ変更させない
+                if (m_EditLock)
+                {
+                    ExecReadOnly();
+                }
+
+                // フォーカスセット
+                m_dispControl[(int)DispCtrl.PersonName].Focus();
+
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 初期時データ取得
+        /// <summary>
+        /// 初期時データ取得
+        /// </summary>
+        private bool DispGridData()
+        {
+            // 担当者マスタクラス
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            try
+            {
+                // 担当者マスタ取得クラス領域
+                List<PersonInChargeMaster> pic = new List<PersonInChargeMaster>();
+                // 担当者マスタ取得SQL
+                string strSql = string.Format(" Where EmployeeClassFlg = {0} And DeleteFlg = 0 Order By DisplayOrder ASC", (int)CommonDefine.EmployeeClassFlg.Regular);
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear(); ;
+                // 担当者マスタ取得
+                if (!picDB.SelectAction(strSql, ref pic)) return false;
+
+                // データ表示
+                int ino = 1, icnt = 0;
+                foreach (PersonInChargeMaster work in pic)
+                {
+                    dgvMaster.Rows.Add((ino++).ToString()
+                                        , work.PersonCode
+                                        , work.PersonName
+                                        , work.StartDate.ToShortDateString()
+                                        , work.EndDate.ToShortDateString()
+                                        , work.PassWord
+                                        , work.SecCode.ToString());
+
+                    dgvMaster.Rows[icnt++].Cells[(int)DispListColumn.PERSON_NAME].ToolTipText = work.PersonName;
+                }
+                // 表示行が足りない場合は追加する
+                if (dgvMaster.Rows.Count <= CommonDefine.s_MaxInitLineCountMastamente)
+                {
+                    int iAddLine = CommonDefine.s_MaxInitLineCountMastamente - dgvMaster.Rows.Count;
+                    for (int i = 0; i < iAddLine; i++)
+                    {
+                        dgvMaster.Rows.Add();
+                    }
+                }
+
+                // 読込時データカウント取得
+                m_initDataCount = pic.Count;
+
+                // 行を選択しない
+                dgvMaster.ClearSelection();
+
+                return true;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                picDB.close();
+                picDB = null;
+            }
+        }
+        #endregion
+
+        #region 更新データ表示処理
+        /// <summary>
+        /// 更新データ表示処理
+        /// </summary>
+        /// <param name="iLinecnt">行カウント</param>
+        /// <returns></returns>
+        private bool DispMentenanceData()
+        {
+            // 担当者マスタクラス
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            try
+            {
+                // スクロール先頭
+                tableLayoutPanel1.VerticalScroll.Value = 0;
+
+                // 担当者マスタ取得SQL
+                string strSql = "SELECT A.*, B.SECNAME, B.SECRANK, B.SECRANGE FROM PERSONINCHARGEMASTER A";
+                strSql += " LEFT JOIN SECURITYMASTER B ON B.SECCODE = A.SECCODE";
+                strSql += string.Format(" Where A.PersonCode = {0}", m_PersonCode);
+                ArrayList arList = new ArrayList();
+
+                // 担当者マスタ取得
+                if (!picDB.ExecuteReader(strSql, ref arList)) return false;
+                if (arList.Count == 0) return false;
+                object[] picRec = (object[])arList[0];
+
+                // 終了日付に未定を表示する
+                bool showFocus = false;
+                CommonMotions.SendMessage(txtInput3.Handle, 5377, new IntPtr(showFocus ? 1 : 0), CommonDefine.s_UndecidedString);
+
+                // データ表示
+                m_dispControl[(int)DispCtrl.PersonCode].Text = CommonMotions.cnvInt(picRec[(int)IOMPersonInCharge.ColumnCnt.PersonCode]).ToString();
+                m_dispControl[(int)DispCtrl.PersonName].Text = CommonMotions.cnvString(picRec[(int)IOMPersonInCharge.ColumnCnt.PersonName]);
+                m_dispControl[(int)DispCtrl.StartDate].Text = CommonMotions.cnvDate(picRec[(int)IOMPersonInCharge.ColumnCnt.StartDate]).ToShortDateString();
+
+                DateTime EndDate = CommonMotions.cnvDate(picRec[(int)IOMPersonInCharge.ColumnCnt.EndDate]);
+                if (EndDate != DateTime.MinValue)
+                    m_dispControl[(int)DispCtrl.EndDate].Text = EndDate.ToShortDateString();
+
+                m_dispControl[(int)DispCtrl.PassWord].Text = CommonMotions.cnvString(picRec[(int)IOMPersonInCharge.ColumnCnt.PassWord]);
+
+                //m_dispControl[(int)Dispcount.MonthlySalary].Text = CommonMotions.cnvInt(picList[(int)IOMPersonInCharge.NameColumn.MonthlySalary]).ToString("#,#0");
+                //m_dispControl[(int)Dispcount.YearSalary].Text = CommonMotions.cnvInt(picList[(int)IOMPersonInCharge.NameColumn.YearSalary]).ToString("#,#0");
+
+                #region 未使用
+                // 一般使用者は承認色を使用しない
+                //if (picList.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                //{
+                //    label15.Visible = false;
+                //    m_dispControl[(int)Dispcount.MessageColor].Visible = false;
+                //    btnBackColor.Visible = false;
+                //}
+                //else
+                //{
+                //    label15.Visible = true;
+                //    m_dispControl[(int)Dispcount.MessageColor].Visible = true;
+                //    btnBackColor.Visible = true;
+
+                //    // 背景色設定
+                //    m_dispControl[(int)Dispcount.MessageColor].BackColor = CommonMotions.getBackForeColor(picList.MsgBackColor
+                //                                                        , CommonDefine.PalceOfColor.BackColor);
+                //}
+                #endregion
+
+                m_bEventStop = true;
+                ((ComboBox)m_dispControl[(int)DispCtrl.SecManage]).SelectedValue = CommonMotions.cnvInt(picRec[(int)IOMPersonInCharge.ColumnCnt.SecCode]);
+                m_bEventStop = false;
+                m_dispControl[(int)DispCtrl.SecurityManegement].Text = CommonMotions.cnvInt(picRec[(int)IOMPersonInCharge.ColumnCnt.SecurityManagement]).ToString();
+
+                ((ComboBox)m_dispControl[(int)DispCtrl.LedgerFlg]).SelectedValue = CommonMotions.cnvInt(picRec[(int)IOMPersonInCharge.ColumnCnt.LedgerFlg]);
+                ((ComboBox)m_dispControl[(int)DispCtrl.Department]).SelectedValue = CommonMotions.cnvInt(picRec[(int)IOMPersonInCharge.ColumnCnt.DepartmentCode]);
+
+                m_dispControl[(int)DispCtrl.DisplayString].Text = CommonMotions.cnvString(picRec[(int)IOMPersonInCharge.ColumnCnt.DisplayString]);
+                m_dispControl[(int)DispCtrl.Qualification].Text = CommonMotions.cnvString(picRec[(int)IOMPersonInCharge.ColumnCnt.Qualification]);
+                m_dispControl[(int)DispCtrl.SealPrintName].Text = CommonMotions.cnvString(picRec[(int)IOMPersonInCharge.ColumnCnt.SealPrintName]);
+
+                // 機密区分
+                ((ComboBox)m_dispControl[(int)DispCtrl.SecManage]).SelectedValue = CommonMotions.cnvInt(picRec[(int)IOMPersonInCharge.ColumnCnt.SecCode]);
+
+                int PersonRecCnt = Enum.GetNames(typeof(IOMPersonInCharge.ColumnCnt)).Length;
+                // 機密区分ランク
+                int SecRank = CommonMotions.cnvInt(picRec[PersonRecCnt + 1]);
+                SetSecRankString(SecRank);
+
+                // 機密区分範囲
+                int SecRange = CommonMotions.cnvInt(picRec[PersonRecCnt + 2]);
+                // 参照部署データ表示
+                RefDepartmentData(SecRange);
+
+                m_bChengeAns = false;
+
+                // 給与グリッド表示
+                DisplaySalaryGrid();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+            }
+        }
+        #endregion
+
+        #region 給与一覧グリッド表示
+        /// <summary>
+        /// 給与一覧グリッド表示
+        /// </summary>
+        private void DisplaySalaryGrid()
+        {
+            IOMPersonSalary SalaryDB = new IOMPersonSalary();
+            try
+            {
+                dgvSalary.Rows.Clear();
+
+                string strSQL = SalaryDB.CreatePrimarykeyString(m_PersonCode, DateTime.MinValue);
+                strSQL += " ORDER BY StartDate DESC";
+                List<PersonSalaryMaster> SalaryList = new List<PersonSalaryMaster>();
+                SalaryDB.SelectAction(strSQL, ref SalaryList);
+
+                foreach (PersonSalaryMaster wrkRec in SalaryList)
+                {
+                    dgvSalary.Rows.Add(wrkRec.StartDate.ToShortDateString(),
+                                        wrkRec.MonthlySalary.ToString("#,0"),
+                                        wrkRec.YearSalary.ToString("#,0"));
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                SalaryDB.close(); SalaryDB = null;
+                // 空行詰め
+                int count = s_FixRowsSalaryGrid - dgvSalary.RowCount;
+                if (count > 0) dgvSalary.RowCount += count;
+            }
+        }
+        #endregion
+
+        #region 参照部署データ表示部制御
+        /// <summary>
+        /// 参照部署データ表示部制御
+        /// </summary>
+        /// <param name="SecRange"></param>
+        private void RefDepartmentData(int SecRange)
+        {
+            try
+            {
+                // ----- 機密範囲の表示
+                // 機密区分範囲
+                KeyValuePair<int, string> SecRangeValue;
+                if (SecRange == 0)
+                {
+                    SecRangeValue = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.Only];
+                }
+                else
+                {
+                    SecRangeValue = CommonMotions.SearchSecurityRangeList(SecRange);
+                }
+                m_dispControl[(int)DispCtrl.SecRange].Text = SecRangeValue.Value;
+
+                // ----- 参照部署の表示制御
+                label15.Visible = false;
+                lblMessageColor.Visible = false;
+                btnBackColor.Visible = false;
+
+                if (SecRange == CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.AllPath].Key)
+                {   // 全部署対象はデータ表示のみ
+                    label12.Visible = true;
+                    cmbRefDepartment.Visible = false;
+                    btnRefDepAdd.Visible = false;
+                    btnRefDepDel.Visible = false;
+                    dgvRefDepartment.Visible = true;
+                }
+                else if (SecRange == CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.Multiple].Key)
+                {   // 複数部署対象は追加・削除可能
+                    label12.Visible = true;
+                    cmbRefDepartment.Visible = true;
+                    btnRefDepAdd.Visible = true;
+                    btnRefDepDel.Visible = true;
+                    dgvRefDepartment.Visible = true;
+                }
+                else
+                {   // その他は表示しない
+                    label12.Visible = false;
+                    cmbRefDepartment.Visible = false;
+                    btnRefDepAdd.Visible = false;
+                    btnRefDepDel.Visible = false;
+                    dgvRefDepartment.Visible = false;
+                    dgvRefDepartment.Rows.Clear();
+                }
+
+                // ----- 参照部署表示
+                DisplayRefDepartmentGrid(SecRange);
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 参照部署一覧グリッド表示
+        /// <summary>
+        /// 参照部署一覧グリッド表示
+        /// </summary>
+        private void DisplayRefDepartmentGrid(int SecRange)
+        {
+            IOMDepartment DepDB = new IOMDepartment();
+            try
+            {
+                // グリッドクリア
+                dgvRefDepartment.Rows.Clear();
+
+                if (SecRange == CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.AllPath].Key)
+                {
+                    List<DepartmentMaster> DepList = new List<DepartmentMaster>();
+                    string strSQL = " WHERE DELETEFLG = 0 ORDER BY DISPLAYORDER";
+                    if (!DepDB.SelectAction(strSQL, ref DepList)) return;
+                    foreach (DepartmentMaster DepRec in DepList)
+                    {
+                        // 自部署は表示しない
+                        if (DepRec.DepartmentCode == CommonMotions.cnvInt(cmbDepartment.SelectedValue)) continue;
+                        dgvRefDepartment.Rows.Add(DepRec.DepartmentCode, DepRec.DepartmentString);
+                    }
+                }
+                else if (SecRange == CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.Multiple].Key)
+                {
+                    // 参照部署取得
+                    List<KeyValuePair<int, string>> DepList = new List<KeyValuePair<int, string>>();
+                    int PersonCode = CommonMotions.cnvInt(lblPersonCode.Text);
+                    int SecCode = CommonMotions.cnvInt(cmbSecManage.SelectedValue);
+                    if (!ClsSecurityPermission.GetRefDepartment(CommonMotions.cnvInt(lblPersonCode.Text),
+                                                            ref DepList,
+                                                            true,
+                                                            SecCode)) return;
+                    for (int i = 0; i < DepList.Count; i++)
+                    {
+                        // 自部署は表示しない
+                        if (DepList[i].Key == CommonMotions.cnvInt(cmbDepartment.SelectedValue)) continue;
+                        dgvRefDepartment.Rows.Add(DepList[i].Key, DepList[i].Value);
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                DepDB.close(); DepDB = null;
+
+                if (SecRange == CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.AllPath].Key
+                    || SecRange == CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.Multiple].Key)
+                {
+                    // 空行詰め
+                    int count = s_FixRowsRefDepGrid - dgvRefDepartment.RowCount;
+                    if (count > 0) dgvRefDepartment.RowCount += count;
+                }
+            }
+        }
+        #endregion
+
+        #region 日付フィールドの処理
+        /// <summary>
+        /// 日付フィールドの処理
+        /// </summary>
+        /// <param name="txtbox"></param>
+        private void InputDateField(TextBox txtbox)
+        {
+            try
+            {
+                // 日付フィールドの値が変更なしならば処理しない
+                if (!m_bDateChange) return;
+
+                // 日付をyyyy/mm/dd形式で表示する
+                if (txtbox.Text.Length == 0) return;
+
+                // 日付がおかしい時は処理しない
+                if (!CommonMotions.chkDate(txtbox.Text.ToString())) return;
+
+                // 日付編集表示
+                DateTime wrkDt = DateTime.Parse(txtbox.Text);
+                txtbox.Text = wrkDt.ToShortDateString();
+
+                // 変更フラグON
+                m_bChengeAns = true;
+                m_bDateChange = false;
+
+                // 開始日付以外は処理終了する
+                if (txtbox != (TextBox)m_dispControl[(int)DispCtrl.StartDate]) return;
+
+                // 以下は新規のときのみ処理する
+                if (lblPersonCode.Text.Length != 0) return;
+
+                // 担当者コード用にyyyy/mmを取得する
+                string work = wrkDt.Year.ToString("0000") + "/" + wrkDt.Month.ToString("00");
+
+                // ----- 担当者コード・初期パスワードを作成する
+                // 担当者コードの基を取得する
+                int personcode = GetMaxPersonCode(work);
+                if (personcode == 0)
+                {   // 対象月に登録者がいない場合は1番で作成
+                    m_dispControl[(int)DispCtrl.PersonCode].Text = work.Replace("/", "") + string.Format("{0:00}", 1);
+                }
+                else
+                {   // 対象月に登録者がいた場合はその番号+1にする
+                    m_dispControl[(int)DispCtrl.PersonCode].Text = string.Format("{0:00000000}", personcode + 1);
+                }
+                // 新規時はパスワードを同じにする
+                if (m_dispControl[(int)DispCtrl.EditMode].Text.Trim().Equals(CommonDefine.EditModeStringNew))
+                {
+                    m_dispControl[(int)DispCtrl.PassWord].Text = m_dispControl[(int)DispCtrl.PersonCode].Text;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 画面項目のチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            int iLength = 0;
+            try
+            {
+                // 担当者名
+                if (m_dispControl[(int)DispCtrl.PersonName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.PersonName], s_PersonNameLength, true);
+
+                // マスタ使用開始年月
+                if (m_dispControl[(int)DispCtrl.StartDate].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)DispCtrl.StartDate], true);
+
+                // マスタ使用終了年月
+                if (m_dispControl[(int)DispCtrl.EndDate].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)DispCtrl.EndDate]);
+
+                //　パスワード
+                if (m_dispControl[(int)DispCtrl.PassWord].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.PassWord], s_PassWordLength, true);
+
+                //　保護区分
+                //if (m_dispControl[(int)DispCtrl.SecManage].Text.Length != 0) iLength++;
+                //bRet &= CommonMotions.DispFieldIndispensable(m_dispControl[(int)DispCtrl.SecManage]);
+
+                // 表示・印刷名称
+                if (m_dispControl[(int)DispCtrl.DisplayString].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.DisplayString], s_DisplayStringLength);
+
+                //　部署コード
+                int SecVal = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)DispCtrl.SecManage]).SelectedValue.ToString());
+                if (SecVal > CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.LimitedAuthority].Key)
+                {
+                    if (m_dispControl[(int)DispCtrl.Department].Text.Length != 0) iLength++;
+                    bRet &= CommonMotions.DispFieldIndispensable(m_dispControl[(int)DispCtrl.Department]);
+                }
+
+                // 給与入力チェック
+                bool bSalary = true;
+                if (!dgvSalaryExists()) bSalary = false;
+                bRet &= bSalary;
+                // 背景色変更
+                CommonMotions.chgBackColor(m_dispControl[(int)DispCtrl.MonthlySalary], bSalary);
+                CommonMotions.chgBackColor(m_dispControl[(int)DispCtrl.YearSalary], bSalary);
+                CommonMotions.chgBackColor(m_dispControl[(int)DispCtrl.SalaryStDate], bSalary);
+                
+                //// 月給金額
+                //if (m_dispControl[(int)Dispcount.MonthlySalary].Text.Length != 0) iLength++;
+                //bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)Dispcount.MonthlySalary], true);
+
+                //// 年棒金額
+                //if (m_dispControl[(int)Dispcount.YearSalary].Text.Length != 0) iLength++;
+                //bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)Dispcount.YearSalary], true);
+
+                // 資格情報
+                if (m_dispControl[(int)DispCtrl.Qualification].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.Qualification], s_QualificationLength, false);
+
+                // 印鑑表示名
+                if (m_dispControl[(int)DispCtrl.SealPrintName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.SealPrintName], s_SealPrintNameLength, false);
+
+                if (iLength == 0)
+                {
+                    MessageBox.Show("データが入力されていません、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                    return false;
+                }
+                if (!bRet)
+                {
+                    MessageBox.Show("入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 給与グリッドデータ存在チェック
+        /// <summary>
+        /// 給与グリッドデータ存在チェック
+        /// </summary>
+        /// <returns></returns>
+        private bool dgvSalaryExists()
+        {
+            try
+            {
+                bool bRet = false;
+                foreach (DataGridViewRow wrkRow in dgvSalary.Rows)
+                {
+                    if (wrkRow.Cells[0].Value.ToString().Length != 0)
+                    {
+                        bRet = true;
+                        break;
+                    }
+                }
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 登録月の最大値担当者コードを取得する
+        /// <summary>
+        /// 登録月の最大値担当者コードを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetMaxPersonCode(string strDate)
+        {
+            int iRet = 0;
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            try
+            {
+                // データ更新
+                string strWhere = "";
+                if (strDate.Length != 0)
+                {
+                    //strWhere = string.Format(" Where TO_CHAR(StartDate,'YYYY/MM') = '{0}'", strDate);
+                    strWhere = string.Format(" Where DATE_FORMAT(StartDate,'%Y/%m') = '{0}'", strDate);
+                }
+                iRet = picDB.SelectMaxPersonCodeCount(strWhere);
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return iRet;
+            }
+            finally
+            {
+                picDB.close();
+                picDB = null;
+            }
+            return iRet;
+        }
+        #endregion
+
+        #region 担当者マスタ登録
+        /// <summary>
+        /// 担当者マスタ登録
+        /// </summary>
+        private bool PersonInChargeMasterDataEntry()
+        {
+            IOMPersonInCharge picDB = new IOMPersonInCharge();
+            IOMPersonSalary salaryDB = new IOMPersonSalary();
+            IOMPersonDepartment pDepDB = new IOMPersonDepartment();
+            try
+            {
+                //// 一括処理なので接続を行う
+                picDB.connect(); picDB.beginTran();
+                salaryDB.connect(); salaryDB.beginTran();
+                pDepDB.connect(); pDepDB.beginTran();
+
+                // 表示順を更新する
+                foreach (DataGridViewRow wrkRow in dgvMaster.Rows)
+                {
+                    // 担当者コード無は処理しない
+                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispListColumn.PERSON_CODE].Value)) continue;
+
+                    List<PersonInChargeMaster> cwrow = new List<PersonInChargeMaster>();
+
+                    // 検索文字列作成
+                    string SQLRow = picDB.CreatePrimarykeyString(
+                                                CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.PERSON_CODE].Value));
+
+                    // データ取得
+                    if (!picDB.SelectAction(SQLRow, ref cwrow, false)) break;
+                    // 表示順変更
+                    cwrow[0].DisplayOrder = CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.DISPLAY_ORDER].Value);
+                    // データ更新
+                    picDB.UpdateAction(SQLRow, cwrow[0], false);
+                }
+
+                // 担当者給与マスタ更新
+                if (!PersonSalaryDataEntry(salaryDB))
+                {
+                    picDB.rollback();
+                    salaryDB.rollback();
+                    MessageBox.Show("担当者給与マスタ更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                PersonInChargeMaster work = new PersonInChargeMaster();
+                List<PersonInChargeMaster> workList = new List<PersonInChargeMaster>();
+
+                // データセット
+                SetPersonMasterData(picDB, ref work);
+
+                // データ存在確認
+                string strWhere = string.Format(" Where PersonCode = {0}", work.PersonCode.ToString());
+
+                if (!picDB.SelectAction(strWhere, ref workList, false))
+                {
+                    picDB.rollback();
+                    MessageBox.Show("担当者マスタ登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                if (workList.Count == 0)
+                {
+                    // 表示順セット
+                    work.DisplayOrder = picDB.SelectMaxDisplayCount("", false) + 1;
+                    // データがない場合
+                    workList.Clear();
+                    workList.Add(work);
+                    // データ登録
+                    if (!picDB.InsertAction(workList, false))
+                    {
+                        picDB.rollback();
+                        MessageBox.Show("担当者マスタ登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+                else
+                {
+                    // 表示順セット
+                    work.DisplayOrder = workList[0].DisplayOrder;
+                    // データがある場合
+                    // データ更新
+                    if (!picDB.UpdateAction(strWhere, work, false))
+                    {
+                        picDB.rollback();
+                        MessageBox.Show("担当者マスタ更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+
+                // 担当者参照部署マスタ更新
+                if (!PersonDepartmentDataEntry(pDepDB))
+                {
+                    picDB.rollback();
+                    salaryDB.rollback();
+                    pDepDB.rollback();
+                    MessageBox.Show("参照部署マスタ更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                // 成功したらcommit
+                picDB.commit();
+                salaryDB.commit();
+                pDepDB.commit();
+
+                // コードクリア
+                m_PersonCode = 0;
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                picDB.close(); picDB = null;
+                salaryDB.close(); salaryDB = null;
+                pDepDB.close(); pDepDB = null;
+            }
+        }
+        #endregion
+
+        #region 担当者マスタデータセット
+        /// <summary>
+        /// 担当者マスタデータセット
+        /// </summary>
+        /// <param name="work"></param>
+        private void SetPersonMasterData(IOMPersonInCharge picDB, ref PersonInChargeMaster work)
+        {
+            try
+            {
+                // 担当者コード
+                work.PersonCode = CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.PersonCode].Text.ToString());
+
+                // 担当者名
+                work.PersonName = m_dispControl[(int)DispCtrl.PersonName].Text.ToString();
+
+                // 開始年月日
+                if (m_dispControl[(int)DispCtrl.StartDate].Text.Length != 0)
+                    work.StartDate = CommonMotions.cnvDate(m_dispControl[(int)DispCtrl.StartDate].Text);
+
+                // 終了年月日
+                if (m_dispControl[(int)DispCtrl.EndDate].Text.Length != 0)
+                    work.EndDate = CommonMotions.cnvDate(m_dispControl[(int)DispCtrl.EndDate].Text);
+
+                // パスワード
+                if (m_dispControl[(int)DispCtrl.PassWord].Text.Length != 0)
+                    work.PassWord = m_dispControl[(int)DispCtrl.PassWord].Text;
+                
+                double MonthryCost = 0;
+                double YearsCost = 0;
+                CommonMotions.GetSalaryValue(picDB, work.PersonCode, ref MonthryCost, ref YearsCost, DateTime.Today);
+                // 月給金額
+                work.MonthlySalary = MonthryCost;
+
+                // 年俸金額
+                work.YearSalary = YearsCost;
+
+                // 旧セキュリティ区分
+                work.SecurityManagement = CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.SecurityManegement].Text);
+
+                // 機密区分
+                if (m_dispControl[(int)DispCtrl.SecManage].Text.Length != 0)
+                    work.SecCode = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)DispCtrl.SecManage]).SelectedValue.ToString());
+                
+                // 工事詳細台帳
+                if (m_dispControl[(int)DispCtrl.LedgerFlg].Text.Length != 0)
+                    work.LedgerFlg = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)DispCtrl.LedgerFlg]).SelectedValue.ToString());
+
+                #region 未使用
+                //// メッセージ背景色
+                //if (m_dispControl[(int)Dispcount.MessageColor].Visible)
+                //{
+                //    Control wrkCtrl = m_dispControl[(int)Dispcount.MessageColor];
+                //    work.MsgBackColor = String.Format("0x{0:X2}{1:X2}{2:X2}"
+                //                        , wrkCtrl.BackColor.R, wrkCtrl.BackColor.G, wrkCtrl.BackColor.B);
+                //}
+                #endregion
+
+                // 表示・印刷文字列
+                if (m_dispControl[(int)DispCtrl.DisplayString].Text.Length != 0)
+                    work.DisplayString = m_dispControl[(int)DispCtrl.DisplayString].Text;
+
+                // 部署コード
+                if (m_dispControl[(int)DispCtrl.Department].Text.Length != 0)
+                    work.DepartmentCode = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)DispCtrl.Department]).SelectedValue.ToString());
+
+                // 資格情報
+                work.Qualification = m_dispControl[(int)DispCtrl.Qualification].Text.ToString();
+
+                // 印鑑表示名
+                work.SealPrintName = m_dispControl[(int)DispCtrl.SealPrintName].Text.ToString();
+
+                // 社員区分（社員）
+                work.EmployeeClassFlg = (int)CommonDefine.EmployeeClassFlg.Regular;
+
+                // 削除フラグ
+                work.DeleteFlg = 0;
+
+                // 表示順はセットしない
+                work.DisplayOrder = 0;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 担当者給与マスタ更新
+        /// <summary>
+        /// 担当者給与マスタ更新
+        /// </summary>
+        private bool PersonSalaryDataEntry(IOMPersonSalary salaryDB)
+        {
+            try
+            {
+                // まず削除する
+                string strSQL = salaryDB.CreatePrimarykeyString(m_PersonCode, DateTime.MinValue);
+                salaryDB.DeleteAction(strSQL, false);
+
+                foreach (DataGridViewRow wrkRow in dgvSalary.Rows)
+                {
+                    DateTime StartDate = CommonMotions.cnvDate(wrkRow.Cells[0].Value);
+                    if (StartDate == DateTime.MinValue) continue;
+
+                    PersonSalaryMaster RowRec = new PersonSalaryMaster();
+                    RowRec.PersonCode = m_PersonCode;                                   // 担当者コード
+                    RowRec.StartDate = StartDate;                                       // 使用開始年月日付
+                    RowRec.MonthlySalary = CommonMotions.cnvInt(wrkRow.Cells[1].Value); // 月給金額
+                    RowRec.YearSalary = CommonMotions.cnvInt(wrkRow.Cells[2].Value);	// 年棒金額
+
+                    if (!salaryDB.InsertAction(RowRec, false)) return false;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 対象部署マスタ更新
+        /// <summary>
+        /// 対象部署マスタ更新
+        /// </summary>
+        /// <param name="salaryDB"></param>
+        /// <returns></returns>
+        private bool PersonDepartmentDataEntry(IOMPersonDepartment pDepDB)
+        {
+            try
+            {
+                // まず削除する
+                string strSQL = pDepDB.CreatePrimarykeyString(m_PersonCode);
+                pDepDB.DeleteAction(strSQL, false);
+
+                // まず所属部署を登録する
+                PersonDepartmentMaster depRec = new PersonDepartmentMaster();
+                depRec.PersonCode = m_PersonCode;                                           // 担当者コード
+                depRec.DepartmentCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);  // 対象部署コード
+                depRec.AffiliationFlg = (int)CommonDefine.AffiliationFlg.Affiliation;       // 所属フラグ
+                if (!pDepDB.InsertAction(depRec, false)) return false;
+
+                // 参照部署設定無は処理しない
+                if (!dgvRefDepartment.Visible) return true;
+
+                foreach (DataGridViewRow wrkRow in dgvRefDepartment.Rows)
+                {
+                    string RefDep = CommonMotions.cnvString(wrkRow.Cells[1].Value);
+                    if (RefDep.Length == 0) continue;
+
+                    PersonDepartmentMaster RowRec = new PersonDepartmentMaster();
+
+                    RowRec.PersonCode = m_PersonCode;                                           // 担当者コード
+                    RowRec.DepartmentCode = CommonMotions.cnvInt(wrkRow.Cells[0].Value);        // 対象部署コード
+                    RowRec.AffiliationFlg = (int)CommonDefine.AffiliationFlg.Ohter;             // 所属フラグ
+                    if (!pDepDB.InsertAction(RowRec, false)) return false;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 表示オブジェクトの取得
+        /// <summary>
+        /// 表示オブジェクトの取得
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            int DspCtrlCnt = Enum.GetNames(typeof(DispCtrl)).Length;
+            m_dispControl = new Control[DspCtrlCnt];
+
+            m_dispControl[(int)DispCtrl.EditMode] = lblEditMode;
+            m_dispControl[(int)DispCtrl.PersonCode] = lblPersonCode;
+            m_dispControl[(int)DispCtrl.PersonName] = txtInput1;
+            m_dispControl[(int)DispCtrl.StartDate] = txtInput2;
+            m_dispControl[(int)DispCtrl.EndDate] = txtInput3;
+            m_dispControl[(int)DispCtrl.PassWord] = txtInput4;
+            m_dispControl[(int)DispCtrl.MonthlySalary] = txtInput6;
+            m_dispControl[(int)DispCtrl.YearSalary] = txtInput7;
+            m_dispControl[(int)DispCtrl.SalaryStDate] = txtInput10;
+            m_dispControl[(int)DispCtrl.SecManage] = cmbSecManage;
+            m_dispControl[(int)DispCtrl.MessageColor] = lblMessageColor;
+            m_dispControl[(int)DispCtrl.Department] = cmbDepartment;
+            m_dispControl[(int)DispCtrl.DisplayString] = txtInput5;
+            m_dispControl[(int)DispCtrl.Qualification] = txtInput8;
+            m_dispControl[(int)DispCtrl.SealPrintName] = txtInput9;
+            m_dispControl[(int)DispCtrl.LedgerFlg] = cmbLedgerFlg;
+            m_dispControl[(int)DispCtrl.SecRank] = lblSecRank;
+            m_dispControl[(int)DispCtrl.SecRange] = lblSecRange;
+            m_dispControl[(int)DispCtrl.RefDepartment] = cmbRefDepartment;
+            m_dispControl[(int)DispCtrl.SecurityManegement] = lblSecurtyManegement;
+        }
+        #endregion
+
+        #region 機密区分コンボボックス初期表示処理
+        /// <summary>
+        /// 機密区分コンボボックス初期表示処理
+        /// </summary>
+        private void SetSecurityManagementCombBox()
+        {
+            m_bEventStop = true;
+            IOMSecurity SecDB = new IOMSecurity();
+            try
+            {
+                // コンボボックスクリア
+                cmbSecManage.DataSource = null;
+                cmbSecManage.Items.Clear();
+
+                // 選択項目クリア
+                cmbSecManage.Text = "";
+
+                //コンボボックスのデータをセットする
+                string strSQL = " Order By DisplayOrder";
+                List<SecurityMaster> data = new List<SecurityMaster>();
+                if (!SecDB.SelectAction(strSQL, ref data)) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+                foreach (SecurityMaster wrk in data)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.SecCode, wrk.SecName);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbSecManage, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                SecDB.close(); SecDB = null;
+                m_bEventStop = false;
+            }
+        }
+        #endregion
+
+        #region 部署コンボボックス初期表示処理
+        /// <summary>
+        /// 部署コンボボックス初期表示処理
+        /// </summary>
+        private void SetDepartmentCombBox(ComboBox cmbBox)
+        {
+            IOMDepartment dmDB = new IOMDepartment();
+            m_bEventStop = true;
+            try
+            {
+                // コンボボックスクリア
+                cmbBox.DataSource = null;
+                cmbBox.Items.Clear();
+
+                // 選択項目クリア
+                cmbBox.Text = "";
+
+                //コンボボックスのデータをセットする
+                string strSQL = " Where DeleteFlg = 0 Order By DisplayOrder";
+                List<DepartmentMaster> data = new List<DepartmentMaster>();
+                if (!dmDB.SelectAction(strSQL, ref data)) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                foreach (DepartmentMaster wrk in data)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.DepartmentCode, wrk.DepartmentString);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbBox, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                dmDB.close();
+                dmDB = null;
+
+                m_bEventStop = false;
+            }
+        }
+        #endregion
+
+        #region 工事詳細台帳計算対象コンボボックス初期表示処理
+        /// <summary>
+        /// 工事詳細台帳計算対象コンボボックス初期表示処理
+        /// </summary>
+        private void SetCalcLedgerCombBox()
+        {
+            m_bEventStop = true;
+            try
+            {
+                // コンボボックスクリア
+                cmbLedgerFlg.DataSource = null;
+                cmbLedgerFlg.Items.Clear();
+
+                // 選択項目クリア
+                cmbLedgerFlg.Text = "";
+
+                //コンボボックスのデータをセットする
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                for (int i = 0; i < PersonLedgerDivNoName.Length; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(i, PersonLedgerDivNoName[i]);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbLedgerFlg, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                m_bEventStop = false;
+            }
+        }
+        #endregion
+
+        #region 給与グリッド追加
+        /// <summary>
+        /// 給与グリッド追加
+        /// </summary>
+        private void SalaryGridDataAdd()
+        {
+            try
+            {
+                // ----- データチェック
+                bool bRet = true;
+                // 給与開始年月
+                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)DispCtrl.SalaryStDate], true);
+
+                // 月給金額
+                bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)DispCtrl.MonthlySalary], true);
+
+                // 年棒金額
+                bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)DispCtrl.YearSalary], true);
+
+                if (!bRet)
+                {
+                    MessageBox.Show("入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                string TergetDate = m_dispControl[(int)DispCtrl.SalaryStDate].Text;
+                foreach (DataGridViewRow RowData in dgvSalary.Rows)
+                {
+                    string compDate = CommonMotions.cnvString(RowData.Cells[(int)SalaryGridColumn.StartData].Value);
+                    if (compDate.Equals(TergetDate))
+                    {
+                        bRet = false;
+                        break;
+                    }
+                }
+                if (!bRet)
+                {
+                    MessageBox.Show("同じ日付があります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                DataGridView dgv = dgvSalary;
+                dgv.Rows.Insert(0, 1);
+
+                dgv.Rows[0].Cells[(int)SalaryGridColumn.StartData].Value = m_dispControl[(int)DispCtrl.SalaryStDate].Text;
+                dgv.Rows[0].Cells[(int)SalaryGridColumn.MonthlySalary].Value = m_dispControl[(int)DispCtrl.MonthlySalary].Text;
+                dgv.Rows[0].Cells[(int)SalaryGridColumn.YearSalary].Value = m_dispControl[(int)DispCtrl.YearSalary].Text;
+
+                m_dispControl[(int)DispCtrl.SalaryStDate].Text = string.Empty;
+                m_dispControl[(int)DispCtrl.MonthlySalary].Text = string.Empty;
+                m_dispControl[(int)DispCtrl.YearSalary].Text = string.Empty;
+
+                m_bChengeAns = true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 給与グリッド削除
+        /// <summary>
+        /// 給与グリッド削除
+        /// </summary>
+        private void SalaryGridDataRemove(int RowCnt)
+        {
+            try
+            {
+                if (MessageBox.Show("選択行のデータが削除されます、確認してください。", "削除確認",
+                                    MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel) return;
+
+                DataGridView dgv = dgvSalary;
+                dgv.Rows.RemoveAt(RowCnt);
+
+                m_bChengeAns = true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // 空行詰め
+                int count = s_FixRowsSalaryGrid - dgvSalary.RowCount;
+                if (count > 0) dgvSalary.RowCount += count;
+            }
+        }
+        #endregion
+
+        #region 参照部署グリッド追加
+        /// <summary>
+        /// 参照部署グリッド追加
+        /// </summary>
+        private void RefDepGridDataAdd()
+        {
+            try
+            {
+                // ----- データチェック
+                bool bRet = true;
+                // 給与開始年月
+                bRet &= CommonMotions.DispFieldIndispensable(m_dispControl[(int)DispCtrl.RefDepartment]);
+
+                if (!bRet)
+                {
+                    MessageBox.Show("入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                DataGridView dgv = dgvRefDepartment;
+                int AffDepCode = CommonMotions.cnvInt(cmbDepartment.SelectedValue);
+                int RefDepCode = CommonMotions.cnvInt(cmbRefDepartment.SelectedValue);
+
+                int Rowcnt = 0;
+                int ErrorCode = 0;
+                foreach (DataGridViewRow RowData in dgv.Rows)
+                {
+                    int iDepcode = CommonMotions.cnvInt(RowData.Cells[(int)RefDepGridColumn.DepCode].Value);
+                    string sDepName = CommonMotions.cnvString(RowData.Cells[(int)RefDepGridColumn.DepName].Value);
+                    
+                    if (sDepName.Length != 0) Rowcnt++;
+                    // 所属部署が既にグリッドにある
+                    if (AffDepCode == RefDepCode)
+                    {
+                        bRet = false;
+                        ErrorCode = 1;
+                        break;
+                    }
+                    // 登録部署が既にグリッドにある
+                    if (iDepcode == RefDepCode)
+                    {
+                        bRet = false;
+                        ErrorCode = 2;
+                        break;
+                    }
+                }
+                if (!bRet)
+                {
+                    string strMsg = string.Empty;
+                    switch (ErrorCode)
+                    {
+                        case 1:
+                            strMsg = "所属部署は登録できません、確認してください。";
+                            break;
+                        case 2:
+                            strMsg = "同じ部署があります、確認してください。";
+                            break;
+                        default:
+                            break;
+                    }
+                    MessageBox.Show(strMsg, "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+
+                dgv.RowCount = Rowcnt;
+                
+                int RowPos = dgv.Rows.Add(1);
+
+                dgv.Rows[RowPos].Cells[(int)RefDepGridColumn.DepCode].Value = RefDepCode;
+                dgv.Rows[RowPos].Cells[(int)RefDepGridColumn.DepName].Value = cmbRefDepartment.Text;
+
+                m_bChengeAns = true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // 空行詰め
+                int count = s_FixRowsRefDepGrid - dgvRefDepartment.RowCount;
+                if (count > 0) dgvRefDepartment.RowCount += count;
+            }
+        }
+        #endregion
+
+        #region 部署グリッド削除
+        /// <summary>
+        /// 部署グリッド削除
+        /// </summary>
+        private void RefDepGridDataRemove(int RowCnt)
+        {
+            try
+            {
+                if (MessageBox.Show("選択行の【部署】が削除されます、確認してください。", "削除確認",
+                                    MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel) return;
+
+                DataGridView dgv = dgvRefDepartment;
+                dgv.Rows.RemoveAt(RowCnt);
+
+                m_bChengeAns = true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // 空行詰め
+                int count = s_FixRowsRefDepGrid - dgvRefDepartment.RowCount;
+                if (count > 0) dgvRefDepartment.RowCount += count;
+            }
+        }
+        #endregion
+
+        #region 参照部署選択表示制御
+        /// <summary>
+        /// 参照部署選択表示制御
+        /// </summary>
+        private void CtrlRefDepDisp()
+        {
+            try
+            {
+                // 機密区分取得
+                int wrk = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)DispCtrl.SecManage]).SelectedValue.ToString());
+
+                // セキュリティマスタ取得
+                int SecRange = 0;
+                int SecRank = ClsSecurityPermission.GetDataAccessRank(wrk, ref SecRange);
+
+                // ----- 機密区分の表示
+                SetSecRankString(SecRank);
+
+                // ----- 機密区分範囲・参照部署の表示
+                // 参照部署データ表示部制御
+                RefDepartmentData(SecRange);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region セキュリティ区分表示
+        /// <summary>
+        /// セキュリティ区分表示
+        /// </summary>
+        /// <param name="SecRank"></param>
+        private void SetSecRankString(int SecRank)
+        {
+            try
+            {
+                // ----- 機密区分の表示
+                // 機密区分ランク
+                KeyValuePair<int, string> SecRankValue;
+                if (SecRank == 0)
+                {
+                    SecRankValue = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority];
+                }
+                else
+                {
+                    SecRankValue = CommonMotions.SearchSecurityRankList(SecRank);
+                }
+                m_dispControl[(int)DispCtrl.SecRank].Text = SecRankValue.Value;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.cs	(revision 51)
@@ -0,0 +1,769 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*--------------------- セキュリティ区分マスタメンテ画面 ---------------------*
+//  2016/11/11  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmSecurity : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        #region グリッド固定ラム
+        /// <summary>
+        /// グリッド固定ラム
+        /// </summary>
+        private enum GridColumn
+        {
+            No = 0,
+            SecCode,
+            SecName,
+        }
+        #endregion
+
+        #region 行選択色
+        /// <summary>
+        /// 行選択色
+        /// </summary>
+        private static Color s_RowSelectColor = Color.GreenYellow;
+        #endregion
+
+        #region デフォルトタイトル色
+        /// <summary>
+        /// デフォルトタイトル色
+        /// </summary>
+        private static Color[] s_DefaultColor = new Color[] { Color.LightBlue, Color.LightPink };
+        #endregion
+
+        #region カラムヘッダー行定義
+        /// <summary>
+        /// カラムヘッダー行定義
+        /// </summary>
+        private static int s_HeaderRows = 3;
+        #endregion
+
+        #region チェックボックスセル幅
+        /// <summary>
+        /// チェックボックスセル幅
+        /// </summary>
+        private static int s_CheckCellWidth = 80;
+        #endregion
+
+        #region タイトル行数
+        /// <summary>
+        /// タイトル行数
+        /// </summary>
+        private static int s_TitleRowCnt = 5;
+        #endregion
+
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// フィールド値変化フラグ
+        /// </summary>
+        private bool m_bChengeAns = false;
+
+        /// <summary>
+        /// 保護区分マスタリスト
+        /// </summary>
+        private List<SecurityMaster> m_SecMasterList = new List<SecurityMaster>();
+        /// <summary>
+        ///  追加チェックボックス
+        /// </summary>
+        private List<DataGridViewCheckBoxColumn> m_CheckBox = new List<DataGridViewCheckBoxColumn>();
+        /// <summary>
+        ///  追加セルスタイル
+        /// </summary>
+        private List<DataGridViewCellStyle> m_CellStyle = new List<DataGridViewCellStyle>();
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+        #endregion
+
+        #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+        #region コンストラクタ
+        public FrmSecurity()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmSecurity()
+        {
+            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 FrmSecurity_Load(object sender, EventArgs e)
+        {
+            dgvProcess.ColumnHeadersHeight = dgvProcess.ColumnHeadersHeight * (s_HeaderRows + 1);
+            
+            // グリッドデータ表示
+            DispSecurityGridData();
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
+            // フラグ初期化
+            m_bChengeAns = false;
+        }
+        #endregion
+
+        #region ×ボタン押下
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSecurity_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 btnNewDataEntry_Click(object sender, EventArgs e)
+        {
+            FrmSecurityPerson frm = new FrmSecurityPerson();
+            try
+            {
+                frm.NewData = true;
+                frm.ShowDialog();
+                if (frm.EndButton == System.Windows.Forms.DialogResult.Cancel) return;
+
+                // グリッドデータ表示
+                DispSecurityGridData();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region セキュリティ区分編集登録ボタン
+        /// <summary>
+        /// セキュリティ区分編集登録ボタン
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataSelectEdit_Click(object sender, EventArgs e)
+        {
+            FrmSecurityPerson frm = new FrmSecurityPerson();
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                DataGridViewCell CurCell = dgv.CurrentCell;
+                int DataColCnt = (CurCell.ColumnIndex - ((int)GridColumn.SecName + 1)) / (int)GridColumn.SecName;
+                if (DataColCnt < 0)
+                {
+                    MessageBox.Show("選択データがありません。", "選択確認", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+                
+                frm.secRec = m_SecMasterList[DataColCnt];
+                frm.ShowDialog();
+
+                if (frm.EndButton == System.Windows.Forms.DialogResult.Cancel) return;
+
+                // グリッドデータ表示
+                DispSecurityGridData();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 区分削除ボタン
+        /// <summary>
+        /// 区分削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataDelete_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // 変更フラグチェック
+                if (m_bChengeAns)
+                {
+                    if (MessageBox.Show("編集中のデータがあります、破棄してもよろしいでしょうか。", "編集中破棄確認"
+                            , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+
+                    //データチェック
+                    if (!DispFeildCheck()) return;
+
+                    // データ登録
+                    if (!SecurityMasterDataEntry()) return;
+                }
+
+                DataGridView dgv = dgvProcess;
+                DataGridViewCell Curcell = dgv.CurrentCell;
+                int CurCnt = Curcell.ColumnIndex;
+                if (CurCnt < 3)
+                {
+                    MessageBox.Show("データが選択されていません。", "削除確認", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return;
+                }
+                CurCnt -= 3;
+                if ((CurCnt % 2) != 0) --CurCnt;
+                CurCnt /= 2;
+                //--CurCnt;
+                string msg = string.Format("選択されたセキュリティ区分名:{0}を削除します。", m_SecMasterList[CurCnt].SecName);
+                if (MessageBox.Show(msg, "削除確認", MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+
+                // 区分データの使用チェック
+                if (!UseCheck())
+                {
+                    if (MessageBox.Show("選択されたセキュリティ区分が\n担当者マスタで使用されています！\n削除してもよろしいですか？", "削除確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
+                }
+
+                // データ削除
+                if (!SecurityMasterDataRemove()) return;
+
+                CommonMotions.RemoveEndMessage("セキュリティ区分データ");
+
+                // グリッドデータ表示
+                DispSecurityGridData();
+
+                // 変更フラグクリア
+                m_bChengeAns = false;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region キーダウン
+        /// <summary>
+        /// Entryキーでの移動処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSecurity_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 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 (MessageBox.Show("表示中のデータを登録します。", "登録確認"
+                        , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
+
+                // データ登録
+                if (!SecurityMasterDataEntry()) return;
+
+                // 変更データメモリセット
+                SetMemTable();
+
+                CommonMotions.EntryEndMessage("セキュリティ区分データ");
+
+                // 変更フラグクリア
+                m_bChengeAns = false;
+                this.Close();
+            }
+            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 dgvProcess_Scroll(object sender, ScrollEventArgs e)
+        {
+            dgvProcess.Invalidate();
+        }
+        #endregion
+
+        #region グリッド描画
+        /// <summary>
+        /// グリッド描画
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvProcess_Paint(object sender, PaintEventArgs e)
+        {
+            // グリッドの描画
+            GridPaint(sender, e);
+        }
+        #endregion
+
+        #region グリッドヘッダーカラム描画
+        /// <summary>
+        /// グリッドヘッダーカラム描画
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvProcess_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
+        {
+            try
+            {
+                // ヘッダー以外は処理なし
+                if (e.RowIndex > -1) return;
+
+                //// 標準ヘッダーの描画
+                GridCellPainting(sender, e);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region ヘッダセル結合処理
+        /// <summary>
+        /// ヘッダセル結合処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        /// <param name="columns"></param>
+        /// <param name="headerText"></param>
+        private void JoinGridHeader(object sender, DataGridViewCellPaintingEventArgs e, List<DataGridViewColumn> columns, string headerText)
+        {
+            try
+            {
+                //指定した列を結合する
+                // セルの矩形を取得
+                Rectangle rect = e.CellBounds;
+                //rect.X += 1;
+                //rect.Y += 1;
+                rect.Height -= 1;
+
+                DataGridView dgv = (DataGridView)sender;
+
+                rect.Width = 0;
+
+                // 結合する列の幅を取得して、足す
+                foreach (DataGridViewColumn col in columns)
+                {
+                    rect.Width += col.Width;
+
+                    if (e.ColumnIndex > col.Index)
+                    {
+                        // 矩形の位置を補正
+                        rect.X -= col.Width;
+                    }
+                }
+
+                // 背景、枠線、セルの値を描画
+                using (SolidBrush brush = new SolidBrush(this.dgvProcess.ColumnHeadersDefaultCellStyle.BackColor))
+                using (Brush gridBrush = new SolidBrush(this.dgvProcess.GridColor))
+                using (Pen pen = new Pen(dgv.GridColor))
+                {
+                    // Erase the cell.
+                    e.Graphics.FillRectangle(brush, e.CellBounds);
+
+                    // 背景の描画
+                    e.Graphics.FillRectangle(brush, rect);
+
+                    // 枠線の描画
+                    e.Graphics.DrawRectangle(pen, rect);
+
+                    //// Draw the grid lines (only the right and bottom lines;
+                    //// DataGridView takes care of the others).
+                    //e.Graphics.DrawLine(pen, e.CellBounds.Left,
+                    //    e.CellBounds.Bottom - 1, e.CellBounds.Right - 1,
+                    //    e.CellBounds.Bottom - 1);
+                    //e.Graphics.DrawLine(pen, e.CellBounds.Right - 1,
+                    //    e.CellBounds.Top, e.CellBounds.Right - 1,
+                    //    e.CellBounds.Bottom);
+
+                }
+
+                // セルに表示するテキストを描画
+                TextRenderer.DrawText(e.Graphics,
+                                headerText,
+                                e.CellStyle.Font,
+                                rect,
+                                e.CellStyle.ForeColor,
+                                TextFormatFlags.HorizontalCenter | TextFormatFlags.VerticalCenter);
+            }
+            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 dgvProcess_ColumnHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
+        {
+            FrmSecurityPerson frm = new FrmSecurityPerson();
+            try
+            {
+                dgvProcess.CurrentCell = dgvProcess[e.ColumnIndex, 0];
+                int DataColCnt = CalcDataCount();
+                if (DataColCnt < 0) return;
+
+                frm.secRec = m_SecMasterList[DataColCnt];
+                frm.ShowDialog();
+
+                if (frm.EndButton == System.Windows.Forms.DialogResult.Cancel) return;
+
+                // グリッドデータ表示
+                DispSecurityGridData();
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region カレント行全チェックON
+        /// <summary>
+        /// カレント行全チェックON
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAllOn_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                DataGridViewCell CurCell = dgv.CurrentCell;
+                // カレントカラムがチェックボックス以外は処理しない
+                if (CurCell.ColumnIndex <= (int)GridColumn.SecName) return;
+
+                // データ編集チェックボックスがONの時は処理起動もONにする
+                bool bTwoCheck = false;
+                if ((CurCell.ColumnIndex % 2) == 0) bTwoCheck = true;
+
+                int CurColumn = CurCell.ColumnIndex;
+                foreach (DataGridViewRow CurRow in dgvProcess.Rows)
+                {
+                    CurRow.Cells[CurColumn].Value = true;
+                    if (bTwoCheck) CurRow.Cells[CurColumn - 1].Value = true;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region カレント行全チェックOFF
+        /// <summary>
+        /// カレント行全チェックOFF
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnAllOff_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                DataGridViewCell CurCell = dgv.CurrentCell;
+                // カレントカラムがチェックボックス以外は処理しない
+                if (CurCell.ColumnIndex <= (int)GridColumn.SecName) return;
+
+                // 処理起動チェックボックスがOFFの時はデータ参照もOFFにする
+                bool bTwoCheck = false;
+                if ((CurCell.ColumnIndex % 2) != 0) bTwoCheck = true;
+
+                int CurColumn = CurCell.ColumnIndex;
+                foreach (DataGridViewRow CurRow in dgvProcess.Rows)
+                {
+                    CurRow.Cells[CurColumn].Value = false;
+                    if (bTwoCheck) CurRow.Cells[CurColumn + 1].Value = 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 btnDispLeft_Click(object sender, EventArgs e)
+        {
+            GridColumnLeftAction();
+
+            // 変更フラグON
+            m_bChengeAns = true;
+        }
+        #endregion
+
+        #region セキュリティ区分列右移動
+        /// <summary>
+        /// セキュリティ区分右移動
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDispRight_Click(object sender, EventArgs e)
+        {
+            GridColumnRightAction();
+
+            // 変更フラグON
+            m_bChengeAns = true;
+        }
+        #endregion
+
+        #region チェックボックスクリック時の処理
+        /// <summary>
+        /// チェックボックスクリック時の処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvProcess_CellContentClick(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+                DataGridViewCell CurCell = dgv.CurrentCell;
+                DataGridViewRow CurRow = dgv.CurrentRow;
+
+                dgv.EndEdit();
+                // カレントカラムがチェックボックス以外は処理しない
+                if (CurCell.RowIndex < 0) return;
+                if (CurCell.ColumnIndex <= (int)GridColumn.SecName) return;
+
+                // 固定項目カラム取得
+                int FixColCnt = Enum.GetNames(typeof(GridColumn)).Length;
+                int ColCnt = CurCell.ColumnIndex;
+                if (ColCnt < 0) return;
+
+                // 特別権限のチェック
+                int mstCnt = ColCnt - FixColCnt;
+                mstCnt = CommonMotions.cnvTruncate(mstCnt / 2);
+                bool Topsec = false;
+                int SAccKey = (int)CommonDefine.SecurityRankPos.SpecialAuthority;   // 経営者アクセス
+                if (m_SecMasterList[mstCnt].SecRank == CommonDefine.SecurityRankList[SAccKey].Key) Topsec = true;
+
+                bool bBool = (bool)CurRow.Cells[ColCnt].Value;
+                // 処理起動チェックがOFFの時は編集チェックもOFFにする
+                if ((ColCnt % 2) != 0)
+                {   // 起動区分
+                    if (!bBool)
+                    {
+                        CurRow.Cells[ColCnt + 1].Value = false;
+                    }
+                    else
+                    {
+                        if (Topsec) CurRow.Cells[ColCnt + 1].Value = true;
+                    }
+                }
+                else if ((ColCnt % 2) == 0)
+                {   // 編集区分
+                    if (bBool)
+                    {
+                        CurRow.Cells[ColCnt - 1].Value = true;
+                    }
+                }
+            }
+            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 dgvProcess_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            m_bChengeAns = true;
+        }
+        #endregion
+
+        // セル選択行
+        int m_BeforeGridRow = -1;
+        #region グリッドの選択変更
+        /// <summary>
+        /// グリッドの選択変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvProcess_SelectionChanged(object sender, EventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                // 行選択色を元に戻す
+                if (m_BeforeGridRow != -1) DefaultRowChangeColor(m_BeforeGridRow);
+
+                // 選択行数を退避
+                m_BeforeGridRow = dgv.CurrentRow.Index;
+                // 行選択色を設定
+                SelectRowChangeColor(m_BeforeGridRow);
+            }
+            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 FrmSecurity_SizeChanged(object sender, EventArgs e)
+        {
+
+        }
+        #endregion
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.designer.cs	(revision 51)
@@ -0,0 +1,365 @@
+﻿using ProcessManagement.Forms.CustomControls;
+namespace ProcessManagement.Forms.Master
+{
+    partial class FrmSecurity
+    {
+        /// <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();
+            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.btnAllOff = new System.Windows.Forms.Button();
+            this.btnAllOn = new System.Windows.Forms.Button();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.btnNewDataEntry = new System.Windows.Forms.Button();
+            this.btnDataSelectEdit = new System.Windows.Forms.Button();
+            this.btnDispRight = new System.Windows.Forms.Button();
+            this.btnDispLeft = new System.Windows.Forms.Button();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.dgvProcess = 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.groupBox1.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvProcess)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnDataEntry
+            // 
+            this.btnDataEntry.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            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(960, 650);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnDataEntry.TabIndex = 4;
+            this.btnDataEntry.Text = "内容登録";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.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(1088, 650);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 6;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // label1
+            // 
+            this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label1.BackColor = System.Drawing.Color.LightSalmon;
+            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.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            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.Black;
+            this.btnDataDelete.Location = new System.Drawing.Point(334, 16);
+            this.btnDataDelete.Name = "btnDataDelete";
+            this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
+            this.btnDataDelete.TabIndex = 5;
+            this.btnDataDelete.Text = "選択区分削除";
+            this.btnDataDelete.UseVisualStyleBackColor = false;
+            this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
+            // 
+            // btnAllOff
+            // 
+            this.btnAllOff.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnAllOff.BackColor = System.Drawing.Color.Cornsilk;
+            this.btnAllOff.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAllOff.ForeColor = System.Drawing.Color.Black;
+            this.btnAllOff.Location = new System.Drawing.Point(126, 16);
+            this.btnAllOff.Name = "btnAllOff";
+            this.btnAllOff.Size = new System.Drawing.Size(120, 30);
+            this.btnAllOff.TabIndex = 14;
+            this.btnAllOff.TabStop = false;
+            this.btnAllOff.Text = "全不選択";
+            this.btnAllOff.UseVisualStyleBackColor = false;
+            this.btnAllOff.Click += new System.EventHandler(this.btnAllOff_Click);
+            // 
+            // btnAllOn
+            // 
+            this.btnAllOn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnAllOn.BackColor = System.Drawing.Color.LemonChiffon;
+            this.btnAllOn.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnAllOn.ForeColor = System.Drawing.Color.Black;
+            this.btnAllOn.Location = new System.Drawing.Point(6, 16);
+            this.btnAllOn.Name = "btnAllOn";
+            this.btnAllOn.Size = new System.Drawing.Size(120, 30);
+            this.btnAllOn.TabIndex = 13;
+            this.btnAllOn.TabStop = false;
+            this.btnAllOn.Text = "全選択";
+            this.btnAllOn.UseVisualStyleBackColor = false;
+            this.btnAllOn.Click += new System.EventHandler(this.btnAllOn_Click);
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.groupBox1.BackColor = System.Drawing.Color.White;
+            this.groupBox1.Controls.Add(this.btnNewDataEntry);
+            this.groupBox1.Controls.Add(this.btnDataSelectEdit);
+            this.groupBox1.Controls.Add(this.btnDispRight);
+            this.groupBox1.Controls.Add(this.btnDispLeft);
+            this.groupBox1.Controls.Add(this.btnDataDelete);
+            this.groupBox1.Location = new System.Drawing.Point(234, 630);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(460, 50);
+            this.groupBox1.TabIndex = 32;
+            this.groupBox1.TabStop = false;
+            this.groupBox1.Text = "セキュリティ区分操作";
+            // 
+            // btnNewDataEntry
+            // 
+            this.btnNewDataEntry.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnNewDataEntry.BackColor = System.Drawing.Color.PaleGreen;
+            this.btnNewDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnNewDataEntry.ForeColor = System.Drawing.Color.Black;
+            this.btnNewDataEntry.Location = new System.Drawing.Point(214, 16);
+            this.btnNewDataEntry.Name = "btnNewDataEntry";
+            this.btnNewDataEntry.Size = new System.Drawing.Size(120, 30);
+            this.btnNewDataEntry.TabIndex = 29;
+            this.btnNewDataEntry.TabStop = false;
+            this.btnNewDataEntry.Text = "区分新規作成";
+            this.btnNewDataEntry.UseVisualStyleBackColor = false;
+            this.btnNewDataEntry.Click += new System.EventHandler(this.btnNewDataEntry_Click);
+            // 
+            // btnDataSelectEdit
+            // 
+            this.btnDataSelectEdit.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnDataSelectEdit.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnDataSelectEdit.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataSelectEdit.ForeColor = System.Drawing.Color.Black;
+            this.btnDataSelectEdit.Location = new System.Drawing.Point(94, 16);
+            this.btnDataSelectEdit.Name = "btnDataSelectEdit";
+            this.btnDataSelectEdit.Size = new System.Drawing.Size(120, 30);
+            this.btnDataSelectEdit.TabIndex = 28;
+            this.btnDataSelectEdit.TabStop = false;
+            this.btnDataSelectEdit.Text = "区分選択";
+            this.btnDataSelectEdit.UseVisualStyleBackColor = false;
+            this.btnDataSelectEdit.Click += new System.EventHandler(this.btnDataSelectEdit_Click);
+            // 
+            // btnDispRight
+            // 
+            this.btnDispRight.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnDispRight.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispRight.ForeColor = System.Drawing.Color.Black;
+            this.btnDispRight.ImageAlign = System.Drawing.ContentAlignment.TopCenter;
+            this.btnDispRight.Location = new System.Drawing.Point(46, 16);
+            this.btnDispRight.Name = "btnDispRight";
+            this.btnDispRight.Size = new System.Drawing.Size(40, 30);
+            this.btnDispRight.TabIndex = 31;
+            this.btnDispRight.TabStop = false;
+            this.btnDispRight.Text = "▶";
+            this.btnDispRight.UseVisualStyleBackColor = true;
+            this.btnDispRight.Click += new System.EventHandler(this.btnDispRight_Click);
+            // 
+            // btnDispLeft
+            // 
+            this.btnDispLeft.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnDispLeft.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispLeft.ForeColor = System.Drawing.Color.Black;
+            this.btnDispLeft.ImageAlign = System.Drawing.ContentAlignment.TopCenter;
+            this.btnDispLeft.Location = new System.Drawing.Point(6, 16);
+            this.btnDispLeft.Name = "btnDispLeft";
+            this.btnDispLeft.Size = new System.Drawing.Size(40, 30);
+            this.btnDispLeft.TabIndex = 30;
+            this.btnDispLeft.TabStop = false;
+            this.btnDispLeft.Text = "◀";
+            this.btnDispLeft.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+            this.btnDispLeft.UseVisualStyleBackColor = true;
+            this.btnDispLeft.Click += new System.EventHandler(this.btnDispLeft_Click);
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.groupBox2.BackColor = System.Drawing.Color.White;
+            this.groupBox2.Controls.Add(this.btnAllOff);
+            this.groupBox2.Controls.Add(this.btnAllOn);
+            this.groupBox2.Location = new System.Drawing.Point(702, 630);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(250, 50);
+            this.groupBox2.TabIndex = 33;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = "チェックボックス操作";
+            // 
+            // dgvProcess
+            // 
+            this.dgvProcess.AllowUserToAddRows = false;
+            this.dgvProcess.AllowUserToDeleteRows = false;
+            this.dgvProcess.AllowUserToResizeColumns = false;
+            this.dgvProcess.AllowUserToResizeRows = false;
+            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.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
+            this.dgvProcess.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvProcess.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.BottomCenter;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.White;
+            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.dgvProcess.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvProcess.ColumnHeadersHeight = 30;
+            this.dgvProcess.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvProcess.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column2,
+            this.Column3});
+            this.dgvProcess.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.dgvProcess.Location = new System.Drawing.Point(8, 52);
+            this.dgvProcess.Name = "dgvProcess";
+            this.dgvProcess.RowHeadersVisible = false;
+            this.dgvProcess.RowHeadersWidth = 20;
+            this.dgvProcess.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvProcess.RowTemplate.Height = 20;
+            this.dgvProcess.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvProcess.Size = new System.Drawing.Size(1200, 570);
+            this.dgvProcess.TabIndex = 28;
+            this.dgvProcess.TabStop = false;
+            this.dgvProcess.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProcess_CellContentClick);
+            this.dgvProcess.CellPainting += new System.Windows.Forms.DataGridViewCellPaintingEventHandler(this.dgvProcess_CellPainting);
+            this.dgvProcess.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProcess_CellValueChanged);
+            this.dgvProcess.ColumnHeaderMouseDoubleClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.dgvProcess_ColumnHeaderMouseDoubleClick);
+            this.dgvProcess.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvProcess_Scroll);
+            this.dgvProcess.SelectionChanged += new System.EventHandler(this.dgvProcess_SelectionChanged);
+            this.dgvProcess.Paint += new System.Windows.Forms.PaintEventHandler(this.dgvProcess_Paint);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("Century", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            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;
+            // 
+            // Column2
+            // 
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "起動処理コード";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Visible = false;
+            this.Column2.Width = 60;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column3.Frozen = true;
+            this.Column3.HeaderText = "";
+            this.Column3.MaxInputLength = 50;
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column3.Width = 360;
+            // 
+            // FrmSecurity
+            // 
+            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.groupBox2);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.dgvProcess);
+            this.Controls.Add(this.label1);
+            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.ForeColor = System.Drawing.Color.White;
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
+            this.KeyPreview = true;
+            this.MinimizeBox = false;
+            this.Name = "FrmSecurity";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmSecurity_FormClosing);
+            this.Load += new System.EventHandler(this.FrmSecurity_Load);
+            this.SizeChanged += new System.EventHandler(this.FrmSecurity_SizeChanged);
+            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmSecurity_KeyDown);
+            this.groupBox1.ResumeLayout(false);
+            this.groupBox2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvProcess)).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 dgvProcess;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.Button btnAllOff;
+        private System.Windows.Forms.Button btnAllOn;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.Button btnNewDataEntry;
+        private System.Windows.Forms.Button btnDataSelectEdit;
+        private System.Windows.Forms.Button btnDispRight;
+        private System.Windows.Forms.Button btnDispLeft;
+        private System.Windows.Forms.GroupBox groupBox2;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurity.resx	(revision 51)
@@ -0,0 +1,126 @@
+<?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="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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityAuxiliary.cs	(revision 51)
@@ -0,0 +1,1077 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Collections;
+using System.Diagnostics;
+using System.Threading;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.SubForms;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.Master
+{
+    partial class FrmSecurity
+    {
+        #region 列を作成する
+        /// <summary>
+        /// 列を作成する
+        /// </summary>
+        private int CreateCheckBoxColumn(string ColorText, int SecRank)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+
+                DataGridViewCellStyle wrkCellStyle1 = new DataGridViewCellStyle();
+                DataGridViewCellStyle wrkCellStyle2 = new DataGridViewCellStyle();
+                DataGridViewCheckBoxColumn wrkColumn1 = new DataGridViewCheckBoxColumn();
+                DataGridViewCheckBoxColumn wrkColumn2 = new DataGridViewCheckBoxColumn();
+                m_CellStyle.Add(wrkCellStyle1);
+                m_CellStyle.Add(wrkCellStyle2);
+                m_CheckBox.Add(wrkColumn1);
+                m_CheckBox.Add(wrkColumn2);
+                // 
+                // wrkColumn1
+                // 
+                wrkCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+                wrkCellStyle1.BackColor = CommonMotions.getBackForeColor(ColorText, CommonDefine.PalceOfColor.BackColor);
+                wrkCellStyle1.ForeColor = System.Drawing.Color.Black;
+                wrkCellStyle1.NullValue = false;
+                wrkColumn1.DefaultCellStyle = wrkCellStyle1;
+                wrkColumn1.HeaderText = "処理起動";
+                wrkColumn1.HeaderCell.Style.Font = new System.Drawing.Font("ＭＳ 明朝", 9.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+                wrkColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+                wrkColumn1.Width = s_CheckCellWidth;
+                // 
+                // wrkColumn2
+                // 
+                wrkCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+                wrkCellStyle2.BackColor = CommonMotions.getBackForeColor(ColorText, CommonDefine.PalceOfColor.BackColor);
+                wrkCellStyle2.ForeColor = System.Drawing.Color.Black;
+                wrkCellStyle2.NullValue = false;
+                wrkColumn2.DefaultCellStyle = wrkCellStyle2;
+                wrkColumn2.HeaderText = "データ編集";
+                wrkColumn2.HeaderCell.Style.Font = new System.Drawing.Font("ＭＳ 明朝", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+                wrkColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+                wrkColumn2.Width = s_CheckCellWidth;
+
+                dgv.Columns.Add(wrkColumn1);
+                dgv.Columns.Add(wrkColumn2);
+
+                int AddRowCnt = (dgv.ColumnCount - 2);
+
+                foreach (DataGridViewRow CurRow in dgv.Rows)
+                {
+                    CurRow.Cells[AddRowCnt].Value = false;
+                    CurRow.Cells[AddRowCnt + 1].Value = false;
+
+                }
+
+                // 特別権限は起動できたら編集できる
+                int SAccKey = (int)CommonDefine.SecurityRankPos.SpecialAuthority;   // 経営者アクセス
+                if (SecRank == CommonDefine.SecurityRankList[SAccKey].Key)
+                    dgv.Columns[dgv.ColumnCount - 1].ReadOnly = true;
+
+                return AddRowCnt;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return 0;
+            }
+        }
+        #endregion
+
+        #region カレントデータカウントを取得する
+        /// <summary>
+        /// カレントデータカウントを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int CalcDataCount()
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                DataGridViewCell CurCell = dgv.CurrentCell;
+                int DataColCnt = (CurCell.ColumnIndex - ((int)GridColumn.SecName + 1)) / (int)GridColumn.SecName;
+                if (DataColCnt < 0)
+                {
+                    MessageBox.Show("選択データがありません。", "選択確認", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return -1;
+                }
+
+                return DataColCnt;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return -1;
+            }
+        }
+        #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 SecurityMasterDataEntry()
+        {
+            IOMSecurity secDB = new IOMSecurity();
+            IOMProcessExcute exeDB = new IOMProcessExcute();
+            try
+            {
+                DataGridView dgv = dgvProcess;
+
+                // ここではセキュリティ区分マスタの表示順だけを変更する
+                // 登録はFrmSecurityPersonの画面で登録時にデータ作成をおこなう
+
+                secDB.connect(); secDB.beginTran();
+                exeDB.connect(); exeDB.beginTran();
+
+                // 登録数を取得する
+                int DataColCnt = (dgv.ColumnCount - ((int)GridColumn.SecName + 1)) / (int)GridColumn.SecName;
+
+                // セキュリティ区分数だけ処理をおこなう
+                for (int i = 0; i < DataColCnt; i++)
+                {
+                    // セキュリティ区分マスタの表示順更新
+                    string strSQL = secDB.CreatePrimarykeyString(m_SecMasterList[i].SecCode);
+                    if (!secDB.UpdateFeild(m_SecMasterList[i].SecCode, (int)IOMSecurity.DataColumn.DisplayOrder, (i + 1), false))
+                    {
+                        secDB.rollback();
+                        exeDB.rollback();
+                        break;
+                    }
+
+                    // 区分の位置を求める
+                    int SelectCol = (i * (int)GridColumn.SecName) + ((int)GridColumn.SecName + 1);
+
+                    // まず削除する
+                    strSQL = exeDB.CreatePrimarykeyString(m_SecMasterList[i].SecCode);
+                    exeDB.DeleteAction(strSQL, false);
+
+                    foreach (DataGridViewRow CurRow in dgv.Rows)
+                    {
+                        // 処理番号取得
+                        int iSecCode = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.SecCode].Value);
+
+                        // 起動指定無は処理しない
+                        bool bExecute = (bool)CurRow.Cells[SelectCol].Value;
+                        bool bEdit = (bool)CurRow.Cells[SelectCol + 1].Value;
+                        if (!bExecute && !bEdit) continue;
+
+                        // 起動対象マスタの登録
+                        ProcessExcute wrk = new ProcessExcute();
+                        // 保護区分番号
+                        wrk.SecCode = m_SecMasterList[i].SecCode;
+                        // 起動処理番号
+                        wrk.ExecCode = iSecCode;
+                        // 編集フラグ
+                        if (bEdit) wrk.EditFlg = (int)CommonDefine.ProcessDataEdit.Edit;
+                        // データ作成
+                        if (!exeDB.InsertAction(wrk, false))
+                        {
+                            secDB.rollback();
+                            exeDB.rollback();
+                            return false;
+                        }
+                    }
+                }
+
+                secDB.commit();
+                exeDB.commit();
+
+                // ログイン情報を書き換える
+                SetExecuteData4Login();
+                    
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                secDB.close(); secDB = null;
+                exeDB.close(); exeDB = null;
+            }
+        }
+        #endregion
+
+        #region ログインデータの起動許可参照を書き換える
+        /// <summary>
+        /// ログインデータの起動許可参照を書き換える
+        /// </summary>
+        /// <returns></returns>
+        private bool SetExecuteData4Login()
+        {
+            IOMProcessExcute execDB = new IOMProcessExcute();
+            try
+            {
+                // システム管理者は処理しない
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode) return true;
+                
+                // 起動データ取得
+                List<ProcessExcute> exeList = new List<ProcessExcute>();
+                string strExe = execDB.CreatePrimarykeyString(CommonMotions.LoginUserData.SecurityManagement) + " ORDER BY ExecCode";
+                if (!execDB.SelectAction(strExe, ref exeList)) return false;
+                CommonMotions.LoginUserProcExe.Clear();
+                foreach (ProcessExcute wrkRec in exeList)
+                {
+                    CommonMotions.LoginUserProcExe.Add(wrkRec);
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                execDB.close(); execDB = null;
+            }
+        }
+        #endregion
+
+        #region セキュリティ区分マスタ削除
+        /// <summary>
+        /// セキュリティ区分マスタ削除
+        /// </summary>
+        private bool SecurityMasterDataRemove()
+        {
+            IOMSecurity secDB = new IOMSecurity();
+            IOMProcessExcute exeDB = new IOMProcessExcute();
+            try
+            {
+                secDB.connect(); secDB.beginTran();
+                exeDB.connect(); exeDB.beginTran();
+
+                // データカウント取得
+                int DataColCnt = CalcDataCount();
+                if (DataColCnt < 0)
+                {
+                    return true;
+                }
+
+                string strSQL = secDB.CreatePrimarykeyString(m_SecMasterList[DataColCnt].SecCode);
+
+                if (!secDB.DeleteAction(strSQL, false))
+                {
+                    secDB.rollback();
+                    MessageBox.Show("セキュリティ区分マスタ削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                strSQL = exeDB.CreatePrimarykeyString(m_SecMasterList[DataColCnt].SecCode);
+                ProcessExcute ReadExeRec = new ProcessExcute();
+                if (exeDB.SelectAction(strSQL, ref ReadExeRec, false))
+                {
+                    if (!exeDB.DeleteAction(strSQL, false))
+                    {
+                        secDB.rollback();
+                        exeDB.rollback();
+                        MessageBox.Show("起動対象マスタ削除に失敗しました。", "削除エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+
+                secDB.commit();
+                exeDB.commit();
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                secDB.close(); secDB = null;
+                exeDB.close(); exeDB = null;
+            }
+        }
+        #endregion
+
+        #region データ読込順
+        /// <summary>
+        /// データ読込順
+        /// </summary>
+        private enum SelOrder
+        {
+            ExecCode = 0,
+            EditFlg,
+        }
+        #endregion
+
+        #region グリッドデータ表示
+        /// <summary>
+        /// グリッドデータ表示
+        /// </summary>
+        private bool DispSecurityGridData()
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+
+                // グリッドクリア
+                dgv.Rows.Clear();
+                for (int i = dgv.ColumnCount - 1; i > (int)GridColumn.SecName; i--)
+                {
+                    dgv.Columns.RemoveAt(i);
+                }
+
+                // 処理名追加
+                SetProcessGridData();
+
+                // データセット
+                SetProcessGridMasterData();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 処理起動グリッド表示
+        /// <summary>
+        /// 処理起動グリッド表示
+        /// </summary>
+        private void SetProcessGridData()
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                int icnt = 1;
+                
+                // ----- 起動処理一覧表示
+                foreach (KeyValuePair<int, string> wrkValue in ClsExcute.ProcessExecuteName)
+                {
+                    if (wrkValue.Key == 0) continue;
+//                    if (wrkValue.Key >= (int)ClsExcute.ProcessExecuteNo.Proceedings) break;   Del BIT 2017/02/22 
+                    int rcnt = dgv.Rows.Add(icnt++,
+                                            wrkValue.Key,
+                                            wrkValue.Value.Replace("－", ""),
+                                            true, true);
+                    dgv.Rows[rcnt].Cells[(int)GridColumn.SecName].Style.BackColor = s_DefaultColor[0];
+                }
+                
+                // ----- マスタメンテナンス一覧表示
+                foreach (KeyValuePair<int, string> wrkValue in ClsExcute.MaintenanceExecuteName)
+                {
+                    if (wrkValue.Key == 0) continue;
+                    int rcnt = dgv.Rows.Add(icnt++,
+                                            wrkValue.Key,
+                                            wrkValue.Value.Replace("－", ""),
+                                            true, true);
+                    dgv.Rows[rcnt].Cells[(int)GridColumn.SecName].Style.BackColor = s_DefaultColor[1];
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 処理起動グリッドへマスタデータのセット
+        /// <summary>
+        /// 処理起動グリッドへマスタデータのセット
+        /// </summary>
+        private void SetProcessGridMasterData()
+        {
+            IOMSecurity secDB = new IOMSecurity();
+            try
+            {
+                DataGridView dgv = dgvProcess;
+
+                // 起動対象マスタ取得
+                string strSQL = "SELECT";
+                strSQL += " A.*,";
+                strSQL += " B.EXECCODE,";
+                strSQL += " B.EDITFLG";
+                strSQL += " FROM SECURITYMASTER A";
+                strSQL += " LEFT JOIN PROCESSEXCUTEMASTER B ON B.SECCODE = A.SECCODE";
+                strSQL += " ORDER BY A.DISPLAYORDER, B.EXECCODE";
+                ArrayList peList = new ArrayList();
+                secDB.ExecuteReader(strSQL, ref peList);
+                if (peList.Count == 0) return;
+
+                m_SecMasterList.Clear();
+                int BreakSecCode = 0;
+                int Columncount = 0;
+                int ino = 0;
+                int SecDataCnt = Enum.GetNames(typeof(IOMSecurity.DataColumn)).Length;
+                foreach (object[] wrkobj in peList)
+                {
+                    // 保護区分マスタ取得
+                    SecurityMaster secRec = new SecurityMaster();
+                    secDB.Reader2Struct(wrkobj, ref secRec);
+
+                    if (BreakSecCode != secRec.SecCode)
+                    {
+                        // 内部マスタリスト作成
+                        m_SecMasterList.Add(secRec);
+                        // カラム作成
+                        Columncount = CreateCheckBoxColumn(secRec.SelectBackColor, secRec.SecRank);
+                        // コード退避
+                        BreakSecCode = secRec.SecCode;
+                    }
+                    // 編集のチェック
+                    ProcessExcute peRec = new ProcessExcute();
+                    peRec.ExecCode = CommonMotions.cnvInt(wrkobj[SecDataCnt + (int)SelOrder.ExecCode]);
+                    peRec.EditFlg = CommonMotions.cnvInt(wrkobj[SecDataCnt + (int)SelOrder.EditFlg]);
+
+                    foreach (DataGridViewRow CurRow in dgv.Rows)
+                    {
+                        // グリッドの処理番号を取得する
+                        int iSecCode = CommonMotions.cnvInt(CurRow.Cells[(int)GridColumn.SecCode].Value);
+                        // 起動対象マスタにデータが存在したらデータをセットする
+                        if (iSecCode == peRec.ExecCode)
+                        {
+                            // レコードがあれば起動にチェックする
+                            CurRow.Cells[Columncount].Value = true;
+                            // 編集可能ならばチェックする
+                            if (peRec.EditFlg == (int)CommonDefine.ProcessDataEdit.Edit)
+                            {
+                                CurRow.Cells[(Columncount + 1)].Value = true;
+                            }
+                            break;
+                        }
+                    }
+                    ino++;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                secDB.close(); secDB = null;
+            }
+        }
+        #endregion
+
+        #region 1列左移動処理
+        /// <summary>
+        /// 1列左移動処理
+        /// </summary>
+        public void GridColumnLeftAction()
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                // 最前列は処理しない
+                if (dgv.CurrentCell.ColumnIndex <= ((int)GridColumn.SecName + 2)) return;
+
+                // カレント行数取得
+                int curRow = dgv.CurrentCell.RowIndex;
+                int curCol = dgv.CurrentCell.ColumnIndex;
+
+                // データ位置取得
+                int DataColCnt = CalcDataCount();
+                // カラム位置取得
+                int ColCnt = 0;
+                if ((curCol % 2) == 0)
+                {   // 偶数の場合は1つ前が前の列
+                    ColCnt = curCol - 1;
+                }
+                else
+                {   // 奇数の場合はそこが前の列
+                    ColCnt = curCol;
+                }
+
+                // カレント行退避
+                DataGridViewColumn currentcol1 = dgv.Columns[ColCnt];
+                DataGridViewColumn currentcol2 = dgv.Columns[ColCnt + 1];
+                
+                // １列前を退避
+                DataGridViewColumn frontcol1 = dgv.Columns[ColCnt - 2];
+                DataGridViewColumn frontcol2 = dgv.Columns[ColCnt - 1];
+
+                // 入れ替え
+                // カレント行→退避
+                int rowcnt = dgv.RowCount;
+
+                // カレント行退避
+                DataGridViewColumn SaveCol1 = new DataGridViewColumn();
+                DataGridViewColumn SaveCol2 = new DataGridViewColumn();
+                object[] SaveCol1Check = new object[dgv.RowCount];
+                object[] SaveCol2Check = new object[dgv.RowCount];
+
+                SaveCol1.DefaultCellStyle = currentcol1.DefaultCellStyle;
+                SaveCol1.HeaderText = currentcol1.HeaderText;
+                SaveCol2.DefaultCellStyle = currentcol2.DefaultCellStyle;
+                SaveCol2.HeaderText = currentcol2.HeaderText;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    SaveCol1Check[i] = dgv[ColCnt, i].Value;
+                    SaveCol2Check[i] = dgv[ColCnt + 1, i].Value;
+                }
+
+                // 前行→カレント行
+                currentcol1.DefaultCellStyle = frontcol1.DefaultCellStyle;
+                currentcol1.HeaderText = frontcol1.HeaderText;
+                currentcol2.DefaultCellStyle = frontcol2.DefaultCellStyle;
+                currentcol2.HeaderText = frontcol2.HeaderText;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    dgv[ColCnt, i].Value = dgv[ColCnt - 2, i].Value;
+                    dgv[ColCnt + 1, i].Value = dgv[ColCnt - 1, i].Value;
+                }
+
+                // カレント行→後行
+                frontcol1.DefaultCellStyle = SaveCol1.DefaultCellStyle;
+                frontcol1.HeaderText = SaveCol1.HeaderText;
+                frontcol2.DefaultCellStyle = SaveCol2.DefaultCellStyle;
+                frontcol2.HeaderText = SaveCol2.HeaderText;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    dgv[ColCnt - 2, i].Value = SaveCol1Check[i];
+                    dgv[ColCnt - 1, i].Value = SaveCol2Check[i];
+                }
+
+                // マスタの配列を移動する
+                SecurityMaster wrkRec = m_SecMasterList[DataColCnt];
+                m_SecMasterList[DataColCnt] = m_SecMasterList[DataColCnt - 1];
+                m_SecMasterList[DataColCnt - 1] = wrkRec;
+
+                dgv.CurrentCell = dgv[curCol - 2, curRow];
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 1列右移動処理
+        /// <summary>
+        /// 1列右移動処理
+        /// </summary>
+        public void GridColumnRightAction()
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                // 最前列は処理しない
+                if (dgv.CurrentCell.ColumnIndex > dgv.ColumnCount - 3) return;
+
+                // カレント行数取得
+                int curRow = dgv.CurrentCell.RowIndex;
+                int curCol = dgv.CurrentCell.ColumnIndex;
+
+                // データ位置取得
+                int DataColCnt = CalcDataCount();
+                // カラム位置取得
+                int ColCnt = 0;
+                if ((curCol % 2) == 0)
+                {   // 偶数の場合は1つ前が前の列
+                    ColCnt = curCol - 1;
+                }
+                else
+                {   // 奇数の場合はそこが前の列
+                    ColCnt = curCol;
+                }
+
+                // カレント行退避
+                DataGridViewColumn currentcol1 = dgv.Columns[ColCnt];
+                DataGridViewColumn currentcol2 = dgv.Columns[ColCnt + 1];
+
+                // １列後を退避
+                DataGridViewColumn rearcol1 = dgv.Columns[ColCnt + 2];
+                DataGridViewColumn rearcol2 = dgv.Columns[ColCnt + 3];
+
+                // 入れ替え
+                // カレント行→退避
+                int rowcnt = dgv.RowCount;
+
+                // カレント行退避
+                DataGridViewColumn SaveCol1 = new DataGridViewColumn();
+                DataGridViewColumn SaveCol2 = new DataGridViewColumn();
+                object[] SaveCol1Check = new object[dgv.RowCount];
+                object[] SaveCol2Check = new object[dgv.RowCount];
+
+                SaveCol1.DefaultCellStyle = currentcol1.DefaultCellStyle;
+                SaveCol1.HeaderText = currentcol1.HeaderText;
+                SaveCol2.DefaultCellStyle = currentcol2.DefaultCellStyle;
+                SaveCol2.HeaderText = currentcol2.HeaderText;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    SaveCol1Check[i] = dgv[ColCnt, i].Value;
+                    SaveCol2Check[i] = dgv[ColCnt + 1, i].Value;
+                }
+
+                // 前行→カレント行
+                currentcol1.DefaultCellStyle = rearcol1.DefaultCellStyle;
+                currentcol1.HeaderText = rearcol1.HeaderText;
+                currentcol2.DefaultCellStyle = rearcol2.DefaultCellStyle;
+                currentcol2.HeaderText = rearcol2.HeaderText;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    dgv[ColCnt, i].Value = dgv[ColCnt + 2, i].Value;
+                    dgv[ColCnt + 1, i].Value = dgv[ColCnt + 3, i].Value;
+                }
+
+                // カレント行→後行
+                rearcol1.DefaultCellStyle = SaveCol1.DefaultCellStyle;
+                rearcol1.HeaderText = SaveCol1.HeaderText;
+                rearcol2.DefaultCellStyle = SaveCol2.DefaultCellStyle;
+                rearcol2.HeaderText = SaveCol2.HeaderText;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    dgv[ColCnt + 2, i].Value = SaveCol1Check[i];
+                    dgv[ColCnt + 3, i].Value = SaveCol2Check[i];
+                }
+
+                // マスタの配列を移動する
+                SecurityMaster wrkRec = m_SecMasterList[DataColCnt];
+                m_SecMasterList[DataColCnt] = m_SecMasterList[DataColCnt + 1];
+                m_SecMasterList[DataColCnt + 1] = wrkRec;
+
+                dgv.CurrentCell = dgv[curCol + 2, curRow];
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region セキュリティ区分使用チェック
+        /// <summary>
+        /// セキュリティ区分使用チェック
+        /// </summary>
+        /// <returns></returns>
+        private bool UseCheck()
+        {
+            IOMPersonInCharge PersonDB = new IOMPersonInCharge();
+            try
+            {
+                // カレントデータカウント取得
+                int DataColCnt = CalcDataCount();
+                if (DataColCnt < 0)
+                {
+                    return true;
+                }
+                int SecDiv = m_SecMasterList[DataColCnt].SecCode;
+                string strSQL = "SELECT COUNT(*) FROM PERSONINCHARGEMASTER";
+                strSQL += string.Format(" WHERE SECCODE = {0}", SecDiv);
+                ArrayList arList = new ArrayList();
+                if (!PersonDB.ExecuteReader(strSQL, ref arList)) return false;
+                object[] objwrk = (object[])arList[0];
+                if (CommonMotions.cnvInt(objwrk[0]) != 0) return false;
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                PersonDB.close(); PersonDB = null;
+            }
+        }
+        #endregion
+
+        #region 行デフォルト色
+        /// <summary>
+        /// 行をデフォルト色にする
+        /// </summary>
+        /// <param name="BeforeGridRow"></param>
+        private void DefaultRowChangeColor(int CurrentRowCnt)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                DataGridViewRow CurRow = dgv.Rows[CurrentRowCnt];
+                int colcnt = dgv.Columns.Count;
+                int RowCount = CurRow.Index;
+
+                Color SetBackColor = Color.White;
+                Color SetForeColor = Color.Black;
+
+                int ProcCode = CommonMotions.cnvInt(dgv.Rows[CurrentRowCnt].Cells[(int)GridColumn.SecCode].Value);
+                // 列の色を変える
+                for (int i = 0; i < colcnt; i++)
+                {
+                    switch (i)
+                    {
+                        case (int)GridColumn.SecName:
+                            if (ProcCode < (int)ClsExcute.MaintenanceExecuteNo.System)
+                                SetBackColor = s_DefaultColor[0];
+                            else
+                                SetBackColor = s_DefaultColor[1];
+                            break;
+                        default:
+                            if (CurrentRowCnt < (dgv.RowCount - 1))
+                            {   // 最終行以外は次行の色を取得する
+                                SetBackColor = dgv.Rows[CurrentRowCnt + 1].Cells[i].Style.BackColor;
+                            }
+                            else
+                            {   // 最終行は前行の色を取得する
+                                SetBackColor = dgv.Rows[CurrentRowCnt - 1].Cells[i].Style.BackColor;
+                            }
+                            break;
+                    }
+                    CurRow.Cells[i].Style.BackColor = SetBackColor;
+                    CurRow.Cells[i].Style.ForeColor = SetForeColor;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 行選択色
+        /// <summary>
+        /// 行を選択色にする
+        /// </summary>
+        /// <param name="CurrentRow"></param>
+        private void SelectRowChangeColor(int CurrentRow)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                DataGridViewRow CurRow = dgv.Rows[CurrentRow];
+                // カラム数
+                int colcnt = dgv.Columns.Count;
+
+                // 行の色を変える
+                for (int i = 0; i < colcnt; i++)
+                {
+                    dgv.Rows[m_BeforeGridRow].Cells[i].Style.BackColor = s_RowSelectColor;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region カラムヘッダー標準の描画
+        /// <summary>
+        /// カラムヘッダー標準の描画
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        void GridCellPainting(object sender, DataGridViewCellPaintingEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                if (e.ColumnIndex < 0) return;
+                if (e.RowIndex != -1) return;
+
+                e.PaintBackground(e.CellBounds, false);
+                Rectangle r2 = e.CellBounds;
+                int HeadRowCnt = s_TitleRowCnt;
+
+                r2.Y += CommonMotions.cnvTruncate((e.CellBounds.Height / HeadRowCnt)) * (HeadRowCnt - 1);
+                r2.Height = e.CellBounds.Height / HeadRowCnt;
+                
+                e.PaintContent(r2);
+                Pen LinePen = new Pen(Color.Gray);
+                e.Graphics.DrawRectangle(LinePen, r2);
+                
+                e.Handled = true;
+            }
+            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 GridPaint(object sender, PaintEventArgs e)
+        {
+            try
+            {
+                // 先頭列のヘッダー描画
+                GridPaintColumn0(sender, e);
+
+                DataGridView dgv = dgvProcess;
+                int GridColumnCnt = dgv.ColumnCount;
+                int HeadRowCnt = s_TitleRowCnt;
+                Pen LinePen = new Pen(Color.Gray);
+                int Listno = 0;
+                for (int i = ((int)GridColumn.SecName + 1); i < GridColumnCnt; i += 2, Listno++)
+                {
+                    // カラムヘッダー取得
+                    Rectangle r1 = dgv.GetCellDisplayRectangle(i, -1, true);
+                    Rectangle r2 = dgv.GetCellDisplayRectangle((i + 1), -1, true);
+                    Rectangle rLine = dgv.GetCellDisplayRectangle(i, -1, true);
+
+                    r1.X += 1;
+                    r1.Y += 1;
+                    r1.Width = (r1.Width + r2.Width) - 2;
+
+                    r1.Height = r1.Height / HeadRowCnt - 2;
+                    e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                    rLine.Width = rLine.Width * 2;
+                    rLine.Height = rLine.Height / HeadRowCnt;
+                    e.Graphics.DrawRectangle(LinePen, rLine);
+
+                    StringFormat format = new StringFormat();
+                    format.Alignment = StringAlignment.Center;
+                    format.LineAlignment = StringAlignment.Center;
+                    e.Graphics.DrawString(m_SecMasterList[Listno].SecName,
+                                            dgv.ColumnHeadersDefaultCellStyle.Font,
+                                            new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                            r1,
+                                            format);
+
+                    // 機密区分ランク
+                    KeyValuePair<int, string> SecRankValue;
+                    if (m_SecMasterList[Listno].SecRank == 0)
+                    {
+                        SecRankValue = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority];
+                    }
+                    else
+                    {
+                        SecRankValue = CommonMotions.SearchSecurityRankList(m_SecMasterList[Listno].SecRank);
+                    }
+                    string ColumnHeaderStrings1 = SecRankValue.Value;
+
+                    rLine.Y += rLine.Height;
+                    e.Graphics.DrawRectangle(LinePen, rLine);
+
+                    r1.Y += (r1.Height + 2);
+                    e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                    e.Graphics.DrawString(ColumnHeaderStrings1,
+                                            dgv.ColumnHeadersDefaultCellStyle.Font,
+                                            new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                            r1,
+                                            format);
+
+                    rLine.Y += rLine.Height;
+                    e.Graphics.DrawRectangle(LinePen, rLine);
+
+                    // 機密区分範囲
+                    KeyValuePair<int, string> SecRangeValue;
+                    if (m_SecMasterList[Listno].SecRange == 0)
+                    {
+                        SecRangeValue = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.Only];
+                    }
+                    else
+                    {
+                        SecRangeValue = CommonMotions.SearchSecurityRangeList(m_SecMasterList[Listno].SecRange);
+                    }
+                    string ColumnHeaderStrings2 = SecRangeValue.Value;
+
+                    r1.Y += (r1.Height + 2);
+                    e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                    e.Graphics.DrawString(ColumnHeaderStrings2,
+                                            dgv.ColumnHeadersDefaultCellStyle.Font,
+                                            new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                            r1,
+                                            format);
+
+                    rLine.Y += rLine.Height;
+                    e.Graphics.DrawRectangle(LinePen, rLine);
+
+                    // 総務業務範囲
+                    string ColumnHeaderStrings3 = CommonDefine.GeneralAffairsList[m_SecMasterList[Listno].GeneralAffairs].Value;
+
+                    r1.Y += (r1.Height + 2);
+                    e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                    e.Graphics.DrawString(ColumnHeaderStrings3,
+                                            dgv.ColumnHeadersDefaultCellStyle.Font,
+                                            new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                            r1,
+                                            format);
+                }
+                
+            }
+            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 GridPaintColumn0(object sender, PaintEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = dgvProcess;
+                int GridColumnCnt = dgv.ColumnCount;
+                int HeadRowCnt = s_TitleRowCnt;
+                Pen LinePen = new Pen(Color.Gray);
+
+                // カラムヘッダー取得
+                Rectangle r1 = dgv.GetCellDisplayRectangle((int)GridColumn.SecName, -1, true);
+                Rectangle r2 = dgv.GetCellDisplayRectangle((int)GridColumn.SecName, -1, true);
+                r1.X += 1;
+                r1.Y += 1;
+                r1.Height = r1.Height / HeadRowCnt - 2;
+                e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                r2.Height = r2.Height / HeadRowCnt;
+                e.Graphics.DrawRectangle(LinePen, r2);
+
+                StringFormat format = new StringFormat();
+                format.Alignment = StringAlignment.Center;
+                format.LineAlignment = StringAlignment.Center;
+                e.Graphics.DrawString("セキュリティ区分名称",
+                                        dgv.ColumnHeadersDefaultCellStyle.Font,
+                                        new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                        r1,
+                                        format);
+
+                r2.Y += r2.Height;
+                e.Graphics.DrawRectangle(LinePen, r2);
+
+                r1.Y += (r1.Height + 2);
+                e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                e.Graphics.DrawString("セキュリティ　区　分",
+                                        dgv.ColumnHeadersDefaultCellStyle.Font,
+                                        new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                        r1,
+                                        format);
+
+                r2.Y += r2.Height;
+                e.Graphics.DrawRectangle(LinePen, r2);
+
+                r1.Y += (r1.Height + 2);
+                e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                e.Graphics.DrawString("セキュリティ　範　囲",
+                                        dgv.ColumnHeadersDefaultCellStyle.Font,
+                                        new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                        r1,
+                                        format);
+
+                r2.Y += r2.Height;
+                e.Graphics.DrawRectangle(LinePen, r2);
+
+                r1.Y += (r1.Height + 2);
+                e.Graphics.FillRectangle(new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.BackColor), r1);
+                e.Graphics.DrawString("総　務　業　務　実　行",
+                                        dgv.ColumnHeadersDefaultCellStyle.Font,
+                                        new SolidBrush(dgv.ColumnHeadersDefaultCellStyle.ForeColor),
+                                        r1,
+                                        format);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 登録時にログイン者の内容をメモリへ取得する
+        /// <summary>
+        /// 登録時にログイン者の内容をメモリへ取得する
+        /// </summary>
+        private void SetMemTable()
+        {
+            IOMProcessExcute execDB = new IOMProcessExcute();
+            try
+            {
+                // システム管理者は処理しない
+                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement) return;
+
+                CommonMotions.LoginUserProcExe.Clear();
+                // 起動データ取得
+                List<ProcessExcute> exeList = new List<ProcessExcute>();
+                string strExe = execDB.CreatePrimarykeyString(CommonMotions.LoginUserData.SecCode) + " ORDER BY EXECCODE";
+                execDB.SelectAction(strExe, ref exeList);
+                CommonMotions.LoginUserProcExe.Clear();
+                foreach (ProcessExcute wrkRec in exeList)
+                {
+                    CommonMotions.LoginUserProcExe.Add(wrkRec);
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                execDB.close(); execDB = null;
+            }
+        }
+        #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                dgvProcess.ReadOnly = true;
+
+                groupBox1.Visible = false;
+                groupBox2.Visible = false;
+                
+                btnDataEntry.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.Designer.cs	(revision 51)
@@ -0,0 +1,334 @@
+﻿namespace ProcessManagement.Forms.Master
+{
+    partial class FrmSecurityPerson
+    {
+        /// <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()
+        {
+            this.btnExecProc1 = new System.Windows.Forms.Button();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+            this.label2 = new System.Windows.Forms.Label();
+            this.txtInput01 = new System.Windows.Forms.TextBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.cmbDataSecRange = new System.Windows.Forms.ComboBox();
+            this.label15 = new System.Windows.Forms.Label();
+            this.lblSelectColor = new System.Windows.Forms.Label();
+            this.btnBackColor = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.cmbDataSecRank = new System.Windows.Forms.ComboBox();
+            this.lblSecurityCode = new System.Windows.Forms.Label();
+            this.lblEditMode = new System.Windows.Forms.Label();
+            this.lblDisplayOrder = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.cmbGeneralAffairs = new System.Windows.Forms.ComboBox();
+            this.tableLayoutPanel1.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // btnExecProc1
+            // 
+            this.btnExecProc1.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc1.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnExecProc1.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc1.Location = new System.Drawing.Point(320, 224);
+            this.btnExecProc1.Name = "btnExecProc1";
+            this.btnExecProc1.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc1.TabIndex = 5;
+            this.btnExecProc1.Text = "登　　録";
+            this.btnExecProc1.UseVisualStyleBackColor = false;
+            this.btnExecProc1.Click += new System.EventHandler(this.btnExecProc_Click);
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(468, 224);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(140, 40);
+            this.btnCancel.TabIndex = 6;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // tableLayoutPanel1
+            // 
+            this.tableLayoutPanel1.AutoSize = true;
+            this.tableLayoutPanel1.ColumnCount = 3;
+            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, 150F));
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 300F));
+            this.tableLayoutPanel1.Controls.Add(this.label2, 0, 0);
+            this.tableLayoutPanel1.Controls.Add(this.txtInput01, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.label3, 0, 2);
+            this.tableLayoutPanel1.Controls.Add(this.cmbDataSecRange, 1, 2);
+            this.tableLayoutPanel1.Controls.Add(this.label15, 0, 4);
+            this.tableLayoutPanel1.Controls.Add(this.lblSelectColor, 1, 4);
+            this.tableLayoutPanel1.Controls.Add(this.btnBackColor, 2, 4);
+            this.tableLayoutPanel1.Controls.Add(this.label1, 0, 1);
+            this.tableLayoutPanel1.Controls.Add(this.cmbDataSecRank, 1, 1);
+            this.tableLayoutPanel1.Controls.Add(this.label4, 0, 3);
+            this.tableLayoutPanel1.Controls.Add(this.cmbGeneralAffairs, 1, 3);
+            this.tableLayoutPanel1.Location = new System.Drawing.Point(8, 46);
+            this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+            this.tableLayoutPanel1.RowCount = 5;
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 34F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 34F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 34F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 34F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 34F));
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(600, 170);
+            this.tableLayoutPanel1.TabIndex = 4;
+            // 
+            // label2
+            // 
+            this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label2.BackColor = System.Drawing.Color.LightSalmon;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.ForeColor = System.Drawing.Color.Black;
+            this.label2.Location = new System.Drawing.Point(3, 4);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(144, 25);
+            this.label2.TabIndex = 0;
+            this.label2.Text = "名　　称";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // txtInput01
+            // 
+            this.txtInput01.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.txtInput01, 2);
+            this.txtInput01.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput01.Location = new System.Drawing.Point(153, 4);
+            this.txtInput01.Name = "txtInput01";
+            this.txtInput01.Size = new System.Drawing.Size(430, 26);
+            this.txtInput01.TabIndex = 0;
+            // 
+            // label3
+            // 
+            this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label3.BackColor = System.Drawing.Color.LightSalmon;
+            this.label3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.Black;
+            this.label3.Location = new System.Drawing.Point(3, 72);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(144, 25);
+            this.label3.TabIndex = 0;
+            this.label3.Text = "セキュリティ範囲";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbDataSecRange
+            // 
+            this.tableLayoutPanel1.SetColumnSpan(this.cmbDataSecRange, 2);
+            this.cmbDataSecRange.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbDataSecRange.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbDataSecRange.FormattingEnabled = true;
+            this.cmbDataSecRange.Location = new System.Drawing.Point(153, 71);
+            this.cmbDataSecRange.Name = "cmbDataSecRange";
+            this.cmbDataSecRange.Size = new System.Drawing.Size(270, 27);
+            this.cmbDataSecRange.TabIndex = 2;
+            // 
+            // label15
+            // 
+            this.label15.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label15.BackColor = System.Drawing.Color.LightSalmon;
+            this.label15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label15.ForeColor = System.Drawing.Color.Black;
+            this.label15.Location = new System.Drawing.Point(3, 140);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(144, 25);
+            this.label15.TabIndex = 33;
+            this.label15.Text = "選　択　色";
+            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblSelectColor
+            // 
+            this.lblSelectColor.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblSelectColor.BackColor = System.Drawing.Color.White;
+            this.lblSelectColor.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblSelectColor.ForeColor = System.Drawing.Color.Black;
+            this.lblSelectColor.Location = new System.Drawing.Point(153, 140);
+            this.lblSelectColor.Name = "lblSelectColor";
+            this.lblSelectColor.Size = new System.Drawing.Size(144, 25);
+            this.lblSelectColor.TabIndex = 2;
+            this.lblSelectColor.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnBackColor
+            // 
+            this.btnBackColor.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.btnBackColor.BackColor = System.Drawing.SystemColors.Control;
+            this.btnBackColor.ForeColor = System.Drawing.Color.Black;
+            this.btnBackColor.Location = new System.Drawing.Point(303, 139);
+            this.btnBackColor.Name = "btnBackColor";
+            this.btnBackColor.Size = new System.Drawing.Size(120, 28);
+            this.btnBackColor.TabIndex = 4;
+            this.btnBackColor.TabStop = false;
+            this.btnBackColor.Text = "色　選　択";
+            this.btnBackColor.UseVisualStyleBackColor = false;
+            this.btnBackColor.Click += new System.EventHandler(this.btnBackColor_Click);
+            // 
+            // label1
+            // 
+            this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label1.BackColor = System.Drawing.Color.LightSalmon;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(3, 38);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(144, 25);
+            this.label1.TabIndex = 0;
+            this.label1.Text = "セキュリティ区分";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbDataSecRank
+            // 
+            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, 37);
+            this.cmbDataSecRank.Name = "cmbDataSecRank";
+            this.cmbDataSecRank.Size = new System.Drawing.Size(270, 27);
+            this.cmbDataSecRank.TabIndex = 1;
+            this.cmbDataSecRank.SelectedValueChanged += new System.EventHandler(this.cmbDataSecRank_SelectedValueChanged);
+            // 
+            // lblSecurityCode
+            // 
+            this.lblSecurityCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblSecurityCode.BackColor = System.Drawing.Color.White;
+            this.lblSecurityCode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblSecurityCode.ForeColor = System.Drawing.Color.Black;
+            this.lblSecurityCode.Location = new System.Drawing.Point(409, 17);
+            this.lblSecurityCode.Name = "lblSecurityCode";
+            this.lblSecurityCode.Size = new System.Drawing.Size(100, 23);
+            this.lblSecurityCode.TabIndex = 25;
+            this.lblSecurityCode.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.lblSecurityCode.Visible = false;
+            // 
+            // lblEditMode
+            // 
+            this.lblEditMode.BackColor = System.Drawing.Color.White;
+            this.lblEditMode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblEditMode.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblEditMode.ForeColor = System.Drawing.Color.Black;
+            this.lblEditMode.Location = new System.Drawing.Point(8, 8);
+            this.lblEditMode.Name = "lblEditMode";
+            this.lblEditMode.Size = new System.Drawing.Size(117, 32);
+            this.lblEditMode.TabIndex = 26;
+            this.lblEditMode.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDisplayOrder
+            // 
+            this.lblDisplayOrder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDisplayOrder.BackColor = System.Drawing.Color.White;
+            this.lblDisplayOrder.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDisplayOrder.ForeColor = System.Drawing.Color.Black;
+            this.lblDisplayOrder.Location = new System.Drawing.Point(509, 17);
+            this.lblDisplayOrder.Name = "lblDisplayOrder";
+            this.lblDisplayOrder.Size = new System.Drawing.Size(100, 23);
+            this.lblDisplayOrder.TabIndex = 27;
+            this.lblDisplayOrder.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.lblDisplayOrder.Visible = false;
+            // 
+            // label4
+            // 
+            this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label4.BackColor = System.Drawing.Color.LightSalmon;
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(3, 106);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(144, 25);
+            this.label4.TabIndex = 0;
+            this.label4.Text = "総務業務";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // cmbGeneralAffairs
+            // 
+            this.tableLayoutPanel1.SetColumnSpan(this.cmbGeneralAffairs, 2);
+            this.cmbGeneralAffairs.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbGeneralAffairs.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbGeneralAffairs.FormattingEnabled = true;
+            this.cmbGeneralAffairs.Location = new System.Drawing.Point(153, 105);
+            this.cmbGeneralAffairs.Name = "cmbGeneralAffairs";
+            this.cmbGeneralAffairs.Size = new System.Drawing.Size(270, 27);
+            this.cmbGeneralAffairs.TabIndex = 3;
+            // 
+            // FrmSecurityPerson
+            // 
+            this.AcceptButton = this.btnExecProc1;
+            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(614, 271);
+            this.Controls.Add(this.lblDisplayOrder);
+            this.Controls.Add(this.lblEditMode);
+            this.Controls.Add(this.btnCancel);
+            this.Controls.Add(this.btnExecProc1);
+            this.Controls.Add(this.tableLayoutPanel1);
+            this.Controls.Add(this.lblSecurityCode);
+            this.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmSecurityPerson";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "セキュリティ区分変更";
+            this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.FrmSecurityPerson_FormClosed);
+            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            this.tableLayoutPanel1.ResumeLayout(false);
+            this.tableLayoutPanel1.PerformLayout();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnExecProc1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+        private System.Windows.Forms.Button btnBackColor;
+        private System.Windows.Forms.Label lblSelectColor;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label15;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label lblSecurityCode;
+        private System.Windows.Forms.TextBox txtInput01;
+        private System.Windows.Forms.ComboBox cmbDataSecRange;
+        private System.Windows.Forms.Label lblEditMode;
+        private System.Windows.Forms.Label lblDisplayOrder;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox cmbDataSecRank;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.ComboBox cmbGeneralAffairs;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.cs	(revision 51)
@@ -0,0 +1,507 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmSecurityPerson : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        private enum Dispcount
+        {
+            SecurityCode = 0,
+            DisplayOrder,
+            SecurityName,
+            SecurityRank,
+            SecurityRange,
+            GeneralAffairs,
+            SelectColor,
+            EditMode,
+        }
+
+        /// <summary>
+        /// 修正モード名称
+        /// </summary>
+        private static string s_EditModeStringNew = "新規";
+        private static string s_EditModeStringEdit = "修正";
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// 新規作成フラグ
+        /// </summary>
+        private bool m_NewData = false;
+
+        /// <summary>
+        /// セキュリティ区分マスタ
+        /// </summary>
+        private SecurityMaster m_secRec = new SecurityMaster();
+
+        /// <summary>
+        /// コンロールオブジェクト
+        /// </summary>
+        private Control[] m_dispControl;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        /// <summary>
+        /// 新規作成フラグ
+        /// </summary>
+        public bool NewData
+        {
+            get { return m_NewData; }
+            set { m_NewData = value; }
+        }
+
+        /// <summary>
+        /// セキュリティ区分マスタ
+        /// </summary>
+        public SecurityMaster secRec
+        {
+            get { return m_secRec; }
+            set { m_secRec = value; }
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmSecurityPerson()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+         
+            // コントロールのセット
+            SetDisplayObject();
+            
+            // 初期表示
+            DisplayData();
+        }
+        #endregion
+
+        #region ×ボタン
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSecurityPerson_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            if (m_EndButton == DialogResult.None) m_EndButton = DialogResult.Cancel;
+        }
+        #endregion
+
+        #region キャンセルボタン
+        /// <summary>
+        /// キャンセルボタン追加
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.Cancel;
+            this.Close();
+        }
+        #endregion
+
+        #region 登録ボタン
+        /// <summary>
+        /// 登録ボタン
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnExecProc_Click(object sender, EventArgs e)
+        {
+            if (!DispFeildCheck())
+            {
+                MessageBox.Show("データにエラーがあります、確認してください。", "データエラー"
+                                , MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+
+            // セキュリティ区分マスタ登録
+            SecurityMasterDataEntry();
+
+            m_EndButton = DialogResult.OK;
+            this.Close();
+        }
+        #endregion
+
+        #region 色選択ボタン
+        /// <summary>
+        /// 色選択ボタン変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnBackColor_Click(object sender, EventArgs e)
+        {
+            ColorDialog cd = new ColorDialog();
+            try
+            {
+                // ボタンの時
+                if (!sender.GetType().Equals(typeof(Button))) return;
+                Button ClickButton = (Button)sender;
+
+                //色の作成部分を表示可能にする、デフォルトがTrueのため必要はない
+                cd.AllowFullOpen = true;
+                //純色だけに制限しない、デフォルトがFalseのため必要はない
+                cd.SolidColorOnly = false;
+                //[作成した色]に指定した色（RGB値）を表示する
+                cd.CustomColors = new int[] {
+                        0x33, 0x66, 0x99, 0xCC, 0x3300, 0x3333,
+                        0x3366, 0x3399, 0x33CC, 0x6600, 0x6633,
+                        0x6666, 0x6699, 0x66CC, 0x9900, 0x9933};
+
+                //ダイアログを表示する
+                if (cd.ShowDialog() == DialogResult.OK)
+                {
+                    //選択された色の取得
+                    m_dispControl[(int)Dispcount.SelectColor].BackColor = cd.Color;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                cd.Dispose();
+            }
+        }
+        #endregion
+
+        #region オブジェクトコントロールセット
+        /// <summary>
+        /// 表示オブジェクトの取得
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            int DspCtrlCnt = Enum.GetNames(typeof(Dispcount)).Length;
+            m_dispControl = new Control[DspCtrlCnt];
+
+            m_dispControl[(int)Dispcount.SecurityCode] = lblSecurityCode;
+            m_dispControl[(int)Dispcount.DisplayOrder] = lblDisplayOrder;
+            m_dispControl[(int)Dispcount.SecurityName] = txtInput01;
+            m_dispControl[(int)Dispcount.SecurityRank] = cmbDataSecRank;
+            m_dispControl[(int)Dispcount.SecurityRange] = cmbDataSecRange;
+            m_dispControl[(int)Dispcount.GeneralAffairs] = cmbGeneralAffairs;
+            m_dispControl[(int)Dispcount.SelectColor] = lblSelectColor;
+            m_dispControl[(int)Dispcount.EditMode] = lblEditMode;
+        }
+        #endregion
+
+        #region 機密区分コンボボックス初期表示処理
+        /// <summary>
+        /// 機密区分コンボボックス初期表示処理
+        /// </summary>
+        private void SetSecRankCombBox()
+        {
+            try
+            {
+                // コンボボックスクリア
+                cmbDataSecRank.DataSource = null;
+                cmbDataSecRank.Items.Clear();
+
+                // 選択項目クリア
+                cmbDataSecRank.Text = "";
+
+                //コンボボックスのデータをセットする
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+                foreach (KeyValuePair<int, string> wrk in CommonDefine.SecurityRankList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.Key, wrk.Value);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbDataSecRank, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 機密区分範囲コンボボックス初期表示処理
+        /// <summary>
+        /// 機密区分範囲コンボボックス初期表示処理
+        /// </summary>
+        private void SetSecRangeCombBox()
+        {
+            try
+            {
+                // コンボボックスクリア
+                cmbDataSecRange.DataSource = null;
+                cmbDataSecRange.Items.Clear();
+
+                // 選択項目クリア
+                cmbDataSecRange.Text = "";
+
+                //コンボボックスのデータをセットする
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+                foreach (KeyValuePair<int, string> wrk in CommonDefine.SecurityRangeList)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(wrk.Key, wrk.Value);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbDataSecRange, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 総務業務コンボボックス初期表示処理
+        /// <summary>
+        /// 総務業務コンボボックス初期表示処理
+        /// </summary>
+        private void SetGeneralAffairsCombBox()
+        {
+            try
+            {
+                // コンボボックスクリア
+                cmbGeneralAffairs.DataSource = null;
+                cmbGeneralAffairs.Items.Clear();
+
+                // 選択項目クリア
+                cmbGeneralAffairs.Text = "";
+
+                //コンボボックスのデータをセットする
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(CommonDefine.GeneralAffairsList[(int)CommonDefine.GeneralAffairs.OtherDep].Key,
+                                                            CommonDefine.GeneralAffairsList[(int)CommonDefine.GeneralAffairs.OtherDep].Value));
+                DataList.Add(new KeyValuePair<int, string>(CommonDefine.GeneralAffairsList[(int)CommonDefine.GeneralAffairs.GeneralDep].Key,
+                                                            CommonDefine.GeneralAffairsList[(int)CommonDefine.GeneralAffairs.GeneralDep].Value));
+                
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbGeneralAffairs, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region データ表示処理
+        /// <summary>
+        /// データ表示
+        /// </summary>
+        /// <returns></returns>
+        private void DisplayData()
+        {
+            try
+            {
+                // セキュリティランクコンボボックスセット
+                SetSecRankCombBox();
+                SetSecRangeCombBox();
+                SetGeneralAffairsCombBox();
+                
+                // 新規時はデータ表示しない
+                if (m_NewData)
+                {
+                    m_dispControl[(int)Dispcount.EditMode].Text = s_EditModeStringNew;
+                    return;
+                }
+
+                m_dispControl[(int)Dispcount.SecurityCode].Text = m_secRec.SecCode.ToString();
+                m_dispControl[(int)Dispcount.DisplayOrder].Text = m_secRec.DisplayOrder.ToString();
+                m_dispControl[(int)Dispcount.SecurityName].Text = m_secRec.SecName;
+                ((ComboBox)m_dispControl[(int)Dispcount.SecurityRank]).SelectedValue = m_secRec.SecRank;
+                ((ComboBox)m_dispControl[(int)Dispcount.SecurityRange]).SelectedValue = m_secRec.SecRange;
+                ((ComboBox)m_dispControl[(int)Dispcount.GeneralAffairs]).SelectedValue = m_secRec.GeneralAffairs;
+                m_dispControl[(int)Dispcount.SelectColor].BackColor = CommonMotions.getBackForeColor(m_secRec.SelectBackColor, CommonDefine.PalceOfColor.BackColor);
+                m_dispControl[(int)Dispcount.EditMode].Text = s_EditModeStringEdit;
+
+                txtInput01.Select();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+            }
+        }
+        #endregion
+
+        #region 画面項目のチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            try
+            {
+                // 区分名称は必須登録
+                if (!CommonMotions.DispFieldIndispensable(m_dispControl[(int)Dispcount.SecurityName])) bRet = false;
+                if (!CommonMotions.chkStringLength(m_dispControl[(int)Dispcount.SecurityName].Text, 60)) bRet = false;
+
+                // ランクは必須登録
+                if (!CommonMotions.DispFieldIndispensable(m_dispControl[(int)Dispcount.SecurityRank])) bRet = false;
+                if (!CommonMotions.DispFieldIndispensable(m_dispControl[(int)Dispcount.SecurityRange])) bRet = false;
+
+                return bRet;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region セキュリティ区分マスタ登録
+        /// <summary>
+        /// セキュリティ区分マスタ登録
+        /// </summary>
+        private bool SecurityMasterDataEntry()
+        {
+            IOMSecurity secDB = new IOMSecurity();
+            try
+            {
+                // 画面よりデータ取得
+                SecurityMaster EntryRec = new SecurityMaster();
+
+                EntryRec.SecCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.SecurityCode].Text);
+                EntryRec.DisplayOrder = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.DisplayOrder].Text);
+                EntryRec.SecName = CommonMotions.cnvString(m_dispControl[(int)Dispcount.SecurityName].Text);
+                EntryRec.SecRank = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.SecurityRank]).SelectedValue);
+                EntryRec.SecRange = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.SecurityRange]).SelectedValue);
+                EntryRec.GeneralAffairs = CommonMotions.cnvInt(((ComboBox)m_dispControl[(int)Dispcount.GeneralAffairs]).SelectedValue);
+
+                EntryRec.SelectBackColor = String.Format("0x{0:X2}{1:X2}{2:X2}", m_dispControl[(int)Dispcount.SelectColor].BackColor.R
+                                                    , m_dispControl[(int)Dispcount.SelectColor].BackColor.G
+                                                    , m_dispControl[(int)Dispcount.SelectColor].BackColor.B);
+
+                
+                // 新規時
+                if (m_NewData)
+                {
+                    // 区分番号取得
+                    int SecCode = secDB.SelectMaxSecurityCount(string.Empty);
+                    EntryRec.SecCode = SecCode;
+                    // 表示順取得
+                    int DispCnt = secDB.SelectMaxDisplayCount(string.Empty);
+                    EntryRec.DisplayOrder = DispCnt;
+
+                    if (!secDB.InsertAction(EntryRec)) return false;
+
+                    return true;
+                }
+
+                // 編集時
+                string strSQL = secDB.CreatePrimarykeyString(EntryRec.SecCode);
+                if (!secDB.UpdateAction(strSQL, EntryRec)) return false;
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                secDB.close(); secDB = null;
+            }
+        }
+        #endregion
+
+        #region セキュリティ区分変更時
+        /// <summary>
+        /// セキュリティ区分変更時
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbDataSecRank_SelectedValueChanged(object sender, EventArgs e)
+        {
+            try
+            {
+                //// 選択値取得
+                //int SelRank = CommonMotions.cnvInt(cmbDataSecRank.SelectedValue);
+
+                //if (SelRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
+                //{
+                //    cmbDataSecRange.SelectedValue = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.AllPath].Key;
+                //    cmbDataSecRange.Enabled = false;
+                //}
+                //else if (SelRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.FreeAuthority].Key)
+                //{
+                //    cmbDataSecRange.SelectedValue = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.Multiple].Key;
+                //    cmbDataSecRange.Enabled = true;
+                //}
+                //else if (SelRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.LimitedAuthority].Key)
+                //{
+                //    cmbDataSecRange.SelectedValue = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.Only].Key;
+                //    cmbDataSecRange.Enabled = true;
+                //}
+                //else if (SelRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key)
+                //{
+                //    cmbDataSecRange.SelectedValue = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.None].Key;
+                //    cmbDataSecRange.Enabled = false;
+                //}
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Security/FrmSecurityPerson.resx	(revision 51)
@@ -0,0 +1,120 @@
+﻿<?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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.cs	(revision 51)
@@ -131,10 +131,6 @@
         /// 会社コード
         /// </summary>
         private int m_CompanyCode = 0;
-        /// <summary>
-        /// 閲覧フラグ
-        /// </summary>
-        private bool m_bBrowseFlg = false;
 
         /// <summary>
         /// コンボボックスデータ保持領域
@@ -154,6 +150,11 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
@@ -165,13 +166,14 @@
             set { m_CompanyCode = value; }
             get { return m_CompanyCode; }
         }
+
         /// <summary>
-        /// 閲覧フラグ
+        /// 参照フラグ
         /// </summary>
-        public bool BrowseFlg
+        public bool EditLock
         {
-            get { return m_bBrowseFlg; }
-            set { m_bBrowseFlg = value; }
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
         }
         #endregion
 
@@ -204,7 +206,7 @@
         private void FrmSubContractor_FormClosing(object sender, FormClosingEventArgs e)
         {
             if (m_EndButton) return;
-            if (m_bChengeAns && !m_bBrowseFlg)
+            if (m_bChengeAns && !m_EditLock)
             {
                 if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
@@ -263,6 +265,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             dgvMaster.Focus();
 
             m_InitFlg = false;
@@ -300,6 +308,8 @@
                 // データ登録
                 if (!SubontractorMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("協力会社情報データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -393,6 +403,8 @@
                 jobitemDB.commit();
                 joblinkDB.commit();
 
+                CommonMotions.RemoveEndMessage("協力会社情報データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -426,52 +438,6 @@
         }
         #endregion
 
-        #region 協力会社施工工種データ削除
-        /// <summary>
-        /// 協力会社施工工種データ削除
-        /// </summary>
-        /// <param name="jobitemDB"></param>
-        /// <returns></returns>
-        private bool SubontractorItemMasterDataDelete(IOMSubContractorJobItem jobitemDB)
-        {
-            try
-            {
-                string strDel = jobitemDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
-                jobitemDB.DeleteAction(strDel, false);
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region 協力会社施工職種データ削除
-        /// <summary>
-        /// 協力会社施工職種データ削除
-        /// </summary>
-        /// <param name="jobLinkDB"></param>
-        /// <returns></returns>
-        private bool SubontractorJobLinkDataDelete(IOMSubContractorJobLink jobLinkDB)
-        {
-            try
-            {
-                string strDel = jobLinkDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
-                jobLinkDB.DeleteAction(strDel, false);
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
         #region Entryキーでの移動処理
         /// <summary>
         /// Entryキーでの移動処理
@@ -495,52 +461,6 @@
         }
         #endregion
 
-        #region 行選択時処理
-        /// <summary>
-        /// 行選択時処理
-        /// </summary>
-        private void DataSelectRow()
-        {
-            if (m_bChengeAns)
-            {
-                if (MessageBox.Show("データに変更があります、登録内容を破棄してよろしいですか？。", "終了確認"
-                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
-                {
-                    return;
-                }
-            }
-            if (dgvMaster.Rows.Count < 1) return;
-            if (dgvMaster.CurrentRow.Index < 0) return;
-
-            // 空白行は処理しない
-            if (CommonMotions.chkObjectIsNull(dgvMaster.CurrentRow.Cells[(int)DispListColumn.CompanyName].Value) ||
-                CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispListColumn.CompanyName].Value).Length == 0)
-            {
-                // クリア
-                ClearDisplay();
-                // フィールドロック解除
-                ControlLock(false);
-                return;
-            }
-
-            m_CompanyCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispListColumn.CompanyCode].Value);
-
-            // クリア
-            ClearDisplay(true);
-
-            // フィールドロック解除
-            ControlLock();
-
-            // 更新データ取得
-            DispMentenanceData();
-
-            // モード表示
-            m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringEdit;
-            // フォーカスセット
-            m_dispControl[(int)Dispcount.CompanyName].Focus();
-        }
-        #endregion
-
         #region グリッド選択処理
         /// <summary>
         /// グリッド選択処理
@@ -802,6 +722,9 @@
         /// <param name="e"></param>
         private void dgvItem_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
         {
+            // 参照時は処理しない
+            if (m_EditLock) return;
+
             JobItemSelectFormDisplay();
         }
         #endregion
@@ -944,30 +867,6 @@
         }
         #endregion
 
-        #region 工種選択コンボボックスよりSQLを作成する
-        /// <summary>
-        /// 工種選択コンボボックスよりSQLを作成する
-        /// </summary>
-        /// <returns></returns>
-        private string GetSqlFromCmbItemType()
-        {
-            try
-            {
-                int Value = CommonMotions.cnvInt(cmbItemType.SelectedValue);
-                if (Value < 1) return string.Empty;
-
-                return string.Format("CompanyCode In (Select CompanyCode From SubContractorJobItem Where ItemCode = {0})",
-                                CommonMotions.cnvInt(cmbItemType.SelectedValue));
-
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return string.Empty;
-            }
-        }
-        #endregion
-
         #region 50音順コンボ変更時イベント
         /// <summary>
         /// 50音順コンボ変更時イベント
@@ -1010,28 +909,6 @@
         }
         #endregion
 
-        #region 50音順コンボボックスよりSQLを作成する
-        /// <summary>
-        ///  50音順コンボボックスよりSQLを作成する
-        /// </summary>
-        /// <returns></returns>
-        private string GetSqlFromcmbJapaneseSyllabary()
-        {
-            try
-            {
-                string Value = CommonMotions.cnvString(cmbJapaneseSyllabary.SelectedValue);
-                if (Value.Length == 0) return string.Empty;
-
-                return string.Format("JapaneseSyllabary = '{0}'", cmbJapaneseSyllabary.SelectedValue);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return string.Empty;
-            }
-        }
-        #endregion
-
         #region 手間業者コンボ変更時イベント
         /// <summary>
         /// 手間業者コンボ変更時イベント
@@ -1074,976 +951,6 @@
         }
         #endregion
 
-        #region 支払区分コンボボックスよりSQLを作成する
-        /// <summary>
-        ///  支払区分コンボボックスよりSQLを作成する
-        /// </summary>
-        /// <returns></returns>
-        private string GetSqlFromcmbLabour()
-        {
-            try
-            {
-                int Value = CommonMotions.cnvInt(cmbLabour.SelectedValue);
-                if (Value < 0) return string.Empty;
-
-                return  string.Format("labourKind = {0}", CommonMotions.cnvInt(cmbLabour.SelectedValue));
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return string.Empty;
-            }
-        }
-        #endregion
-
-        #region 登録月の最大値担当者コードを取得する
-        /// <summary>
-        /// 登録月の最大値担当者コードを取得する
-        /// </summary>
-        /// <returns></returns>
-        private int GetMaxConpanyCode(string strDate)
-        {
-            int iRet = 0;
-            IOMSubContractor sbDB = new IOMSubContractor();
-            try
-            {
-                // データ更新
-                string strWhere = "";
-                if (strDate.Length != 0)
-                {
-                    strWhere = string.Format(" Where DATE_FORMAT(StartDate,'%Y/%m') = '{0}'", strDate);
-                }
-                iRet = sbDB.SelectMaxCompanyCodeCount(strWhere);
-
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return iRet;
-            }
-            finally
-            {
-                sbDB.close(); sbDB = null;
-            }
-            return iRet;
-        }
-        #endregion
-
-        #region 法人格コンボボックスセット
-        /// <summary>
-        /// 法人格コンボボックスセット
-        /// </summary>
-        private void InitcmbCorporateStatusCombBox()
-        {
-            IOMBusinessType btDB = new IOMBusinessType();
-            try
-            {
-                List<BusinessTypeMaster> btList = new List<BusinessTypeMaster>();
-                if (!btDB.SelectAction(" ORDER BY DISPLAYORDER", ref btList)) return;
-                if (btList.Count == 0) return;
-
-                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
-                // データ表示
-                for (int i = 0; i < btList.Count; i++)
-                {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(btList[i].DisplayOrder, btList[i].BusinessTypeName);
-
-                    DataList.Add(keyval);
-                }
-                // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbCorporateStatus, DataList);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                btDB.close();
-                btDB = null;
-            }
-        }
-        #endregion
-
-        #region 施工工種を選択する画面を表示する
-        /// <summary>
-        /// 施工工種を選択する画面を表示する
-        /// </summary>
-        private void JobItemSelectFormDisplay()
-        {
-            FrmSubContractorItem frm = new FrmSubContractorItem();
-            try
-            {
-                frm.DialogUsed = true;
-
-                //frm.ShowInTaskbar = false;
-                frm.ShowDialog();
-                if (frm.EndButton) return;
-                
-                List<KeyValuePair<int, string>> selectList = frm.SelectData;
-                int icurcnt = dgvJobItem.CurrentRow.Index;
-                
-                // 追加行が表示行より多い場合は行を追加する
-                int iAddLine = dgvJobItem.Rows.Count - icurcnt;
-                if (selectList.Count >= iAddLine)
-                    dgvJobItem.RowCount += ((selectList.Count - iAddLine) + 1);
-
-                for (int i = 0; i < selectList.Count; i++)
-                {
-                    dgvJobItem.Rows[icurcnt + i].Cells[0].Value = selectList[i].Key;
-                    dgvJobItem.Rows[icurcnt + i].Cells[1].Value = selectList[i].Value;
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                frm.Dispose();
-                frm = null;
-            }
-
-        }
-        #endregion
-
-        #region 施工職種を選択する画面を表示する
-        /// <summary>
-        /// 施工職種を選択する画面を表示する
-        /// </summary>
-        private void JobLinkSelectFormDisplay()
-        {
-            FrmSubContractorJobCategory frm = new FrmSubContractorJobCategory();
-            try
-            {
-                frm.DialogUsed = true;
-
-                //frm.ShowInTaskbar = false;
-                frm.ShowDialog();
-                if (frm.EndButton) return;
-
-                List<KeyValuePair<int, string>> selectList = frm.SelectData;
-                int icurcnt = dgvJobLink.CurrentRow.Index;
-
-                // 追加行が表示行より多い場合は行を追加する
-                int iAddLine = dgvJobLink.Rows.Count - icurcnt;
-                if (selectList.Count >= iAddLine)
-                    dgvJobLink.RowCount += ((selectList.Count - iAddLine) + 1);
-
-                for (int i = 0; i < selectList.Count; i++)
-                {
-                    dgvJobLink.Rows[icurcnt + i].Cells[0].Value = selectList[i].Key;
-                    dgvJobLink.Rows[icurcnt + i].Cells[1].Value = selectList[i].Value;
-                }
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                frm.Dispose(); frm = null;
-            }
-        }
-        #endregion
-
-        #region 表示オブジェクトの取得
-        /// <summary>
-        /// 表示オブジェクトの取得
-        /// </summary>
-        private void SetDisplayObject()
-        {
-            int DspCtrlCnt = Enum.GetNames(typeof(Dispcount)).Length;
-            m_dispControl = new Control[DspCtrlCnt];
-
-            m_dispControl[(int)Dispcount.CompanyCode] = lblCompanyCode;
-            m_dispControl[(int)Dispcount.CorporateStatusName] = cmbCorporateStatus;
-            m_dispControl[(int)Dispcount.CompanyName] = txtInput1;
-            m_dispControl[(int)Dispcount.CEOPositionName] = txtInput2;
-            m_dispControl[(int)Dispcount.CEOName] = txtInput3;
-            m_dispControl[(int)Dispcount.ContactPersonName] = txtInput4;
-            m_dispControl[(int)Dispcount.ZipCode] = txtInput5;
-            m_dispControl[(int)Dispcount.Address1] = txtInput6;
-            m_dispControl[(int)Dispcount.Address2] = txtInput7;
-            m_dispControl[(int)Dispcount.Address3] = txtInput11;
-            m_dispControl[(int)Dispcount.CellPhoneNumber] = txtInput12;
-            m_dispControl[(int)Dispcount.MailAddress] = txtInput15;
-            m_dispControl[(int)Dispcount.PhoneNumber] = txtInput8;
-            m_dispControl[(int)Dispcount.JapaneseSyllabary] = txtInput13;
-            m_dispControl[(int)Dispcount.FaxNumber] = txtInput9;
-            m_dispControl[(int)Dispcount.StartDate] = txtInput14;
-            m_dispControl[(int)Dispcount.Note] = txtInput10;
-            m_dispControl[(int)Dispcount.EditMode] = lblEditMode;
-            m_dispControl[(int)Dispcount.btnSerchZip] = btnSerchZip;
-            m_dispControl[(int)Dispcount.PointNone] = rdbPoint1;
-            m_dispControl[(int)Dispcount.PointFront] = rdbPoint2;
-            m_dispControl[(int)Dispcount.PointRear] = rdbPoint3;
-            m_dispControl[(int)Dispcount.GridJobItem] = dgvJobItem;
-            m_dispControl[(int)Dispcount.btnJobItemAdd] = btnJobItemAdd;
-            m_dispControl[(int)Dispcount.btnJobItemDelte] = btnJobItemDelete;
-            m_dispControl[(int)Dispcount.PaymentNormal] = rdbPayment01;
-            m_dispControl[(int)Dispcount.PaymentLabour] = rdbPayment02;
-        }
-        #endregion
-
-        #region データ取得
-        /// <summary>
-        /// データ取得
-        /// </summary>
-        private void DispMentenanceData()
-        {
-            // 協力会社マスタクラス
-            IOMSubContractor sbDB = new IOMSubContractor();
-            // 協力会社工種関連マスタクラス
-            IOMSubContractorJobItem jobItemDB = new IOMSubContractorJobItem();
-            // 協力会社工種マスタクラス
-            IOMSubContractorItem itemDB = new IOMSubContractorItem();
-            // 協力会社職種関連マスタクラス
-            IOMSubContractorJobLink jobLinkDB = new IOMSubContractorJobLink();
-            // 協力会社職種マスタクラス
-            IOMSubContractorJobCategory jobCateDB = new IOMSubContractorJobCategory();
-            try
-            {
-                // 画面クリア
-                ClearDisplay(true);
-
-                // 新規時は表示しない
-                if (m_CompanyCode == 0) return;
-
-                // 協力会社マスタ取得クラス領域
-                SubContractorMaster wrklist = new SubContractorMaster();
-                // 協力会社マスタ取得
-                string strSQL = string.Format(" Where CompanyCode = {0}", m_CompanyCode);
-                if (!sbDB.SelectAction(strSQL, ref wrklist))
-                {
-                    dgvJobItem.RowCount = 4;
-                    dgvJobLink.RowCount = 4;
-                    return;
-                }
-
-                // データ表示
-                m_dispControl[(int)Dispcount.CompanyCode].Text = wrklist.CompanyCode.ToString();         // 会社コード
-                m_dispControl[(int)Dispcount.CorporateStatusName].Text = wrklist.CorporateStatusName.ToString(); // 法人格名称
-                if (wrklist.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.None) rdbPoint1.Checked = true;   // 法人格名称表示位置
-                else if (wrklist.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.Forword) rdbPoint2.Checked = true;
-                else if (wrklist.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.Back) rdbPoint3.Checked = true;
-
-                m_dispControl[(int)Dispcount.CompanyName].Text = wrklist.CompanyName;                           // 会社名１
-                m_dispControl[(int)Dispcount.CEOPositionName].Text = wrklist.CEOPositionName;                   // 役職名
-                m_dispControl[(int)Dispcount.CEOName].Text = wrklist.CEOName;                                   // 代表者氏名
-                m_dispControl[(int)Dispcount.ContactPersonName].Text = wrklist.ContactPersonName;               // 窓口担当者
-                m_dispControl[(int)Dispcount.ZipCode].Text = wrklist.ZipCode;                                   // 郵便番号
-                m_dispControl[(int)Dispcount.Address1].Text = wrklist.Address1;                                 // 住所１
-                m_dispControl[(int)Dispcount.Address2].Text = wrklist.Address2;                                 // 住所２
-                m_dispControl[(int)Dispcount.Address3].Text = wrklist.Address3;                                 // 住所３
-                m_dispControl[(int)Dispcount.CellPhoneNumber].Text = wrklist.CellPhoneNumber;                   // 携帯電話番号
-                m_dispControl[(int)Dispcount.MailAddress].Text = wrklist.MailAddress;                           // メールアドレス
-                m_dispControl[(int)Dispcount.PhoneNumber].Text = wrklist.PhoneNumber;                           // 電話番号
-                m_dispControl[(int)Dispcount.FaxNumber].Text = wrklist.FaxNumber;                               // FAX番号
-                m_dispControl[(int)Dispcount.JapaneseSyllabary].Text = wrklist.JapaneseSyllabary;               // 50音読み
-                m_dispControl[(int)Dispcount.StartDate].Text = CommonMotions.cnvDateToUndecidedString(wrklist.StartDate);   // 見積提出日
-                m_dispControl[(int)Dispcount.Note].Text = wrklist.Note.ToString();                              // 備考
-
-                if (wrklist.labourKind == (int)CommonDefine.SubContractorPaymentKind.Normal)                    // 業者支払区分（通常・手間）
-                    rdbPayment01.Checked = true;
-                else if (wrklist.labourKind == (int)CommonDefine.SubContractorPaymentKind.Labor)
-                    rdbPayment02.Checked = true;
-
-                // ----- 協力会社工種データ表示
-                string ItemSQL = jobItemDB.CreatePrimarykeyString(m_CompanyCode) + "Order By DisplayOrder";
-                List<SubContractorJobItem> JobItemList = new List<SubContractorJobItem>();
-                if (jobItemDB.SelectAction(ItemSQL, ref JobItemList))
-                {
-                    foreach (SubContractorJobItem wrkRec in JobItemList)
-                    {
-                        string strCode = itemDB.CreatePrimarykeyString(wrkRec.ItemCode);
-                        List<SubContractorItemMaster> NameList = new List<SubContractorItemMaster>();
-                        itemDB.SelectAction(strCode, ref NameList);
-                        foreach (SubContractorItemMaster wrkNameRec in NameList)
-                        {
-                            dgvJobItem.Rows.Add(wrkRec.ItemCode, wrkNameRec.ItemName);
-                        }
-                    }
-                }
-                if (dgvJobItem.RowCount < 4) dgvJobItem.RowCount += (4 - dgvJobItem.RowCount);
-
-                // ----- 協力会社職種データ表示
-                string jobSQL = jobItemDB.CreatePrimarykeyString(m_CompanyCode) + "Order By DisplayOrder";
-                List<SubContractorJobLink> jobLinkList = new List<SubContractorJobLink>();
-                if (jobLinkDB.SelectAction(jobSQL, ref jobLinkList))
-                {
-                    foreach (SubContractorJobLink wrkRec in jobLinkList)
-                    {
-                        string strCode = jobCateDB.CreatePrimarykeyString(wrkRec.JobCategoryCode);
-                        List<SubContractorJobCategory> NameList = new List<SubContractorJobCategory>();
-                        jobCateDB.SelectAction(strCode, ref NameList);
-                        foreach (SubContractorJobCategory wrkNameRec in NameList)
-                        {
-                            dgvJobLink.Rows.Add(wrkRec.JobCategoryCode, wrkNameRec.JobCategoryName);
-                        }
-                    }
-                }
-                if (dgvJobLink.RowCount < 4) dgvJobLink.RowCount += (4 - dgvJobLink.RowCount);
-
-                m_bChengeAns = false;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                sbDB.close(); sbDB = null;
-                jobItemDB.close(); jobItemDB = null;
-                itemDB.close(); itemDB = null;
-                jobLinkDB.close(); jobLinkDB = null;
-                jobCateDB.close(); jobCateDB = null;
-            }
-        }
-        #endregion
-
-        #region 画面ロック
-        /// <summary>
-        /// 画面ロック
-        /// </summary>
-        private void ControlLock(bool bctrl = true)
-        {
-            foreach (Control wrk in m_dispControl)
-            {
-                if (CommonMotions.chkObjectIsNull(wrk)) continue;
-                if (!wrk.GetType().Equals(typeof(Label)))
-                    wrk.Enabled = bctrl;
-            }
-        }
-        #endregion
-
-        #region 画面クリア
-        /// <summary>
-        /// 画面クリア
-        /// </summary>
-        private void ClearDisplay(bool EdiDataDisp = false)
-        {
-            foreach (Control wrk in m_dispControl)
-            {
-                if (CommonMotions.chkObjectIsNull(wrk)) continue;
-                if (wrk.GetType().Equals(typeof(RadioButton)))  continue;
-                if (wrk.GetType().Equals(typeof(Button))) continue;
-                if (wrk.GetType().Equals(typeof(DataGridViewEX))) continue;
-                
-                wrk.Text = "";
-                
-                // 閲覧時は入力できない
-                if (m_bBrowseFlg)
-                {
-                    if (wrk.GetType().Equals(typeof(TextBox)))
-                    {
-                        ((TextBox)wrk).ReadOnly = true;
-                        continue;
-                    }
-                    if (wrk.GetType().Equals(typeof(ComboBox)))
-                    {
-                        ((ComboBox)wrk).Enabled = true;
-                    }
-                }
-            }
-            dgvJobItem.Rows.Clear();
-            dgvJobLink.Rows.Clear();
-
-            // 新規時は会社コードを表示しない
-            if (m_CompanyCode == 0)
-            {
-                lblCompanyCode.Visible = false;
-                lblCompanyCodelabel.Visible = false;
-            }
-            else
-            {
-                lblCompanyCode.Visible = true;
-                lblCompanyCodelabel.Visible = true;
-            }
-            // データ修正時はクリアしない
-            if (EdiDataDisp) return;
-            
-            cmbItemType.SelectedIndex = -1;
-            cmbJapaneseSyllabary.SelectedIndex = -1;
-            cmbLabour.SelectedIndex = -1;
-            cmbCorporateStatus.SelectedIndex = -1;
-
-            m_bChengeAns = false;
-        }
-        #endregion
-
-        #region 画面項目のチェック
-        /// <summary>
-        /// 画面項目のチェック
-        /// </summary>
-        /// <returns></returns>
-        private bool DispFeildCheck()
-        {
-            bool bRet = true;
-            int iLength = 0;
-            try
-            {
-                // 会社名１
-                if (m_dispControl[(int)Dispcount.CompanyName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.CompanyName], s_CompanyNameLength, true);
-
-                // 代表者役職名
-                if (m_dispControl[(int)Dispcount.CEOPositionName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.CEOPositionName], s_CEOPositionNameLength);
-
-                // 代表者氏名
-                if (m_dispControl[(int)Dispcount.CEOName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.CEOName], s_CEONameLength);
-
-                // 窓口担当者氏名
-                if (m_dispControl[(int)Dispcount.ContactPersonName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.ContactPersonName], s_CEONameLength);
-
-                // 住所１
-                if (m_dispControl[(int)Dispcount.Address1].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Address1], s_AddressLength, true);
-
-                // 住所２
-                if (m_dispControl[(int)Dispcount.Address2].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Address2], s_AddressLength);
-
-                // 住所３
-                if (m_dispControl[(int)Dispcount.Address3].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Address3], s_AddressLength);
-
-                // 郵便番号
-                if (m_dispControl[(int)Dispcount.ZipCode].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldZipCodeCheck(m_dispControl[(int)Dispcount.ZipCode], true);
-
-                // 携帯電話番号
-                if (m_dispControl[(int)Dispcount.CellPhoneNumber].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)Dispcount.CellPhoneNumber], false);
-
-                // メールアドレス
-                if (m_dispControl[(int)Dispcount.MailAddress].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldMailAddressCheck(m_dispControl[(int)Dispcount.MailAddress], false);
-
-                // 電話番号
-                if (m_dispControl[(int)Dispcount.PhoneNumber].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)Dispcount.PhoneNumber], true);
-
-                // FAX番号
-                if (m_dispControl[(int)Dispcount.FaxNumber].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)Dispcount.FaxNumber]);
-
-                // 50音読み
-                if (m_dispControl[(int)Dispcount.JapaneseSyllabary].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.JapaneseSyllabary], s_JapaneseSyllabaryLength);
-
-                // 取引開始年月
-                if (m_dispControl[(int)Dispcount.StartDate].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)Dispcount.StartDate], false);
-
-                // 備考
-                if (m_dispControl[(int)Dispcount.Note].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Note], s_NoteLength);
-
-                if (iLength == 0)
-                {
-                    MessageBox.Show("データが入力されていません、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
-                    return false;
-                }
-                if (!bRet)
-                {
-                    MessageBox.Show("入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
-                    return false;
-                }
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region 協力会社マスタ登録
-        /// <summary>
-        /// 協力会社マスタ登録
-        /// </summary>
-        private bool SubontractorMasterDataEntry()
-        {
-            IOMSubContractor sbDB = new IOMSubContractor();
-            IOMSubContractorJobItem jobitemDB = new IOMSubContractorJobItem();
-            IOMSubContractorJobLink joblinkDB = new IOMSubContractorJobLink();
-            try
-            {
-                // 一括処理なので接続を行う
-                sbDB.connect(); sbDB.beginTran();
-                jobitemDB.connect(); jobitemDB.beginTran();
-                joblinkDB.connect(); joblinkDB.beginTran();
-
-                // 表示順を更新する
-                foreach (DataGridViewRow wrkRow in dgvMaster.Rows)
-                {
-                    // 構成コード無は処理しない
-                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispListColumn.CompanyCode].Value)) continue;
-
-                    List<SubContractorMaster> cwrow = new List<SubContractorMaster>();
-
-                    // 検索文字列作成
-                    string SQLRow = sbDB.CreatePrimarykeyString(
-                                                CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.CompanyCode].Value));
-
-                    // データ取得
-                    if (!sbDB.SelectAction(SQLRow, ref cwrow, false)) break;
-                    // 表示順変更
-                    cwrow[0].DisplayOrder = CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.No].Value);
-                    // データ更新
-                    sbDB.UpdateAction(SQLRow, cwrow[0], false);
-                }
-                
-
-                SubContractorMaster work = new SubContractorMaster();
-                List<SubContractorMaster> workList = new List<SubContractorMaster>();
-
-                // 会社コード
-                work.CompanyCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text);
-
-                // 法人格名称位置
-                if (rdbPoint1.Checked == true) work.CorporateStatusPoint = (int)CommonDefine.StatusNamePoint.None;
-                else if (rdbPoint2.Checked == true) work.CorporateStatusPoint = (int)CommonDefine.StatusNamePoint.Forword;
-                else if (rdbPoint3.Checked == true) work.CorporateStatusPoint = (int)CommonDefine.StatusNamePoint.Back;
-
-                // 法人格名称
-                if (work.CorporateStatusPoint != 0)
-                    if (m_dispControl[(int)Dispcount.CorporateStatusName].Text.Length != 0)
-                        work.CorporateStatusName = m_dispControl[(int)Dispcount.CorporateStatusName].Text;
-                
-                // 会社名
-                if (m_dispControl[(int)Dispcount.CompanyName].Text.Length != 0)
-                    work.CompanyName = m_dispControl[(int)Dispcount.CompanyName].Text;
-
-                // 役職名
-                if (m_dispControl[(int)Dispcount.CEOPositionName].Text.Length != 0)
-                    work.CEOPositionName = m_dispControl[(int)Dispcount.CEOPositionName].Text;
-
-                // 代表者名
-                if (m_dispControl[(int)Dispcount.CEOName].Text.Length != 0)
-                    work.CEOName = m_dispControl[(int)Dispcount.CEOName].Text;
-
-                // 窓口担当者名
-                if (m_dispControl[(int)Dispcount.ContactPersonName].Text.Length != 0)
-                    work.ContactPersonName = m_dispControl[(int)Dispcount.ContactPersonName].Text;
-
-                // 郵便番号
-                if (m_dispControl[(int)Dispcount.ZipCode].Text.Length != 0)
-                    work.ZipCode = m_dispControl[(int)Dispcount.ZipCode].Text;
-
-                // 住所１
-                if (m_dispControl[(int)Dispcount.Address1].Text.Length != 0)
-                    work.Address1 = m_dispControl[(int)Dispcount.Address1].Text;
-
-                // 住所２
-                if (m_dispControl[(int)Dispcount.Address2].Text.Length != 0)
-                    work.Address2 = m_dispControl[(int)Dispcount.Address2].Text;
-
-                // 住所３
-                if (m_dispControl[(int)Dispcount.Address3].Text.Length != 0)
-                    work.Address3 = m_dispControl[(int)Dispcount.Address3].Text;
-
-                // 携帯電話番号
-                if (m_dispControl[(int)Dispcount.CellPhoneNumber].Text.Length != 0)
-                    work.CellPhoneNumber = m_dispControl[(int)Dispcount.CellPhoneNumber].Text;
-
-                // メールアドレス
-                if (m_dispControl[(int)Dispcount.MailAddress].Text.Length != 0)
-                    work.MailAddress = m_dispControl[(int)Dispcount.MailAddress].Text;
-
-                // 電話番号
-                if (m_dispControl[(int)Dispcount.PhoneNumber].Text.Length != 0)
-                    work.PhoneNumber = m_dispControl[(int)Dispcount.PhoneNumber].Text;
-
-                // FAX番号
-                if (m_dispControl[(int)Dispcount.FaxNumber].Text.Length != 0)
-                    work.FaxNumber = m_dispControl[(int)Dispcount.FaxNumber].Text;
-
-                // 50音読み
-                if (m_dispControl[(int)Dispcount.JapaneseSyllabary].Text.Length != 0)
-                    work.JapaneseSyllabary = m_dispControl[(int)Dispcount.JapaneseSyllabary].Text;
-
-                // 登録日
-                if (m_dispControl[(int)Dispcount.StartDate].Text.Length != 0)
-                    work.StartDate = CommonMotions.cnvUndecidedStringToDate(m_dispControl[(int)Dispcount.StartDate].Text);
-
-                // 備考
-                if (m_dispControl[(int)Dispcount.Note].Text.Length != 0)
-                    work.Note = m_dispControl[(int)Dispcount.Note].Text;
-
-                // 支払業者区分
-                if (rdbPayment01.Checked == true) work.labourKind = (int)CommonDefine.SubContractorPaymentKind.Normal;
-                else if (rdbPayment02.Checked == true) work.labourKind = (int)CommonDefine.SubContractorPaymentKind.Labor;
-
-                // 削除フラグ
-                work.DeleteFlg = 0;
-                // 表示順はセットしない
-                work.DisplayOrder = 0;
-
-                // 
-                string strWhere = string.Format(" Where CompanyCode = {0}", work.CompanyCode);
-
-                if (!sbDB.SelectAction(strWhere, ref workList, false))
-                {
-                    sbDB.rollback();
-                    MessageBox.Show("協力会社マスタ登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                if (workList.Count == 0)
-                {
-                    // 表示順セット
-                    work.DisplayOrder = dgvMaster.Rows.Count;
-                    // データがない場合
-                    workList.Clear();
-                    workList.Add(work);
-                    // データ登録
-                    if(!sbDB.InsertAction(workList, false))
-                    {
-                        sbDB.rollback();
-                        MessageBox.Show("協力会社マスタ登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
-                }
-                else
-                {
-                    // 表示順セット
-                    work.DisplayOrder = workList[0].DisplayOrder;
-                    // データがある場合
-                    // データ更新
-                    if(!sbDB.UpdateAction(strWhere, work, false))
-                    {
-                        sbDB.rollback();
-                        MessageBox.Show("協力会社マスタ更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return false;
-                    }
-                }
-
-                // 工種登録処理を行う
-                if (!SubontractorItemMasterDataEntry(jobitemDB))
-                {
-                    sbDB.rollback();
-                    jobitemDB.rollback();
-                    MessageBox.Show("工種登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                // 職種登録処理を行う
-                if (!SubontractorJobLinkDataEntry(joblinkDB))
-                {
-                    sbDB.rollback();
-                    jobitemDB.rollback();
-                    joblinkDB.rollback();
-                    MessageBox.Show("職種登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                    return false;
-                }
-
-                // コードセット
-                m_CompanyCode = work.CompanyCode;
-
-                // 成功したらcommit
-                sbDB.commit();
-                jobitemDB.commit();
-                joblinkDB.commit();
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                sbDB.close(); sbDB = null;
-                jobitemDB.close(); jobitemDB = null;
-                joblinkDB.close(); joblinkDB = null;
-            }
-        }
-        #endregion
-
-        #region 協力会社施工工種データ登録
-        /// <summary>
-        /// 協力会社施工工種データ登録
-        /// </summary>
-        /// <param name="jobitemDB"></param>
-        /// <returns></returns>
-        private bool SubontractorItemMasterDataEntry(IOMSubContractorJobItem jobitemDB)
-        {
-            try
-            {
-                string strDel = jobitemDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
-                jobitemDB.DeleteAction(strDel, false);
-
-                int ijobCnt = 0;
-                foreach (DataGridViewRow wrkRow in dgvJobItem.Rows)
-                {
-                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
-                    ijobCnt++;
-                }
-                if (ijobCnt == 0) return true;
-
-                List<SubContractorJobItem> JobList = new List<SubContractorJobItem>();
-                ijobCnt = 1;
-                foreach (DataGridViewRow wrkRow in dgvJobItem.Rows)
-                {
-                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
-
-                    SubContractorJobItem JobRec = new SubContractorJobItem();
-                    JobRec.CompanyCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text);
-                    JobRec.ItemCode = CommonMotions.cnvInt(wrkRow.Cells[0].Value);
-                    JobRec.DisplayOrder = ijobCnt++;
-
-                    JobList.Add(JobRec);
-                }
-                if (!jobitemDB.InsertAction(JobList, false)) return false;
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region 協力会社施工職種データ登録
-        /// <summary>
-        /// 協力会社施工職種データ登録
-        /// </summary>
-        /// <param name="jobLinkDB"></param>
-        /// <returns></returns>
-        private bool SubontractorJobLinkDataEntry(IOMSubContractorJobLink jobLinkDB)
-        {
-            try
-            {
-                string strDel = jobLinkDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
-                jobLinkDB.DeleteAction(strDel, false);
-
-                int ijobCnt = 0;
-                foreach (DataGridViewRow wrkRow in dgvJobLink.Rows)
-                {
-                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
-                    ijobCnt++;
-                }
-                if (ijobCnt == 0) return true;
-
-                List<SubContractorJobLink> JobList = new List<SubContractorJobLink>();
-                ijobCnt = 1;
-                foreach (DataGridViewRow wrkRow in dgvJobLink.Rows)
-                {
-                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
-
-                    SubContractorJobLink JobRec = new SubContractorJobLink();
-                    JobRec.CompanyCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text);
-                    JobRec.JobCategoryCode = CommonMotions.cnvInt(wrkRow.Cells[0].Value);
-                    JobRec.DisplayOrder = ijobCnt++;
-
-                    JobList.Add(JobRec);
-                }
-                if (!jobLinkDB.InsertAction(JobList, false)) return false;
-
-                return true;
-            }
-            catch (System.Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-        }
-        #endregion
-
-        #region グリッドデータ取得
-        /// <summary>
-        /// グリッドデータ取得
-        /// </summary>
-        private bool DispGridData(string strPara = "")
-        {
-            // 協力会社クラス
-            IOMSubContractor sbDB = new IOMSubContractor();
-            try
-            {
-                // 協力会社取得クラス領域
-                List<SubContractorMaster> wrk = new List<SubContractorMaster>();
-                // 協力会社取得SQL
-                string strSql = "";
-                if (strPara.Length == 0)
-                    strSql = " Where DeleteFlg = 0 Order By JapaneseSyllabary ASC, DisplayOrder ASC";
-                else
-                    strSql = strPara;
-
-                // グリッドの行を0に戻す
-                dgvMaster.Rows.Clear();
-                // 協力会社取得
-                if (!sbDB.SelectAction(strSql, ref wrk)) return false;
-             
-                // データ表示
-                int ino = 1, icnt = 0;
-                foreach (SubContractorMaster work in wrk)
-                {
-                    string wrkname = work.CompanyName;
-
-                    if (work.CorporateStatusPoint == 1)
-                        wrkname = work.CorporateStatusName + " " + wrkname;
-                    else
-                        wrkname += " " + work.CorporateStatusName;
-
-                    dgvMaster.Rows.Add((ino++)
-                                        , work.CompanyCode
-                                        , CStatus[work.CorporateStatusPoint]
-                                        , wrkname
-                                        , work.CEOName.Trim());
-
-                    dgvMaster.Rows[icnt++].Cells[(int)DispListColumn.CompanyName].ToolTipText = work.CompanyName;
-                }
-                // 読込時データカウント取得
-                m_initDataCount = wrk.Count;
-
-                // 表示行が足りない場合は追加する
-                if (dgvMaster.Rows.Count <= CommonDefine.s_MaxInitLineCountMastamente)
-                {
-                    int iAddLine = CommonDefine.s_MaxInitLineCountMastamente - dgvMaster.Rows.Count;
-                    for (int i = 0; i < iAddLine; i++)
-                    {
-                        dgvMaster.Rows.Add();
-                    }
-                }
-
-                // 行を選択しない
-                dgvMaster.ClearSelection();
-                
-                // 閲覧時は変更できない
-                if (m_bBrowseFlg)
-                {
-                    btnDataLineEntry.Visible = false;
-                    btnDataDelete.Visible = false;
-                    btnDataEntry.Visible = false;
-                    btnSerchZip.Visible = false;
-                    panel5.Enabled = false;
-                }
-
-                return true;
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return false;
-            }
-            finally
-            {
-                sbDB.close();
-                sbDB = null;
-            }
-        }
-        #endregion
-
-        #region 協力会社施工工種コンボボックスセット
-        /// <summary>
-        /// 協力会社施工工種コンボボックスセット
-        /// </summary>
-        private void SetcmbSubContractorItem()
-        {
-            IOMSubContractorItem itemDB = new IOMSubContractorItem();
-            try
-            {
-                List<SubContractorItemMaster> itemList = new List<SubContractorItemMaster>();
-
-                string strSQL = " Order By DisplayOrder";
-                if (!itemDB.SelectAction(strSQL, ref itemList)) return;
-                if (itemList.Count == 0) return;
-
-                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
-                DataList.Add(new KeyValuePair<int, string>(0, ""));
-                // データ表示
-                for (int i = 0; i < itemList.Count; i++)
-                {
-                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(itemList[i].ItemCode, itemList[i].ItemName);
-
-                    DataList.Add(keyval);
-                }
-                // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbItemType, DataList);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                itemDB.close(); itemDB = null;
-            }
-        }
-        #endregion
-
-        #region 協力会社50音順コンボボックスセット
-        /// <summary>
-        /// 協力会社50音順コンボボックスセット
-        /// </summary>
-        private void SetcmbcmbJapaneseSyllabary()
-        {
-            IOMSubContractor sbDB = new IOMSubContractor();
-            try
-            {
-                string strSQL = "Select Distinct JapaneseSyllabary From SubContractorMaster Order By JapaneseSyllabary";
-                ArrayList arData = new ArrayList();
-                if (!sbDB.ExecuteReader(strSQL, ref arData)) return;
-                if (arData.Count == 0) return;
-
-                // データセット
-                List<KeyValuePair<string, string>> DataList = new List<KeyValuePair<string, string>>();
-                DataList.Add(new KeyValuePair<string, string>("", ""));
-                foreach (object[] objwrk in arData)
-                {
-                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(objwrk[0].ToString(), objwrk[0].ToString());
-                    DataList.Add(keyval);
-                }
-                // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbJapaneseSyllabary, DataList);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                sbDB.close(); sbDB = null;
-            }
-        }
-        #endregion
-
-        #region 手間業者コンボボックスセット
-        /// <summary>
-        /// 手間業者コンボボックスセット
-        /// </summary>
-        private void SetcmbcmbLabout()
-        {
-            try
-            {
-
-                // データセット
-                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
-                DataList.Add(new KeyValuePair<int, string>(-1, ""));
-
-                DataList.Add(new KeyValuePair<int, string>((int)CommonDefine.SubContractorPaymentKind.Normal, "通　常　業　者"));
-                DataList.Add(new KeyValuePair<int, string>((int)CommonDefine.SubContractorPaymentKind.Labor, "手　間　業　者"));
-
-                // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbLabour, DataList);
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
-
         #region 施工職種グリッドダブルクリック
         /// <summary>
         /// 施工職種グリッドダブルクリック
@@ -2052,6 +959,9 @@
         /// <param name="e"></param>
         private void dgvJobLink_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
         {
+            // 参照時は処理しない
+            if (m_EditLock) return;
+
             JobLinkSelectFormDisplay();
         }
         #endregion
@@ -2142,6 +1052,5 @@
             }
         }
         #endregion
-
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractor.designer.cs	(revision 51)
@@ -30,16 +30,16 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle 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();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
@@ -75,9 +75,6 @@
             this.label19 = new System.Windows.Forms.Label();
             this.txtInput14 = new System.Windows.Forms.TextBox();
             this.label17 = new System.Windows.Forms.Label();
-            this.dgvJobItem = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.ItemColumn01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.ItemColumn02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.label7 = new System.Windows.Forms.Label();
             this.txtInput10 = new System.Windows.Forms.TextBox();
             this.label15 = new System.Windows.Forms.Label();
@@ -102,9 +99,6 @@
             this.btnJobItemDelete = new System.Windows.Forms.Button();
             this.btnJobItemUp = new System.Windows.Forms.Button();
             this.label24 = new System.Windows.Forms.Label();
-            this.dgvJobLink = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
-            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.btnJobLinkAdd = new System.Windows.Forms.Button();
             this.btnJobLinkDelete = new System.Windows.Forms.Button();
             this.btnJobLinkUp = new System.Windows.Forms.Button();
@@ -113,6 +107,20 @@
             this.rdbPayment02 = new System.Windows.Forms.RadioButton();
             this.rdbPayment01 = new System.Windows.Forms.RadioButton();
             this.label25 = new System.Windows.Forms.Label();
+            this.panel2 = new System.Windows.Forms.Panel();
+            this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
+            this.cmbLabour = new System.Windows.Forms.ComboBox();
+            this.label22 = new System.Windows.Forms.Label();
+            this.cmbItemType = new System.Windows.Forms.ComboBox();
+            this.label26 = new System.Windows.Forms.Label();
+            this.label23 = new System.Windows.Forms.Label();
+            this.cmbJapaneseSyllabary = new System.Windows.Forms.ComboBox();
+            this.dgvJobItem = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.ItemColumn01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ItemColumn02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dgvJobLink = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -119,23 +127,15 @@
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.panel2 = new System.Windows.Forms.Panel();
-            this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
-            this.cmbLabour = new System.Windows.Forms.ComboBox();
-            this.label26 = new System.Windows.Forms.Label();
-            this.cmbJapaneseSyllabary = new System.Windows.Forms.ComboBox();
-            this.label22 = new System.Windows.Forms.Label();
-            this.cmbItemType = new System.Windows.Forms.ComboBox();
-            this.label23 = new System.Windows.Forms.Label();
             this.panel1.SuspendLayout();
             this.tableLayoutPanel1.SuspendLayout();
             this.panel5.SuspendLayout();
+            this.panel3.SuspendLayout();
+            this.panel2.SuspendLayout();
+            this.tableLayoutPanel2.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvJobItem)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvJobLink)).BeginInit();
-            this.panel3.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
-            this.panel2.SuspendLayout();
-            this.tableLayoutPanel2.SuspendLayout();
             this.SuspendLayout();
             // 
             // btnDataEntry
@@ -188,7 +188,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 17;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             this.btnDataDelete.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmSubContractor_KeyDown);
@@ -412,6 +412,7 @@
             this.txtInput1.Name = "txtInput1";
             this.txtInput1.Size = new System.Drawing.Size(430, 23);
             this.txtInput1.TabIndex = 5;
+            this.txtInput1.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // txtInput2
             // 
@@ -423,6 +424,7 @@
             this.txtInput2.Name = "txtInput2";
             this.txtInput2.Size = new System.Drawing.Size(430, 23);
             this.txtInput2.TabIndex = 7;
+            this.txtInput2.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label3
             // 
@@ -447,6 +449,7 @@
             this.txtInput3.Name = "txtInput3";
             this.txtInput3.Size = new System.Drawing.Size(430, 23);
             this.txtInput3.TabIndex = 8;
+            this.txtInput3.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // txtInput4
             // 
@@ -458,6 +461,7 @@
             this.txtInput4.Name = "txtInput4";
             this.txtInput4.Size = new System.Drawing.Size(430, 23);
             this.txtInput4.TabIndex = 9;
+            this.txtInput4.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label8
             // 
@@ -482,6 +486,7 @@
             this.txtInput8.Name = "txtInput8";
             this.txtInput8.Size = new System.Drawing.Size(150, 23);
             this.txtInput8.TabIndex = 16;
+            this.txtInput8.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label9
             // 
@@ -506,6 +511,7 @@
             this.txtInput9.Name = "txtInput9";
             this.txtInput9.Size = new System.Drawing.Size(150, 23);
             this.txtInput9.TabIndex = 17;
+            this.txtInput9.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label4
             // 
@@ -671,67 +677,6 @@
             this.label17.Text = "施工工種";
             this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // dgvJobItem
-            // 
-            this.dgvJobItem.AllowUserToAddRows = false;
-            this.dgvJobItem.AllowUserToDeleteRows = false;
-            this.dgvJobItem.AllowUserToResizeColumns = false;
-            this.dgvJobItem.AllowUserToResizeRows = false;
-            this.dgvJobItem.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left)));
-            this.dgvJobItem.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.dgvJobItem.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle21.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle21.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle21.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle21.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle21.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvJobItem.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle21;
-            this.dgvJobItem.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvJobItem.ColumnHeadersVisible = false;
-            this.dgvJobItem.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.ItemColumn01,
-            this.ItemColumn02});
-            this.tableLayoutPanel1.SetColumnSpan(this.dgvJobItem, 4);
-            this.dgvJobItem.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
-            this.dgvJobItem.Location = new System.Drawing.Point(153, 553);
-            this.dgvJobItem.MultiSelect = false;
-            this.dgvJobItem.Name = "dgvJobItem";
-            this.dgvJobItem.RowHeadersVisible = false;
-            this.dgvJobItem.RowHeadersWidth = 20;
-            this.dgvJobItem.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.tableLayoutPanel1.SetRowSpan(this.dgvJobItem, 3);
-            this.dgvJobItem.RowTemplate.Height = 20;
-            this.dgvJobItem.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvJobItem.Size = new System.Drawing.Size(390, 84);
-            this.dgvJobItem.TabIndex = 20;
-            this.dgvJobItem.TabStop = false;
-            this.dgvJobItem.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvItem_CellDoubleClick);
-            this.dgvJobItem.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvItem_CellValueChanged);
-            // 
-            // ItemColumn01
-            // 
-            this.ItemColumn01.Frozen = true;
-            this.ItemColumn01.HeaderText = "工種キー";
-            this.ItemColumn01.Name = "ItemColumn01";
-            this.ItemColumn01.ReadOnly = true;
-            this.ItemColumn01.Visible = false;
-            // 
-            // ItemColumn02
-            // 
-            dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle22.ForeColor = System.Drawing.Color.Black;
-            this.ItemColumn02.DefaultCellStyle = dataGridViewCellStyle22;
-            this.ItemColumn02.Frozen = true;
-            this.ItemColumn02.HeaderText = "工種名称";
-            this.ItemColumn02.Name = "ItemColumn02";
-            this.ItemColumn02.ReadOnly = true;
-            this.ItemColumn02.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.ItemColumn02.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.ItemColumn02.Width = 370;
-            // 
             // label7
             // 
             this.label7.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -782,6 +727,7 @@
             this.txtInput11.Name = "txtInput11";
             this.txtInput11.Size = new System.Drawing.Size(340, 23);
             this.txtInput11.TabIndex = 15;
+            this.txtInput11.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // txtInput7
             // 
@@ -793,6 +739,7 @@
             this.txtInput7.Name = "txtInput7";
             this.txtInput7.Size = new System.Drawing.Size(340, 23);
             this.txtInput7.TabIndex = 14;
+            this.txtInput7.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label14
             // 
@@ -830,6 +777,7 @@
             this.txtInput6.Name = "txtInput6";
             this.txtInput6.Size = new System.Drawing.Size(340, 23);
             this.txtInput6.TabIndex = 13;
+            this.txtInput6.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // btnSerchZip
             // 
@@ -878,6 +826,7 @@
             this.txtInput5.Name = "txtInput5";
             this.txtInput5.Size = new System.Drawing.Size(84, 23);
             this.txtInput5.TabIndex = 12;
+            this.txtInput5.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label11
             // 
@@ -915,6 +864,7 @@
             this.txtInput12.Name = "txtInput12";
             this.txtInput12.Size = new System.Drawing.Size(150, 23);
             this.txtInput12.TabIndex = 10;
+            this.txtInput12.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label20
             // 
@@ -939,6 +889,7 @@
             this.txtInput15.Name = "txtInput15";
             this.txtInput15.Size = new System.Drawing.Size(430, 23);
             this.txtInput15.TabIndex = 11;
+            this.txtInput15.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label18
             // 
@@ -962,6 +913,7 @@
             this.txtInput13.Name = "txtInput13";
             this.txtInput13.Size = new System.Drawing.Size(80, 23);
             this.txtInput13.TabIndex = 6;
+            this.txtInput13.TextChanged += new System.EventHandler(this.valueChange);
             // 
             // label21
             // 
@@ -1038,67 +990,6 @@
             this.label24.Text = "施工職種";
             this.label24.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // dgvJobLink
-            // 
-            this.dgvJobLink.AllowUserToAddRows = false;
-            this.dgvJobLink.AllowUserToDeleteRows = false;
-            this.dgvJobLink.AllowUserToResizeColumns = false;
-            this.dgvJobLink.AllowUserToResizeRows = false;
-            this.dgvJobLink.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left)));
-            this.dgvJobLink.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.dgvJobLink.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle23.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle23.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle23.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle23.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle23.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle23.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvJobLink.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle23;
-            this.dgvJobLink.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvJobLink.ColumnHeadersVisible = false;
-            this.dgvJobLink.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.dataGridViewTextBoxColumn1,
-            this.dataGridViewTextBoxColumn2});
-            this.tableLayoutPanel1.SetColumnSpan(this.dgvJobLink, 4);
-            this.dgvJobLink.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
-            this.dgvJobLink.Location = new System.Drawing.Point(153, 698);
-            this.dgvJobLink.MultiSelect = false;
-            this.dgvJobLink.Name = "dgvJobLink";
-            this.dgvJobLink.RowHeadersVisible = false;
-            this.dgvJobLink.RowHeadersWidth = 20;
-            this.dgvJobLink.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.tableLayoutPanel1.SetRowSpan(this.dgvJobLink, 3);
-            this.dgvJobLink.RowTemplate.Height = 20;
-            this.dgvJobLink.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
-            this.dgvJobLink.Size = new System.Drawing.Size(390, 84);
-            this.dgvJobLink.TabIndex = 21;
-            this.dgvJobLink.TabStop = false;
-            this.dgvJobLink.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvJobLink_CellDoubleClick);
-            this.dgvJobLink.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvItem_CellValueChanged);
-            // 
-            // dataGridViewTextBoxColumn1
-            // 
-            this.dataGridViewTextBoxColumn1.Frozen = true;
-            this.dataGridViewTextBoxColumn1.HeaderText = "工種キー";
-            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
-            this.dataGridViewTextBoxColumn1.ReadOnly = true;
-            this.dataGridViewTextBoxColumn1.Visible = false;
-            // 
-            // dataGridViewTextBoxColumn2
-            // 
-            dataGridViewCellStyle24.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle24.ForeColor = System.Drawing.Color.Black;
-            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle24;
-            this.dataGridViewTextBoxColumn2.Frozen = true;
-            this.dataGridViewTextBoxColumn2.HeaderText = "工種名称";
-            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
-            this.dataGridViewTextBoxColumn2.ReadOnly = true;
-            this.dataGridViewTextBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
-            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.dataGridViewTextBoxColumn2.Width = 370;
-            // 
             // btnJobLinkAdd
             // 
             this.btnJobLinkAdd.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
@@ -1209,101 +1100,6 @@
             this.label25.Text = "手間業者区分";
             this.label25.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // dgvMaster
-            // 
-            this.dgvMaster.AllowUserToAddRows = false;
-            this.dgvMaster.AllowUserToDeleteRows = false;
-            this.dgvMaster.AllowUserToResizeColumns = false;
-            this.dgvMaster.AllowUserToResizeRows = false;
-            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle25.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle25.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle25.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle25.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle25.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle25.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle25;
-            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
-            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.Column1,
-            this.Column2,
-            this.Column5,
-            this.Column3,
-            this.Column4});
-            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
-            this.dgvMaster.Location = new System.Drawing.Point(8, 151);
-            this.dgvMaster.MultiSelect = false;
-            this.dgvMaster.Name = "dgvMaster";
-            this.dgvMaster.RowHeadersWidth = 20;
-            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            this.dgvMaster.RowTemplate.Height = 20;
-            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
-            this.dgvMaster.Size = new System.Drawing.Size(540, 493);
-            this.dgvMaster.TabIndex = 0;
-            this.dgvMaster.TabStop = false;
-            this.dgvMaster.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellClick);
-            // 
-            // Column1
-            // 
-            dataGridViewCellStyle26.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle26.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle26;
-            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;
-            // 
-            // Column2
-            // 
-            dataGridViewCellStyle27.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle27;
-            this.Column2.Frozen = true;
-            this.Column2.HeaderText = "会社コード";
-            this.Column2.Name = "Column2";
-            this.Column2.ReadOnly = true;
-            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            this.Column2.Visible = false;
-            // 
-            // Column5
-            // 
-            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle28;
-            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 = 50;
-            // 
-            // Column3
-            // 
-            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle29.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle29;
-            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 = 370;
-            // 
-            // Column4
-            // 
-            dataGridViewCellStyle30.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle30;
-            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.Visible = false;
-            // 
             // panel2
             // 
             this.panel2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
@@ -1346,30 +1142,6 @@
             this.cmbLabour.TabIndex = 21;
             this.cmbLabour.SelectedIndexChanged += new System.EventHandler(this.cmbLabour_SelectedIndexChanged);
             // 
-            // label26
-            // 
-            this.label26.BackColor = System.Drawing.Color.White;
-            this.label26.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label26.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.label26.Location = new System.Drawing.Point(3, 30);
-            this.label26.Name = "label26";
-            this.label26.Size = new System.Drawing.Size(124, 30);
-            this.label26.TabIndex = 3;
-            this.label26.Text = "協力業者";
-            this.label26.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // cmbJapaneseSyllabary
-            // 
-            this.cmbJapaneseSyllabary.Dock = System.Windows.Forms.DockStyle.Left;
-            this.cmbJapaneseSyllabary.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbJapaneseSyllabary.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbJapaneseSyllabary.FormattingEnabled = true;
-            this.cmbJapaneseSyllabary.Location = new System.Drawing.Point(133, 63);
-            this.cmbJapaneseSyllabary.Name = "cmbJapaneseSyllabary";
-            this.cmbJapaneseSyllabary.Size = new System.Drawing.Size(100, 24);
-            this.cmbJapaneseSyllabary.TabIndex = 2;
-            this.cmbJapaneseSyllabary.SelectedIndexChanged += new System.EventHandler(this.cmbJapaneseSyllabary_SelectedIndexChanged);
-            // 
             // label22
             // 
             this.label22.BackColor = System.Drawing.Color.White;
@@ -1394,6 +1166,18 @@
             this.cmbItemType.TabIndex = 0;
             this.cmbItemType.SelectedIndexChanged += new System.EventHandler(this.cmbItemType_SelectedIndexChanged);
             // 
+            // label26
+            // 
+            this.label26.BackColor = System.Drawing.Color.White;
+            this.label26.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label26.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label26.Location = new System.Drawing.Point(3, 30);
+            this.label26.Name = "label26";
+            this.label26.Size = new System.Drawing.Size(124, 30);
+            this.label26.TabIndex = 3;
+            this.label26.Text = "協力業者";
+            this.label26.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // label23
             // 
             this.label23.BackColor = System.Drawing.Color.White;
@@ -1406,6 +1190,235 @@
             this.label23.Text = "50音順";
             this.label23.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // cmbJapaneseSyllabary
+            // 
+            this.cmbJapaneseSyllabary.Dock = System.Windows.Forms.DockStyle.Left;
+            this.cmbJapaneseSyllabary.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbJapaneseSyllabary.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbJapaneseSyllabary.FormattingEnabled = true;
+            this.cmbJapaneseSyllabary.Location = new System.Drawing.Point(133, 63);
+            this.cmbJapaneseSyllabary.Name = "cmbJapaneseSyllabary";
+            this.cmbJapaneseSyllabary.Size = new System.Drawing.Size(100, 24);
+            this.cmbJapaneseSyllabary.TabIndex = 2;
+            this.cmbJapaneseSyllabary.SelectedIndexChanged += new System.EventHandler(this.cmbJapaneseSyllabary_SelectedIndexChanged);
+            // 
+            // dgvJobItem
+            // 
+            this.dgvJobItem.AllowUserToAddRows = false;
+            this.dgvJobItem.AllowUserToDeleteRows = false;
+            this.dgvJobItem.AllowUserToResizeColumns = false;
+            this.dgvJobItem.AllowUserToResizeRows = false;
+            this.dgvJobItem.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.dgvJobItem.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvJobItem.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.dgvJobItem.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvJobItem.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvJobItem.ColumnHeadersVisible = false;
+            this.dgvJobItem.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.ItemColumn01,
+            this.ItemColumn02});
+            this.tableLayoutPanel1.SetColumnSpan(this.dgvJobItem, 4);
+            this.dgvJobItem.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvJobItem.Location = new System.Drawing.Point(153, 553);
+            this.dgvJobItem.MultiSelect = false;
+            this.dgvJobItem.Name = "dgvJobItem";
+            this.dgvJobItem.RowHeadersVisible = false;
+            this.dgvJobItem.RowHeadersWidth = 20;
+            this.dgvJobItem.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.tableLayoutPanel1.SetRowSpan(this.dgvJobItem, 3);
+            this.dgvJobItem.RowTemplate.Height = 20;
+            this.dgvJobItem.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvJobItem.Size = new System.Drawing.Size(390, 84);
+            this.dgvJobItem.TabIndex = 20;
+            this.dgvJobItem.TabStop = false;
+            this.dgvJobItem.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvItem_CellDoubleClick);
+            this.dgvJobItem.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvItem_CellValueChanged);
+            // 
+            // ItemColumn01
+            // 
+            this.ItemColumn01.Frozen = true;
+            this.ItemColumn01.HeaderText = "工種キー";
+            this.ItemColumn01.Name = "ItemColumn01";
+            this.ItemColumn01.ReadOnly = true;
+            this.ItemColumn01.Visible = false;
+            // 
+            // ItemColumn02
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
+            this.ItemColumn02.DefaultCellStyle = dataGridViewCellStyle2;
+            this.ItemColumn02.Frozen = true;
+            this.ItemColumn02.HeaderText = "工種名称";
+            this.ItemColumn02.Name = "ItemColumn02";
+            this.ItemColumn02.ReadOnly = true;
+            this.ItemColumn02.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.ItemColumn02.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.ItemColumn02.Width = 370;
+            // 
+            // dgvJobLink
+            // 
+            this.dgvJobLink.AllowUserToAddRows = false;
+            this.dgvJobLink.AllowUserToDeleteRows = false;
+            this.dgvJobLink.AllowUserToResizeColumns = false;
+            this.dgvJobLink.AllowUserToResizeRows = false;
+            this.dgvJobLink.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left)));
+            this.dgvJobLink.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvJobLink.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.dgvJobLink.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle3;
+            this.dgvJobLink.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvJobLink.ColumnHeadersVisible = false;
+            this.dgvJobLink.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn1,
+            this.dataGridViewTextBoxColumn2});
+            this.tableLayoutPanel1.SetColumnSpan(this.dgvJobLink, 4);
+            this.dgvJobLink.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvJobLink.Location = new System.Drawing.Point(153, 698);
+            this.dgvJobLink.MultiSelect = false;
+            this.dgvJobLink.Name = "dgvJobLink";
+            this.dgvJobLink.RowHeadersVisible = false;
+            this.dgvJobLink.RowHeadersWidth = 20;
+            this.dgvJobLink.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.tableLayoutPanel1.SetRowSpan(this.dgvJobLink, 3);
+            this.dgvJobLink.RowTemplate.Height = 20;
+            this.dgvJobLink.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvJobLink.Size = new System.Drawing.Size(390, 84);
+            this.dgvJobLink.TabIndex = 21;
+            this.dgvJobLink.TabStop = false;
+            this.dgvJobLink.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvJobLink_CellDoubleClick);
+            this.dgvJobLink.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvItem_CellValueChanged);
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "工種キー";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Visible = false;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
+            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle4;
+            this.dataGridViewTextBoxColumn2.Frozen = true;
+            this.dataGridViewTextBoxColumn2.HeaderText = "工種名称";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn2.Width = 370;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column2,
+            this.Column5,
+            this.Column3,
+            this.Column4});
+            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvMaster.Location = new System.Drawing.Point(8, 151);
+            this.dgvMaster.MultiSelect = false;
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 20;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(540, 493);
+            this.dgvMaster.TabIndex = 0;
+            this.dgvMaster.TabStop = false;
+            this.dgvMaster.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellClick);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            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.Width = 80;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "会社コード";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Visible = false;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle8;
+            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 = 50;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle9;
+            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 = 370;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle10;
+            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.Visible = false;
+            // 
             // FrmSubContractor
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -1439,13 +1452,13 @@
             this.tableLayoutPanel1.PerformLayout();
             this.panel5.ResumeLayout(false);
             this.panel5.PerformLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvJobItem)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvJobLink)).EndInit();
             this.panel3.ResumeLayout(false);
             this.panel3.PerformLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
             this.panel2.ResumeLayout(false);
             this.tableLayoutPanel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvJobItem)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvJobLink)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
             this.ResumeLayout(false);
 
         }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractorAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractorAuxiliary.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractor/FrmSubContractorAuxiliary.cs	(revision 51)
@@ -0,0 +1,1161 @@
+﻿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;
+
+namespace ProcessManagement.Forms.Master
+{
+    public partial class FrmSubContractor
+    {
+        #region 協力会社施工工種データ削除
+        /// <summary>
+        /// 協力会社施工工種データ削除
+        /// </summary>
+        /// <param name="jobitemDB"></param>
+        /// <returns></returns>
+        private bool SubontractorItemMasterDataDelete(IOMSubContractorJobItem jobitemDB)
+        {
+            try
+            {
+                string strDel = jobitemDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
+                jobitemDB.DeleteAction(strDel, false);
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 協力会社施工職種データ削除
+        /// <summary>
+        /// 協力会社施工職種データ削除
+        /// </summary>
+        /// <param name="jobLinkDB"></param>
+        /// <returns></returns>
+        private bool SubontractorJobLinkDataDelete(IOMSubContractorJobLink jobLinkDB)
+        {
+            try
+            {
+                string strDel = jobLinkDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
+                jobLinkDB.DeleteAction(strDel, false);
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 行選択時処理
+        /// <summary>
+        /// 行選択時処理
+        /// </summary>
+        private void DataSelectRow()
+        {
+            if (m_bChengeAns)
+            {
+                if (MessageBox.Show("データに変更があります、登録内容を破棄してよろしいですか？。", "終了確認"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    return;
+                }
+            }
+            if (dgvMaster.Rows.Count < 1) return;
+            if (dgvMaster.CurrentRow.Index < 0) return;
+
+            // 空白行は処理しない
+            if (CommonMotions.chkObjectIsNull(dgvMaster.CurrentRow.Cells[(int)DispListColumn.CompanyName].Value) ||
+                CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispListColumn.CompanyName].Value).Length == 0)
+            {
+                // クリア
+                ClearDisplay();
+                // フィールドロック解除
+                ControlLock(false);
+                return;
+            }
+
+            m_CompanyCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispListColumn.CompanyCode].Value);
+
+            // クリア
+            ClearDisplay(true);
+
+            // フィールドロック解除
+            ControlLock();
+
+            // 更新データ取得
+            DispMentenanceData();
+
+            // モード表示
+            if (m_EditLock)
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringRef;
+            else
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringEdit;
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
+            // フォーカスセット
+            m_dispControl[(int)Dispcount.CompanyName].Focus();
+        }
+        #endregion
+
+        #region 工種選択コンボボックスよりSQLを作成する
+        /// <summary>
+        /// 工種選択コンボボックスよりSQLを作成する
+        /// </summary>
+        /// <returns></returns>
+        private string GetSqlFromCmbItemType()
+        {
+            try
+            {
+                int Value = CommonMotions.cnvInt(cmbItemType.SelectedValue);
+                if (Value < 1) return string.Empty;
+
+                return string.Format("CompanyCode In (Select A1.CompanyCode From SubContractorJobItem A1 Where A1.ItemCode = {0})",
+                                CommonMotions.cnvInt(cmbItemType.SelectedValue));
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region 50音順コンボボックスよりSQLを作成する
+        /// <summary>
+        ///  50音順コンボボックスよりSQLを作成する
+        /// </summary>
+        /// <returns></returns>
+        private string GetSqlFromcmbJapaneseSyllabary()
+        {
+            try
+            {
+                string Value = CommonMotions.cnvString(cmbJapaneseSyllabary.SelectedValue);
+                if (Value.Length == 0) return string.Empty;
+
+                return string.Format("JapaneseSyllabary = '{0}'", cmbJapaneseSyllabary.SelectedValue);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region 支払区分コンボボックスよりSQLを作成する
+        /// <summary>
+        ///  支払区分コンボボックスよりSQLを作成する
+        /// </summary>
+        /// <returns></returns>
+        private string GetSqlFromcmbLabour()
+        {
+            try
+            {
+                int Value = CommonMotions.cnvInt(cmbLabour.SelectedValue);
+                if (Value < 0) return string.Empty;
+
+                return string.Format("labourKind = {0}", CommonMotions.cnvInt(cmbLabour.SelectedValue));
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region 登録月の最大値担当者コードを取得する
+        /// <summary>
+        /// 登録月の最大値担当者コードを取得する
+        /// </summary>
+        /// <returns></returns>
+        private int GetMaxConpanyCode(string strDate)
+        {
+            int iRet = 0;
+            IOMSubContractor sbDB = new IOMSubContractor();
+            try
+            {
+                // データ更新
+                string strWhere = "";
+                if (strDate.Length != 0)
+                {
+                    //strWhere = string.Format(" Where TO_CHAR(StartDate,'YYYY/MM') = '{0}'", strDate);
+                    strWhere = string.Format(" Where DATE_FORMAT(StartDate,'%Y/%m') = '{0}'", strDate);
+                }
+                iRet = sbDB.SelectMaxCompanyCodeCount(strWhere);
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return iRet;
+            }
+            finally
+            {
+                sbDB.close(); sbDB = null;
+            }
+            return iRet;
+        }
+        #endregion
+
+        #region 法人格コンボボックスセット
+        /// <summary>
+        /// 法人格コンボボックスセット
+        /// </summary>
+        private void InitcmbCorporateStatusCombBox()
+        {
+            IOMBusinessType btDB = new IOMBusinessType();
+            try
+            {
+                List<BusinessTypeMaster> btList = new List<BusinessTypeMaster>();
+                if (!btDB.SelectAction(" ORDER BY DISPLAYORDER", ref btList)) return;
+                if (btList.Count == 0) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                // データ表示
+                for (int i = 0; i < btList.Count; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(btList[i].DisplayOrder, btList[i].BusinessTypeName);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbCorporateStatus, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                btDB.close();
+                btDB = null;
+            }
+        }
+        #endregion
+
+        #region 施工工種を選択する画面を表示する
+        /// <summary>
+        /// 施工工種を選択する画面を表示する
+        /// </summary>
+        private void JobItemSelectFormDisplay()
+        {
+            FrmSubContractorItem frm = new FrmSubContractorItem();
+            try
+            {
+                frm.DialogUsed = true;
+
+                //frm.ShowInTaskbar = false;
+                frm.ShowDialog();
+                if (frm.EndButton) return;
+
+                List<KeyValuePair<int, string>> selectList = frm.SelectData;
+                int icurcnt = dgvJobItem.CurrentRow.Index;
+
+                // 追加行が表示行より多い場合は行を追加する
+                int iAddLine = dgvJobItem.Rows.Count - icurcnt;
+                if (selectList.Count >= iAddLine)
+                    dgvJobItem.RowCount += ((selectList.Count - iAddLine) + 1);
+
+                for (int i = 0; i < selectList.Count; i++)
+                {
+                    dgvJobItem.Rows[icurcnt + i].Cells[0].Value = selectList[i].Key;
+                    dgvJobItem.Rows[icurcnt + i].Cells[1].Value = selectList[i].Value;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose();
+                frm = null;
+            }
+
+        }
+        #endregion
+
+        #region 施工職種を選択する画面を表示する
+        /// <summary>
+        /// 施工職種を選択する画面を表示する
+        /// </summary>
+        private void JobLinkSelectFormDisplay()
+        {
+            FrmSubContractorJobCategory frm = new FrmSubContractorJobCategory();
+            try
+            {
+                frm.DialogUsed = true;
+
+                //frm.ShowInTaskbar = false;
+                frm.ShowDialog();
+                if (frm.EndButton) return;
+
+                List<KeyValuePair<int, string>> selectList = frm.SelectData;
+                int icurcnt = dgvJobLink.CurrentRow.Index;
+
+                // 追加行が表示行より多い場合は行を追加する
+                int iAddLine = dgvJobLink.Rows.Count - icurcnt;
+                if (selectList.Count >= iAddLine)
+                    dgvJobLink.RowCount += ((selectList.Count - iAddLine) + 1);
+
+                for (int i = 0; i < selectList.Count; i++)
+                {
+                    dgvJobLink.Rows[icurcnt + i].Cells[0].Value = selectList[i].Key;
+                    dgvJobLink.Rows[icurcnt + i].Cells[1].Value = selectList[i].Value;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
+        #region 表示オブジェクトの取得
+        /// <summary>
+        /// 表示オブジェクトの取得
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            int DspCtrlCnt = Enum.GetNames(typeof(Dispcount)).Length;
+            m_dispControl = new Control[DspCtrlCnt];
+
+            m_dispControl[(int)Dispcount.CompanyCode] = lblCompanyCode;
+            m_dispControl[(int)Dispcount.CorporateStatusName] = cmbCorporateStatus;
+            m_dispControl[(int)Dispcount.CompanyName] = txtInput1;
+            m_dispControl[(int)Dispcount.CEOPositionName] = txtInput2;
+            m_dispControl[(int)Dispcount.CEOName] = txtInput3;
+            m_dispControl[(int)Dispcount.ContactPersonName] = txtInput4;
+            m_dispControl[(int)Dispcount.ZipCode] = txtInput5;
+            m_dispControl[(int)Dispcount.Address1] = txtInput6;
+            m_dispControl[(int)Dispcount.Address2] = txtInput7;
+            m_dispControl[(int)Dispcount.Address3] = txtInput11;
+            m_dispControl[(int)Dispcount.CellPhoneNumber] = txtInput12;
+            m_dispControl[(int)Dispcount.MailAddress] = txtInput15;
+            m_dispControl[(int)Dispcount.PhoneNumber] = txtInput8;
+            m_dispControl[(int)Dispcount.JapaneseSyllabary] = txtInput13;
+            m_dispControl[(int)Dispcount.FaxNumber] = txtInput9;
+            m_dispControl[(int)Dispcount.StartDate] = txtInput14;
+            m_dispControl[(int)Dispcount.Note] = txtInput10;
+            m_dispControl[(int)Dispcount.EditMode] = lblEditMode;
+            m_dispControl[(int)Dispcount.btnSerchZip] = btnSerchZip;
+            m_dispControl[(int)Dispcount.PointNone] = rdbPoint1;
+            m_dispControl[(int)Dispcount.PointFront] = rdbPoint2;
+            m_dispControl[(int)Dispcount.PointRear] = rdbPoint3;
+            m_dispControl[(int)Dispcount.GridJobItem] = dgvJobItem;
+            m_dispControl[(int)Dispcount.btnJobItemAdd] = btnJobItemAdd;
+            m_dispControl[(int)Dispcount.btnJobItemDelte] = btnJobItemDelete;
+            m_dispControl[(int)Dispcount.PaymentNormal] = rdbPayment01;
+            m_dispControl[(int)Dispcount.PaymentLabour] = rdbPayment02;
+        }
+        #endregion
+
+        #region データ取得
+        /// <summary>
+        /// データ取得
+        /// </summary>
+        private void DispMentenanceData()
+        {
+            // 協力会社マスタクラス
+            IOMSubContractor sbDB = new IOMSubContractor();
+            // 協力会社工種関連マスタクラス
+            IOMSubContractorJobItem jobItemDB = new IOMSubContractorJobItem();
+            // 協力会社工種マスタクラス
+            IOMSubContractorItem itemDB = new IOMSubContractorItem();
+            // 協力会社職種関連マスタクラス
+            IOMSubContractorJobLink jobLinkDB = new IOMSubContractorJobLink();
+            // 協力会社職種マスタクラス
+            IOMSubContractorJobCategory jobCateDB = new IOMSubContractorJobCategory();
+            try
+            {
+                // 画面クリア
+                ClearDisplay(true);
+
+                // 新規時は表示しない
+                if (m_CompanyCode == 0) return;
+
+                // 協力会社マスタ取得クラス領域
+                SubContractorMaster wrklist = new SubContractorMaster();
+                // 協力会社マスタ取得
+                string strSQL = sbDB.CreatePrimarykeyString(m_CompanyCode);
+                if (!sbDB.SelectAction(strSQL, ref wrklist))
+                {
+                    dgvJobItem.RowCount = 4;
+                    dgvJobLink.RowCount = 4;
+                    return;
+                }
+
+                // データ表示
+                m_dispControl[(int)Dispcount.CompanyCode].Text = wrklist.CompanyCode.ToString();         // 会社コード
+                m_dispControl[(int)Dispcount.CorporateStatusName].Text = wrklist.CorporateStatusName.ToString(); // 法人格名称
+                if (wrklist.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.None) rdbPoint1.Checked = true;   // 法人格名称表示位置
+                else if (wrklist.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.Forword) rdbPoint2.Checked = true;
+                else if (wrklist.CorporateStatusPoint == (int)CommonDefine.StatusNamePoint.Back) rdbPoint3.Checked = true;
+
+                m_dispControl[(int)Dispcount.CompanyName].Text = wrklist.CompanyName;                           // 会社名１
+                m_dispControl[(int)Dispcount.CEOPositionName].Text = wrklist.CEOPositionName;                   // 役職名
+                m_dispControl[(int)Dispcount.CEOName].Text = wrklist.CEOName;                                   // 代表者氏名
+                m_dispControl[(int)Dispcount.ContactPersonName].Text = wrklist.ContactPersonName;               // 窓口担当者
+                m_dispControl[(int)Dispcount.ZipCode].Text = wrklist.ZipCode;                                   // 郵便番号
+                m_dispControl[(int)Dispcount.Address1].Text = wrklist.Address1;                                 // 住所１
+                m_dispControl[(int)Dispcount.Address2].Text = wrklist.Address2;                                 // 住所２
+                m_dispControl[(int)Dispcount.Address3].Text = wrklist.Address3;                                 // 住所３
+                m_dispControl[(int)Dispcount.CellPhoneNumber].Text = wrklist.CellPhoneNumber;                   // 携帯電話番号
+                m_dispControl[(int)Dispcount.MailAddress].Text = wrklist.MailAddress;                           // メールアドレス
+                m_dispControl[(int)Dispcount.PhoneNumber].Text = wrklist.PhoneNumber;                           // 電話番号
+                m_dispControl[(int)Dispcount.FaxNumber].Text = wrklist.FaxNumber;                               // FAX番号
+                m_dispControl[(int)Dispcount.JapaneseSyllabary].Text = wrklist.JapaneseSyllabary;               // 50音読み
+                m_dispControl[(int)Dispcount.StartDate].Text = CommonMotions.cnvDateToUndecidedString(wrklist.StartDate);   // 見積提出日
+                m_dispControl[(int)Dispcount.Note].Text = wrklist.Note.ToString();                              // 備考
+
+                if (wrklist.labourKind == (int)CommonDefine.SubContractorPaymentKind.Normal)                    // 業者支払区分（通常・手間）
+                    rdbPayment01.Checked = true;
+                else if (wrklist.labourKind == (int)CommonDefine.SubContractorPaymentKind.Labor)
+                    rdbPayment02.Checked = true;
+
+                // ----- 協力会社工種データ表示
+                string ItemSQL = jobItemDB.CreatePrimarykeyString(m_CompanyCode) + "Order By DisplayOrder";
+                List<SubContractorJobItem> JobItemList = new List<SubContractorJobItem>();
+                if (jobItemDB.SelectAction(ItemSQL, ref JobItemList))
+                {
+                    foreach (SubContractorJobItem wrkRec in JobItemList)
+                    {
+                        string strCode = itemDB.CreatePrimarykeyString(wrkRec.ItemCode);
+                        List<SubContractorItemMaster> NameList = new List<SubContractorItemMaster>();
+                        itemDB.SelectAction(strCode, ref NameList);
+                        foreach (SubContractorItemMaster wrkNameRec in NameList)
+                        {
+                            dgvJobItem.Rows.Add(wrkRec.ItemCode, wrkNameRec.ItemName);
+                        }
+                    }
+                }
+                if (dgvJobItem.RowCount < 4) dgvJobItem.RowCount += (4 - dgvJobItem.RowCount);
+
+                // ----- 協力会社職種データ表示
+                string jobSQL = jobItemDB.CreatePrimarykeyString(m_CompanyCode) + "Order By DisplayOrder";
+                List<SubContractorJobLink> jobLinkList = new List<SubContractorJobLink>();
+                if (jobLinkDB.SelectAction(jobSQL, ref jobLinkList))
+                {
+                    foreach (SubContractorJobLink wrkRec in jobLinkList)
+                    {
+                        string strCode = jobCateDB.CreatePrimarykeyString(wrkRec.JobCategoryCode);
+                        List<SubContractorJobCategory> NameList = new List<SubContractorJobCategory>();
+                        jobCateDB.SelectAction(strCode, ref NameList);
+                        foreach (SubContractorJobCategory wrkNameRec in NameList)
+                        {
+                            dgvJobLink.Rows.Add(wrkRec.JobCategoryCode, wrkNameRec.JobCategoryName);
+                        }
+                    }
+                }
+                if (dgvJobLink.RowCount < 4) dgvJobLink.RowCount += (4 - dgvJobLink.RowCount);
+
+                m_bChengeAns = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                sbDB.close(); sbDB = null;
+                jobItemDB.close(); jobItemDB = null;
+                itemDB.close(); itemDB = null;
+                jobLinkDB.close(); jobLinkDB = null;
+                jobCateDB.close(); jobCateDB = null;
+            }
+        }
+        #endregion
+
+        #region 画面ロック
+        /// <summary>
+        /// 画面ロック
+        /// </summary>
+        private void ControlLock(bool bctrl = true)
+        {
+            foreach (Control wrk in m_dispControl)
+            {
+                if (CommonMotions.chkObjectIsNull(wrk)) continue;
+                if (wrk.GetType().Equals(typeof(Label)))
+                {
+                    continue;
+                }
+                else if (wrk.GetType().Equals(typeof(TextBox)))
+                {
+                    ((TextBox)wrk).ReadOnly = !bctrl;
+                }
+                else
+                {
+                    wrk.Enabled = bctrl;
+                }
+            }
+        }
+        #endregion
+
+        #region 画面クリア
+        /// <summary>
+        /// 画面クリア
+        /// </summary>
+        private void ClearDisplay(bool EdiDataDisp = false)
+        {
+            foreach (Control wrk in m_dispControl)
+            {
+                if (CommonMotions.chkObjectIsNull(wrk)) continue;
+                if (wrk.GetType().Equals(typeof(RadioButton))) continue;
+                if (wrk.GetType().Equals(typeof(Button))) continue;
+                if (wrk.GetType().Equals(typeof(DataGridViewEX))) continue;
+
+                wrk.Text = "";
+            }
+
+            dgvJobItem.Rows.Clear();
+            dgvJobLink.Rows.Clear();
+
+            // 新規時は会社コードを表示しない
+            if (m_CompanyCode == 0)
+            {
+                lblCompanyCode.Visible = false;
+                lblCompanyCodelabel.Visible = false;
+            }
+            else
+            {
+                lblCompanyCode.Visible = true;
+                lblCompanyCodelabel.Visible = true;
+            }
+            // データ修正時はクリアしない
+            if (EdiDataDisp) return;
+
+            cmbItemType.SelectedIndex = -1;
+            cmbJapaneseSyllabary.SelectedIndex = -1;
+            cmbLabour.SelectedIndex = -1;
+            cmbCorporateStatus.SelectedIndex = -1;
+
+            m_bChengeAns = false;
+        }
+        #endregion
+
+        #region 画面項目のチェック
+        /// <summary>
+        /// 画面項目のチェック
+        /// </summary>
+        /// <returns></returns>
+        private bool DispFeildCheck()
+        {
+            bool bRet = true;
+            int iLength = 0;
+            try
+            {
+                // 会社名１
+                if (m_dispControl[(int)Dispcount.CompanyName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.CompanyName], s_CompanyNameLength, true);
+
+                // 代表者役職名
+                if (m_dispControl[(int)Dispcount.CEOPositionName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.CEOPositionName], s_CEOPositionNameLength);
+
+                // 代表者氏名
+                if (m_dispControl[(int)Dispcount.CEOName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.CEOName], s_CEONameLength);
+
+                // 窓口担当者氏名
+                if (m_dispControl[(int)Dispcount.ContactPersonName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.ContactPersonName], s_CEONameLength);
+
+                // 住所１
+                if (m_dispControl[(int)Dispcount.Address1].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Address1], s_AddressLength, true);
+
+                // 住所２
+                if (m_dispControl[(int)Dispcount.Address2].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Address2], s_AddressLength);
+
+                // 住所３
+                if (m_dispControl[(int)Dispcount.Address3].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Address3], s_AddressLength);
+
+                // 郵便番号
+                if (m_dispControl[(int)Dispcount.ZipCode].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldZipCodeCheck(m_dispControl[(int)Dispcount.ZipCode], true);
+
+                // 携帯電話番号
+                if (m_dispControl[(int)Dispcount.CellPhoneNumber].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)Dispcount.CellPhoneNumber], false);
+
+                // メールアドレス
+                if (m_dispControl[(int)Dispcount.MailAddress].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldMailAddressCheck(m_dispControl[(int)Dispcount.MailAddress], false);
+
+                // 電話番号
+                if (m_dispControl[(int)Dispcount.PhoneNumber].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)Dispcount.PhoneNumber], true);
+
+                // FAX番号
+                if (m_dispControl[(int)Dispcount.FaxNumber].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)Dispcount.FaxNumber]);
+
+                // 50音読み
+                if (m_dispControl[(int)Dispcount.JapaneseSyllabary].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.JapaneseSyllabary], s_JapaneseSyllabaryLength);
+
+                // 取引開始年月
+                if (m_dispControl[(int)Dispcount.StartDate].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)Dispcount.StartDate], false);
+
+                // 備考
+                if (m_dispControl[(int)Dispcount.Note].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.Note], s_NoteLength);
+
+                if (iLength == 0)
+                {
+                    MessageBox.Show("データが入力されていません、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                    return false;
+                }
+                if (!bRet)
+                {
+                    MessageBox.Show("入力エラーがあります、確認してください。", "データ確認", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 協力会社マスタ登録
+        /// <summary>
+        /// 協力会社マスタ登録
+        /// </summary>
+        private bool SubontractorMasterDataEntry()
+        {
+            IOMSubContractor sbDB = new IOMSubContractor();
+            IOMSubContractorJobItem jobitemDB = new IOMSubContractorJobItem();
+            IOMSubContractorJobLink joblinkDB = new IOMSubContractorJobLink();
+            try
+            {
+                // 一括処理なので接続を行う
+                sbDB.connect(); sbDB.beginTran();
+                jobitemDB.connect(); jobitemDB.beginTran();
+                joblinkDB.connect(); joblinkDB.beginTran();
+
+                // 表示順を更新する
+                foreach (DataGridViewRow wrkRow in dgvMaster.Rows)
+                {
+                    // 構成コード無は処理しない
+                    if (CommonMotions.chkObjectIsNull(wrkRow.Cells[(int)DispListColumn.CompanyCode].Value)) continue;
+
+                    // 表示順変更
+                    int CompanyCode = CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.CompanyCode].Value);
+                    int DisplayOrder = CommonMotions.cnvInt(wrkRow.Cells[(int)DispListColumn.No].Value);
+                    // データ更新
+                    sbDB.UpdateFeild(CompanyCode, (int)IOMSubContractor.TableColumn.DisplayOrder, DisplayOrder, false);
+                }
+
+
+                SubContractorMaster work = new SubContractorMaster();
+                List<SubContractorMaster> workList = new List<SubContractorMaster>();
+
+                // 会社コード
+                work.CompanyCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text);
+
+                // 法人格名称位置
+                if (rdbPoint1.Checked == true) work.CorporateStatusPoint = (int)CommonDefine.StatusNamePoint.None;
+                else if (rdbPoint2.Checked == true) work.CorporateStatusPoint = (int)CommonDefine.StatusNamePoint.Forword;
+                else if (rdbPoint3.Checked == true) work.CorporateStatusPoint = (int)CommonDefine.StatusNamePoint.Back;
+
+                // 法人格名称
+                if (work.CorporateStatusPoint != 0)
+                    if (m_dispControl[(int)Dispcount.CorporateStatusName].Text.Length != 0)
+                        work.CorporateStatusName = m_dispControl[(int)Dispcount.CorporateStatusName].Text;
+
+                // 会社名
+                if (m_dispControl[(int)Dispcount.CompanyName].Text.Length != 0)
+                    work.CompanyName = m_dispControl[(int)Dispcount.CompanyName].Text;
+
+                // 役職名
+                if (m_dispControl[(int)Dispcount.CEOPositionName].Text.Length != 0)
+                    work.CEOPositionName = m_dispControl[(int)Dispcount.CEOPositionName].Text;
+
+                // 代表者名
+                if (m_dispControl[(int)Dispcount.CEOName].Text.Length != 0)
+                    work.CEOName = m_dispControl[(int)Dispcount.CEOName].Text;
+
+                // 窓口担当者名
+                if (m_dispControl[(int)Dispcount.ContactPersonName].Text.Length != 0)
+                    work.ContactPersonName = m_dispControl[(int)Dispcount.ContactPersonName].Text;
+
+                // 郵便番号
+                if (m_dispControl[(int)Dispcount.ZipCode].Text.Length != 0)
+                    work.ZipCode = m_dispControl[(int)Dispcount.ZipCode].Text;
+
+                // 住所１
+                if (m_dispControl[(int)Dispcount.Address1].Text.Length != 0)
+                    work.Address1 = m_dispControl[(int)Dispcount.Address1].Text;
+
+                // 住所２
+                if (m_dispControl[(int)Dispcount.Address2].Text.Length != 0)
+                    work.Address2 = m_dispControl[(int)Dispcount.Address2].Text;
+
+                // 住所３
+                if (m_dispControl[(int)Dispcount.Address3].Text.Length != 0)
+                    work.Address3 = m_dispControl[(int)Dispcount.Address3].Text;
+
+                // 携帯電話番号
+                if (m_dispControl[(int)Dispcount.CellPhoneNumber].Text.Length != 0)
+                    work.CellPhoneNumber = m_dispControl[(int)Dispcount.CellPhoneNumber].Text;
+
+                // メールアドレス
+                if (m_dispControl[(int)Dispcount.MailAddress].Text.Length != 0)
+                    work.MailAddress = m_dispControl[(int)Dispcount.MailAddress].Text;
+
+                // 電話番号
+                if (m_dispControl[(int)Dispcount.PhoneNumber].Text.Length != 0)
+                    work.PhoneNumber = m_dispControl[(int)Dispcount.PhoneNumber].Text;
+
+                // FAX番号
+                if (m_dispControl[(int)Dispcount.FaxNumber].Text.Length != 0)
+                    work.FaxNumber = m_dispControl[(int)Dispcount.FaxNumber].Text;
+
+                // 50音読み
+                if (m_dispControl[(int)Dispcount.JapaneseSyllabary].Text.Length != 0)
+                    work.JapaneseSyllabary = m_dispControl[(int)Dispcount.JapaneseSyllabary].Text;
+
+                // 登録日
+                if (m_dispControl[(int)Dispcount.StartDate].Text.Length != 0)
+                    work.StartDate = CommonMotions.cnvUndecidedStringToDate(m_dispControl[(int)Dispcount.StartDate].Text);
+
+                // 備考
+                if (m_dispControl[(int)Dispcount.Note].Text.Length != 0)
+                    work.Note = m_dispControl[(int)Dispcount.Note].Text;
+
+                // 支払業者区分
+                if (rdbPayment01.Checked == true) work.labourKind = (int)CommonDefine.SubContractorPaymentKind.Normal;
+                else if (rdbPayment02.Checked == true) work.labourKind = (int)CommonDefine.SubContractorPaymentKind.Labor;
+
+                // 削除フラグ
+                work.DeleteFlg = 0;
+                // 表示順はセットしない
+                work.DisplayOrder = 0;
+
+                // 
+                string strWhere = string.Format(" Where CompanyCode = {0}", work.CompanyCode);
+
+                if (!sbDB.SelectAction(strWhere, ref workList, false))
+                {
+                    sbDB.rollback();
+                    MessageBox.Show("協力会社マスタ登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                if (workList.Count == 0)
+                {
+                    // 表示順セット
+                    work.DisplayOrder = dgvMaster.Rows.Count;
+                    // データがない場合
+                    workList.Clear();
+                    workList.Add(work);
+                    // データ登録
+                    if (!sbDB.InsertAction(workList, false))
+                    {
+                        sbDB.rollback();
+                        MessageBox.Show("協力会社マスタ登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+                else
+                {
+                    // 表示順セット
+                    work.DisplayOrder = workList[0].DisplayOrder;
+                    // データがある場合
+                    // データ更新
+                    if (!sbDB.UpdateAction(strWhere, work, false))
+                    {
+                        sbDB.rollback();
+                        MessageBox.Show("協力会社マスタ更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
+                }
+
+                // 工種登録処理を行う
+                if (!SubontractorItemMasterDataEntry(jobitemDB))
+                {
+                    sbDB.rollback();
+                    jobitemDB.rollback();
+                    MessageBox.Show("工種登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                // 職種登録処理を行う
+                if (!SubontractorJobLinkDataEntry(joblinkDB))
+                {
+                    sbDB.rollback();
+                    jobitemDB.rollback();
+                    joblinkDB.rollback();
+                    MessageBox.Show("職種登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                // コードセット
+                m_CompanyCode = work.CompanyCode;
+
+                // 成功したらcommit
+                sbDB.commit();
+                jobitemDB.commit();
+                joblinkDB.commit();
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close(); sbDB = null;
+                jobitemDB.close(); jobitemDB = null;
+                joblinkDB.close(); joblinkDB = null;
+            }
+        }
+        #endregion
+
+        #region 協力会社施工工種データ登録
+        /// <summary>
+        /// 協力会社施工工種データ登録
+        /// </summary>
+        /// <param name="jobitemDB"></param>
+        /// <returns></returns>
+        private bool SubontractorItemMasterDataEntry(IOMSubContractorJobItem jobitemDB)
+        {
+            try
+            {
+                string strDel = jobitemDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
+                jobitemDB.DeleteAction(strDel, false);
+
+                int ijobCnt = 0;
+                foreach (DataGridViewRow wrkRow in dgvJobItem.Rows)
+                {
+                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
+                    ijobCnt++;
+                }
+                if (ijobCnt == 0) return true;
+
+                List<SubContractorJobItem> JobList = new List<SubContractorJobItem>();
+                ijobCnt = 1;
+                foreach (DataGridViewRow wrkRow in dgvJobItem.Rows)
+                {
+                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
+
+                    SubContractorJobItem JobRec = new SubContractorJobItem();
+                    JobRec.CompanyCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text);
+                    JobRec.ItemCode = CommonMotions.cnvInt(wrkRow.Cells[0].Value);
+                    JobRec.DisplayOrder = ijobCnt++;
+
+                    JobList.Add(JobRec);
+                }
+                if (!jobitemDB.InsertAction(JobList, false)) return false;
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 協力会社施工職種データ登録
+        /// <summary>
+        /// 協力会社施工職種データ登録
+        /// </summary>
+        /// <param name="jobLinkDB"></param>
+        /// <returns></returns>
+        private bool SubontractorJobLinkDataEntry(IOMSubContractorJobLink jobLinkDB)
+        {
+            try
+            {
+                string strDel = jobLinkDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text));
+                jobLinkDB.DeleteAction(strDel, false);
+
+                int ijobCnt = 0;
+                foreach (DataGridViewRow wrkRow in dgvJobLink.Rows)
+                {
+                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
+                    ijobCnt++;
+                }
+                if (ijobCnt == 0) return true;
+
+                List<SubContractorJobLink> JobList = new List<SubContractorJobLink>();
+                ijobCnt = 1;
+                foreach (DataGridViewRow wrkRow in dgvJobLink.Rows)
+                {
+                    if (CommonMotions.chkCellBlank(wrkRow.Cells[0].Value)) continue;
+
+                    SubContractorJobLink JobRec = new SubContractorJobLink();
+                    JobRec.CompanyCode = CommonMotions.cnvInt(m_dispControl[(int)Dispcount.CompanyCode].Text);
+                    JobRec.JobCategoryCode = CommonMotions.cnvInt(wrkRow.Cells[0].Value);
+                    JobRec.DisplayOrder = ijobCnt++;
+
+                    JobList.Add(JobRec);
+                }
+                if (!jobLinkDB.InsertAction(JobList, false)) return false;
+
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region グリッドデータ取得
+        /// <summary>
+        /// グリッドデータ取得
+        /// </summary>
+        private bool DispGridData(string strPara = "")
+        {
+            // 協力会社クラス
+            IOMSubContractor sbDB = new IOMSubContractor();
+            try
+            {
+                // 協力会社取得クラス領域
+                List<SubContractorMaster> wrk = new List<SubContractorMaster>();
+                // 協力会社取得SQL
+                string strSql = "";
+                if (strPara.Length == 0)
+                    strSql = " Where DeleteFlg = 0 Order By JapaneseSyllabary ASC, DisplayOrder ASC";
+                else
+                    strSql = strPara;
+
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+                // 協力会社取得
+                if (!sbDB.SelectAction(strSql, ref wrk)) return false;
+
+                // データ表示
+                int ino = 1, icnt = 0;
+                foreach (SubContractorMaster work in wrk)
+                {
+                    string wrkname = work.CompanyName;
+
+                    if (work.CorporateStatusPoint == 1)
+                        wrkname = work.CorporateStatusName + " " + wrkname;
+                    else
+                        wrkname += " " + work.CorporateStatusName;
+
+                    dgvMaster.Rows.Add((ino++)
+                                        , work.CompanyCode
+                                        , CStatus[work.CorporateStatusPoint]
+                                        , wrkname
+                                        , work.CEOName.Trim());
+
+                    dgvMaster.Rows[icnt++].Cells[(int)DispListColumn.CompanyName].ToolTipText = work.CompanyName;
+                }
+                // 読込時データカウント取得
+                m_initDataCount = wrk.Count;
+
+                // 表示行が足りない場合は追加する
+                if (dgvMaster.Rows.Count <= CommonDefine.s_MaxInitLineCountMastamente)
+                {
+                    int iAddLine = CommonDefine.s_MaxInitLineCountMastamente - dgvMaster.Rows.Count;
+                    for (int i = 0; i < iAddLine; i++)
+                    {
+                        dgvMaster.Rows.Add();
+                    }
+                }
+
+                // 行を選択しない
+                dgvMaster.ClearSelection();
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+        }
+        #endregion
+
+        #region 協力会社施工工種コンボボックスセット
+        /// <summary>
+        /// 協力会社施工工種コンボボックスセット
+        /// </summary>
+        private void SetcmbSubContractorItem()
+        {
+            IOMSubContractorItem itemDB = new IOMSubContractorItem();
+            try
+            {
+                List<SubContractorItemMaster> itemList = new List<SubContractorItemMaster>();
+
+                string strSQL = " Order By DisplayOrder";
+                if (!itemDB.SelectAction(strSQL, ref itemList)) return;
+                if (itemList.Count == 0) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+                // データ表示
+                for (int i = 0; i < itemList.Count; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(itemList[i].ItemCode, itemList[i].ItemName);
+
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbItemType, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                itemDB.close(); itemDB = null;
+            }
+        }
+        #endregion
+
+        #region 協力会社50音順コンボボックスセット
+        /// <summary>
+        /// 協力会社50音順コンボボックスセット
+        /// </summary>
+        private void SetcmbcmbJapaneseSyllabary()
+        {
+            IOMSubContractor sbDB = new IOMSubContractor();
+            try
+            {
+                string strSQL = "Select Distinct JapaneseSyllabary From SubContractorMaster WHERE DELETEFLG = 0 Order By JapaneseSyllabary";
+                ArrayList arData = new ArrayList();
+                if (!sbDB.ExecuteReader(strSQL, ref arData)) return;
+                if (arData.Count == 0) return;
+
+                // データセット
+                List<KeyValuePair<string, string>> DataList = new List<KeyValuePair<string, string>>();
+                DataList.Add(new KeyValuePair<string, string>("", ""));
+                foreach (object[] objwrk in arData)
+                {
+                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(objwrk[0].ToString(), objwrk[0].ToString());
+                    DataList.Add(keyval);
+                }
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbJapaneseSyllabary, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                sbDB.close(); sbDB = null;
+            }
+        }
+        #endregion
+
+        #region 手間業者コンボボックスセット
+        /// <summary>
+        /// 手間業者コンボボックスセット
+        /// </summary>
+        private void SetcmbcmbLabout()
+        {
+            try
+            {
+
+                // データセット
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(-1, ""));
+
+                DataList.Add(new KeyValuePair<int, string>((int)CommonDefine.SubContractorPaymentKind.Normal, "通　常　業　者"));
+                DataList.Add(new KeyValuePair<int, string>((int)CommonDefine.SubContractorPaymentKind.Labor, "手　間　業　者"));
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbLabour, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+
+                dgvJobItem.ReadOnly = true;
+                dgvJobLink.ReadOnly = true;
+
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+
+                btnJobItemAdd.Visible = false;
+                btnJobItemDelete.Visible = false;
+                btnJobItemDown.Visible = false;
+                btnJobItemUp.Visible = false;
+                
+                btnJobLinkAdd.Visible = false;
+                btnJobLinkDelete.Visible = false;
+                btnJobLinkDown.Visible = false;
+                btnJobLinkUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractorItem/FrmSubContractorItem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractorItem/FrmSubContractorItem.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractorItem/FrmSubContractorItem.cs	(revision 51)
@@ -80,29 +80,13 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
-        #endregion
 
-        #region コンストラクタ
-        public FrmSubContractorItem()
-        {
-            InitializeComponent();
-        }
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
-        #region デストラクタ
-        ~FrmSubContractorItem()
-        {
-            try
-            {
-                GC.Collect();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
 
-
         #region プロパティ
         /// <summary>
         /// ダイアログ使用時フラグ
@@ -139,10 +123,38 @@
         {
             get { return m_EndButton; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
+        #region コンストラクタ
+        public FrmSubContractorItem()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmSubContractorItem()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
 
-        #region イベントメソッド
+        #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
         /// </summary>
@@ -162,6 +174,9 @@
             // 前プロセスに戻る
             ClsExcute.BackProcess();
         }
+        #endregion
+
+        #region 終了ボタン押下
         /// <summary>
         /// 終了ボタン押下
         /// </summary>
@@ -172,7 +187,9 @@
             m_EndButton = true;
             this.Close();
         }
+        #endregion
 
+        #region フォームロード
         /// <summary>
         /// フォームロード
         /// </summary>
@@ -188,8 +205,16 @@
 
             // ボタン表示の制御
             ButtonVisble(this);
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
         }
+        #endregion
 
+        #region 行データクリア
         /// <summary>
         /// 行データクリア
         /// </summary>
@@ -201,7 +226,9 @@
             dgvMaster[(int)DispColumn.DisplayOrder, iIndex].Value = "";
             dgvMaster[(int)DispColumn.NameString, iIndex].Value = "";
         }
+        #endregion
 
+        #region グリッド採番処理
         /// <summary>
         /// グリッド採番処理
         /// </summary>
@@ -217,6 +244,9 @@
                     r.Cells[(int)DispColumn.DisplayOrder].Value = "0";
             }
         }
+        #endregion
+
+        #region 行追加ボタン押下
         /// <summary>
         /// 行追加ボタン押下
         /// </summary>
@@ -295,7 +325,9 @@
             //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
             //dgvMaster.CurrentCell = dgvMaster[0, iIndex];
         }
+        #endregion
 
+        #region フィールド値変更フラグ
         /// <summary>
         /// フィールド値変更フラグ
         /// </summary>
@@ -305,7 +337,9 @@
         {
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region セル値変化
         /// <summary>
         /// セル値変化
         /// </summary>
@@ -324,7 +358,10 @@
             // 変更フラグON
             m_bChengeAns = true;
         }
-                /// <summary>
+        #endregion
+
+        #region 行削除ボタン押下
+        /// <summary>
         /// 行削除ボタン押下
         /// </summary>
         /// <param name="sender"></param>
@@ -356,6 +393,8 @@
 
                 itemDB.commit();
 
+                CommonMotions.RemoveEndMessage("協力会社工種データ行");
+
                 // データ表示
                 if (!DispGridData()) return;
 
@@ -375,7 +414,9 @@
                 itemDB = null;
             }
         }
+        #endregion
 
+        #region 登録ボタン押下
         /// <summary>
         /// 登録ボタン押下
         /// </summary>
@@ -415,7 +456,10 @@
                 int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
 
                 // データ登録
-                SubContractorItemMasterDataEntry();
+                if (SubContractorItemMasterDataEntry())
+                {
+                    CommonMotions.EntryEndMessage("協力会社工種データ");
+                }
 
                 // データ表示
                 if (!DispGridData()) return;
@@ -431,7 +475,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region IMEのコントロール
         /// <summary>
         /// IMEのコントロール
         /// </summary>
@@ -460,6 +506,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region セルダブルクリック
         /// <summary>
         /// セルダブルクリック
         /// </summary>
@@ -467,6 +516,9 @@
         /// <param name="e"></param>
         private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
         {
+            // 参照は処理しない
+            if (m_EditLock) return;
+            
             // 空白行は処理しない
             if (CommonMotions.chkCellBlank(dgvMaster.CurrentRow.Cells[(int)DispColumn.NameString])) return;
 
@@ -480,6 +532,9 @@
             
             m_bChengeAns = false;
         }
+        #endregion
+
+        #region アップキー押下
         /// <summary>
         /// アップキー押下
         /// </summary>
@@ -506,6 +561,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region ダウンキー押下処理
         /// <summary>
         /// ダウンキー押下処理
         /// </summary>
@@ -533,7 +591,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region Formキーダウン処理
         /// <summary>
         /// Formキーダウン処理
         /// </summary>
@@ -557,6 +617,9 @@
                 e.SuppressKeyPress = true;
             }
         }
+        #endregion
+
+        #region グリッドのキーダウン処理
         /// <summary>
         /// グリッドのキーダウン処理
         /// </summary>
@@ -572,7 +635,7 @@
         }
         #endregion
 
-        #region プライベートメソッド
+        #region 初期表示処理
         /// <summary>
         /// 初期表示処理
         /// </summary>
@@ -605,7 +668,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
         /// </summary>
@@ -643,12 +708,14 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-      }
+        }
+        #endregion
 
+        #region 協力会社工種データ登録
         /// <summary>
         /// 協力会社工種データ登録
         /// </summary>
-        private void SubContractorItemMasterDataEntry()
+        private bool SubContractorItemMasterDataEntry()
         {
             IOMSubContractorItem itemDB = new IOMSubContractorItem();
             try
@@ -698,7 +765,7 @@
                     {
                         itemDB.rollback();
                         MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return;
+                        return false;
                     }
 
                     if (uList.Count == 0)
@@ -712,7 +779,7 @@
                         {
                             itemDB.rollback();
                             MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                     else
@@ -722,7 +789,7 @@
                         {
                             itemDB.rollback();
                             MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                 }
@@ -729,10 +796,13 @@
 
                 // 成功したらcommit
                 itemDB.commit();
+
+                return true;
             }
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
             }
             finally
             {
@@ -740,7 +810,9 @@
                 itemDB = null;
             }
         }
+        #endregion
 
+        #region 協力会社工種表示
         /// <summary>
         /// 協力会社工種表示
         /// </summary>
@@ -809,7 +881,9 @@
             }
             return true;
         }
+        #endregion
 
+        #region ボタンの表示・非表示制御
         /// <summary>
         /// ボタンの表示・非表示制御
         /// </summary>
@@ -821,13 +895,12 @@
 
             foreach (Control ctrl in Parent.Controls)
             {
-                if (ctrl.GetType().Equals(typeof(Button)))
-                {
-                    // 登録・終了ボタン以外を制御する
-                    if (ctrl.Name.ToString() != btnEnd.Name.ToString()
-                        && ctrl.Name.ToString() != btnDataEntry.Name.ToString()) 
-                        ctrl.Visible = bAns;
-                }
+                if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                // 登録・終了ボタン以外を制御する
+                if (ctrl.Name.Equals(btnEnd.Name) || ctrl.Name.Equals(btnDataEntry.Name)) continue;
+                
+                ctrl.Visible = bAns;
             }
             // ダイアログ時登録ボタンを選択ボタンに変更する
             if (m_DialogFlg)
@@ -836,7 +909,9 @@
                 btnDataEntry.Location = btnLineDelete.Location;
             }
         }
+        #endregion
 
+        #region グリッド最終行での処理
         /// <summary>
         /// グリッド最終行での処理
         /// </summary>
@@ -859,5 +934,31 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                foreach (Control ctrl in this.Controls)
+                {
+                    if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.Equals(btnEnd.Name)) continue;
+
+                    ctrl.Visible = false;
+                }
+                dgvMaster.ReadOnly = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractorJob/FrmSubContractorJobCategory.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractorJob/FrmSubContractorJobCategory.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/SubContractorJob/FrmSubContractorJobCategory.cs	(revision 51)
@@ -85,27 +85,12 @@
         /// </summary>
         private bool m_MultiSelect = true;
 
-        #endregion
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
 
-        #region コンストラクタ
-        public FrmSubContractorJobCategory()
-        {
-            InitializeComponent();
-        }
         #endregion
-        #region デストラクタ
-        ~FrmSubContractorJobCategory()
-        {
-            try
-            {
-                GC.Collect();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
 
         #region プロパティ
         /// <summary>
@@ -152,8 +137,36 @@
             set { m_MultiSelect = value; }
         }
 
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
+        #region コンストラクタ
+        public FrmSubContractorJobCategory()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmSubContractorJobCategory()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
@@ -205,6 +218,13 @@
 
             // ボタン表示の制御
             ButtonVisble(this);
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
         }
         #endregion
 
@@ -387,6 +407,8 @@
 
                 jobDB.commit();
 
+                CommonMotions.RemoveEndMessage("協力会社職種データ行");
+
                 // データ表示
                 if (!DispGridData()) return;
 
@@ -451,6 +473,7 @@
                 // ダイアログ使用時
                 if (m_DialogFlg)
                 {
+                    dgvMaster.CurrentRow.Cells[(int)DispColumn.Check].Value = true;
                     DataSelectProc();
                     m_bChengeAns = false;
                     this.Close();
@@ -467,7 +490,10 @@
                 int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
 
                 // データ登録
-                SubContractorJobCategoryDataEntry();
+                if (SubContractorJobCategoryDataEntry())
+                {
+                    CommonMotions.EntryEndMessage("協力会社職種データ");
+                }
 
                 // データ表示
                 if (!DispGridData()) return;
@@ -731,7 +757,7 @@
         /// <summary>
         /// 協力会社職種データ登録
         /// </summary>
-        private void SubContractorJobCategoryDataEntry()
+        private bool SubContractorJobCategoryDataEntry()
         {
             IOMSubContractorJobCategory jobDB = new IOMSubContractorJobCategory();
             try
@@ -780,7 +806,7 @@
                     {
                         jobDB.rollback();
                         MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return;
+                        return false;
                     }
 
                     if (uList.Count == 0)
@@ -794,7 +820,7 @@
                         {
                             jobDB.rollback();
                             MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                     else
@@ -804,7 +830,7 @@
                         {
                             jobDB.rollback();
                             MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                 }
@@ -811,10 +837,13 @@
 
                 // 成功したらcommit
                 jobDB.commit();
+
+                return true;
             }
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
             }
             finally
             {
@@ -907,13 +936,12 @@
 
             foreach (Control ctrl in Parent.Controls)
             {
-                if (ctrl.GetType().Equals(typeof(Button)))
-                {
-                    // 登録・終了ボタン以外を制御する
-                    if (ctrl.Name.ToString() != btnEnd.Name.ToString()
-                        && ctrl.Name.ToString() != btnDataEntry.Name.ToString()) 
-                        ctrl.Visible = bAns;
-                }
+                if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                // 登録・終了ボタン以外を制御する
+                if (ctrl.Name.Equals(btnEnd.Name) || ctrl.Name.Equals(btnDataEntry.Name)) continue;
+                    
+                ctrl.Visible = bAns;
             }
             // ダイアログ時登録ボタンを選択ボタンに変更する
             if (m_DialogFlg)
@@ -947,5 +975,31 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                foreach (Control ctrl in this.Controls)
+                {
+                    if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.Equals(btnEnd.Name)) continue;
+
+                    ctrl.Visible = false;
+                }
+                dgvMaster.ReadOnly = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Suppliers/FrmSuppliers.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Suppliers/FrmSuppliers.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Suppliers/FrmSuppliers.cs	(revision 51)
@@ -88,14 +88,7 @@
         }
         #endregion
 
-        #region 修正モード名称
-        /// <summary>
-        /// 修正モード名称
-        /// </summary>
-        private static string EditModeStringNew = "新規";
-        private static string EditModeStringEdit = "修正";
         #endregion
-        #endregion
 
         #region 変数
         /// <summary>
@@ -129,6 +122,11 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
@@ -156,6 +154,15 @@
             get { return m_bBrowseFlg; }
             set { m_bBrowseFlg = value; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -236,6 +243,12 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             dgvMaster.Focus();
         }
         #endregion
@@ -271,6 +284,8 @@
                 // データ登録
                 if (!SuppliersMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("購入先データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -328,6 +343,8 @@
                     return;
                 }
 
+                CommonMotions.RemoveEndMessage("購入先データ");
+
                 // 更新エリアクリア
                 ClearDisplay();
 
@@ -423,7 +440,17 @@
             DispMentenanceData();
 
             // モード表示
-            m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringEdit;
+            if (m_EditLock)
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringRef;
+            else
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringEdit;
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フォーカスセット
             m_dispControl[(int)Dispcount.SuppliersName1].Focus();
 
@@ -494,7 +521,7 @@
                 }
 
                 // モード表示
-                m_dispControl[(int)Dispcount.EditMode].Text = EditModeStringNew;
+                m_dispControl[(int)Dispcount.EditMode].Text = CommonDefine.EditModeStringNew;
                 // フォーカスセット
                 m_dispControl[(int)Dispcount.SuppliersName1].Focus();
             }
@@ -986,5 +1013,28 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+                btnSerchZip.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Suppliers/FrmSuppliers.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Suppliers/FrmSuppliers.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Suppliers/FrmSuppliers.designer.cs	(revision 51)
@@ -38,27 +38,27 @@
             this.label1 = new System.Windows.Forms.Label();
             this.btnDataDelete = new System.Windows.Forms.Button();
             this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
-            this.txtInput08 = new System.Windows.Forms.TextBox();
+            this.lblSuppliersCodelabel = new System.Windows.Forms.Label();
+            this.lblSuppliersCode = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.txtInput01 = new System.Windows.Forms.TextBox();
+            this.txtInput02 = new System.Windows.Forms.TextBox();
             this.label5 = new System.Windows.Forms.Label();
             this.txtInput03 = new System.Windows.Forms.TextBox();
             this.btnSerchZip = new System.Windows.Forms.Button();
             this.label6 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label10 = new System.Windows.Forms.Label();
+            this.txtInput04 = new System.Windows.Forms.TextBox();
+            this.txtInput05 = new System.Windows.Forms.TextBox();
+            this.txtInput09 = new System.Windows.Forms.TextBox();
             this.label8 = new System.Windows.Forms.Label();
-            this.txtInput09 = new System.Windows.Forms.TextBox();
             this.txtInput06 = new System.Windows.Forms.TextBox();
             this.label9 = new System.Windows.Forms.Label();
             this.txtInput07 = new System.Windows.Forms.TextBox();
             this.label7 = new System.Windows.Forms.Label();
-            this.txtInput04 = new System.Windows.Forms.TextBox();
-            this.txtInput05 = new System.Windows.Forms.TextBox();
-            this.label3 = new System.Windows.Forms.Label();
-            this.label4 = new System.Windows.Forms.Label();
-            this.label10 = new System.Windows.Forms.Label();
-            this.label2 = new System.Windows.Forms.Label();
-            this.txtInput01 = new System.Windows.Forms.TextBox();
-            this.txtInput02 = new System.Windows.Forms.TextBox();
-            this.lblSuppliersCodelabel = new System.Windows.Forms.Label();
-            this.lblSuppliersCode = new System.Windows.Forms.Label();
+            this.txtInput08 = new System.Windows.Forms.TextBox();
             this.lblEditMode = new System.Windows.Forms.Label();
             this.btnDataSelect = new System.Windows.Forms.Button();
             this.btnDataLineEntry = new System.Windows.Forms.Button();
@@ -122,7 +122,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 11;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             this.btnDataDelete.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmSuppliers_KeyDown);
@@ -170,18 +170,68 @@
             this.tableLayoutPanel1.Size = new System.Drawing.Size(610, 350);
             this.tableLayoutPanel1.TabIndex = 0;
             // 
-            // txtInput08
+            // lblSuppliersCodelabel
             // 
-            this.tableLayoutPanel1.SetColumnSpan(this.txtInput08, 2);
-            this.txtInput08.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput08.Location = new System.Drawing.Point(153, 273);
-            this.txtInput08.MaxLength = 300;
-            this.txtInput08.Multiline = true;
-            this.txtInput08.Name = "txtInput08";
-            this.txtInput08.Size = new System.Drawing.Size(430, 74);
-            this.txtInput08.TabIndex = 9;
-            this.txtInput08.TextChanged += new System.EventHandler(this.valueChange);
+            this.lblSuppliersCodelabel.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblSuppliersCodelabel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.lblSuppliersCodelabel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblSuppliersCodelabel.ForeColor = System.Drawing.Color.Black;
+            this.lblSuppliersCodelabel.Location = new System.Drawing.Point(3, 2);
+            this.lblSuppliersCodelabel.Name = "lblSuppliersCodelabel";
+            this.lblSuppliersCodelabel.Size = new System.Drawing.Size(144, 25);
+            this.lblSuppliersCodelabel.TabIndex = 23;
+            this.lblSuppliersCodelabel.Text = "購入先コード";
+            this.lblSuppliersCodelabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // lblSuppliersCode
+            // 
+            this.lblSuppliersCode.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblSuppliersCode.BackColor = System.Drawing.Color.White;
+            this.lblSuppliersCode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblSuppliersCode.ForeColor = System.Drawing.Color.Black;
+            this.lblSuppliersCode.Location = new System.Drawing.Point(153, 3);
+            this.lblSuppliersCode.Name = "lblSuppliersCode";
+            this.lblSuppliersCode.Size = new System.Drawing.Size(84, 23);
+            this.lblSuppliersCode.TabIndex = 24;
+            this.lblSuppliersCode.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label2
+            // 
+            this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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, 32);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(144, 25);
+            this.label2.TabIndex = 30;
+            this.label2.Text = "購入先名称";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // txtInput01
+            // 
+            this.txtInput01.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.txtInput01, 2);
+            this.txtInput01.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput01.Location = new System.Drawing.Point(153, 33);
+            this.txtInput01.MaxLength = 60;
+            this.txtInput01.Name = "txtInput01";
+            this.txtInput01.Size = new System.Drawing.Size(430, 23);
+            this.txtInput01.TabIndex = 1;
+            this.txtInput01.TextChanged += new System.EventHandler(this.valueChange);
+            // 
+            // txtInput02
+            // 
+            this.txtInput02.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.tableLayoutPanel1.SetColumnSpan(this.txtInput02, 2);
+            this.txtInput02.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput02.Location = new System.Drawing.Point(153, 63);
+            this.txtInput02.MaxLength = 60;
+            this.txtInput02.Name = "txtInput02";
+            this.txtInput02.Size = new System.Drawing.Size(430, 23);
+            this.txtInput02.TabIndex = 2;
+            this.txtInput02.TextChanged += new System.EventHandler(this.valueChange);
+            // 
             // label5
             // 
             this.label5.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -231,6 +281,78 @@
             this.label6.Text = "住　　所";
             this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // label3
+            // 
+            this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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(153, 122);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(84, 25);
+            this.label3.TabIndex = 37;
+            this.label3.Text = "都道府県";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label4.ForeColor = System.Drawing.Color.Black;
+            this.label4.Location = new System.Drawing.Point(153, 152);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(84, 25);
+            this.label4.TabIndex = 37;
+            this.label4.Text = "市区町村";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label10
+            // 
+            this.label10.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label10.ForeColor = System.Drawing.Color.Black;
+            this.label10.Location = new System.Drawing.Point(153, 182);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(84, 25);
+            this.label10.TabIndex = 37;
+            this.label10.Text = "町・番地";
+            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // txtInput04
+            // 
+            this.txtInput04.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput04.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput04.Location = new System.Drawing.Point(243, 123);
+            this.txtInput04.MaxLength = 60;
+            this.txtInput04.Name = "txtInput04";
+            this.txtInput04.Size = new System.Drawing.Size(340, 23);
+            this.txtInput04.TabIndex = 4;
+            this.txtInput04.TextChanged += new System.EventHandler(this.valueChange);
+            // 
+            // txtInput05
+            // 
+            this.txtInput05.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput05.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput05.Location = new System.Drawing.Point(243, 153);
+            this.txtInput05.MaxLength = 60;
+            this.txtInput05.Name = "txtInput05";
+            this.txtInput05.Size = new System.Drawing.Size(340, 23);
+            this.txtInput05.TabIndex = 5;
+            this.txtInput05.TextChanged += new System.EventHandler(this.valueChange);
+            // 
+            // txtInput09
+            // 
+            this.txtInput09.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput09.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput09.Location = new System.Drawing.Point(243, 183);
+            this.txtInput09.MaxLength = 60;
+            this.txtInput09.Name = "txtInput09";
+            this.txtInput09.Size = new System.Drawing.Size(340, 23);
+            this.txtInput09.TabIndex = 6;
+            this.txtInput09.TextChanged += new System.EventHandler(this.valueChange);
+            // 
             // label8
             // 
             this.label8.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -244,17 +366,6 @@
             this.label8.Text = "電話番号";
             this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // txtInput09
-            // 
-            this.txtInput09.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.txtInput09.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput09.Location = new System.Drawing.Point(243, 183);
-            this.txtInput09.MaxLength = 60;
-            this.txtInput09.Name = "txtInput09";
-            this.txtInput09.Size = new System.Drawing.Size(340, 23);
-            this.txtInput09.TabIndex = 6;
-            this.txtInput09.TextChanged += new System.EventHandler(this.valueChange);
-            // 
             // txtInput06
             // 
             this.txtInput06.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -304,129 +415,18 @@
             this.label7.Text = "備　　考";
             this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // txtInput04
+            // txtInput08
             // 
-            this.txtInput04.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.txtInput04.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput04.Location = new System.Drawing.Point(243, 123);
-            this.txtInput04.MaxLength = 60;
-            this.txtInput04.Name = "txtInput04";
-            this.txtInput04.Size = new System.Drawing.Size(340, 23);
-            this.txtInput04.TabIndex = 4;
-            this.txtInput04.TextChanged += new System.EventHandler(this.valueChange);
+            this.tableLayoutPanel1.SetColumnSpan(this.txtInput08, 2);
+            this.txtInput08.ImeMode = System.Windows.Forms.ImeMode.On;
+            this.txtInput08.Location = new System.Drawing.Point(153, 273);
+            this.txtInput08.MaxLength = 300;
+            this.txtInput08.Multiline = true;
+            this.txtInput08.Name = "txtInput08";
+            this.txtInput08.Size = new System.Drawing.Size(430, 74);
+            this.txtInput08.TabIndex = 9;
+            this.txtInput08.TextChanged += new System.EventHandler(this.valueChange);
             // 
-            // txtInput05
-            // 
-            this.txtInput05.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.txtInput05.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput05.Location = new System.Drawing.Point(243, 153);
-            this.txtInput05.MaxLength = 60;
-            this.txtInput05.Name = "txtInput05";
-            this.txtInput05.Size = new System.Drawing.Size(340, 23);
-            this.txtInput05.TabIndex = 5;
-            this.txtInput05.TextChanged += new System.EventHandler(this.valueChange);
-            // 
-            // label3
-            // 
-            this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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(153, 122);
-            this.label3.Name = "label3";
-            this.label3.Size = new System.Drawing.Size(84, 25);
-            this.label3.TabIndex = 37;
-            this.label3.Text = "都道府県";
-            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label4
-            // 
-            this.label4.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label4.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label4.ForeColor = System.Drawing.Color.Black;
-            this.label4.Location = new System.Drawing.Point(153, 152);
-            this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(84, 25);
-            this.label4.TabIndex = 37;
-            this.label4.Text = "市区町村";
-            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label10
-            // 
-            this.label10.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label10.ForeColor = System.Drawing.Color.Black;
-            this.label10.Location = new System.Drawing.Point(153, 182);
-            this.label10.Name = "label10";
-            this.label10.Size = new System.Drawing.Size(84, 25);
-            this.label10.TabIndex = 37;
-            this.label10.Text = "町・番地";
-            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label2
-            // 
-            this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((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, 32);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(144, 25);
-            this.label2.TabIndex = 30;
-            this.label2.Text = "購入先名称";
-            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // txtInput01
-            // 
-            this.txtInput01.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.txtInput01, 2);
-            this.txtInput01.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput01.Location = new System.Drawing.Point(153, 33);
-            this.txtInput01.MaxLength = 60;
-            this.txtInput01.Name = "txtInput01";
-            this.txtInput01.Size = new System.Drawing.Size(430, 23);
-            this.txtInput01.TabIndex = 1;
-            this.txtInput01.TextChanged += new System.EventHandler(this.valueChange);
-            // 
-            // txtInput02
-            // 
-            this.txtInput02.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.tableLayoutPanel1.SetColumnSpan(this.txtInput02, 2);
-            this.txtInput02.ImeMode = System.Windows.Forms.ImeMode.On;
-            this.txtInput02.Location = new System.Drawing.Point(153, 63);
-            this.txtInput02.MaxLength = 60;
-            this.txtInput02.Name = "txtInput02";
-            this.txtInput02.Size = new System.Drawing.Size(430, 23);
-            this.txtInput02.TabIndex = 2;
-            this.txtInput02.TextChanged += new System.EventHandler(this.valueChange);
-            // 
-            // lblSuppliersCodelabel
-            // 
-            this.lblSuppliersCodelabel.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.lblSuppliersCodelabel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.lblSuppliersCodelabel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblSuppliersCodelabel.ForeColor = System.Drawing.Color.Black;
-            this.lblSuppliersCodelabel.Location = new System.Drawing.Point(3, 2);
-            this.lblSuppliersCodelabel.Name = "lblSuppliersCodelabel";
-            this.lblSuppliersCodelabel.Size = new System.Drawing.Size(144, 25);
-            this.lblSuppliersCodelabel.TabIndex = 23;
-            this.lblSuppliersCodelabel.Text = "購入先コード";
-            this.lblSuppliersCodelabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblSuppliersCode
-            // 
-            this.lblSuppliersCode.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.lblSuppliersCode.BackColor = System.Drawing.Color.White;
-            this.lblSuppliersCode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblSuppliersCode.ForeColor = System.Drawing.Color.Black;
-            this.lblSuppliersCode.Location = new System.Drawing.Point(153, 3);
-            this.lblSuppliersCode.Name = "lblSuppliersCode";
-            this.lblSuppliersCode.Size = new System.Drawing.Size(84, 23);
-            this.lblSuppliersCode.TabIndex = 24;
-            this.lblSuppliersCode.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
             // lblEditMode
             // 
             this.lblEditMode.BackColor = System.Drawing.Color.White;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/System/FrmSystem.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/System/FrmSystem.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/System/FrmSystem.cs	(revision 51)
@@ -81,6 +81,7 @@
             ConstructionNoBase0,
             ConstructionNoBase1,
             ConsumptionTax,
+            CooperationRate,
             FilePath1,
             SloganString1,
             SloganString2,
@@ -106,11 +107,17 @@
         /// <summary>
         /// 表示コントロール配列
         /// </summary>
-        private Control[] m_dispControl = new Control[22];
+        private Control[] m_dispControl = new Control[23];
         /// <summary>
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
         #endregion
 
         #region プロパティ
@@ -122,6 +129,16 @@
             set { m_SystemCode = value; }
             get { return m_SystemCode; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+
         #endregion
 
         #region コンストラクタ
@@ -187,13 +204,20 @@
         /// <param name="e"></param>
         private void FrmSystem_Load(object sender, EventArgs e)
         {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
             // オブジェクトハンドル取得
             SetDisplayObject();
 
             // 初期表示
             InitDataLoad();
-            // フォームサイズ固定
-            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // 参照時は変更しない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
         }
         #endregion
 
@@ -238,6 +262,8 @@
                 // データ登録
                 if (!SystemMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("会社情報データ");
+
                 // 終了
                 btnEnd_Click(sender, e);
 
@@ -278,6 +304,8 @@
                 }
                 m_bChengeAns = false;
 
+                CommonMotions.RemoveEndMessage("会社情報データ");
+
                 // 終了
                 btnEnd_Click(sender, e);
             }
@@ -558,6 +586,7 @@
             m_dispControl[(int)Dispcount.ConstructionNoBase1] = radioButton2;
 
             m_dispControl[(int)Dispcount.ConsumptionTax] = txtInput13;
+            m_dispControl[(int)Dispcount.CooperationRate] = txtCoopRate;
             m_dispControl[(int)Dispcount.FilePath1] = txtInput14;
             m_dispControl[(int)Dispcount.SloganString1] = txtInput18;
             m_dispControl[(int)Dispcount.SloganString2] = txtInput19;
@@ -610,6 +639,7 @@
                     radioButton2.Checked = true;
 
                 m_dispControl[(int)Dispcount.ConsumptionTax].Text = string.Format("{0:f2}", wrklist.ConsumptionTax);                 // 消費税
+                m_dispControl[(int)Dispcount.CooperationRate].Text = string.Format("{0:f2}", wrklist.CooperationRate);
 
                 m_dispControl[(int)Dispcount.SloganString1].Text = wrklist.SloganString1;                             // 標語
                 m_dispControl[(int)Dispcount.SloganString2].Text = wrklist.SloganString2;                             // 標語
@@ -754,6 +784,10 @@
                 if (m_dispControl[(int)Dispcount.ConsumptionTax].Text.Length != 0) iLength++;
                 bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)Dispcount.ConsumptionTax], true);
 
+                // 協力金比率
+                if (m_dispControl[(int)Dispcount.CooperationRate].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldDoubleCheck(m_dispControl[(int)Dispcount.CooperationRate], true);
+
                 // Excel保存パス
                 if (m_dispControl[(int)Dispcount.FilePath1].Text.Length != 0) iLength++;
                 bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)Dispcount.FilePath1], s_FilePathLength);
@@ -871,6 +905,10 @@
                 if (m_dispControl[(int)Dispcount.ConsumptionTax].Text.Length != 0)
                     work.ConsumptionTax = CommonMotions.cnvDouble(m_dispControl[(int)Dispcount.ConsumptionTax].Text.Replace(",", ""));
 
+                // 協力金比率
+                if (m_dispControl[(int)Dispcount.CooperationRate].Text.Length != 0)
+                    work.CooperationRate = CommonMotions.cnvDouble(m_dispControl[(int)Dispcount.CooperationRate].Text.Replace(",", ""));
+
                 // Excel保存パス
                 if (m_dispControl[(int)Dispcount.FilePath1].Text.Length != 0)
                     work.ExcelSavePath = m_dispControl[(int)Dispcount.FilePath1].Text;
@@ -940,5 +978,26 @@
 
         #endregion
 
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                for (int i = 0; i < m_dispControl.Length; i++)
+                {
+                    m_dispControl[i].Enabled = false;
+                }
+                btnDataEntry.Visible = false;
+                btnFilePath.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/System/FrmSystem.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/System/FrmSystem.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/System/FrmSystem.designer.cs	(revision 51)
@@ -35,8 +35,6 @@
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
             this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
-            this.txtInput16 = new System.Windows.Forms.TextBox();
-            this.txtInput17 = new System.Windows.Forms.TextBox();
             this.groupBoxEx5 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
             this.tableLayoutPanel5 = new System.Windows.Forms.TableLayoutPanel();
             this.txtInput18 = new System.Windows.Forms.TextBox();
@@ -45,8 +43,10 @@
             this.groupBoxEx4 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
             this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel();
             this.label22 = new System.Windows.Forms.Label();
+            this.txtInput16 = new System.Windows.Forms.TextBox();
             this.label24 = new System.Windows.Forms.Label();
             this.label23 = new System.Windows.Forms.Label();
+            this.txtInput17 = new System.Windows.Forms.TextBox();
             this.label25 = new System.Windows.Forms.Label();
             this.label7 = new System.Windows.Forms.Label();
             this.txtInput21 = new System.Windows.Forms.TextBox();
@@ -63,9 +63,12 @@
             this.btnFilePath = new System.Windows.Forms.Button();
             this.groupBoxEx2 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
             this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
+            this.label13 = new System.Windows.Forms.Label();
             this.label15 = new System.Windows.Forms.Label();
             this.txtInput13 = new System.Windows.Forms.TextBox();
             this.label17 = new System.Windows.Forms.Label();
+            this.txtCoopRate = new System.Windows.Forms.TextBox();
+            this.label14 = new System.Windows.Forms.Label();
             this.groupBoxEx1 = new ProcessManagement.Forms.CustomControls.GroupBoxEx();
             this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
             this.label10 = new System.Windows.Forms.Label();
@@ -145,34 +148,6 @@
             this.label1.Text = "会　社　情　報　登　録　画　面";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // txtInput16
-            // 
-            this.txtInput16.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.txtInput16.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.txtInput16.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtInput16.Location = new System.Drawing.Point(133, 8);
-            this.txtInput16.MaxLength = 5;
-            this.txtInput16.Name = "txtInput16";
-            this.txtInput16.Size = new System.Drawing.Size(50, 23);
-            this.txtInput16.TabIndex = 10;
-            this.txtInput16.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
-            this.toolTip1.SetToolTip(this.txtInput16, "１期から入力してください。。");
-            this.txtInput16.TextChanged += new System.EventHandler(this.valueChange);
-            // 
-            // txtInput17
-            // 
-            this.txtInput17.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.txtInput17.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.txtInput17.ImeMode = System.Windows.Forms.ImeMode.Disable;
-            this.txtInput17.Location = new System.Drawing.Point(373, 8);
-            this.txtInput17.MaxLength = 5;
-            this.txtInput17.Name = "txtInput17";
-            this.txtInput17.Size = new System.Drawing.Size(50, 23);
-            this.txtInput17.TabIndex = 11;
-            this.txtInput17.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
-            this.toolTip1.SetToolTip(this.txtInput17, "西暦で入力してください。");
-            this.txtInput17.TextChanged += new System.EventHandler(this.valueChange);
-            // 
             // groupBoxEx5
             // 
             this.groupBoxEx5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
@@ -291,6 +266,20 @@
             this.label22.Text = "営業期数";
             this.label22.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // txtInput16
+            // 
+            this.txtInput16.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput16.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.txtInput16.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtInput16.Location = new System.Drawing.Point(133, 8);
+            this.txtInput16.MaxLength = 5;
+            this.txtInput16.Name = "txtInput16";
+            this.txtInput16.Size = new System.Drawing.Size(50, 23);
+            this.txtInput16.TabIndex = 10;
+            this.txtInput16.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            this.toolTip1.SetToolTip(this.txtInput16, "１期から入力してください。。");
+            this.txtInput16.TextChanged += new System.EventHandler(this.valueChange);
+            // 
             // label24
             // 
             this.label24.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -319,6 +308,20 @@
             this.label23.Text = "工事年度";
             this.label23.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // txtInput17
+            // 
+            this.txtInput17.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput17.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.txtInput17.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtInput17.Location = new System.Drawing.Point(373, 8);
+            this.txtInput17.MaxLength = 5;
+            this.txtInput17.Name = "txtInput17";
+            this.txtInput17.Size = new System.Drawing.Size(50, 23);
+            this.txtInput17.TabIndex = 11;
+            this.txtInput17.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            this.toolTip1.SetToolTip(this.txtInput17, "西暦で入力してください。");
+            this.txtInput17.TextChanged += new System.EventHandler(this.valueChange);
+            // 
             // label25
             // 
             this.label25.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -518,7 +521,7 @@
             this.groupBoxEx2.Size = new System.Drawing.Size(500, 123);
             this.groupBoxEx2.TabIndex = 2;
             this.groupBoxEx2.TabStop = false;
-            this.groupBoxEx2.Text = "税率";
+            this.groupBoxEx2.Text = "税率・協力金";
             // 
             // tableLayoutPanel2
             // 
@@ -529,9 +532,12 @@
             this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 28.28F));
             this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 13.015F));
             this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 8.705F));
+            this.tableLayoutPanel2.Controls.Add(this.label13, 0, 1);
             this.tableLayoutPanel2.Controls.Add(this.label15, 0, 0);
             this.tableLayoutPanel2.Controls.Add(this.txtInput13, 1, 0);
             this.tableLayoutPanel2.Controls.Add(this.label17, 2, 0);
+            this.tableLayoutPanel2.Controls.Add(this.txtCoopRate, 1, 1);
+            this.tableLayoutPanel2.Controls.Add(this.label14, 2, 1);
             this.tableLayoutPanel2.Location = new System.Drawing.Point(10, 25);
             this.tableLayoutPanel2.Name = "tableLayoutPanel2";
             this.tableLayoutPanel2.RowCount = 2;
@@ -540,6 +546,20 @@
             this.tableLayoutPanel2.Size = new System.Drawing.Size(480, 80);
             this.tableLayoutPanel2.TabIndex = 14;
             // 
+            // label13
+            // 
+            this.label13.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label13.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label13.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label13.ForeColor = System.Drawing.Color.Black;
+            this.label13.Location = new System.Drawing.Point(3, 47);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(124, 25);
+            this.label13.TabIndex = 38;
+            this.label13.Text = "協力金";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // label15
             // 
             this.label15.Anchor = System.Windows.Forms.AnchorStyles.Left;
@@ -581,6 +601,33 @@
             this.label17.Text = "％";
             this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // txtCoopRate
+            // 
+            this.txtCoopRate.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtCoopRate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.txtCoopRate.ForeColor = System.Drawing.SystemColors.WindowText;
+            this.txtCoopRate.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.txtCoopRate.Location = new System.Drawing.Point(138, 48);
+            this.txtCoopRate.MaxLength = 5;
+            this.txtCoopRate.Name = "txtCoopRate";
+            this.txtCoopRate.Size = new System.Drawing.Size(50, 23);
+            this.txtCoopRate.TabIndex = 39;
+            this.txtCoopRate.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
+            // 
+            // label14
+            // 
+            this.label14.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.label14.AutoSize = true;
+            this.label14.BackColor = System.Drawing.Color.Transparent;
+            this.label14.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label14.ForeColor = System.Drawing.Color.Black;
+            this.label14.Location = new System.Drawing.Point(200, 52);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(25, 16);
+            this.label14.TabIndex = 40;
+            this.label14.Text = "％";
+            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
             // groupBoxEx1
             // 
             this.groupBoxEx1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
@@ -1050,5 +1097,8 @@
         private System.Windows.Forms.Label label12;
         private System.Windows.Forms.RadioButton radioButton2;
         private System.Windows.Forms.RadioButton radioButton1;
+        private System.Windows.Forms.Label label13;
+        private System.Windows.Forms.TextBox txtCoopRate;
+        private System.Windows.Forms.Label label14;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.cs	(revision 51)
@@ -44,11 +44,6 @@
         private const int s_SendMessageLength = 100;
 
         /// <summary>
-        /// 最大登録件数
-        /// </summary>
-        private const int s_MaxWorkCode = 4;
-
-        /// <summary>
         /// 表示順番
         /// </summary>
         private enum DispColumn
@@ -65,7 +60,7 @@
             SendMessage,
         }
 
-        private enum DispControl
+        private enum DispCtrl
         {
             StatusName = 0,
             TargetItem,
@@ -108,14 +103,33 @@
         /// <summary>
         /// 表示コントロール保持配列
         /// </summary>
-        private Control[] m_dispControl = new Control[14];
+        private Control[] m_dispControl;
         /// <summary>
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
+
+        /// <summary>
+        /// 初期カラムサイズ保存
+        /// </summary>
+        private int[] m_InitColumnSize;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -181,11 +195,14 @@
         private void FrmTerm_Load(object sender, EventArgs e)
         {
             // フォームサイズ固定
-            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+            //this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
 
             // コントロールオブジェクト取得
             SetDisplayObject();
 
+            // グリッド情報取得
+            SetInitColumnsize();
+
             // クリア
             ClearDisplay();
 
@@ -200,11 +217,45 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フラグ初期化
             m_bChengeAns = false;
         }
         #endregion
 
+        #region グリッドの初期カラム幅取得
+        /// <summary>
+        /// グリッドの初期カラム幅取得
+        /// </summary>
+        private void SetInitColumnsize()
+        {
+            try
+            {
+                int columnCnt = Enum.GetNames(typeof(DispColumn)).Length;
+                m_InitColumnSize = new int[columnCnt];
+
+                for (int i = 0; i < columnCnt; i++)
+                {
+                    // カラム幅退避
+                    m_InitColumnSize[i] = dgvWorkList.Columns[i].Width;
+                    // カラム幅加算
+                    if (dgvWorkList.Columns[i].Visible) m_GridWidthSize += dgvWorkList.Columns[i].Width;
+                }
+                // スクロール幅引く
+                if (m_GridWidthSize > 0) m_GridWidthSize += 20;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region Entryキーでの移動処理
         /// <summary>
         /// Entryキーでの移動処理
@@ -224,7 +275,7 @@
                 if (cControl != null)
                 {
                     // 最後の入力フィールドならば登録ボタンへ
-                    if (cControl.Name == m_dispControl[(int)DispControl.SendMessage].Name)
+                    if (cControl.Name == m_dispControl[(int)DispCtrl.SendMessage].Name)
                     {
                         btnDataEntry.Focus();
                         return;
@@ -273,6 +324,8 @@
                 // データ登録
                 if (!TermMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("期限登録データ");
+
                 // 変更フラグクリア
                 m_bChengeAns = false;
 
@@ -325,6 +378,8 @@
                     return;
                 }
 
+                CommonMotions.RemoveEndMessage("期限登録データ");
+
                 // クリア
                 ClearDisplay();
 
@@ -483,9 +538,19 @@
             DispMentenanceData();
 
             // モード表示
-            m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;
+            if (m_EditLock)
+                m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringRef;
+            else
+                m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringEdit;
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+            
             // フォーカスセット
-            m_dispControl[(int)DispControl.StatusName].Focus();
+            m_dispControl[(int)DispCtrl.StatusName].Focus();
 
         }
         #endregion
@@ -533,12 +598,12 @@
                 ControlLock();
 
                 // モード表示
-                m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringNew;
+                m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringNew;
 
-                m_dispControl[(int)DispControl.ErrorColor].Text = "メッセージ色";
+                m_dispControl[(int)DispCtrl.ErrorColor].Text = "メッセージ色";
 
                 // フォーカスセット
-                m_dispControl[(int)DispControl.StatusName].Focus();
+                m_dispControl[(int)DispCtrl.StatusName].Focus();
 
             }
             catch (System.Exception ex)
@@ -560,22 +625,22 @@
 
             RadioButton wrkRdb = (RadioButton)sender;
 
-            if (wrkRdb.Name.Equals(m_dispControl[(int)DispControl.Timing1].Name))
+            if (wrkRdb.Name.Equals(m_dispControl[(int)DispCtrl.Timing1].Name))
             {   // 前日以前の場合
-                m_dispControl[(int)DispControl.TermDays].Enabled = true;
+                m_dispControl[(int)DispCtrl.TermDays].Enabled = true;
             }
-            else if (wrkRdb.Name.Equals(m_dispControl[(int)DispControl.Timing2].Name))
+            else if (wrkRdb.Name.Equals(m_dispControl[(int)DispCtrl.Timing2].Name))
             {   // 当日の場合
-                m_dispControl[(int)DispControl.TermDays].Text = "0";
-                m_dispControl[(int)DispControl.TermDays].Enabled = false;
+                m_dispControl[(int)DispCtrl.TermDays].Text = "0";
+                m_dispControl[(int)DispCtrl.TermDays].Enabled = false;
             }
-            else if (wrkRdb.Name.Equals(m_dispControl[(int)DispControl.Timing3].Name))
+            else if (wrkRdb.Name.Equals(m_dispControl[(int)DispCtrl.Timing3].Name))
             {   // 後日以降の場合
-                m_dispControl[(int)DispControl.TermDays].Enabled = true;
+                m_dispControl[(int)DispCtrl.TermDays].Enabled = true;
             }
-            else if (wrkRdb.Name.Equals(m_dispControl[(int)DispControl.Timing4].Name))
+            else if (wrkRdb.Name.Equals(m_dispControl[(int)DispCtrl.Timing4].Name))
             {   // 後日以降継続の場合
-                m_dispControl[(int)DispControl.TermDays].Enabled = true;
+                m_dispControl[(int)DispCtrl.TermDays].Enabled = true;
             }
 
             valueChange(sender, e);
@@ -614,12 +679,12 @@
                     if (ClickButton == btnBackColor)
                     {
                         //選択された色の取得
-                        m_dispControl[(int)DispControl.ErrorColor].BackColor = cd.Color;
+                        m_dispControl[(int)DispCtrl.ErrorColor].BackColor = cd.Color;
                     }
                     else if (ClickButton == btnForeColor)
                     {
                         //選択された色の取得
-                        m_dispControl[(int)DispControl.ErrorColor].ForeColor = cd.Color;
+                        m_dispControl[(int)DispCtrl.ErrorColor].ForeColor = cd.Color;
                     }
                 }
             }
@@ -643,9 +708,9 @@
         private void txtInput01_Validated(object sender, EventArgs e)
         {
             CommonMotions.chgBackColor(txtInput01, true);
-            if (CommonMotions.chkNumeric(m_dispControl[(int)DispControl.TermDays].Text, true))
+            if (CommonMotions.chkNumeric(m_dispControl[(int)DispCtrl.TermDays].Text, true))
             {
-                if (CommonMotions.cnvInt(m_dispControl[(int)DispControl.TermDays].Text) > 999)
+                if (CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.TermDays].Text) > 999)
                 {
                     CommonMotions.chgBackColor(txtInput01, false);
                     MessageBox.Show("経過日は９９９以下の入力です、確認してください。", "データ確認"
@@ -721,8 +786,9 @@
             foreach (Control wrk in m_dispControl)
             {
                 if (CommonMotions.chkObjectIsNull(wrk)) continue;
-                if (!wrk.GetType().Equals(typeof(Label)))
-                    wrk.Enabled = bctrl;
+                if (wrk.GetType().Equals(typeof(Label))) continue;
+                    
+                wrk.Enabled = bctrl;
             }
         }
         #endregion
@@ -733,20 +799,23 @@
         /// </summary>
         private void SetDisplayObject()
         {
-            m_dispControl[(int)DispControl.StatusName] = cmbStatus;
-            m_dispControl[(int)DispControl.TargetItem] = cmbItemNo;
-            m_dispControl[(int)DispControl.Timing1] = rdB101;
-            m_dispControl[(int)DispControl.Timing2] = rdB102;
-            m_dispControl[(int)DispControl.Timing3] = rdB103;
-            m_dispControl[(int)DispControl.Timing4] = rdB104;
-            m_dispControl[(int)DispControl.TermDays] = txtInput01;
-            m_dispControl[(int)DispControl.SendTitle] = txtInput03;
-            m_dispControl[(int)DispControl.SendMessage] = txtInput02;
-            m_dispControl[(int)DispControl.ErrorColor] = lblErrorColor;
-            m_dispControl[(int)DispControl.EditMode] = lblEditMode;
-            m_dispControl[(int)DispControl.Key1] = lblKey1;
-            m_dispControl[(int)DispControl.Key2] = lblKey2;
-            m_dispControl[(int)DispControl.Key3] = lblKey3;
+            int DspCtrlCnt = Enum.GetNames(typeof(DispCtrl)).Length;
+            m_dispControl = new Control[DspCtrlCnt];
+
+            m_dispControl[(int)DispCtrl.StatusName] = cmbStatus;
+            m_dispControl[(int)DispCtrl.TargetItem] = cmbItemNo;
+            m_dispControl[(int)DispCtrl.Timing1] = rdB101;
+            m_dispControl[(int)DispCtrl.Timing2] = rdB102;
+            m_dispControl[(int)DispCtrl.Timing3] = rdB103;
+            m_dispControl[(int)DispCtrl.Timing4] = rdB104;
+            m_dispControl[(int)DispCtrl.TermDays] = txtInput01;
+            m_dispControl[(int)DispCtrl.SendTitle] = txtInput03;
+            m_dispControl[(int)DispCtrl.SendMessage] = txtInput02;
+            m_dispControl[(int)DispCtrl.ErrorColor] = lblErrorColor;
+            m_dispControl[(int)DispCtrl.EditMode] = lblEditMode;
+            m_dispControl[(int)DispCtrl.Key1] = lblKey1;
+            m_dispControl[(int)DispCtrl.Key2] = lblKey2;
+            m_dispControl[(int)DispCtrl.Key3] = lblKey3;
         }
         #endregion
         
@@ -765,8 +834,8 @@
                 wrk.Text = "";
             }
             rdB101.Checked = true;
-            m_dispControl[(int)DispControl.ErrorColor].BackColor = Color.White;
-            m_dispControl[(int)DispControl.ErrorColor].ForeColor = Color.Black;
+            m_dispControl[(int)DispCtrl.ErrorColor].BackColor = Color.White;
+            m_dispControl[(int)DispCtrl.ErrorColor].ForeColor = Color.Black;
 
             cmbStatus.SelectedIndex = -1;
             cmbItemNo.SelectedIndex = -1;
@@ -787,35 +856,35 @@
             try
             {
                 // 工事状況
-                if (m_dispControl[(int)DispControl.StatusName].Text != null)
+                if (m_dispControl[(int)DispCtrl.StatusName].Text != null)
                     // レングスチェック
-                    bAns = CommonMotions.DispFieldIndispensable(m_dispControl[(int)DispControl.StatusName]);
+                    bAns = CommonMotions.DispFieldIndispensable(m_dispControl[(int)DispCtrl.StatusName]);
                 bRet &= bAns;
 
                 // 対象項目
-                if (m_dispControl[(int)DispControl.TargetItem].Text != null)
+                if (m_dispControl[(int)DispCtrl.TargetItem].Text != null)
                     // レングスチェック
-                    bAns = CommonMotions.DispFieldIndispensable(m_dispControl[(int)DispControl.TargetItem]);
+                    bAns = CommonMotions.DispFieldIndispensable(m_dispControl[(int)DispCtrl.TargetItem]);
                 bRet &= bAns;
                 
                 // 経過日数
-                if (m_dispControl[(int)DispControl.TermDays].Text != null)
+                if (m_dispControl[(int)DispCtrl.TermDays].Text != null)
                     // Numericチェック
-                    bAns = CommonMotions.chkNumeric(m_dispControl[(int)DispControl.TermDays].Text, true);
+                    bAns = CommonMotions.chkNumeric(m_dispControl[(int)DispCtrl.TermDays].Text, true);
                 // 背景色変更
-                CommonMotions.chgBackColor(m_dispControl[(int)DispControl.TermDays], bAns);
+                CommonMotions.chgBackColor(m_dispControl[(int)DispCtrl.TermDays], bAns);
                 bRet &= bAns;
 
                 // タイトル
-                if (m_dispControl[(int)DispControl.SendTitle].Text != null)
+                if (m_dispControl[(int)DispCtrl.SendTitle].Text != null)
                     // レングスチェック
-                    bAns = CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.SendTitle], s_SendMessageLength, true);
+                    bAns = CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.SendTitle], s_SendMessageLength, true);
                 bRet &= bAns;
 
                 // メッセージ
-                if (m_dispControl[(int)DispControl.SendMessage].Text != null)
+                if (m_dispControl[(int)DispCtrl.SendMessage].Text != null)
                     // レングスチェック
-                    bAns = CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.SendMessage], s_SendMessageLength, true);
+                    bAns = CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.SendMessage], s_SendMessageLength, true);
                 bRet &= bAns;
 
                 if (!bRet)
@@ -928,15 +997,15 @@
                 else if (rdB103.Checked) tmData.CheckSchdule = (int)CommonDefine.TermDateCheckTiming.CheckSchdule2;
                 else if (rdB104.Checked) tmData.CheckSchdule = (int)CommonDefine.TermDateCheckTiming.CheckSchdule3;
 
-                tmData.TermDays = CommonMotions.cnvInt(m_dispControl[(int)DispControl.TermDays].Text.ToString());
-                tmData.SendTitle = m_dispControl[(int)DispControl.SendTitle].Text.ToString();
-                tmData.SendMessage = m_dispControl[(int)DispControl.SendMessage].Text.ToString();
-                tmData.BackColor = String.Format("0x{0:X2}{1:X2}{2:X2}", m_dispControl[(int)DispControl.ErrorColor].BackColor.R
-                                                                    , m_dispControl[(int)DispControl.ErrorColor].BackColor.G
-                                                                    , m_dispControl[(int)DispControl.ErrorColor].BackColor.B);
-                tmData.ForeColor = String.Format("0x{0:X2}{1:X2}{2:X2}", m_dispControl[(int)DispControl.ErrorColor].ForeColor.R
-                                                                    , m_dispControl[(int)DispControl.ErrorColor].ForeColor.G
-                                                                    , m_dispControl[(int)DispControl.ErrorColor].ForeColor.B);
+                tmData.TermDays = CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.TermDays].Text.ToString());
+                tmData.SendTitle = m_dispControl[(int)DispCtrl.SendTitle].Text.ToString();
+                tmData.SendMessage = m_dispControl[(int)DispCtrl.SendMessage].Text.ToString();
+                tmData.BackColor = String.Format("0x{0:X2}{1:X2}{2:X2}", m_dispControl[(int)DispCtrl.ErrorColor].BackColor.R
+                                                                    , m_dispControl[(int)DispCtrl.ErrorColor].BackColor.G
+                                                                    , m_dispControl[(int)DispCtrl.ErrorColor].BackColor.B);
+                tmData.ForeColor = String.Format("0x{0:X2}{1:X2}{2:X2}", m_dispControl[(int)DispCtrl.ErrorColor].ForeColor.R
+                                                                    , m_dispControl[(int)DispCtrl.ErrorColor].ForeColor.G
+                                                                    , m_dispControl[(int)DispCtrl.ErrorColor].ForeColor.B);
                 
                 // 表示順はセットしない
                 tmData.DisplayOrder = 0;
@@ -1214,19 +1283,19 @@
                     else if (wrklist[0].CheckSchdule == 2) rdB103.Checked = true;
                     else if (wrklist[0].CheckSchdule == 3) rdB104.Checked = true;
 
-                    m_dispControl[(int)DispControl.TermDays].Text = wrklist[0].TermDays.ToString();
-                    m_dispControl[(int)DispControl.SendTitle].Text = wrklist[0].SendTitle;
-                    m_dispControl[(int)DispControl.SendMessage].Text = wrklist[0].SendMessage;
+                    m_dispControl[(int)DispCtrl.TermDays].Text = wrklist[0].TermDays.ToString();
+                    m_dispControl[(int)DispCtrl.SendTitle].Text = wrklist[0].SendTitle;
+                    m_dispControl[(int)DispCtrl.SendMessage].Text = wrklist[0].SendMessage;
 
                     // 背景色設定
-                    m_dispControl[(int)DispControl.ErrorColor].BackColor = CommonMotions.getBackForeColor(wrklist[0].BackColor, CommonDefine.PalceOfColor.BackColor);
+                    m_dispControl[(int)DispCtrl.ErrorColor].BackColor = CommonMotions.getBackForeColor(wrklist[0].BackColor, CommonDefine.PalceOfColor.BackColor);
 
                     // 文字色設定
-                    m_dispControl[(int)DispControl.ErrorColor].ForeColor = CommonMotions.getBackForeColor(wrklist[0].ForeColor, CommonDefine.PalceOfColor.ForeColor);
+                    m_dispControl[(int)DispCtrl.ErrorColor].ForeColor = CommonMotions.getBackForeColor(wrklist[0].ForeColor, CommonDefine.PalceOfColor.ForeColor);
 
-                    m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;       // ”修正”
+                    m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringEdit;       // ”修正”
 
-                    m_dispControl[(int)DispControl.ErrorColor].Text = "メッセージ色";
+                    m_dispControl[(int)DispCtrl.ErrorColor].Text = "メッセージ色";
                 }
 
                 m_bChengeAns = false;
@@ -1243,5 +1312,110 @@
         }
 
         #endregion
+
+        #region フォームサイズ変更
+        /// <summary>
+        /// フォームサイズ変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmTerm_SizeChanged(object sender, EventArgs e)
+        {
+            if (this.WindowState == FormWindowState.Minimized)
+            {
+                // 最小化
+            }
+            else if (this.WindowState == FormWindowState.Maximized)
+            {
+                // 最大化
+                CellSizeChangesWhenChangingScreenSize(false);
+            }
+            else if (this.WindowState == FormWindowState.Normal)
+            {
+                // 標準化
+                CellSizeChangesWhenChangingScreenSize(true);
+            }
+        }
+        #endregion
+
+        int m_GridWidthSize = 0;
+        #region 画面サイズ変更時のセルサイズ変更
+        /// <summary>
+        /// 画面サイズ変更時のセルサイズ変更
+        /// </summary>
+        private void CellSizeChangesWhenChangingScreenSize(bool bNormal)
+        {
+            try
+            {
+                DataGridView dgv = dgvWorkList;
+                
+                // サイズに変化が無ければ処理しない
+                if (m_GridWidthSize == dgv.Width) return;
+
+                if (bNormal)
+                {
+                    // ----- 最小化
+                    for (int i = 0; i < m_InitColumnSize.Length; i++)
+                    {
+                        dgvWorkList.Columns[i].Width = m_InitColumnSize[i];
+                    }
+                }
+                else
+                {
+                    // ----- 最大化
+                    int idifference = (dgv.Width - m_GridWidthSize) / 5;
+                    for (int i = 0; i < m_InitColumnSize.Length; i++)
+                    {
+                        switch (i)
+                        {
+                            case (int)DispColumn.StatusName:
+                            case (int)DispColumn.TargetItem:
+                                dgvWorkList.Columns[i].Width += (idifference / 2);
+                                break;
+                            case (int)DispColumn.SendTitle:
+                                dgvWorkList.Columns[i].Width += idifference;
+                                break;
+                            case (int)DispColumn.SendMessage:
+                                dgvWorkList.Columns[i].Width += (idifference * 3);
+                                break;
+                            default:
+                                break;
+                        }
+                    }
+                }
+
+                // サイズセーブ
+                m_GridWidthSize = dgv.Width;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+                btnBackColor.Visible = false;
+                btnForeColor.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Term/FrmTerm.designer.cs	(revision 51)
@@ -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 dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle31 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle32 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle34 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle35 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle36 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnDataEntry = new System.Windows.Forms.Button();
             this.btnEnd = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
@@ -90,6 +90,7 @@
             // 
             // btnDataEntry
             // 
+            this.btnDataEntry.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             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;
@@ -103,6 +104,7 @@
             // 
             // btnEnd
             // 
+            this.btnEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnEnd.BackColor = System.Drawing.Color.Blue;
             this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnEnd.ForeColor = System.Drawing.Color.White;
@@ -116,6 +118,7 @@
             // 
             // label1
             // 
+            this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top;
             this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
             this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
@@ -129,6 +132,7 @@
             // 
             // btnDataDelete
             // 
+            this.btnDataDelete.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             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;
@@ -136,12 +140,13 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 8;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
             // btnDataSelect
             // 
+            this.btnDataSelect.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             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;
@@ -169,6 +174,8 @@
             // 
             // tableLayoutPanel1
             // 
+            this.tableLayoutPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
             this.tableLayoutPanel1.AutoSize = true;
             this.tableLayoutPanel1.ColumnCount = 5;
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 150F));
@@ -379,13 +386,13 @@
             // 
             // txtInput02
             // 
-            this.txtInput02.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
             this.tableLayoutPanel1.SetColumnSpan(this.txtInput02, 4);
             this.txtInput02.ForeColor = System.Drawing.Color.Black;
             this.txtInput02.ImeMode = System.Windows.Forms.ImeMode.On;
             this.txtInput02.Location = new System.Drawing.Point(153, 153);
             this.txtInput02.Name = "txtInput02";
-            this.txtInput02.Size = new System.Drawing.Size(1040, 23);
+            this.txtInput02.Size = new System.Drawing.Size(1044, 23);
             this.txtInput02.TabIndex = 4;
             this.txtInput02.TextChanged += new System.EventHandler(this.valueChange);
             // 
@@ -448,13 +455,13 @@
             // 
             // txtInput03
             // 
-            this.txtInput03.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.txtInput03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
             this.tableLayoutPanel1.SetColumnSpan(this.txtInput03, 4);
             this.txtInput03.ForeColor = System.Drawing.Color.Black;
             this.txtInput03.ImeMode = System.Windows.Forms.ImeMode.On;
             this.txtInput03.Location = new System.Drawing.Point(153, 123);
             this.txtInput03.Name = "txtInput03";
-            this.txtInput03.Size = new System.Drawing.Size(1040, 23);
+            this.txtInput03.Size = new System.Drawing.Size(1044, 23);
             this.txtInput03.TabIndex = 3;
             this.txtInput03.TextChanged += new System.EventHandler(this.valueChange);
             // 
@@ -475,6 +482,7 @@
             // 
             // btnDataLineEntry
             // 
+            this.btnDataLineEntry.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.btnDataLineEntry.BackColor = System.Drawing.Color.PaleGreen;
             this.btnDataLineEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.btnDataLineEntry.ForeColor = System.Drawing.Color.Black;
@@ -489,6 +497,7 @@
             // 
             // lblEditMode
             // 
+            this.lblEditMode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.lblEditMode.BackColor = System.Drawing.Color.White;
             this.lblEditMode.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblEditMode.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
@@ -501,6 +510,7 @@
             // 
             // 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.ForeColor = System.Drawing.Color.Black;
             this.btnDispDown.Location = new System.Drawing.Point(1170, 223);
@@ -514,6 +524,7 @@
             // 
             // 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.ForeColor = System.Drawing.Color.Black;
             this.btnDispUp.Location = new System.Drawing.Point(1170, 159);
@@ -527,7 +538,7 @@
             // 
             // lblKey1
             // 
-            this.lblKey1.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblKey1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.lblKey1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
             this.lblKey1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblKey1.ForeColor = System.Drawing.Color.Black;
@@ -540,7 +551,7 @@
             // 
             // lblKey2
             // 
-            this.lblKey2.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblKey2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.lblKey2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
             this.lblKey2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblKey2.ForeColor = System.Drawing.Color.Black;
@@ -553,7 +564,7 @@
             // 
             // lblKey3
             // 
-            this.lblKey3.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.lblKey3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.lblKey3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
             this.lblKey3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.lblKey3.ForeColor = System.Drawing.Color.Black;
@@ -570,16 +581,19 @@
             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) 
+            | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvWorkList.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvWorkList.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.dgvWorkList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle28.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle28.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle28.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle28.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle28.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle28.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvWorkList.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle28;
             this.dgvWorkList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvWorkList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Column0,
@@ -608,10 +622,10 @@
             // Column0
             // 
             this.Column0.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)));
-            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
-            this.Column0.DefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle29.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle29.ForeColor = System.Drawing.Color.Black;
+            this.Column0.DefaultCellStyle = dataGridViewCellStyle29;
             this.Column0.Frozen = true;
             this.Column0.HeaderText = "№";
             this.Column0.Name = "Column0";
@@ -630,10 +644,10 @@
             // 
             // Column2
             // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle3.BackColor = System.Drawing.Color.White;
-            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
-            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle30.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle30.ForeColor = System.Drawing.Color.Black;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle30;
             this.Column2.Frozen = true;
             this.Column2.HeaderText = "工事状況";
             this.Column2.Name = "Column2";
@@ -652,10 +666,10 @@
             // 
             // Column3
             // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle4.BackColor = System.Drawing.Color.White;
-            dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
-            this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle31.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle31.ForeColor = System.Drawing.Color.Black;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle31;
             this.Column3.Frozen = true;
             this.Column3.HeaderText = "対象項目";
             this.Column3.Name = "Column3";
@@ -665,10 +679,10 @@
             // 
             // Column8
             // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle5.BackColor = System.Drawing.Color.White;
-            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.Black;
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle32.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle32.ForeColor = System.Drawing.Color.Black;
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle32;
             this.Column8.Frozen = true;
             this.Column8.HeaderText = "タイミング";
             this.Column8.Name = "Column8";
@@ -679,21 +693,22 @@
             // 
             // Column1
             // 
-            dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle33.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle33;
             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
             // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle7.BackColor = System.Drawing.Color.White;
-            dataGridViewCellStyle7.ForeColor = System.Drawing.Color.Black;
-            this.Column9.DefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle34.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle34.BackColor = System.Drawing.Color.White;
+            dataGridViewCellStyle34.ForeColor = System.Drawing.Color.Black;
+            this.Column9.DefaultCellStyle = dataGridViewCellStyle34;
             this.Column9.Frozen = true;
             this.Column9.HeaderText = "日";
             this.Column9.Name = "Column9";
@@ -704,8 +719,8 @@
             // 
             // Column4
             // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column4.DefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle35;
             this.Column4.HeaderText = "タイトル";
             this.Column4.Name = "Column4";
             this.Column4.ReadOnly = true;
@@ -715,11 +730,12 @@
             // 
             // Column5
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            this.Column5.DefaultCellStyle = dataGridViewCellStyle9;
+            dataGridViewCellStyle36.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle36;
             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;
             // 
@@ -749,7 +765,6 @@
             this.ForeColor = System.Drawing.Color.White;
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
             this.KeyPreview = true;
-            this.MaximizeBox = false;
             this.MinimizeBox = false;
             this.Name = "FrmTerm";
             this.ShowIcon = false;
@@ -756,6 +771,7 @@
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmTerm_FormClosing);
             this.Load += new System.EventHandler(this.FrmTerm_Load);
+            this.SizeChanged += new System.EventHandler(this.FrmTerm_SizeChanged);
             this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FrmTerm_KeyDown);
             this.tableLayoutPanel1.ResumeLayout(false);
             this.tableLayoutPanel1.PerformLayout();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Unit/FrmUnitMaster.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Unit/FrmUnitMaster.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Unit/FrmUnitMaster.cs	(revision 51)
@@ -75,29 +75,13 @@
         /// 終了ボタン押下フラグ
         /// </summary>
         private bool m_EndButton = false;
-        #endregion
 
-        #region コンストラクタ
-        public FrmUnitMaster()
-        {
-            InitializeComponent();
-        }
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
-        #region デストラクタ
-        ~FrmUnitMaster()
-        {
-            try
-            {
-                GC.Collect();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-        }
-        #endregion
 
-
         #region プロパティ
         /// <summary>
         /// ダイアログ使用時フラグ
@@ -120,10 +104,38 @@
         {
             get { return m_UnitKey; }
         }
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
+        #region コンストラクタ
+        public FrmUnitMaster()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmUnitMaster()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
 
-        #region イベントメソッド
+        #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
         /// </summary>
@@ -144,6 +156,9 @@
             // 前プロセスに戻る
             ClsExcute.BackProcess();
         }
+        #endregion
+
+        #region 終了ボタン押下
         /// <summary>
         /// 終了ボタン押下
         /// </summary>
@@ -153,7 +168,9 @@
         {
             this.Close();
         }
+        #endregion
 
+        #region フォームロード
         /// <summary>
         /// フォームロード
         /// </summary>
@@ -175,8 +192,16 @@
 
             // ボタン表示の制御
             ButtonVisble(this);
+
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
         }
+        #endregion
 
+        #region 行データクリア
         /// <summary>
         /// 行データクリア
         /// </summary>
@@ -188,7 +213,9 @@
             dgvMaster[(int)DispColumn.DisplayOrder, iIndex].Value = "";
             dgvMaster[(int)DispColumn.NameString, iIndex].Value = "";
         }
+        #endregion
 
+        #region グリッド採番処理
         /// <summary>
         /// グリッド採番処理
         /// </summary>
@@ -204,6 +231,9 @@
                     r.Cells[(int)DispColumn.DisplayOrder].Value = "0";
             }
         }
+        #endregion
+
+        #region 行追加ボタン押下
         /// <summary>
         /// 行追加ボタン押下
         /// </summary>
@@ -282,7 +312,9 @@
             //dgvMaster.FirstDisplayedScrollingRowIndex = iIndex;
             //dgvMaster.CurrentCell = dgvMaster[0, iIndex];
         }
+        #endregion
 
+        #region フィールド値変更フラグ
         /// <summary>
         /// フィールド値変更フラグ
         /// </summary>
@@ -292,7 +324,9 @@
         {
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region セル値変化
         /// <summary>
         /// セル値変化
         /// </summary>
@@ -311,7 +345,10 @@
             // 変更フラグON
             m_bChengeAns = true;
         }
-                /// <summary>
+        #endregion
+
+        #region 行削除ボタン押下
+        /// <summary>
         /// 行削除ボタン押下
         /// </summary>
         /// <param name="sender"></param>
@@ -343,6 +380,8 @@
 
                 uDB.commit();
 
+                CommonMotions.RemoveEndMessage("単位登録データ行");
+
                 // データ表示
                 if (!DispGridData()) return;
 
@@ -362,7 +401,9 @@
                 uDB = null;
             }
         }
+        #endregion
 
+        #region 登録ボタン押下
         /// <summary>
         /// 登録ボタン押下
         /// </summary>
@@ -382,7 +423,10 @@
                 int iIndex = dgvMaster.FirstDisplayedScrollingRowIndex;
 
                 // データ登録
-                UnitMasterDataEntry();
+                if (UnitMasterDataEntry())
+                {
+                    CommonMotions.EntryEndMessage("単位登録データ");
+                }
 
                 // データ表示
                 if (!DispGridData()) return;
@@ -398,7 +442,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region IMEのコントロール
         /// <summary>
         /// IMEのコントロール
         /// </summary>
@@ -427,7 +473,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region アップキー押下
         /// <summary>
         /// アップキー押下
         /// </summary>
@@ -454,6 +502,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region ダウンキー押下処理
         /// <summary>
         /// ダウンキー押下処理
         /// </summary>
@@ -481,7 +532,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region セルクリック
         /// <summary>
         /// セルクリック
         /// </summary>
@@ -491,7 +544,9 @@
         {
             dgvMaster_CellDoubleClick(sender, e);
         }
+        #endregion
 
+        #region セルダブルクリック
         /// <summary>
         /// セルダブルクリック
         /// </summary>
@@ -508,7 +563,9 @@
             m_UnitName = CommonMotions.cnvString(((DataGridView)sender).Rows[e.RowIndex].Cells[(int)DispColumn.NameString].Value);
             btnEnd_Click(sender, (EventArgs)e);
         }
+        #endregion
 
+        #region Formキーダウン処理
         /// <summary>
         /// Formキーダウン処理
         /// </summary>
@@ -524,10 +581,9 @@
                 return;
             }
         }
-
         #endregion
 
-        #region プライベートメソッド
+        #region 初期表示処理
         /// <summary>
         /// 初期表示処理
         /// </summary>
@@ -555,7 +611,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
 
+        #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
         /// </summary>
@@ -593,12 +651,14 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
                 return false;
             }
-      }
+        }
+        #endregion
 
+        #region 単位マスタデータ登録
         /// <summary>
         /// 単位マスタデータ登録
         /// </summary>
-        private void UnitMasterDataEntry()
+        private bool UnitMasterDataEntry()
         {
             IOMUnit uDB = new IOMUnit();
             try
@@ -648,7 +708,7 @@
                     {
                         uDB.rollback();
                         MessageBox.Show("登録確認に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                        return;
+                        return false;
                     }
 
                     if (uList.Count == 0)
@@ -662,7 +722,7 @@
                         {
                             uDB.rollback();
                             MessageBox.Show("登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                     else
@@ -672,7 +732,7 @@
                         {
                             uDB.rollback();
                             MessageBox.Show("更新に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
-                            return;
+                            return false;
                         }
                     }
                 }
@@ -679,10 +739,13 @@
 
                 // 成功したらcommit
                 uDB.commit();
+
+                return true;
             }
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
             }
             finally
             {
@@ -690,7 +753,9 @@
                 uDB = null;
             }
         }
+        #endregion
 
+        #region 単位マスタ表示
         /// <summary>
         /// 単位マスタ表示
         /// </summary>
@@ -751,7 +816,9 @@
             }
             return true;
         }
+        #endregion
 
+        #region ボタンの表示・非表示制御
         /// <summary>
         /// ボタンの表示・非表示制御
         /// </summary>
@@ -769,16 +836,19 @@
 
             foreach (Control ctrl in Parent.Controls)
             {
-                if (ctrl.GetType().Equals(typeof(Button)))
-                {
-                    // 終了ボタン以外を制御する
-                    if (ctrl.Name.ToString() != btnEnd.Name.ToString()) ctrl.Visible = bAns;
-                }
+                if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                // 終了ボタン以外を制御する
+                if (ctrl.Name.Equals(btnEnd.Name)) continue;
+                    
+                ctrl.Visible = bAns;
             }
             // グリッドの読込のみ制御
             dgvMaster.ReadOnly = m_DialogFlg;
         }
+        #endregion
 
+        #region グリッド最終行での処理
         /// <summary>
         /// グリッド最終行での処理
         /// </summary>
@@ -801,5 +871,33 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                foreach (Control ctrl in this.Controls)
+                {
+                    // ボタンの表示制御
+                    if (!ctrl.GetType().Equals(typeof(Button))) continue;
+
+                    // 終了ボタン以外を制御する
+                    if (ctrl.Name.Equals(btnEnd.Name)) continue;
+
+                    ctrl.Visible = false;
+                }
+                // グリッドの読込のみ制御
+                dgvMaster.ReadOnly = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Vehicle/FrmVehicle.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Vehicle/FrmVehicle.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Vehicle/FrmVehicle.cs	(revision 51)
@@ -64,7 +64,7 @@
         /// 表示順番
         /// </summary>
         // 表示コントロール定義
-        private enum DispControl
+        private enum DispCtrl
         {
             VehicleCode = 0,
             VehicleName,
@@ -89,6 +89,8 @@
             PeriodicInspection,
             TireExchange,
             WinterTireExchange,
+            VehicleAdministrator,
+            VehicleScheduleDsp,
             EditMode,
         }
         /// <summary>
@@ -144,15 +146,29 @@
         /// <summary>
         /// 表示コントロール保持配列
         /// </summary>
-        private Control[] m_dispControl = new Control[24];
+        private Control[] m_dispControl;
 
         /// <summary>
         /// 構成コード
         /// </summary>
         private int m_VehicleCode = 0;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
         #endregion
 
         #region プロパティ
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
         #endregion
 
         #region コンストラクタ
@@ -175,7 +191,7 @@
         }
         #endregion
 
-        #region イベントメソッド
+        #region ×ボタン押下処理
         /// <summary>
         /// ×ボタン押下処理
         /// </summary>
@@ -191,6 +207,9 @@
             // 前プロセスに戻る
             ClsExcute.BackProcess();
         }
+        #endregion
+
+        #region 終了ボタンクリック
         /// <summary>
         /// 終了ボタンクリック
         /// </summary>
@@ -200,7 +219,9 @@
         {
             this.Close();
         }
+        #endregion
 
+        #region 初期フォームロード
         /// <summary>
         /// 初期フォームロード
         /// </summary>
@@ -226,10 +247,18 @@
             // フィールドロック
             ControlLock(false);
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フラグ初期化
             m_bChengeAns = false;
         }
+        #endregion
 
+        #region Entryキーでの移動処理
         /// <summary>
         /// Entryキーでの移動処理
         /// </summary>
@@ -250,6 +279,9 @@
                 e.SuppressKeyPress = true;
             }
         }
+        #endregion
+
+        #region フィールド値変更フラグ
         /// <summary>
         /// フィールド値変更フラグ
         /// </summary>
@@ -259,7 +291,9 @@
         {
             m_bChengeAns = true;
         }
+        #endregion
 
+        #region 登録ボタン押下
         /// <summary>
         /// 登録ボタン押下
         /// </summary>
@@ -278,6 +312,8 @@
                 // データ登録
                 if (!VehicleMasterDataEntry()) return;
 
+                CommonMotions.EntryEndMessage("車両登録データ");
+
                 // フィールドロック
                 ControlLock(false);
 
@@ -309,7 +345,9 @@
             {
             }
         }
+        #endregion
 
+        #region 削除ボタン押下
         /// <summary>
         /// 削除ボタン押下
         /// </summary>
@@ -333,7 +371,7 @@
                 if (MessageBox.Show("表示中のデータを削除します。", "削除確認"
                     , MessageBoxButtons.YesNo, MessageBoxIcon.Information) != DialogResult.Yes) return;
 
-                string strSQL = vDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)DispControl.VehicleCode].Text));
+                string strSQL = vDB.CreatePrimarykeyString(CommonMotions.cnvInt(m_dispControl[(int)DispCtrl.VehicleCode].Text));
 
                 List<VehicleMaster> ReadRec = new List<VehicleMaster>();
                 vDB.SelectAction(strSQL, ref ReadRec, false);
@@ -368,6 +406,8 @@
                 vDB.commit();
                 vrdDB.commit();
 
+                CommonMotions.RemoveEndMessage("車両登録データ");
+
                 // 再表示
                 DispVehicleGridData();
 
@@ -393,7 +433,9 @@
                 vrdDB.close(); vrdDB = null;
             }
         }
+        #endregion
 
+        #region 追加ボタン押下
         /// <summary>
         /// 追加ボタン押下
         /// </summary>
@@ -431,10 +473,10 @@
                 cmbVehicleScheduleDsp.SelectedIndex = 0;
 
                 // モード表示
-                m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringNew;
+                m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringNew;
 
                 // フォーカスセット
-                m_dispControl[(int)DispControl.VehicleName].Focus();
+                m_dispControl[(int)DispCtrl.VehicleName].Focus();
             }
             catch (System.Exception ex)
             {
@@ -446,7 +488,9 @@
                 ciDB = null;
             }
         }
+        #endregion
 
+        #region 行選択時処理
         /// <summary>
         /// 行選択時処理
         /// </summary>
@@ -483,10 +527,19 @@
             // 更新データ取得
             DispMentenanceData();
 
+            // 参照時はデータ変更させない
+            if (m_EditLock)
+            {
+                ExecReadOnly();
+            }
+
             // フォーカスセット
-            m_dispControl[(int)DispControl.VehicleName].Focus();
+            m_dispControl[(int)DispCtrl.VehicleName].Focus();
 
         }
+        #endregion
+
+        #region 選択ボタン押下
         /// <summary>
         /// 選択ボタン押下
         /// </summary>
@@ -497,6 +550,9 @@
             // 行選択時処理
             DataSelectRow();
         }
+        #endregion
+
+        #region グリッドクリック
         /// <summary>
         /// グリッドクリック
         /// </summary>
@@ -507,6 +563,9 @@
             // 行選択時処理
             DataSelectRow();
         }
+        #endregion
+
+        #region アップボタン
         /// <summary>
         /// アップボタン
         /// </summary>
@@ -519,6 +578,9 @@
 
             m_bChengeAns = true;
         }
+        #endregion
+
+        #region ダウンボタン
         /// <summary>
         /// ダウンボタン
         /// </summary>
@@ -531,6 +593,9 @@
 
             m_bChengeAns = true;
         }
+        #endregion
+
+        #region 年月日入力後処理
         /// <summary>
         /// 年月日入力後処理
         /// </summary>
@@ -584,6 +649,9 @@
                 if (this.ActiveControl.Equals(btnEnd)) m_bChengeAns = false;
             }
         }
+        #endregion
+
+        #region 記録グリッドセル入力後処理
         /// <summary>
         /// 記録グリッドセル入力後処理
         /// </summary>
@@ -624,6 +692,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region 記録グリッドセル入力前処理
         /// <summary>
         /// 記録グリッドセル入力前処理
         /// </summary>
@@ -655,6 +726,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region グリッドキー押下時
         /// <summary>
         /// グリッドキー押下時
         /// </summary>
@@ -672,7 +746,7 @@
         }
         #endregion
 
-        #region プライベートメソッド
+        #region 画面ロック
         /// <summary>
         /// 画面ロック
         /// </summary>
@@ -681,44 +755,59 @@
             foreach (Control wrk in m_dispControl)
             {
                 if (CommonMotions.chkObjectIsNull(wrk)) continue;
-                if (!wrk.GetType().Equals(typeof(Label)))
-                    wrk.Enabled = bctrl;
+                if (wrk.GetType().Equals(typeof(Label))) continue;
+                    
+                wrk.Enabled = bctrl;
             }
+            dgvPeriodicInspection.ReadOnly = true;
+            dgvTireExchange.ReadOnly = true;
+            dgvVehicleInspection.ReadOnly = true;
+            dgvVoluntaryInsurance.ReadOnly = true;
+            dgvWinterTireExchange.ReadOnly = true;
         }
+        #endregion
 
+        #region 表示オブジェクトの取得
         /// <summary>
         /// 表示オブジェクトの取得
         /// </summary>
         private void SetDisplayObject()
         {
-            m_dispControl[(int)DispControl.VehicleCode] = lblVehicleCode;
+            int DspCtrlCnt = Enum.GetNames(typeof(DispCtrl)).Length;
+            m_dispControl = new Control[DspCtrlCnt];
 
-            m_dispControl[(int)DispControl.VehicleName] = txtInput01;
-            m_dispControl[(int)DispControl.RegistrationNumber] = txtInput02;
-            m_dispControl[(int)DispControl.IdentificationNumber] = txtInput03;
-            m_dispControl[(int)DispControl.ModelCode] = txtInput04;
-            m_dispControl[(int)DispControl.Administrator] = cmbVehicleAdministrator;
-            m_dispControl[(int)DispControl.PurchaseDate] = txtInput05;
-            m_dispControl[(int)DispControl.PurchaseName] = txtInput06;
-            m_dispControl[(int)DispControl.PurchaseContactPersons] = txtInput07;
-            m_dispControl[(int)DispControl.PurchasePhone] = txtInput08;
-            m_dispControl[(int)DispControl.LeaseDate] = txtInput09;
-            m_dispControl[(int)DispControl.LeaseDestination] = txtInput10;
-            m_dispControl[(int)DispControl.LeaseContactPersons] = txtInput11;
-            m_dispControl[(int)DispControl.LeasePhone] = txtInput12;
-            m_dispControl[(int)DispControl.InsuranceCompany] = txtInput13;
-            m_dispControl[(int)DispControl.InsuranceContactPersons] = txtInput14;
-            m_dispControl[(int)DispControl.InsurancePhone] = txtInput15;
-            m_dispControl[(int)DispControl.Note] = txtInput16;
-            m_dispControl[(int)DispControl.VoluntaryInsurance] = dgvVoluntaryInsurance;
-            m_dispControl[(int)DispControl.PeriodicInspection] = dgvPeriodicInspection;
-            m_dispControl[(int)DispControl.PeriodicInspection] = dgvPeriodicInspection;
-            m_dispControl[(int)DispControl.TireExchange] = dgvTireExchange;
-            m_dispControl[(int)DispControl.WinterTireExchange] = dgvWinterTireExchange;
+            m_dispControl[(int)DispCtrl.VehicleCode] = lblVehicleCode;
 
-            m_dispControl[(int)DispControl.EditMode] = lblEditMode;
+            m_dispControl[(int)DispCtrl.VehicleName] = txtInput01;
+            m_dispControl[(int)DispCtrl.RegistrationNumber] = txtInput02;
+            m_dispControl[(int)DispCtrl.IdentificationNumber] = txtInput03;
+            m_dispControl[(int)DispCtrl.ModelCode] = txtInput04;
+            m_dispControl[(int)DispCtrl.Administrator] = cmbVehicleAdministrator;
+            m_dispControl[(int)DispCtrl.PurchaseDate] = txtInput05;
+            m_dispControl[(int)DispCtrl.PurchaseName] = txtInput06;
+            m_dispControl[(int)DispCtrl.PurchaseContactPersons] = txtInput07;
+            m_dispControl[(int)DispCtrl.PurchasePhone] = txtInput08;
+            m_dispControl[(int)DispCtrl.LeaseDate] = txtInput09;
+            m_dispControl[(int)DispCtrl.LeaseDestination] = txtInput10;
+            m_dispControl[(int)DispCtrl.LeaseContactPersons] = txtInput11;
+            m_dispControl[(int)DispCtrl.LeasePhone] = txtInput12;
+            m_dispControl[(int)DispCtrl.InsuranceCompany] = txtInput13;
+            m_dispControl[(int)DispCtrl.InsuranceContactPersons] = txtInput14;
+            m_dispControl[(int)DispCtrl.InsurancePhone] = txtInput15;
+            m_dispControl[(int)DispCtrl.Note] = txtInput16;
+            m_dispControl[(int)DispCtrl.VoluntaryInsurance] = dgvVoluntaryInsurance;
+            m_dispControl[(int)DispCtrl.PeriodicInspection] = dgvPeriodicInspection;
+            m_dispControl[(int)DispCtrl.PeriodicInspection] = dgvPeriodicInspection;
+            m_dispControl[(int)DispCtrl.TireExchange] = dgvTireExchange;
+            m_dispControl[(int)DispCtrl.WinterTireExchange] = dgvWinterTireExchange;
+            m_dispControl[(int)DispCtrl.VehicleAdministrator] = cmbVehicleAdministrator;
+            m_dispControl[(int)DispCtrl.VehicleScheduleDsp] = cmbVehicleScheduleDsp;
+
+            m_dispControl[(int)DispCtrl.EditMode] = lblEditMode;
         }
+        #endregion
 
+        #region 画面クリア
         /// <summary>
         /// 画面クリア
         /// </summary>
@@ -755,7 +844,9 @@
 
             m_bChengeAns = false;
         }
+        #endregion
 
+        #region 画面項目のチェック
         /// <summary>
         /// 画面項目のチェック
         /// </summary>
@@ -768,71 +859,71 @@
             {
 
                 // 	名称
-                if (m_dispControl[(int)DispControl.VehicleName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.VehicleName], s_VehicleNameLength, true);
+                if (m_dispControl[(int)DispCtrl.VehicleName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.VehicleName], s_VehicleNameLength, true);
 
                 //  登録番号
-                if (m_dispControl[(int)DispControl.RegistrationNumber].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.RegistrationNumber], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.RegistrationNumber].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.RegistrationNumber], s_NameLength);
 
                 //  車台番号
-                if (m_dispControl[(int)DispControl.IdentificationNumber].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.IdentificationNumber], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.IdentificationNumber].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.IdentificationNumber], s_NameLength);
 
                 // 型式
-                if (m_dispControl[(int)DispControl.ModelCode].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.ModelCode], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.ModelCode].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.ModelCode], s_NameLength);
 
                 // 管理者
-                if (m_dispControl[(int)DispControl.Administrator].Text.Length != 0) iLength++;
+                if (m_dispControl[(int)DispCtrl.Administrator].Text.Length != 0) iLength++;
 
                 // 購入日
-                if (m_dispControl[(int)DispControl.PurchaseDate].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)DispControl.PurchaseDate]);
+                if (m_dispControl[(int)DispCtrl.PurchaseDate].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)DispCtrl.PurchaseDate]);
 
                 // 購入先
-                if (m_dispControl[(int)DispControl.PurchaseName].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.PurchaseName], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.PurchaseName].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.PurchaseName], s_NameLength);
 
                 // 購入先担当者
-                if (m_dispControl[(int)DispControl.PurchaseContactPersons].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.PurchaseContactPersons], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.PurchaseContactPersons].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.PurchaseContactPersons], s_NameLength);
 
                 // 購入先TEL
-                if (m_dispControl[(int)DispControl.PurchasePhone].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)DispControl.PurchasePhone]);
+                if (m_dispControl[(int)DispCtrl.PurchasePhone].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)DispCtrl.PurchasePhone]);
 
                 // リース日
-                if (m_dispControl[(int)DispControl.LeaseDate].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)DispControl.LeaseDate]);
+                if (m_dispControl[(int)DispCtrl.LeaseDate].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldDateCheck(m_dispControl[(int)DispCtrl.LeaseDate]);
 
                 // リース先
-                if (m_dispControl[(int)DispControl.LeaseDestination].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.LeaseDestination], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.LeaseDestination].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.LeaseDestination], s_NameLength);
 
                 // リース先担当者
-                if (m_dispControl[(int)DispControl.LeaseContactPersons].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.LeaseContactPersons], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.LeaseContactPersons].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.LeaseContactPersons], s_NameLength);
 
                 // リース先TEL
-                if (m_dispControl[(int)DispControl.LeasePhone].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)DispControl.LeasePhone]);
+                if (m_dispControl[(int)DispCtrl.LeasePhone].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)DispCtrl.LeasePhone]);
 
                 // 任意保険会社
-                if (m_dispControl[(int)DispControl.InsuranceCompany].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.InsuranceCompany], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.InsuranceCompany].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.InsuranceCompany], s_NameLength);
 
                 // 任意保険会社担当者
-                if (m_dispControl[(int)DispControl.InsuranceContactPersons].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.InsuranceContactPersons], s_NameLength);
+                if (m_dispControl[(int)DispCtrl.InsuranceContactPersons].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.InsuranceContactPersons], s_NameLength);
 
                 // 任意保険会社TEL
-                if (m_dispControl[(int)DispControl.InsurancePhone].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)DispControl.InsurancePhone]);
+                if (m_dispControl[(int)DispCtrl.InsurancePhone].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldPhoneNumberCheck(m_dispControl[(int)DispCtrl.InsurancePhone]);
 
                 // 備考
-                if (m_dispControl[(int)DispControl.Note].Text.Length != 0) iLength++;
-                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispControl.Note], s_NoteLength);
+                if (m_dispControl[(int)DispCtrl.Note].Text.Length != 0) iLength++;
+                bRet &= CommonMotions.DispFieldLengthCheck(m_dispControl[(int)DispCtrl.Note], s_NoteLength);
 
                 // 車検グリッドチェックチェック
                 foreach (DataGridViewRow wrkRow in dgvVehicleInspection.Rows)
@@ -883,6 +974,9 @@
                 return false;
             }
         }
+        #endregion
+
+        #region 記録データグリッド行チェック
         /// <summary>
         /// 記録データグリッド行チェック
         /// </summary>
@@ -944,6 +1038,9 @@
                 return false;
             }
         }
+        #endregion
+
+        #region 車両・車両記録率マスタ登録
         /// <summary>
         /// 車両・車両記録率マスタ登録
         /// </summary>
@@ -981,27 +1078,27 @@
                 VehicleMaster vData = new VehicleMaster();
                 vData.VehicleCode = m_VehicleCode;
 
-                vData.VehicleName = m_dispControl[(int)DispControl.VehicleName].Text;
-                vData.RegistrationNumber = m_dispControl[(int)DispControl.RegistrationNumber].Text;
-                vData.IdentificationNumber = m_dispControl[(int)DispControl.IdentificationNumber].Text;
-                vData.ModelCode = m_dispControl[(int)DispControl.ModelCode].Text;
+                vData.VehicleName = m_dispControl[(int)DispCtrl.VehicleName].Text;
+                vData.RegistrationNumber = m_dispControl[(int)DispCtrl.RegistrationNumber].Text;
+                vData.IdentificationNumber = m_dispControl[(int)DispCtrl.IdentificationNumber].Text;
+                vData.ModelCode = m_dispControl[(int)DispCtrl.ModelCode].Text;
                 
                 if (cmbVehicleAdministrator.Text.Length != 0)
                     vData.DepartmentCode = CommonMotions.cnvInt(cmbVehicleAdministrator.SelectedValue.ToString());
                 vData.VehicleScheduleFlg = CommonMotions.cnvInt(cmbVehicleScheduleDsp.SelectedValue.ToString());
 
-                vData.PurchaseDate = CommonMotions.cnvDate(m_dispControl[(int)DispControl.PurchaseDate].Text);
-                vData.PurchaseName = m_dispControl[(int)DispControl.PurchaseName].Text;
-                vData.PurchaseContactPersons = m_dispControl[(int)DispControl.PurchaseContactPersons].Text;
-                vData.PurchasePhone = m_dispControl[(int)DispControl.PurchasePhone].Text;
-                vData.LeaseDate = CommonMotions.cnvDate(m_dispControl[(int)DispControl.LeaseDate].Text);
-                vData.LeaseDestination = m_dispControl[(int)DispControl.LeaseDestination].Text;
-                vData.LeaseContactPersons = m_dispControl[(int)DispControl.LeaseContactPersons].Text;
-                vData.LeasePhone = m_dispControl[(int)DispControl.LeasePhone].Text;
-                vData.InsuranceCompany = m_dispControl[(int)DispControl.InsuranceCompany].Text;
-                vData.InsuranceContactPersons = m_dispControl[(int)DispControl.InsuranceContactPersons].Text;
-                vData.InsurancePhone = m_dispControl[(int)DispControl.InsurancePhone].Text;
-                vData.Note = m_dispControl[(int)DispControl.Note].Text;
+                vData.PurchaseDate = CommonMotions.cnvDate(m_dispControl[(int)DispCtrl.PurchaseDate].Text);
+                vData.PurchaseName = m_dispControl[(int)DispCtrl.PurchaseName].Text;
+                vData.PurchaseContactPersons = m_dispControl[(int)DispCtrl.PurchaseContactPersons].Text;
+                vData.PurchasePhone = m_dispControl[(int)DispCtrl.PurchasePhone].Text;
+                vData.LeaseDate = CommonMotions.cnvDate(m_dispControl[(int)DispCtrl.LeaseDate].Text);
+                vData.LeaseDestination = m_dispControl[(int)DispCtrl.LeaseDestination].Text;
+                vData.LeaseContactPersons = m_dispControl[(int)DispCtrl.LeaseContactPersons].Text;
+                vData.LeasePhone = m_dispControl[(int)DispCtrl.LeasePhone].Text;
+                vData.InsuranceCompany = m_dispControl[(int)DispCtrl.InsuranceCompany].Text;
+                vData.InsuranceContactPersons = m_dispControl[(int)DispCtrl.InsuranceContactPersons].Text;
+                vData.InsurancePhone = m_dispControl[(int)DispCtrl.InsurancePhone].Text;
+                vData.Note = m_dispControl[(int)DispCtrl.Note].Text;
 
                 // 表示順はセットしない
                 vData.DisplayOrder = 0;
@@ -1083,6 +1180,9 @@
                 vDB.close(); vDB = null;
             }
         }
+        #endregion
+
+        #region 記録データグリッドのデータを取得する
         /// <summary>
         /// 記録データグリッドのデータを取得する
         /// </summary>
@@ -1156,7 +1256,9 @@
                 return false;
             }
         }
+        #endregion
 
+        #region グリッドデータ表示
         /// <summary>
         /// グリッドデータ表示
         /// </summary>
@@ -1211,6 +1313,9 @@
                 vcDB = null;
             }
         }
+        #endregion
+
+        #region 記録データ表示
         /// <summary>
         /// 記録データ表示
         /// </summary>
@@ -1293,6 +1398,9 @@
                 vrdDB.close(); vrdDB = null;
             }
         }
+        #endregion
+
+        #region データ取得
         /// <summary>
         /// データ取得
         /// </summary>
@@ -1318,32 +1426,35 @@
                 string strSQL = vDB.CreatePrimarykeyString(m_VehicleCode);
                 List<VehicleMaster> vList = new List<VehicleMaster>();
                 if (!vDB.SelectAction(strSQL, ref vList)) return;
-                m_dispControl[(int)DispControl.VehicleCode].Text = vList[0].VehicleCode.ToString();
-                m_dispControl[(int)DispControl.VehicleName].Text = vList[0].VehicleName;
-                m_dispControl[(int)DispControl.RegistrationNumber].Text = vList[0].RegistrationNumber;
-                m_dispControl[(int)DispControl.IdentificationNumber].Text = vList[0].IdentificationNumber;
-                m_dispControl[(int)DispControl.ModelCode].Text = vList[0].ModelCode;
+                m_dispControl[(int)DispCtrl.VehicleCode].Text = vList[0].VehicleCode.ToString();
+                m_dispControl[(int)DispCtrl.VehicleName].Text = vList[0].VehicleName;
+                m_dispControl[(int)DispCtrl.RegistrationNumber].Text = vList[0].RegistrationNumber;
+                m_dispControl[(int)DispCtrl.IdentificationNumber].Text = vList[0].IdentificationNumber;
+                m_dispControl[(int)DispCtrl.ModelCode].Text = vList[0].ModelCode;
                 
                 cmbVehicleAdministrator.SelectedValue = vList[0].DepartmentCode;
 
                 if (vList[0].PurchaseDate != DateTime.MinValue)
-                    m_dispControl[(int)DispControl.PurchaseDate].Text = vList[0].PurchaseDate.ToShortDateString();
-                m_dispControl[(int)DispControl.PurchaseName].Text = vList[0].PurchaseName.ToString();
-                m_dispControl[(int)DispControl.PurchaseContactPersons].Text = vList[0].PurchaseContactPersons.ToString();
-                m_dispControl[(int)DispControl.PurchasePhone].Text = vList[0].PurchasePhone.ToString();
+                    m_dispControl[(int)DispCtrl.PurchaseDate].Text = vList[0].PurchaseDate.ToShortDateString();
+                m_dispControl[(int)DispCtrl.PurchaseName].Text = vList[0].PurchaseName.ToString();
+                m_dispControl[(int)DispCtrl.PurchaseContactPersons].Text = vList[0].PurchaseContactPersons.ToString();
+                m_dispControl[(int)DispCtrl.PurchasePhone].Text = vList[0].PurchasePhone.ToString();
 
                 if (vList[0].LeaseDate != DateTime.MinValue)
-                    m_dispControl[(int)DispControl.LeaseDate].Text = vList[0].LeaseDate.ToShortDateString();
-                m_dispControl[(int)DispControl.LeaseDestination].Text = vList[0].LeaseDestination.ToString();
-                m_dispControl[(int)DispControl.LeaseContactPersons].Text = vList[0].LeaseContactPersons.ToString();
-                m_dispControl[(int)DispControl.LeasePhone].Text = vList[0].LeasePhone.ToString();
+                    m_dispControl[(int)DispCtrl.LeaseDate].Text = vList[0].LeaseDate.ToShortDateString();
+                m_dispControl[(int)DispCtrl.LeaseDestination].Text = vList[0].LeaseDestination.ToString();
+                m_dispControl[(int)DispCtrl.LeaseContactPersons].Text = vList[0].LeaseContactPersons.ToString();
+                m_dispControl[(int)DispCtrl.LeasePhone].Text = vList[0].LeasePhone.ToString();
 
-                m_dispControl[(int)DispControl.InsuranceCompany].Text = vList[0].InsuranceCompany.ToString();
-                m_dispControl[(int)DispControl.InsuranceContactPersons].Text = vList[0].InsuranceContactPersons.ToString();
-                m_dispControl[(int)DispControl.InsurancePhone].Text = vList[0].InsurancePhone.ToString();
-                m_dispControl[(int)DispControl.Note].Text = vList[0].Note.ToString();
+                m_dispControl[(int)DispCtrl.InsuranceCompany].Text = vList[0].InsuranceCompany.ToString();
+                m_dispControl[(int)DispCtrl.InsuranceContactPersons].Text = vList[0].InsuranceContactPersons.ToString();
+                m_dispControl[(int)DispCtrl.InsurancePhone].Text = vList[0].InsurancePhone.ToString();
+                m_dispControl[(int)DispCtrl.Note].Text = vList[0].Note.ToString();
 
-                m_dispControl[(int)DispControl.EditMode].Text = CommonDefine.EditModeStringEdit;                       // ”修正”
+                if (m_EditLock)
+                    m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringRef;                    // 参照
+                else
+                    m_dispControl[(int)DispCtrl.EditMode].Text = CommonDefine.EditModeStringEdit;                   // 修正
 
                 // 記録データを表示する
                 DispRecordData();
@@ -1359,7 +1470,9 @@
                 vDB.close(); vDB = null;
             }
         }
+        #endregion
 
+        #region 車両管理者コンボボックスセット
         /// <summary>
         /// 車両管理者コンボボックスセット
         /// </summary>
@@ -1401,7 +1514,9 @@
                 dmDB = null;
             }
         }
+        #endregion
 
+        #region グリッドの有効行をカウントする
         /// <summary>
         /// グリッドの有効行をカウントする
         /// </summary>
@@ -1425,6 +1540,9 @@
                 return 0;
             }
         }
+        #endregion
+
+        #region 車両予約表示コンボボックスセット
         /// <summary>
         /// 車両予約表示コンボボックスセット
         /// </summary>
@@ -1448,6 +1566,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region グリッド最終行での処理
         /// <summary>
         /// グリッド最終行での処理
         /// </summary>
@@ -1468,5 +1589,27 @@
             }
         }
         #endregion
+
+        #region 参照時ロック処理
+        /// <summary>
+        /// 参照時ロック処理
+        /// </summary>
+        private void ExecReadOnly()
+        {
+            try
+            {
+                ControlLock(false);
+                btnDataEntry.Visible = false;
+                btnDataDelete.Visible = false;
+                btnDataLineEntry.Visible = false;
+                btnDispDown.Visible = false;
+                btnDispUp.Visible = false;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/Master/Vehicle/FrmVehicle.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/Master/Vehicle/FrmVehicle.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/Master/Vehicle/FrmVehicle.designer.cs	(revision 51)
@@ -209,7 +209,7 @@
             this.btnDataDelete.Name = "btnDataDelete";
             this.btnDataDelete.Size = new System.Drawing.Size(120, 30);
             this.btnDataDelete.TabIndex = 24;
-            this.btnDataDelete.Text = "削　除";
+            this.btnDataDelete.Text = "内容削除";
             this.btnDataDelete.UseVisualStyleBackColor = false;
             this.btnDataDelete.Click += new System.EventHandler(this.btnDataDelete_Click);
             // 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmActionCalendar.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmActionCalendar.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmActionCalendar.cs	(revision 51)
@@ -166,7 +166,9 @@
                 m_bChengeAns = false;
 
                 asdDB.commit();
-                
+
+                CommonMotions.EntryEndMessage("行動予定データ");
+
                 this.Close();
             }
             catch (System.Exception ex)
@@ -201,6 +203,8 @@
 
                 m_bChengeAns = false;
 
+                CommonMotions.RemoveEndMessage("行動予定データ");
+
                 // 終了
                 this.Close();
 
@@ -447,7 +451,8 @@
                 wrkEndDate = wrkEndDate.AddDays(-1);
 
                 string wrkSQL = "SELECT Count(*) FROM HolidayCalenderMaster";
-                wrkSQL += string.Format(" Where DATE_FORMAT('{0}','%Y/%m/%d') <= Holiday And Holiday <= DATE_FORMAT('{1}','%Y/%m/%d')"
+                //wrkSQL += string.Format(" Where TO_DATE('{0}','YYYY/MM/DD') <= Holiday And Holiday <= TO_DATE('{1}','YYYY/MM/DD')"
+                wrkSQL += string.Format(" Where STR_TO_DATE('{0}','%Y/%m/%d') <= Holiday And Holiday <= STR_TO_DATE('{1}','%Y/%m/%d')"
                                         , wrkStratDate.ToShortDateString(), wrkEndDate.ToShortDateString());
                 ArrayList arData = new ArrayList();
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmAddressSearch.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmAddressSearch.designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmAddressSearch.designer.cs	(revision 51)
@@ -79,13 +79,13 @@
             // 
             // button1
             // 
-            this.button1.Enabled = false;
+            this.button1.BackColor = System.Drawing.Color.White;
             this.button1.Location = new System.Drawing.Point(15, 266);
             this.button1.Name = "button1";
             this.button1.Size = new System.Drawing.Size(75, 30);
             this.button1.TabIndex = 7;
             this.button1.Text = "作成";
-            this.button1.UseVisualStyleBackColor = true;
+            this.button1.UseVisualStyleBackColor = false;
             this.button1.Visible = false;
             this.button1.Click += new System.EventHandler(this.button1_Click);
             // 
@@ -185,7 +185,7 @@
             this.cmbKen.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbKen.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbKen.FormattingEnabled = true;
-            this.cmbKen.Location = new System.Drawing.Point(120, 7);
+            this.cmbKen.Location = new System.Drawing.Point(120, 5);
             this.cmbKen.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.cmbKen.Name = "cmbKen";
             this.cmbKen.Size = new System.Drawing.Size(133, 24);
@@ -212,7 +212,7 @@
             this.cmbCity.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbCity.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbCity.FormattingEnabled = true;
-            this.cmbCity.Location = new System.Drawing.Point(120, 41);
+            this.cmbCity.Location = new System.Drawing.Point(120, 39);
             this.cmbCity.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.cmbCity.Name = "cmbCity";
             this.cmbCity.Size = new System.Drawing.Size(286, 24);
@@ -226,7 +226,7 @@
             this.cmbTown.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.cmbTown.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
             this.cmbTown.FormattingEnabled = true;
-            this.cmbTown.Location = new System.Drawing.Point(120, 75);
+            this.cmbTown.Location = new System.Drawing.Point(120, 73);
             this.cmbTown.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.cmbTown.Name = "cmbTown";
             this.cmbTown.Size = new System.Drawing.Size(335, 24);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalAuthorizerList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalAuthorizerList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalAuthorizerList.cs	(revision 51)
@@ -67,6 +67,10 @@
         /// </summary>
         private int m_ApprovalCode = 0;
         /// <summary>
+        /// 機能承認回数
+        /// </summary>
+        private int m_OrderNo = 1;
+        /// <summary>
         /// 表示位置
         /// </summary>
         private Point m_LocationPoint = new Point(((System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width / 2) - (s_MyWidth / 2)),
@@ -95,6 +99,14 @@
             set { m_ApprovalCode = value; }
         }
         /// <summary>
+        /// 機能承認回数
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+        /// <summary>
         /// 表示位置
         /// </summary>
         public Point LocationPoint
@@ -184,17 +196,14 @@
                 DataGridViewEX dgv = (DataGridViewEX)sender;
                 if (CommonMotions.chkCellBlank(dgv.CurrentRow.Cells[(int)GridColumn.AuthorName].Value)) return;
 
-                // 工事番号取得
-                int iConstructionCode = m_ConstructionCode;
-                // 承認機能番号取得
-                int iApprovalCode = m_ApprovalCode;
-
                 // 次起動プロセスセット
                 int NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.ApprovalScreen);
                 // 選択工事番号セット
-                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iConstructionCode);
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_ConstructionCode);
                 // 選択承認機能番号セット
-                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_ApprovalCode);
+                // 受付番号セット
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_OrderNo);
 
                 // 承認画面起動を親画面へ伝える
                 m_ExecApprovalScreen = true;
@@ -239,7 +248,7 @@
                 {
                     // 承認データ取得
                     int PersonCode = CommonMotions.cnvInt(wrkobj[3].ToString());
-                    strSQL = ProAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode);
+                    strSQL = ProAppDB.CreatePrimarykeyString(m_ConstructionCode, m_ApprovalCode, m_OrderNo);
                     strSQL += string.Format(" AND PersonCode = {0}", PersonCode);
                     strSQL += " AND SEQNO != 1";
                     ProcessApproval PAppRec = new ProcessApproval();
@@ -271,12 +280,12 @@
                 cbiDB.close(); cbiDB = null;
 
                 // 表示行が足りない場合は追加
-                if (dgvDispApproval.Rows.Count < s_GridRowCount)
+                int AddRowcnt = s_GridRowCount - dgvDispApproval.Rows.Count;
+                if (AddRowcnt > 0)
                 {
                     dgvDispApproval.ScrollBars = ScrollBars.None;
                     dgvDispApproval.Columns[(int)GridColumn.AuthorName].Width += dgvDispApproval.RowHeadersWidth;
-                    int AddRowcnt = s_GridRowCount - dgvDispApproval.Rows.Count;
-                    if (AddRowcnt != 0) dgvDispApproval.Rows.Add(AddRowcnt);
+                    dgvDispApproval.Rows.Add(AddRowcnt);
                 }
             }
         }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalStatusList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalStatusList.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmApprovalStatusList.cs	(revision 51)
@@ -64,6 +64,9 @@
         /// 承認機能番号
         /// </summary>
         private int m_ApprovalCode = 0;
+        /// 機能承認回数
+        /// </summary>
+        private int m_OrderNo = 1;
         /// <summary>
         /// 表示位置
         /// </summary>
@@ -70,6 +73,11 @@
         private Point m_LocationPoint = new Point(((System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width / 2) - (s_MyWidth / 2)),
                                                     ((System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height / 2) - (s_MyHeight / 2)));
         /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
         /// 承認画面起動
         /// </summary>
         private bool m_ExecApprovalScreen = false;
@@ -93,6 +101,14 @@
             set{ m_ApprovalCode= value; }
         }
         /// <summary>
+        /// 機能承認回数
+        /// </summary>
+        public int OrderNo
+        {
+            get { return m_OrderNo; }
+            set { m_OrderNo = value; }
+        }
+        /// <summary>
         /// 表示位置
         /// </summary>
         public Point LocationPoint
@@ -101,6 +117,14 @@
             set { m_LocationPoint = value; }
         }
         /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        /// <summary>
         /// 承認画面起動
         /// </summary>
         public bool ExecApprovalScreen
@@ -176,11 +200,19 @@
         {
             try
             {
+                // 参照時は処理しない
+                if (m_EditLock) return;
+
                 // 無効行は処理しない
                 if (e.ColumnIndex < 0 || e.RowIndex < 0) return;
                 DataGridViewEX dgv = (DataGridViewEX)sender;
                 if (CommonMotions.chkCellBlank(dgv.CurrentRow.Cells[(int)GridColumn.ApprovalCode].Value)) return;
 
+                // 未申請は処理しない
+                string AppStatusString = CommonDefine.ApprovalStatusString[(int)CommonDefine.ApprovalStatus.Unclaimed];
+                string GridStatus = CommonMotions.cnvString(dgv.CurrentRow.Cells[(int)GridColumn.ApprovalStatus].Value);
+                if (AppStatusString.Equals(GridStatus)) return;
+
                 // 工事番号取得
                 int iConstructionCode = m_ConstructionCode;
                 // 承認機能番号取得
@@ -192,6 +224,8 @@
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iConstructionCode);
                 // 選択承認機能番号セット
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
+                // 受付番号セット
+                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(m_OrderNo);
 
                 // 承認画面起動を親画面へ伝える
                 m_ExecApprovalScreen = true;
@@ -253,7 +287,7 @@
                     strPerson = picDB.CreatePrimarykeyString(CurrentPersonCode);
                     picDB.SelectAction(strPerson, ref cPersonRec);
 
-                    // 積算見積書承認を取得する
+                    // 積算見積書承認より後の承認を取得する
                     strApprovalMaster = string.Format(" Where APPROVALCODE IN ({0}, {1}, {2}, {3})", iCode2, iCode3, iCode4, iCode5);
                     strApprovalMaster += string.Format(" And DEPARTMENTCODE = {0} And SeqNo = 1", sPersonRec.DepartmentCode);
                     mAppDB.SelectAction(strApprovalMaster, ref MasterList);
@@ -266,7 +300,7 @@
                     string AppStatusString = CommonDefine.ApprovalStatusString[(int)CommonDefine.ApprovalStatus.Unclaimed];
                     string AppDate = string.Empty;
 
-                    string strData = pAPPDB.CreatePrimarykeyString(m_ConstructionCode, appRec.ApprovalCode, 1);
+                    string strData = pAPPDB.CreatePrimarykeyString(m_ConstructionCode, appRec.ApprovalCode, m_OrderNo, 1);
                     ProcessApproval dataRec = new ProcessApproval();
                     if (pAPPDB.SelectAction(strData, ref dataRec))
                     {
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.Designer.cs	(revision 51)
@@ -0,0 +1,274 @@
+﻿namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmChangeExpenses
+    {
+        /// <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 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();
+            this.btnExecProc1 = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.btnLineRemove = new System.Windows.Forms.Button();
+            this.dgvMaster = new System.Windows.Forms.DataGridView();
+            this.label7 = new System.Windows.Forms.Label();
+            this.lblTotal = new System.Windows.Forms.Label();
+            this.btnLineCreate = new System.Windows.Forms.Button();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column1 = 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.panel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnExecProc1
+            // 
+            this.btnExecProc1.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc1.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc1.Location = new System.Drawing.Point(353, 10);
+            this.btnExecProc1.Name = "btnExecProc1";
+            this.btnExecProc1.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc1.TabIndex = 0;
+            this.btnExecProc1.Text = "変　更";
+            this.btnExecProc1.UseVisualStyleBackColor = false;
+            this.btnExecProc1.Click += new System.EventHandler(this.btnExecProc1_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(509, 10);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(140, 40);
+            this.btnEnd.TabIndex = 3;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // panel1
+            // 
+            this.panel1.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.panel1.Controls.Add(this.btnEnd);
+            this.panel1.Controls.Add(this.btnLineCreate);
+            this.panel1.Controls.Add(this.btnLineRemove);
+            this.panel1.Controls.Add(this.btnExecProc1);
+            this.panel1.Location = new System.Drawing.Point(-8, 184);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(660, 60);
+            this.panel1.TabIndex = 3;
+            // 
+            // btnLineRemove
+            // 
+            this.btnLineRemove.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
+            this.btnLineRemove.ForeColor = System.Drawing.Color.Black;
+            this.btnLineRemove.Location = new System.Drawing.Point(158, 10);
+            this.btnLineRemove.Name = "btnLineRemove";
+            this.btnLineRemove.Size = new System.Drawing.Size(140, 40);
+            this.btnLineRemove.TabIndex = 0;
+            this.btnLineRemove.Text = "経費行削除";
+            this.btnLineRemove.UseVisualStyleBackColor = false;
+            this.btnLineRemove.Visible = false;
+            this.btnLineRemove.Click += new System.EventHandler(this.btnLineRemove_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle6;
+            this.dgvMaster.ColumnHeadersHeight = 26;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column2,
+            this.Column1,
+            this.Column3,
+            this.Column4,
+            this.Column5});
+            this.dgvMaster.ImeMode = System.Windows.Forms.ImeMode.Disable;
+            this.dgvMaster.Location = new System.Drawing.Point(3, 41);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 26;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 24;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(640, 124);
+            this.dgvMaster.TabIndex = 4;
+            this.dgvMaster.CellEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellEnter);
+            this.dgvMaster.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellValueChanged);
+            // 
+            // label7
+            // 
+            this.label7.BackColor = System.Drawing.Color.SandyBrown;
+            this.label7.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label7.Location = new System.Drawing.Point(2, 8);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(114, 25);
+            this.label7.TabIndex = 37;
+            this.label7.Text = "受注金額";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblTotal
+            // 
+            this.lblTotal.BackColor = System.Drawing.Color.White;
+            this.lblTotal.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.lblTotal.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.lblTotal.ForeColor = System.Drawing.Color.Black;
+            this.lblTotal.Location = new System.Drawing.Point(124, 8);
+            this.lblTotal.Name = "lblTotal";
+            this.lblTotal.Size = new System.Drawing.Size(150, 25);
+            this.lblTotal.TabIndex = 38;
+            this.lblTotal.Text = "999,999,999";
+            this.lblTotal.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // btnLineCreate
+            // 
+            this.btnLineCreate.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.btnLineCreate.ForeColor = System.Drawing.Color.Black;
+            this.btnLineCreate.Location = new System.Drawing.Point(10, 10);
+            this.btnLineCreate.Name = "btnLineCreate";
+            this.btnLineCreate.Size = new System.Drawing.Size(140, 40);
+            this.btnLineCreate.TabIndex = 0;
+            this.btnLineCreate.Text = "経費行作成";
+            this.btnLineCreate.UseVisualStyleBackColor = false;
+            this.btnLineCreate.Visible = false;
+            this.btnLineCreate.Click += new System.EventHandler(this.btnLineCreate_Click);
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "№";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 60;
+            // 
+            // Column1
+            // 
+            this.Column1.Frozen = true;
+            this.Column1.HeaderText = "経費番号";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            this.Column1.Visible = false;
+            this.Column1.Width = 5;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle8.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle8;
+            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 = 280;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle9;
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "比率(％)";
+            this.Column4.Name = "Column4";
+            this.Column4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column4.Width = 120;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("Century", 12F, 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.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column5.Width = 160;
+            // 
+            // FrmChangeExpenses
+            // 
+            this.AcceptButton = this.btnExecProc1;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.BackColor = System.Drawing.Color.White;
+            this.ClientSize = new System.Drawing.Size(644, 241);
+            this.Controls.Add(this.label7);
+            this.Controls.Add(this.lblTotal);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.panel1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmChangeExpenses";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "経　費　変　更";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmChangeExpenses_FormClosing);
+            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            this.panel1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnExecProc1;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.DataGridView dgvMaster;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Label lblTotal;
+        private System.Windows.Forms.Button btnLineRemove;
+        private System.Windows.Forms.Button btnLineCreate;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.cs	(revision 51)
@@ -0,0 +1,352 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmChangeExpenses : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        private enum GridColumns
+        {
+            No = 0,
+            ExpCode,
+            ExpName,
+            ExpParcent,
+            ExpPrice,
+        }
+        #endregion
+
+        #region 変数
+
+        #region 動作抑制フラグ
+        /// <summary>
+        /// 動作抑制フラグ
+        /// </summary>
+        private bool m_bProcLockFlag = true;
+        #endregion
+
+        #region データ変更フラグ
+        /// <summary>
+        /// データ変更フラグ
+        /// </summary>
+        private bool m_bDataChange = false;
+        #endregion
+
+        #region 終了状態フラグ
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+        #endregion
+
+        #region 受注金額
+        /// <summary>
+        /// 受注金額
+        /// </summary>
+        private object m_OrdersPrice = 0;
+        #endregion
+
+        #region グリッド表示データ
+        /// <summary>
+        /// グリッド表示データ
+        /// </summary>
+        private ArrayList m_GridData;
+        #endregion
+
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 受注金額
+        /// </summary>
+        public object OrdersPrice
+        {
+            get { return m_OrdersPrice; }
+            set { m_OrdersPrice = value; }
+        }
+
+        /// <summary>
+        /// グリッド表示データ
+        /// </summary>
+        public ArrayList GridData
+        {
+            get { return m_GridData; }
+            set { m_GridData = value; }
+        }
+
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmChangeExpenses()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+         
+            // 初期表示
+            InitDataLoad();
+
+            m_bProcLockFlag = false;
+        }
+        #endregion
+
+        #region ×ボタン押下
+        /// <summary>
+        /// ×ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmChangeExpenses_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (m_bDataChange)
+            {
+
+                if (MessageBox.Show("データに変更があります、登録せずに終了してよろしいですか？。", "終了確認"
+                                , MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
+                {
+                    e.Cancel = true;
+                    return;
+                }
+            }
+
+            if (m_EndButton == DialogResult.None) m_EndButton = DialogResult.Cancel;
+        }
+        #endregion
+
+        #region 変更ボタン押下
+        /// <summary>
+        /// 変更ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnExecProc1_Click(object sender, EventArgs e)
+        {
+            // 表示データ取得
+            GetDspData();
+
+            m_EndButton = DialogResult.OK;
+            m_bDataChange = false;
+
+            this.Close();
+        }
+        #endregion
+
+        #region 終了ボタン押下
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.Cancel;
+            
+            this.Close();
+        }
+        #endregion
+
+        #region 経費行作成ボタン押下
+        /// <summary>
+        /// 経費行作成ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineCreate_Click(object sender, EventArgs e)
+        {
+
+        }
+        #endregion
+
+        #region 経費行削除ボタン押下
+        /// <summary>
+        /// 経費行削除ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnLineRemove_Click(object sender, EventArgs e)
+        {
+
+        }
+        #endregion
+
+        #region 表示関連
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // 受注金額表示
+                lblTotal.Text = CommonMotions.cnvString(m_OrdersPrice).Replace("\\","");
+                // グリッド表示
+                foreach (object[] CurRec in m_GridData)
+                {
+                    dgvMaster.Rows.Add(CurRec);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                if (dgvMaster.RowCount <= 3) dgvMaster.Rows.Add(4 - dgvMaster.RowCount);
+            }
+        }
+        #endregion
+
+        #region セル値変化時
+        /// <summary>
+        /// セル値変化時
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellValueChanged(object sender, DataGridViewCellEventArgs e)
+        {
+            bool bSave = m_bProcLockFlag;
+            try
+            {
+                if (m_bProcLockFlag) return;
+
+                m_bProcLockFlag = true;
+
+                DataGridView dgv = dgvMaster;
+                DataGridViewRow dgvRow = dgv.CurrentRow;
+                DataGridViewCell dgvCell = dgv.CurrentCell;
+
+                // 値取得
+                double dOrders = CommonMotions.cnvDouble(lblTotal.Text);
+                double dParcent = CommonMotions.cnvDouble(dgvRow.Cells[(int)GridColumns.ExpParcent].Value);
+                double dPrice = CommonMotions.cnvDouble(dgvRow.Cells[(int)GridColumns.ExpPrice].Value);
+
+                switch (dgvCell.ColumnIndex)
+                {
+                    case (int)GridColumns.ExpParcent:
+                        dPrice = (dParcent / 100.0) * dOrders;
+                        break;
+                    case (int)GridColumns.ExpPrice:
+                        if (dOrders != 0) dParcent = dPrice / dOrders * 100.0;
+                        else dParcent = 0;
+                        break;
+                }
+
+                // 表示変更
+                dgvRow.Cells[(int)GridColumns.ExpParcent].Value = dParcent.ToString("0.00");
+                dgvRow.Cells[(int)GridColumns.ExpPrice].Value = CommonMotions.cnvRoundUp(dPrice).ToString("#,0");
+
+                m_bDataChange = true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                m_bProcLockFlag = bSave;
+            }
+        }
+        #endregion
+
+        #region 編集前処理
+        /// <summary>
+        /// 編集前処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellEnter(object sender, DataGridViewCellEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = dgvMaster;
+                //IMEのモードを変更する
+                switch (e.ColumnIndex)
+                {
+                    default:
+                        dgv.ImeMode = ImeMode.Disable;
+                        break;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region グリッドデータ取得
+        /// <summary>
+        /// グリッドデータ取得
+        /// </summary>
+        private void GetDspData()
+        {
+            try
+            {
+                m_GridData.Clear();
+                DataGridView dgv = dgvMaster;
+                for (int i = 0; i < dgv.RowCount; i++)
+                {
+                    DataGridViewRow CurRow = dgv.Rows[i];
+
+                    if (CommonMotions.cnvInt(CurRow.Cells[(int)GridColumns.ExpCode].Value) == 0) continue;
+
+                    object[] DataRec = new object[] { CurRow.Cells[(int)GridColumns.No].Value,
+                                                        CurRow.Cells[(int)GridColumns.ExpCode].Value,
+                                                        CurRow.Cells[(int)GridColumns.ExpName].Value,
+                                                        CurRow.Cells[(int)GridColumns.ExpParcent].Value,
+                                                        CurRow.Cells[(int)GridColumns.ExpPrice].Value
+                    };
+                    m_GridData.Add(DataRec);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                if (dgvMaster.RowCount <= 3) dgvMaster.Rows.Add(4 - dgvMaster.RowCount);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmChangeExpenses.resx	(revision 51)
@@ -0,0 +1,135 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column2.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="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmComponentDiag.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmComponentDiag.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmComponentDiag.Designer.cs	(revision 51)
@@ -219,7 +219,7 @@
             this.ShowIcon = false;
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.Text = "大項目選択";
-            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            this.Load += new System.EventHandler(this.FrmComponent_Load);
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
             this.ResumeLayout(false);
             this.PerformLayout();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmComponentDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmComponentDiag.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmComponentDiag.cs	(revision 51)
@@ -147,7 +147,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        private void FrmComponent_Load(object sender, EventArgs e)
         {
             // 初期表示
             InitDataLoad();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.Designer.cs	(revision 51)
@@ -39,6 +39,8 @@
             this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
             this.SuspendLayout();
             // 
@@ -89,7 +91,9 @@
             this.Column1,
             this.Column5,
             this.Column3,
-            this.Column2});
+            this.Column2,
+            this.Column4,
+            this.Column6});
             this.dgvMaster.Location = new System.Drawing.Point(12, 8);
             this.dgvMaster.Name = "dgvMaster";
             this.dgvMaster.RowHeadersVisible = false;
@@ -104,7 +108,6 @@
             // 
             dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
             dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            dataGridViewCellStyle2.NullValue = "false";
             this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
             this.Column1.Frozen = true;
             this.Column1.HeaderText = "№";
@@ -146,6 +149,22 @@
             this.Column2.Name = "Column2";
             this.Column2.Visible = false;
             // 
+            // Column4
+            // 
+            this.Column4.Frozen = true;
+            this.Column4.HeaderText = "発注者区分";
+            this.Column4.Name = "Column4";
+            this.Column4.ReadOnly = true;
+            this.Column4.Visible = false;
+            // 
+            // Column6
+            // 
+            this.Column6.Frozen = true;
+            this.Column6.HeaderText = "発注者コード";
+            this.Column6.Name = "Column6";
+            this.Column6.ReadOnly = true;
+            this.Column6.Visible = false;
+            // 
             // FrmConstructionDiag
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -179,5 +198,7 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.cs	(revision 51)
@@ -33,6 +33,8 @@
             DispConstructionCode,
             ConstructionName,
             ConstructionCode,
+            OrderersDivision,
+            OrderersCode,
         }
 
         /// <summary>
@@ -49,10 +51,41 @@
             /// </summary>
             Construction,
         }
+
+        /// <summary>
+        /// 検索タイプ           Add BIT 2017/02/22
+        /// </summary>
+        public enum SelectConstructionType
+        {
+            /// <summary>
+            /// 全て（工事結合）
+            /// </summary>
+            All = 0,
+            /// <summary>
+            /// 進行中（購入品選択、資材貸出、資材返却）
+            /// </summary>
+            Ongoing,
+            /// <summary>
+            /// 一括請求対象
+            /// </summary>
+            CombinedOrder,
+            /// <summary>
+            /// 分割請求対象
+            /// </summary>
+            SeparateBilling,
+                
+        }
+
         #endregion
 
         #region 変数
+
         /// <summary>
+        /// 部署コード
+        /// </summary>
+        private int m_DepartmentCode = 0;
+
+        /// <summary>
         /// 担当者コード
         /// </summary>
         private int m_PersonCode = 0;
@@ -63,6 +96,11 @@
         private int m_PersonCharge = 0;
 
         /// <summary>
+        /// 起動処理番号
+        /// </summary>
+        private int m_ProcessNo = 0;
+
+        /// <summary>
         /// 工事番号
         /// </summary>
         private int m_ConstructionCode = 0;
@@ -72,14 +110,38 @@
         private string m_ConstructionName = string.Empty;
 
         /// <summary>
+        /// 発注者区分
+        /// </summary>
+        private int m_OrderCotegory = 0;
+        /// <summary>
+        /// 発注者番号
+        /// </summary>
+        private int m_OrdererCode = 0;
+        
+        /// <summary>
         /// 終了状態フラグ
         /// </summary>
         private DialogResult m_EndButton = DialogResult.None;
 
+        /// <summary>   
+        /// 検索タイプ           Add BIT 2017/02/22
+        /// </summary>
+        private int m_SelectType = (int)SelectConstructionType.All;
+
         #endregion
 
         #region プロパティ
+
         /// <summary>
+        /// 部署コード
+        /// </summary>
+        public int DepartmentCode
+        {
+            get { return m_DepartmentCode; }
+            set { m_DepartmentCode = value; }
+        }
+
+        /// <summary>
         /// 担当者コード
         /// </summary>
         public int PersonCode
@@ -121,6 +183,41 @@
             get { return m_EndButton; }
         }
 
+        /// <summary>
+        /// 起動処理番号
+        /// </summary>
+        public int ProcessNo
+        {
+            get { return m_ProcessNo; }
+            set { m_ProcessNo = value; }
+        }
+
+        /// <summary>
+        /// 発注者区分
+        /// </summary>
+        public int OrderCotegory
+        {
+            get { return m_OrderCotegory; }
+            set { m_OrderCotegory = value; }
+        }
+        /// <summary>
+        /// 発注者番号
+        /// </summary>
+        public int OrdererCode
+        {
+            get { return m_OrdererCode; }
+            set { m_OrdererCode = value; }
+        }
+
+        /// <summary>
+        /// 検索タイプ       Add BIT 2017/02/22
+        /// </summary>
+        public int SelectType
+        {
+            get { return m_SelectType; }
+            set { m_SelectType = value; }
+        }
+
         #endregion
 
         #region フォーム初期化
@@ -171,13 +268,10 @@
         {
             DataGridView dgv = dgvMaster;
             DataGridViewRow dgvRow = dgv.CurrentRow;
-            
-            // 工事番号取得
-            m_ConstructionCode = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.ConstructionCode].Value);
-            // 工事名称取得
-            m_ConstructionName = CommonMotions.cnvString(dgvRow.Cells[(int)DispGridColumn.ConstructionName].Value);
 
-            m_EndButton = DialogResult.OK;
+            // 選択データセット
+            DataSelectProc();
+
             this.Close();
         }
         #endregion
@@ -198,16 +292,45 @@
             // グリッドクリック以外は処理しない
             if (e.RowIndex < 0) return;
 
-            // 工事番号取得
-            m_ConstructionCode = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.ConstructionCode].Value);
-            // 工事名称取得
-            m_ConstructionName = CommonMotions.cnvString(dgvRow.Cells[(int)DispGridColumn.ConstructionName].Value);
+            // 選択データセット
+            DataSelectProc();
 
-            m_EndButton = DialogResult.OK;
             this.Close();
         }
         #endregion
 
+        #region 選択データセット処理
+        /// <summary>
+        /// 選択データセット処理
+        /// </summary>
+        private void DataSelectProc()
+        {
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow dgvRow = dgv.CurrentRow;
+            try
+            {
+                // 工事番号取得
+                m_ConstructionCode = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.ConstructionCode].Value);
+                // 工事名称取得
+                m_ConstructionName = CommonMotions.cnvString(dgvRow.Cells[(int)DispGridColumn.ConstructionName].Value);
+
+                if (m_ProcessNo == (int)ClsExcute.ProcessExecuteNo.OrderJoin)
+                {
+                    // 発注者区分
+                    m_OrderCotegory = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.OrderersDivision].Value);
+                    // 発注者番号
+                    m_OrdererCode = CommonMotions.cnvInt(dgvRow.Cells[(int)DispGridColumn.OrderersCode].Value);
+                }
+
+                m_EndButton = DialogResult.OK;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 初期表示処理
         /// <summary>
         /// 初期表示処理
@@ -220,7 +343,7 @@
                 dgvMaster.Rows.Clear();
 
                 // 一覧表示
-                ItemListDisplay();
+                ConstructionListDisplay();
 
             }
             catch (Exception ex)
@@ -234,7 +357,7 @@
         /// <summary>
         /// 工事一覧表示処理
         /// </summary>
-        private void ItemListDisplay()
+        private void ConstructionListDisplay()
         {
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             try
@@ -241,24 +364,98 @@
             {
                 dgvMaster.Rows.Clear();
 
-                // 進行中案件をを検索する
-                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING";
-                strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, CONSTRUCTIONLEDGER C";
-                strSQL += string.Format(" WHERE (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
-                strSQL += " AND A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE AND C.COMPLATEFLG = 0";
-                switch (m_PersonCharge)
-                {
-                    case (int)PersonChargePoint.Sales:
-                        /// 営業担当検索
-                        strSQL += string.Format(" AND A.SalesPersonCode = {0}", m_PersonCode);
-                        break;
-                    case (int)PersonChargePoint.Construction:
-                        /// 工事担当者
-                        strSQL += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstrSubPersonCode = {0} OR A.ConstructionInstructor = {0})", m_PersonCode);
-                        break;
+                string strSQL = string.Empty;
+
+////                if (m_ProcessNo == (int)ClsExcute.ProcessExecuteNo.TAndPCosts)      Del BIT 2017/02/22
+                if (m_SelectType == (int)SelectConstructionType.Ongoing)                    // 検索タイプが進行中 Add BIT 2017/02/22
+                {   // ----- 購入品選択の場合
+                    // 進行中案件を検索する
+                    strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING";
+                    strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, CONSTRUCTIONLEDGER C";
+                    strSQL += string.Format(" WHERE (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                    strSQL += " AND A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE AND C.COMPLATEFLG = 0";
+
+                    switch (m_PersonCharge)
+                    {
+                        case (int)PersonChargePoint.Sales:
+                            /// 営業担当検索
+                            strSQL += string.Format(" AND A.SalesPersonCode = {0}", m_PersonCode);
+                            break;
+                        case (int)PersonChargePoint.Construction:
+                            /// 工事担当者
+                            strSQL += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstrSubPersonCode = {0} OR A.ConstructionInstructor = {0})", m_PersonCode);
+                            break;
+                    }
+                    strSQL += " ORDER BY A.ConstructionPeriodStart DESC";
                 }
-                strSQL += " ORDER BY A.ConstructionPeriodStart DESC";
+                else if (m_SelectType == (int)SelectConstructionType.CombinedOrder)                    // 検索タイプが一括請求 Add BIT 2017/02/22
+                {   // ----- 請求入力（一括請求）の場合
+                    // 進行中＋一括請求を検索する
+                    strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING";
+                    strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, CONSTRUCTIONLEDGER C";
+                    strSQL += string.Format(" WHERE (A.BillingSplitFlg = 0 AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                    strSQL += " AND A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE AND C.COMPLATEFLG = 0 ";
 
+                    switch (m_PersonCharge)
+                    {
+                        case (int)PersonChargePoint.Sales:
+                            /// 営業担当検索
+                            strSQL += string.Format(" AND A.SalesPersonCode = {0}", m_PersonCode);
+                            break;
+                        case (int)PersonChargePoint.Construction:
+                            /// 工事担当者
+                            strSQL += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstrSubPersonCode = {0} OR A.ConstructionInstructor = {0})", m_PersonCode);
+                            break;
+                    }
+                    strSQL += " ORDER BY A.ConstructionPeriodStart DESC";
+                }
+                else if (m_SelectType == (int)SelectConstructionType.SeparateBilling)                    // 検索タイプが分割請求 Add BIT 2017/02/22
+                {   // ----- 請求入力（分割請求）の場合
+                    // 進行中＋一括請求を検索する
+                    strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING";
+                    strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, CONSTRUCTIONLEDGER C";
+                    strSQL += string.Format(" WHERE (A.BillingSplitFlg = 1 AND A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                    strSQL += " AND A.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE AND C.COMPLATEFLG = 0 ";
+
+                    switch (m_PersonCharge)
+                    {
+                        case (int)PersonChargePoint.Sales:
+                            /// 営業担当検索
+                            strSQL += string.Format(" AND A.SalesPersonCode = {0}", m_PersonCode);
+                            break;
+                        case (int)PersonChargePoint.Construction:
+                            /// 工事担当者
+                            strSQL += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstrSubPersonCode = {0} OR A.ConstructionInstructor = {0})", m_PersonCode);
+                            break;
+                    }
+                    strSQL += " ORDER BY A.ConstructionPeriodStart DESC";
+                }
+                ///                else if (m_ProcessNo == (int)ClsExcute.ProcessExecuteNo.OrderJoin) Del BIT 2017/02/22
+                else                                // Add BIT 2017/02/22
+	            {
+                    // 対象全ての案件を検索する
+                    strSQL = "SELECT DISTINCT A.CONSTRUCTIONCODE, B.DETAILSTRING, A.OrderersDivision, A.OrderersCode";
+                    strSQL += " FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C";
+                    strSQL += string.Format(" WHERE (A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                    strSQL += string.Format(" AND A.JOINFLG = {0} ", (int)CommonDefine.BaseInfoJoinFlg.JoinParent);
+                    switch (m_PersonCharge)
+                    {
+                        case (int)PersonChargePoint.Sales:
+                            /// 営業担当検索
+                            strSQL += string.Format(" AND A.SalesPersonCode = {0}", m_PersonCode);
+                            break;
+                        case (int)PersonChargePoint.Construction:
+                            /// 工事担当者
+                            strSQL += string.Format(" AND (A.ConstructionPersonCode = {0} OR A.ConstrSubPersonCode = {0} OR A.ConstructionInstructor = {0})", m_PersonCode);
+                            break;
+                    }
+                    strSQL += " AND (C.PERSONCODE = A.SALESPERSONCODE";
+                    strSQL += " Or C.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                    strSQL += " Or C.PERSONCODE = A.CONSTRSUBPERSONCODE";
+                    strSQL += " Or C.PERSONCODE = A.CONSTRUCTIONINSTRUCTOR)";
+                    strSQL += " ORDER BY B.DETAILSTRING ASC, A.CONSTRUCTIONCODE DESC";
+                }
+
                 ArrayList BaseList = new ArrayList();
                 if (!BaseDB.ExecuteReader(strSQL, ref BaseList)) return;
                 if (BaseList.Count == 0) return;
@@ -265,34 +462,29 @@
 
                 // 要素表示
                 int i = 0;
+                int[] iData = new int[2];
                 foreach (object[] wrk in BaseList)
                 {
+
+                    Array.Clear(iData, 0, iData.Length);
+
+                    if (m_ProcessNo == (int)ClsExcute.ProcessExecuteNo.OrderJoin)
+                    {
+                        iData[0] = CommonMotions.cnvInt(wrk[2]);
+                        iData[1] = CommonMotions.cnvInt(wrk[3]);
+                    }
+
                     // データ表示
                     int ConstructionCode = CommonMotions.cnvInt(wrk[0]);
-                    string EditConstructionCode = string.Format("{0}-{1}", (ConstructionCode / 100), (ConstructionCode % 100));
+                    string EditConstructionCode = string.Format("{0}-{1:D2}", (ConstructionCode / 100), (ConstructionCode % 100));
                     dgvMaster.Rows.Add((i + 1),
                                         EditConstructionCode,
                                         CommonMotions.cnvString(wrk[1]),
-                                        ConstructionCode);
-
+                                        ConstructionCode,
+                                        iData[0],
+                                        iData[1]);
                     dgvMaster.Rows[i++].Cells[(int)DispGridColumn.ConstructionName].ToolTipText = CommonMotions.cnvString(wrk[1]);
-
                 }
-                // 表示行が足りない場合の表示
-                if (dgvMaster.Rows.Count < CommonDefine.s_MaxInitLineCount)
-                {
-                    int AddRowCnt = CommonDefine.s_MaxInitLineCount - dgvMaster.Rows.Count;
-                    for (int ix = 0; ix < AddRowCnt; ix++)
-                    {
-                        string strDummy = string.Empty;
-
-                        int rowCnt = dgvMaster.Rows.Add(strDummy,
-                                                        strDummy,
-                                                        strDummy,
-                                                        false);
-                        dgvMaster.Rows[rowCnt].ReadOnly = true;
-                    }
-                }
             }
             catch (Exception ex)
             {
@@ -301,6 +493,8 @@
             finally
             {
                 BaseDB.close(); BaseDB = null;
+                dgvMaster.RowCount += (CommonDefine.s_MaxInitLineCount - dgvMaster.Rows.Count);
+
             }
         }
         /// <summary>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionDiag.resx	(revision 51)
@@ -129,4 +129,10 @@
   <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column6.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/SubForms/FrmConstructionSpecDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionSpecDiag.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmConstructionSpecDiag.cs	(revision 51)
@@ -345,7 +345,7 @@
                     strSQL += " ,B.ItemName";
                     strSQL += " ,B.SubitemsFlg";
                     strSQL += " ,B.MyExpensesFlg";
-                    strSQL += " ,B.DeleteFlg";
+                    strSQL += " ,B.DeleteFlg";  
                     strSQL += " ,DATE_FORMAT(B.EntryDate, '%Y/%m/%d %H:%i:%s')";
                     strSQL += " ,DATE_FORMAT(B.UpdateDate, '%Y/%m/%d %H:%i:%s')";
                     strSQL += " FROM ComponentLinkMaster A, ConstructionItemMaster B";
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmMessageBoardReader.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmMessageBoardReader.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmMessageBoardReader.cs	(revision 51)
@@ -244,17 +244,12 @@
                 if (MessageBox.Show("表示中のメッセージを削除します。", "削除確認"
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
 
-                if (MessageBoardDelete())
-                {
-                    // 削除成功時はメニューへ戻る
-                    while (true)
-                    {
-                        if (ClsExcute.ProcControlPara.Count == 0) break;
-                        // 前のプロセスを全て消す
-                        ClsExcute.BackProcess();
-                    }
-                }
+                if (!MessageBoardDelete()) return;
+                // 削除成功時はメニューへ戻る
+                ClsExcute.BackProcess();
 
+                CommonMotions.RemoveEndMessage("掲示板メッセージデータ");
+
                 m_EndButton = DialogResult.OK;
                 this.Close();
             }
@@ -312,7 +307,7 @@
                 MessageBoardData data = new MessageBoardData();
                 if (!mbdDB.SelectAction(strSQL, ref data)) return;
 
-                lblTitle.Text = data.MessageTitle;        // タイトル
+                lblTitle.Text = data.MessageTitle;          // タイトル
                 lblWriter.Text = data.FromName;             // 書込み者
 
                 //  対象者名表示
@@ -324,7 +319,6 @@
                     foreach (MessageBoardTerget wrkterget in terList)
                     {
                         lstRecipient.Items.Add(wrkterget.ToName);
-                        
                     }
                 }
 
@@ -348,11 +342,8 @@
                     m_DataOwner = true;
                 }
 
-                // ログイン者が管理者ならばメッセージを削除できる
-                bool bDeleteFlg = false;
-                if (ClsMessageBoradAccess.MessageAccessPermission(m_RecordNumber, m_BranchNumber, false)) bDeleteFlg = true;
-
-                if (bDeleteFlg)
+                // ログイン者が管理者・所属長以上ならばメッセージを削除できる
+                if (ClsMessageBoradAccess.MessagePermission(m_RecordNumber, m_BranchNumber, false))
                 {
                     int xPoint = btnDelete.Location.X;
                     int yPoint = btnDelete.Location.Y;
@@ -529,7 +520,7 @@
 
                 if (!MesHisDB.InsertAction(MesHisRec))
                 {
-                    logger.ErrorFormat("掲示板書込みエラー", CommonMotions.GetMethodName());
+                    logger.ErrorFormat("掲示板書込みエラー：{0}", CommonMotions.GetMethodName());
                 }
             }
             catch (Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmMessageBoardWriter.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmMessageBoardWriter.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmMessageBoardWriter.cs	(revision 51)
@@ -220,17 +220,13 @@
                         , MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
 
                 // データ登録
-                if (MessageBoardEntry())
-                {
-                    // 書込み成功時はメニューへ戻る
-                    while (true)
-                    {
-                        if (ClsExcute.ProcControlPara.Count == 0) break;
-                        // 前のプロセスを全て消す
-                        ClsExcute.BackProcess();
-                    }
-                }
+                if (!MessageBoardEntry()) return;
 
+                // 書込み成功時はメニューへ戻る
+                ClsExcute.BackProcess();
+
+                CommonMotions.EntryEndMessage("掲示板メッセージデータ");
+
                 m_bChengeAns = false;
                 m_EndButton = DialogResult.OK;
                 this.Close();
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmNumberOfWorkers.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmNumberOfWorkers.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmNumberOfWorkers.cs	(revision 51)
@@ -280,6 +280,7 @@
             {
                 // 年月カラム数を取得する
                 string strSQL = "SELECT";
+                //strSQL += " TO_CHAR(A.DAILYDATADATE, 'YYYY/MM')";
                 strSQL += " DATE_FORMAT(A.DAILYDATADATE, '%Y/%m')";
                 strSQL += " FROM DAILYDATADETAIL A";
                 strSQL += " LEFT JOIN SUBCONTRACTORJOBCATEGORY B ON A.JOBCATEGORYCODE = B.JOBCATEGORYCODE";
@@ -286,6 +287,7 @@
                 strSQL += " LEFT JOIN  SUBCONTRACTORMASTER C ON A.COMPANYCODE = C.COMPANYCODE";
                 strSQL += string.Format(" WHERE PersonCode = {0}", m_PersonCode);
                 strSQL += string.Format(" AND ConstructionCode = {0}", m_ConstructionCode);
+                //strSQL += " group By TO_CHAR(A.DAILYDATADATE, 'YYYY/MM')";
                 strSQL += " group By DATE_FORMAT(A.DAILYDATADATE, '%Y/%m')";
                 strSQL += " ORDER BY 1";
                 ArrayList arList = new ArrayList();
@@ -410,6 +412,7 @@
                 dgvMain.Rows.Clear();
                 string strSQL = "SELECT";
                 strSQL += " A.JOBCATEGORYCODE, B.JOBCATEGORYNAME, A.COMPANYCODE,";
+                //strSQL += " C.COMPANYNAME, TO_CHAR(A.DAILYDATADATE, 'YYYY/MM'), SUM(A.TODAYHEADCOUNT)";
                 strSQL += " C.COMPANYNAME, DATE_FORMAT(A.DAILYDATADATE, '%Y/%m'), SUM(A.TODAYHEADCOUNT)";
                 strSQL += " FROM DAILYDATADETAIL A";
                 strSQL += " LEFT JOIN SUBCONTRACTORJOBCATEGORY B ON A.JOBCATEGORYCODE = B.JOBCATEGORYCODE";
@@ -416,6 +419,7 @@
                 strSQL += " LEFT JOIN SUBCONTRACTORMASTER C ON A.COMPANYCODE = C.COMPANYCODE";
                 strSQL += string.Format(" WHERE PersonCode = {0}", m_PersonCode);
                 strSQL += string.Format(" AND ConstructionCode = {0}", m_ConstructionCode);
+                //strSQL += " GROUP BY A.JOBCATEGORYCODE, B.JOBCATEGORYNAME, A.COMPANYCODE, C.COMPANYNAME, TO_CHAR(A.DAILYDATADATE, 'YYYY/MM')";
                 strSQL += " GROUP BY A.JOBCATEGORYCODE, B.JOBCATEGORYNAME, A.COMPANYCODE, C.COMPANYNAME, DATE_FORMAT(A.DAILYDATADATE, '%Y/%m')";
                 strSQL += " ORDER BY 3, 1, 4";
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.Designer.cs	(revision 51)
@@ -28,19 +28,19 @@
         /// </summary>
         private void InitializeComponent()
         {
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle39 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle31 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle32 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle34 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle35 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle36 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle37 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle38 = new System.Windows.Forms.DataGridViewCellStyle();
             this.btnEnd = new System.Windows.Forms.Button();
             this.groupBox1 = new System.Windows.Forms.GroupBox();
             this.cmbDepartment = new System.Windows.Forms.ComboBox();
@@ -51,6 +51,7 @@
             this.label2 = new System.Windows.Forms.Label();
             this.label3 = new System.Windows.Forms.Label();
             this.label5 = new System.Windows.Forms.Label();
+            this.lblCellTotal = new System.Windows.Forms.Label();
             this.dgvMain = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column14 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -109,7 +110,7 @@
             this.cmbDepartment.Name = "cmbDepartment";
             this.cmbDepartment.Size = new System.Drawing.Size(200, 24);
             this.cmbDepartment.TabIndex = 1;
-            this.cmbDepartment.SelectedIndexChanged += new System.EventHandler(this.cmbDepartment_SelectedIndexChanged);
+            this.cmbDepartment.TextChanged += new System.EventHandler(this.cmbDepartment_TextChanged);
             // 
             // label4
             // 
@@ -160,7 +161,7 @@
             this.cmbConstructionPerson.Name = "cmbConstructionPerson";
             this.cmbConstructionPerson.Size = new System.Drawing.Size(200, 24);
             this.cmbConstructionPerson.TabIndex = 2;
-            this.cmbConstructionPerson.SelectedIndexChanged += new System.EventHandler(this.cmbConstructionPerson_SelectedIndexChanged);
+            this.cmbConstructionPerson.TextChanged += new System.EventHandler(this.cmbConstructionPerson_TextChanged);
             // 
             // label2
             // 
@@ -197,6 +198,18 @@
             this.label5.Text = "第";
             this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
+            // lblCellTotal
+            // 
+            this.lblCellTotal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.lblCellTotal.AutoSize = true;
+            this.lblCellTotal.BackColor = System.Drawing.Color.Black;
+            this.lblCellTotal.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblCellTotal.ForeColor = System.Drawing.Color.White;
+            this.lblCellTotal.Location = new System.Drawing.Point(200, 559);
+            this.lblCellTotal.Name = "lblCellTotal";
+            this.lblCellTotal.Size = new System.Drawing.Size(0, 13);
+            this.lblCellTotal.TabIndex = 53;
+            // 
             // dgvMain
             // 
             this.dgvMain.AllowUserToAddRows = false;
@@ -203,21 +216,21 @@
             this.dgvMain.AllowUserToDeleteRows = false;
             this.dgvMain.AllowUserToResizeColumns = false;
             this.dgvMain.AllowUserToResizeRows = false;
-            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.dgvMain.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            dataGridViewCellStyle27.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.dgvMain.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle27;
             this.dgvMain.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
             this.dgvMain.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
             this.dgvMain.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
-            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
-            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvMain.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle28.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle28.BackColor = System.Drawing.SystemColors.Control;
+            dataGridViewCellStyle28.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            dataGridViewCellStyle28.ForeColor = System.Drawing.SystemColors.WindowText;
+            dataGridViewCellStyle28.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle28.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle28.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvMain.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle28;
             this.dgvMain.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvMain.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.dataGridViewTextBoxColumn1,
@@ -230,14 +243,14 @@
             this.dataGridViewTextBoxColumn6,
             this.Column7,
             this.Column8});
-            dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle13.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
-            dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle13.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
-            dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvMain.DefaultCellStyle = dataGridViewCellStyle13;
+            dataGridViewCellStyle39.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle39.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle39.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            dataGridViewCellStyle39.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle39.SelectionBackColor = System.Drawing.Color.LightSeaGreen;
+            dataGridViewCellStyle39.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle39.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvMain.DefaultCellStyle = dataGridViewCellStyle39;
             this.dgvMain.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
             this.dgvMain.Location = new System.Drawing.Point(7, 50);
             this.dgvMain.Name = "dgvMain";
@@ -249,12 +262,13 @@
             this.dgvMain.Size = new System.Drawing.Size(1000, 496);
             this.dgvMain.TabIndex = 52;
             this.dgvMain.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMain_CellDoubleClick);
+            this.dgvMain.MouseUp += new System.Windows.Forms.MouseEventHandler(this.dgvMain_MouseUp);
             // 
             // dataGridViewTextBoxColumn1
             // 
-            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle3.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle29.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle29;
             this.dataGridViewTextBoxColumn1.Frozen = true;
             this.dataGridViewTextBoxColumn1.HeaderText = "№";
             this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
@@ -265,9 +279,9 @@
             // 
             // Column14
             // 
-            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column14.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle30.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle30.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column14.DefaultCellStyle = dataGridViewCellStyle30;
             this.Column14.Frozen = true;
             this.Column14.HeaderText = "部署";
             this.Column14.Name = "Column14";
@@ -275,9 +289,9 @@
             // 
             // dataGridViewTextBoxColumn2
             // 
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle5.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle31.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle31;
             this.dataGridViewTextBoxColumn2.Frozen = true;
             this.dataGridViewTextBoxColumn2.HeaderText = "担当者名";
             this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
@@ -287,8 +301,8 @@
             // 
             // dataGridViewTextBoxColumn3
             // 
-            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle32.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle32;
             this.dataGridViewTextBoxColumn3.Frozen = true;
             this.dataGridViewTextBoxColumn3.HeaderText = "工事コード";
             this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
@@ -300,9 +314,9 @@
             // 
             // dataGridViewTextBoxColumn4
             // 
-            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle7;
+            dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle33.Font = new System.Drawing.Font("ＭＳ Ｐ明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle33;
             this.dataGridViewTextBoxColumn4.Frozen = true;
             this.dataGridViewTextBoxColumn4.HeaderText = "工　事　名　称";
             this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4";
@@ -313,9 +327,9 @@
             // 
             // Column15
             // 
-            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle8.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.Column15.DefaultCellStyle = dataGridViewCellStyle8;
+            dataGridViewCellStyle34.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle34.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column15.DefaultCellStyle = dataGridViewCellStyle34;
             this.Column15.Frozen = true;
             this.Column15.HeaderText = "状　態";
             this.Column15.Name = "Column15";
@@ -325,9 +339,9 @@
             // 
             // dataGridViewTextBoxColumn5
             // 
-            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle9.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.dataGridViewTextBoxColumn5.DefaultCellStyle = dataGridViewCellStyle9;
+            dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle35.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn5.DefaultCellStyle = dataGridViewCellStyle35;
             this.dataGridViewTextBoxColumn5.Frozen = true;
             this.dataGridViewTextBoxColumn5.HeaderText = "受注金額";
             this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5";
@@ -338,9 +352,9 @@
             // 
             // dataGridViewTextBoxColumn6
             // 
-            dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle10.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle10;
+            dataGridViewCellStyle36.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle36.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle36;
             this.dataGridViewTextBoxColumn6.HeaderText = "会社経費";
             this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6";
             this.dataGridViewTextBoxColumn6.ReadOnly = true;
@@ -349,9 +363,9 @@
             // 
             // Column7
             // 
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle11.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column7.DefaultCellStyle = dataGridViewCellStyle11;
+            dataGridViewCellStyle37.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle37.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle37;
             this.Column7.HeaderText = "部署経費";
             this.Column7.Name = "Column7";
             this.Column7.ReadOnly = true;
@@ -360,9 +374,9 @@
             // 
             // Column8
             // 
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
-            dataGridViewCellStyle12.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.Column8.DefaultCellStyle = dataGridViewCellStyle12;
+            dataGridViewCellStyle38.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle38.Font = new System.Drawing.Font("Century", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.Column8.DefaultCellStyle = dataGridViewCellStyle38;
             this.Column8.HeaderText = "営業経費";
             this.Column8.Name = "Column8";
             this.Column8.ReadOnly = true;
@@ -375,6 +389,7 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
             this.BackColor = System.Drawing.Color.Black;
             this.ClientSize = new System.Drawing.Size(1014, 584);
+            this.Controls.Add(this.lblCellTotal);
             this.Controls.Add(this.dgvMain);
             this.Controls.Add(this.groupBox1);
             this.Controls.Add(this.btnEnd);
@@ -386,11 +401,13 @@
             this.Name = "FrmPriceOfBudget";
             this.ShowIcon = false;
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "未作成台帳確認";
             this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
             this.groupBox1.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.dgvMain)).EndInit();
             this.ResumeLayout(false);
+            this.PerformLayout();
 
         }
 
@@ -417,5 +434,6 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+        private System.Windows.Forms.Label lblCellTotal;
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPriceOfBudget.cs	(revision 51)
@@ -75,11 +75,11 @@
             /// </summary>
             DataType1 = 0,
             /// <summary>
-            /// 
+            /// 施工中台帳分合計
             /// </summary>
             DataType2,
             /// <summary>
-            /// 
+            /// 完了工事台帳分合計
             /// </summary>
             DataType3,
             /// <summary>
@@ -92,8 +92,8 @@
         /// 合計行タイトル
         /// </summary>
         private static string[] s_TotalTitleArray = new string[] {  "＊台帳未作成分合計＊",
-                                                                    "＊　　　　　　　　　＊",
-                                                                    "＊　　　　　　　　　＊",
+                                                                    "＊施工中台帳分合計＊",
+                                                                    "＊完了工事台帳分合計＊",
                                                                     "＊＊　総　合　計　＊＊",
                                                                 };
         #endregion
@@ -116,6 +116,8 @@
         /// </summary>
         private DialogResult m_EndButton = DialogResult.None;
 
+        // 合計エリア
+        private int[] m_TotalArea;
         #endregion
 
         #region プロパティ
@@ -162,33 +164,36 @@
         }
         #endregion
 
-        #region 担当者コンボボックス変更
+        #region 部署コンボボックス変更
         /// <summary>
-        /// 担当者変更
+        /// 部署コンボボックス変更
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbConstructionPerson_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbDepartment_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
 
+            // 担当者コンボボックス変更
+            SetcmbPersons();
+
             // データ表示
             DispData();
         }
         #endregion
 
-        #region 部署コンボボックス変更
+        #region 担当者コンボボックス変更
         /// <summary>
-        /// 部署コンボボックス変更
+        /// 担当者コンボボックス変更
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbDepartment_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbConstructionPerson_TextChanged(object sender, EventArgs e)
         {
             if (m_initDataLoad) return;
 
-            // 担当者コンボボックス変更
-            SetcmbPersons();
+            // 担当者選択時部署選択を設定する
+            SetPerosonToDepartment();
 
             // データ表示
             DispData();
@@ -228,6 +233,50 @@
         }
         #endregion
 
+        #region グリッドマウスアップ
+        /// <summary>
+        /// グリッドマウスアップ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMain_MouseUp(object sender, MouseEventArgs e)
+        {
+            try
+            {
+                DataGridView dgv = (DataGridView)sender;
+
+                lblCellTotal.Text = string.Empty;
+
+                double dTotal = 0;
+                int DataCnt = 0;
+                int NumericCnt = 0;
+                foreach (DataGridViewCell c in dgv.SelectedCells)
+                {
+                    if (CommonMotions.chkObjectIsNull(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex])) continue;
+                    if (CommonMotions.chkCellBlank(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value)) continue;
+
+                    Console.WriteLine("{0}, {1}", c.ColumnIndex, c.RowIndex);
+                    DataCnt++;
+                    dTotal += CommonMotions.cnvDouble(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value);
+                    if (CommonMotions.chkNumeric(dgv.Rows[c.RowIndex].Cells[c.ColumnIndex].Value)) NumericCnt++;
+                }
+                if (DataCnt <= 1 || dTotal == 0 || NumericCnt == 0) return;
+                string strTotal = CommonMotions.cnvTruncate(dTotal).ToString("#,#");
+                if (dTotal - System.Math.Floor(dTotal) != 0) strTotal = dTotal.ToString("#,#.00");
+
+                string strwrkData = string.Format(CommonDefine.s_CalculateCellFormat,
+                                                    CommonMotions.cnvTruncate(dTotal / (double)NumericCnt).ToString("#,#"),
+                                                    DataCnt.ToString("#,#"),
+                                                    strTotal);
+                lblCellTotal.Text = strwrkData;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 終了ボタン
         /// <summary>
         /// 終了ボタン押下
@@ -278,17 +327,37 @@
         /// </summary>
         private void DispData()
         {
+            DataGridView dgv = dgvMain;
             try
             {
-                dgvMain.Rows.Clear();
+                // 総合計エリア初期化
+                int TotalColCnt = Enum.GetNames(typeof(GridColumn)).Length;
+                m_TotalArea = new int[TotalColCnt];
+                Array.Clear(m_TotalArea, 0, m_TotalArea.Length);
 
-                // データ表示処理
-                SetRowData();
+                dgv.Rows.Clear();
+
+                // 台帳未作成データ表示処理
+                SetNotCreateRowData();
+
+                // 台帳データ表示
+                SetCreateRowData();
+
+                // 総合計を表示する
+                DisplayTotalRow((int)RowTitleNum.AllTotal, m_TotalArea);
+
             }
             catch (System.Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+            finally
+            {
+                if (CommonDefine.s_MaxInitLineCount > dgv.RowCount)
+                {
+                    dgv.RowCount += CommonDefine.s_MaxInitLineCount - dgv.RowCount;
+                }
+            }
         }
         #endregion
 
@@ -349,11 +418,11 @@
         }
         #endregion
 
-        #region データ表示
+        #region 台帳未作成データ表示
         /// <summary>
-        /// データ表示処理
+        /// 台帳未作成データ表示処理
         /// </summary>
-        private void SetRowData()
+        private void SetNotCreateRowData()
         {
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
             DataGridView dgv = dgvMain;
@@ -420,10 +489,10 @@
                 if (!BaseDB.ExecuteReader(strSQL, ref DatArList)) return;
                 if (DatArList.Count == 0) return;
 
-                // 合計エリア
+                // 合計エリア初期化
                 int TotalColCnt = Enum.GetNames(typeof(GridColumn)).Length;
-                int[] TotalArea = new int[TotalColCnt];
-                Array.Clear(TotalArea, 0, TotalArea.Length);
+                int[] CurTotalArea = new int[TotalColCnt];
+                Array.Clear(CurTotalArea, 0, CurTotalArea.Length);
 
                 int ino = 1;
                 bool FirstFlg = true;
@@ -455,17 +524,132 @@
                                     , (OrdersDecisionPrice * ExpensesRatio3).ToString("#,0")                    // 営業経費
                                 );
 
-                    TotalArea[(int)GridColumn.OrdersPrice] += OrdersDecisionPrice;                                  // 受注金額
-                    TotalArea[(int)GridColumn.CompanyExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio1);       // 会社経費
-                    TotalArea[(int)GridColumn.DepartmentExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio2);    // 部署経費
-                    TotalArea[(int)GridColumn.SaleseExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio3);        // 営業経費
+                    CurTotalArea[(int)GridColumn.OrdersPrice] += OrdersDecisionPrice;                                  // 受注金額
+                    CurTotalArea[(int)GridColumn.CompanyExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio1);       // 会社経費
+                    CurTotalArea[(int)GridColumn.DepartmentExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio2);    // 部署経費
+                    CurTotalArea[(int)GridColumn.SaleseExpeses] += (int)(OrdersDecisionPrice * ExpensesRatio3);        // 営業経費
                 }
 
                 // 合計行表示
+                DisplayTotalRow((int)RowTitleNum.DataType1, CurTotalArea, false);
+
+                m_TotalArea[(int)GridColumn.OrdersPrice] += CurTotalArea[(int)GridColumn.OrdersPrice];
+                m_TotalArea[(int)GridColumn.CompanyExpeses] += CurTotalArea[(int)GridColumn.OrdersPrice];
+                m_TotalArea[(int)GridColumn.DepartmentExpeses] += CurTotalArea[(int)GridColumn.OrdersPrice];
+                m_TotalArea[(int)GridColumn.SaleseExpeses] += CurTotalArea[(int)GridColumn.OrdersPrice];
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region 台帳データ表示
+        /// <summary>
+        /// 台帳データ表示処理
+        /// </summary>
+        private void SetCreateRowData()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            DataGridView dgv = dgvMain;
+            try
+            {
+                int SelectPeriod = (int)numUDConstPro.Value;
+                // コンボボックスより選択部署を取得する
+                int DepartmantCode = GetDepartmentCode();
+                // コンボボックスより選択担当者を取得する
+                int PersonCode = GetConstructionPersonCode();
+
+                int iCode1 = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+
+                string strSQL = "SELECT A.COMPLATEFLG, SUM(A.ORDERSDECISIONPRICE), SUM(A.COMPANYEXPENSES), SUM(A.DEPARTMENTEXPENSES), SUM(A.SALESEXPENSES)";
+                strSQL += " FROM CONSTRUCTIONLEDGER A, CONSTRUCTIONBASEINFO B, PERSONINCHARGEMASTER C";
+                strSQL += " WHERE A.CONSTRUCTIONCODE = B.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.CONSTRUCTIONPERIOD = {0}", SelectPeriod);
+                strSQL += string.Format(" AND B.CONSTRUCTIONSTATUSFLG != {0}", iCode1);
+                strSQL += " AND C.PERSONCODE = B.CONSTRUCTIONPERSONCODE";
+                if (DepartmantCode != 0) strSQL += string.Format(" AND C.DEPARTMENTCODE = {0}", DepartmantCode);
+                if (PersonCode != 0) strSQL += string.Format(" AND C.PERSONCODE = {0}", PersonCode);
+                strSQL += " GROUP BY A.COMPLATEFLG";
+                strSQL += " ORDER BY 1";
+
+                ArrayList DatArList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref DatArList)) return;
+                if (DatArList.Count == 0) return;
+
+                // 合計エリア初期化
+                int TotalColCnt = Enum.GetNames(typeof(GridColumn)).Length;
+                int[] CurTotalArea = new int[TotalColCnt];
+                Array.Clear(CurTotalArea, 0, CurTotalArea.Length);
+
+                bool FirstFlg = true;
+                int BreakKey = -1;
+                foreach (object[] objGetArry in DatArList)
+                {
+                    int CompFlg = CommonMotions.cnvInt(objGetArry[0]);
+                    if (BreakKey != CompFlg)
+                    {
+                        if (!FirstFlg)
+                        {
+                            // 合計表示(施工中だけ表示)
+                            if (CompFlg == 0) DisplayTotalRow((int)RowTitleNum.DataType2, CurTotalArea);
+                        }
+                        Array.Clear(CurTotalArea, 0, CurTotalArea.Length);
+                        BreakKey = CompFlg;
+                        FirstFlg = false;
+                    }
+
+                    int OrdersDecisionPrice = CommonMotions.cnvInt(objGetArry[1]);      // 受注金額
+                    int ExpensesPrice1 = CommonMotions.cnvInt(objGetArry[2]);           // 会社経費
+                    int ExpensesPrice2 = CommonMotions.cnvInt(objGetArry[3]);           // 部署経費
+                    int ExpensesPrice3 = CommonMotions.cnvInt(objGetArry[4]);           // 営業経費
+
+                    CurTotalArea[(int)GridColumn.OrdersPrice] += OrdersDecisionPrice;   // 受注金額
+                    CurTotalArea[(int)GridColumn.CompanyExpeses] += ExpensesPrice1;     // 会社経費
+                    CurTotalArea[(int)GridColumn.DepartmentExpeses] += ExpensesPrice2;  // 部署経費
+                    CurTotalArea[(int)GridColumn.SaleseExpeses] += ExpensesPrice3;      // 営業経費
+
+                    m_TotalArea[(int)GridColumn.OrdersPrice] += CurTotalArea[(int)GridColumn.OrdersPrice];
+                    m_TotalArea[(int)GridColumn.CompanyExpeses] += CurTotalArea[(int)GridColumn.OrdersPrice];
+                    m_TotalArea[(int)GridColumn.DepartmentExpeses] += CurTotalArea[(int)GridColumn.OrdersPrice];
+                    m_TotalArea[(int)GridColumn.SaleseExpeses] += CurTotalArea[(int)GridColumn.OrdersPrice];
+                }
+
+                // 合計行表示
+                DisplayTotalRow((int)RowTitleNum.DataType3, CurTotalArea);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+            }
+        }
+        #endregion
+
+        #region 合計を表示
+        /// <summary>
+        /// 合計を表示する
+        /// </summary>
+        private void DisplayTotalRow(int TitleNo, int[] TotalArea, bool AddBrankRow= true)
+        {
+            try
+            {
+                DataGridView dgv = dgvMain;
+
+                if (AddBrankRow) dgv.Rows.Add(1);
+                // 合計行表示
                 int TotalRow = dgv.Rows.Add(1);
-                dgv.Rows[TotalRow].Cells[(int)GridColumn.ConstrName].Value = s_TotalTitleArray[(int)RowTitleNum.DataType1];
+                dgv.Rows[TotalRow].Cells[(int)GridColumn.ConstrName].Value = s_TotalTitleArray[TitleNo];
                 dgv.Rows[TotalRow].Cells[(int)GridColumn.ConstrName].Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
-                    // 行の色を変える
+                // 行の色を変える
                 SetRowColor(dgv.Rows[TotalRow], s_RowTotalBackColor, s_RowTotalForeColor);
 
                 // 数値表示
@@ -478,14 +662,6 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                BaseDB.close(); BaseDB = null;
-                if (CommonDefine.s_MaxInitLineCount > dgv.RowCount)
-                {
-                    dgv.RowCount += CommonDefine.s_MaxInitLineCount - dgv.RowCount;
-                }
-            }
         }
         #endregion
 
@@ -534,20 +710,36 @@
                 string strSQL = string.Empty;
                 // 部署マスタを検索する
                 strSQL = "SELECT A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER, COUNT(*)";
-                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C, CONSTRUCTIONBUDGET D";
+                strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B, CONSTRUCTIONBASEINFO C";
                 strSQL += " WHERE A.DELETEFLG = 0";
 
-                // システム権限によってデータアクセスに制限がある
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
-                    || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // 所属長
-                    // 一般使用者（自分のみアクセス可能）
-                    strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    // システム権限によってデータアクセスに制限がある
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key
+                        || CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // 所属長
+                        // 一般使用者（自分のみアクセス可能）
+                        strSQL += string.Format(" AND A.DEPARTMENTCODE = {0}", CommonMotions.LoginUserData.DepartmentCode);
+                    }
                 }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                    {
+
+                    }
+                    else
+                    {
+                        // 参照部署マスタより取得する
+                        strSQL += " AND A.DEPARTMENTCODE IN (SELECT A1.DEPARTMENTCODE FROM PERSONDEPARTMENTMASTER A1";
+                        strSQL += string.Format(" WHERE A1.PERSONCODE = {0})", CommonMotions.LoginUserData.PersonCode);
+                    }
+                }
                 strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
                 strSQL += " AND B.PERSONCODE = C.CONSTRUCTIONPERSONCODE";
-                strSQL += " AND D.CONSTRUCTIONCODE = C.CONSTRUCTIONCODE";
                 strSQL += " GROUP BY A.DEPARTMENTCODE, A.DEPARTMENTSTRING, A.DISPLAYORDER";
                 strSQL += " ORDER BY A.DISPLAYORDER ASC";
 
@@ -570,15 +762,31 @@
                 // コンボボックス初期表示
                 ComboBoxAction.InitDataSetCombBox(cmbDepartment, ConstructionDataList);
 
-                // 所属長
-                // 一般使用者（自分のみアクセス可能）
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
-                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    // 総務部所属者以外
-                    if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
-                        cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    // 所属長
+                    // 一般使用者（自分のみアクセス可能）
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key ||
+                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                    {
+                        // 総務部所属者以外
+                        if (CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                            cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                    }
                 }
+                else
+                {
+                    // 対象がコンボボックスデータにあればセットする
+                    for (int i = 0; i < cmbDepartment.Items.Count; i++)
+                    {
+                        KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbDepartment.Items[i];
+                        if (wrkPair.Key == CommonMotions.LoginUserData.DepartmentCode)
+                        {
+                            cmbDepartment.SelectedValue = CommonMotions.LoginUserData.DepartmentCode;
+                        }
+                    }
+                }
 
                 return true;
             }
@@ -634,12 +842,27 @@
                 // コンボボックス初期表示
                 ComboBoxAction.InitDataSetCombBox(cmbConstructionPerson, ConstructionDataList);
 
-                // 一般ユーザーで総務部所属者ではない場合、ログイン者のコードをセットする
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
-                    CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
-                    cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    // 一般ユーザーで総務部所属者ではない場合、ログイン者のコードをセットする
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key &&
+                        CommonMotions.LoginUserData.DepartmentCode != CommonDefine.s_GeneralAffairsDevision)
+                    {
+                        cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                    }
                 }
+                else
+                {
+                    for (int i = 0; i < cmbConstructionPerson.Items.Count; i++)
+                    {
+                        KeyValuePair<int, string> wrkPair = (KeyValuePair<int, string>)cmbConstructionPerson.Items[i];
+                        if (wrkPair.Key == CommonMotions.LoginUserData.PersonCode)
+                        {
+                            cmbConstructionPerson.SelectedValue = CommonMotions.LoginUserData.PersonCode;
+                        }
+                    }
+                }
 
                 return true;
             }
@@ -721,18 +944,16 @@
                 PersonDB.SelectAction(strSQL, ref PersonRec);
 
                 // 部署コンボボックスへ部署コードセット
-                if (PersonRec.DepartmentCode < 0 || DepartmentCode == PersonRec.DepartmentCode) return true;
+                if (PersonRec.DepartmentCode > 0 && DepartmentCode != PersonRec.DepartmentCode)
+                {
+                    bool bSave = m_initDataLoad;
+                    m_initDataLoad = true;
+                    cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
+                    SetcmbPersons();    // 担当者コンボボックス変更
+                    cmbConstructionPerson.SelectedValue = PersonCode;
+                    m_initDataLoad = bSave;
+                }
 
-                m_initDataLoad = true;
-
-                // 部署コードセット
-                cmbDepartment.SelectedValue = PersonRec.DepartmentCode;
-
-                // 担当者コード再セット
-                cmbConstructionPerson.SelectedValue = PersonCode;
-
-                m_initDataLoad = false;
-
                 return true;
             }
             catch (Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.Designer.cs	(revision 51)
@@ -0,0 +1,271 @@
+﻿namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmPrintConfirmation
+    {
+        /// <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()
+        {
+            this.btnExecProc1 = new System.Windows.Forms.Button();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnExecProc2 = new System.Windows.Forms.Button();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.lblMessageB = new System.Windows.Forms.Label();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.label1 = new System.Windows.Forms.Label();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.label2 = new System.Windows.Forms.Label();
+            this.groupBox3 = new System.Windows.Forms.GroupBox();
+            this.dateTimePicker2 = new System.Windows.Forms.DateTimePicker();
+            this.label3 = new System.Windows.Forms.Label();
+            this.dateTimePicker1 = new System.Windows.Forms.DateTimePicker();
+            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.radioButton1 = new System.Windows.Forms.RadioButton();
+            this.panel1.SuspendLayout();
+            this.groupBox1.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            this.groupBox3.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // btnExecProc1
+            // 
+            this.btnExecProc1.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc1.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnExecProc1.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc1.Location = new System.Drawing.Point(235, 10);
+            this.btnExecProc1.Name = "btnExecProc1";
+            this.btnExecProc1.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc1.TabIndex = 0;
+            this.btnExecProc1.Text = "印刷のみ";
+            this.btnExecProc1.UseVisualStyleBackColor = false;
+            this.btnExecProc1.Click += new System.EventHandler(this.btnExecProc1_Click);
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(531, 10);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(140, 40);
+            this.btnCancel.TabIndex = 3;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // btnExecProc2
+            // 
+            this.btnExecProc2.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc2.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnExecProc2.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc2.Location = new System.Drawing.Point(383, 10);
+            this.btnExecProc2.Name = "btnExecProc2";
+            this.btnExecProc2.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc2.TabIndex = 1;
+            this.btnExecProc2.Text = "保存のみ";
+            this.btnExecProc2.UseVisualStyleBackColor = false;
+            this.btnExecProc2.Click += new System.EventHandler(this.btnExecProc2_Click);
+            // 
+            // panel1
+            // 
+            this.panel1.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.panel1.Controls.Add(this.btnCancel);
+            this.panel1.Controls.Add(this.btnExecProc1);
+            this.panel1.Controls.Add(this.btnExecProc2);
+            this.panel1.Location = new System.Drawing.Point(-3, 288);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(700, 60);
+            this.panel1.TabIndex = 3;
+            // 
+            // lblMessageB
+            // 
+            this.lblMessageB.AutoSize = true;
+            this.lblMessageB.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblMessageB.Location = new System.Drawing.Point(78, 262);
+            this.lblMessageB.Name = "lblMessageB";
+            this.lblMessageB.Size = new System.Drawing.Size(539, 21);
+            this.lblMessageB.TabIndex = 4;
+            this.lblMessageB.Text = "【印刷のみ】、【保存のみ】を選択してください。";
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox1.Controls.Add(this.label1);
+            this.groupBox1.Location = new System.Drawing.Point(17, 12);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(660, 72);
+            this.groupBox1.TabIndex = 7;
+            this.groupBox1.TabStop = false;
+            this.groupBox1.Text = "工事案件";
+            // 
+            // label1
+            // 
+            this.label1.BackColor = System.Drawing.Color.White;
+            this.label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label1.Location = new System.Drawing.Point(10, 30);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(640, 30);
+            this.label1.TabIndex = 0;
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox2.Controls.Add(this.label2);
+            this.groupBox2.Location = new System.Drawing.Point(17, 94);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(660, 72);
+            this.groupBox2.TabIndex = 8;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = "印刷処理";
+            // 
+            // label2
+            // 
+            this.label2.BackColor = System.Drawing.Color.White;
+            this.label2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label2.Location = new System.Drawing.Point(10, 30);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(640, 30);
+            this.label2.TabIndex = 0;
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // groupBox3
+            // 
+            this.groupBox3.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox3.Controls.Add(this.dateTimePicker2);
+            this.groupBox3.Controls.Add(this.label3);
+            this.groupBox3.Controls.Add(this.dateTimePicker1);
+            this.groupBox3.Controls.Add(this.radioButton2);
+            this.groupBox3.Controls.Add(this.radioButton1);
+            this.groupBox3.Location = new System.Drawing.Point(17, 178);
+            this.groupBox3.Name = "groupBox3";
+            this.groupBox3.Size = new System.Drawing.Size(660, 72);
+            this.groupBox3.TabIndex = 9;
+            this.groupBox3.TabStop = false;
+            this.groupBox3.Text = "印刷範囲";
+            // 
+            // dateTimePicker2
+            // 
+            this.dateTimePicker2.Enabled = false;
+            this.dateTimePicker2.Location = new System.Drawing.Point(455, 34);
+            this.dateTimePicker2.Name = "dateTimePicker2";
+            this.dateTimePicker2.ShowUpDown = true;
+            this.dateTimePicker2.Size = new System.Drawing.Size(187, 28);
+            this.dateTimePicker2.TabIndex = 4;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(422, 38);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(33, 21);
+            this.label3.TabIndex = 3;
+            this.label3.Text = "～";
+            // 
+            // dateTimePicker1
+            // 
+            this.dateTimePicker1.Enabled = false;
+            this.dateTimePicker1.Location = new System.Drawing.Point(235, 34);
+            this.dateTimePicker1.Name = "dateTimePicker1";
+            this.dateTimePicker1.ShowUpDown = true;
+            this.dateTimePicker1.Size = new System.Drawing.Size(187, 28);
+            this.dateTimePicker1.TabIndex = 2;
+            // 
+            // radioButton2
+            // 
+            this.radioButton2.AutoSize = true;
+            this.radioButton2.Location = new System.Drawing.Point(115, 36);
+            this.radioButton2.Name = "radioButton2";
+            this.radioButton2.Size = new System.Drawing.Size(120, 25);
+            this.radioButton2.TabIndex = 1;
+            this.radioButton2.Text = "日付指定";
+            this.radioButton2.UseVisualStyleBackColor = true;
+            this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
+            // 
+            // radioButton1
+            // 
+            this.radioButton1.AutoSize = true;
+            this.radioButton1.Checked = true;
+            this.radioButton1.Location = new System.Drawing.Point(10, 36);
+            this.radioButton1.Name = "radioButton1";
+            this.radioButton1.Size = new System.Drawing.Size(97, 25);
+            this.radioButton1.TabIndex = 0;
+            this.radioButton1.TabStop = true;
+            this.radioButton1.Text = "全印刷";
+            this.radioButton1.UseVisualStyleBackColor = true;
+            this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
+            // 
+            // FrmPrintConfirmation
+            // 
+            this.AcceptButton = this.btnExecProc1;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.BackColor = System.Drawing.Color.White;
+            this.ClientSize = new System.Drawing.Size(694, 345);
+            this.Controls.Add(this.groupBox3);
+            this.Controls.Add(this.groupBox2);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.lblMessageB);
+            this.Controls.Add(this.panel1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmPrintConfirmation";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "印　刷　実　行　確　認";
+            this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.FrmStatusAndDate_FormClosed);
+            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            this.panel1.ResumeLayout(false);
+            this.groupBox1.ResumeLayout(false);
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox3.ResumeLayout(false);
+            this.groupBox3.PerformLayout();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnExecProc1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnExecProc2;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Label lblMessageB;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.GroupBox groupBox3;
+        private System.Windows.Forms.DateTimePicker dateTimePicker2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.DateTimePicker dateTimePicker1;
+        private System.Windows.Forms.RadioButton radioButton2;
+        private System.Windows.Forms.RadioButton radioButton1;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.cs	(revision 51)
@@ -0,0 +1,391 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using System.Collections;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmPrintConfirmation : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        private enum Dispcount
+        {
+            ExeCuteDate = 0,
+            ProgressStatusA,
+            ProgressStatusB,
+            radioButtonA1,
+            radioButtonA2,
+            radioButtonB1,
+            radioButtonB2,
+            radioButtonC1,
+            radioButtonC2,
+        }
+
+        /// <summary>
+        /// 印刷範囲選択フラグ
+        /// </summary>
+        public enum PrintSelFlg
+        {
+            /// <summary>
+            /// 全印刷
+            /// </summary>
+            All = 0,
+            /// <summary>
+            /// 範囲印刷
+            /// </summary>
+            Range,
+        }
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// 印刷範囲
+        /// </summary>
+        private int m_PrintRange = 0;
+
+        /// <summary>
+        /// 印刷開始日
+        /// </summary>
+        private DateTime m_PrintStartDate = DateTime.MinValue;
+
+        /// <summary>
+        /// 印刷終了日
+        /// </summary>
+        private DateTime m_PrintCompDate = DateTime.MinValue;
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+
+        /// <summary>
+        /// 実行処理番号
+        /// </summary>
+        private int m_ExecuteProcNo = 0;
+
+        /// <summary>
+        /// 日付印刷
+        /// </summary>
+        private bool m_bDatePrintFlg = true;
+        
+        /// <summary>
+        /// コンロールオブジェクト
+        /// </summary>
+        private Control[] m_dispControl = new Control[9];
+
+        /// <summary>
+        /// 工事基本情報
+        /// </summary>
+        private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
+        /// <summary>
+        /// ツールチップ
+        /// </summary>
+        private ToolTip ToolTip1 = new ToolTip();
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        /// <summary>
+        /// 印刷範囲
+        /// </summary>
+        public int PrintRange
+        {
+            get { return m_PrintRange; }
+            set { m_PrintRange = value; }
+        }
+
+        /// <summary>
+        /// 印刷開始日
+        /// </summary>
+        public DateTime StartDate
+        {
+            get { return m_PrintStartDate; }
+            set { m_PrintStartDate = value; }
+        }
+
+        /// <summary>
+        /// 印刷終了日
+        /// </summary>
+        public DateTime CompDate
+        {
+            get { return m_PrintCompDate; }
+            set { m_PrintCompDate = value; }
+        }
+
+        /// <summary>
+        /// 実行処理番号
+        /// </summary>
+        public int ExecuteProcNo
+        {
+            get { return m_ExecuteProcNo; }
+            set { m_ExecuteProcNo = value; }
+        }
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+        /// <summary>
+        /// 日付印刷フラグ
+        /// </summary>
+        public bool DatePrintFlg
+        {
+            get { return m_bDatePrintFlg; }
+            set { m_bDatePrintFlg = value; }
+        }
+        #endregion
+
+        #region ×ボタン
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmStatusAndDate_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            if (m_EndButton == DialogResult.None) m_EndButton = DialogResult.Cancel;
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmPrintConfirmation()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+         
+            // 初期表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region キャンセルボタン
+        /// <summary>
+        /// キャンセルボタン追加
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.Cancel;
+            this.Close();
+        }
+        #endregion
+
+        #region 印刷のみボタン
+        /// <summary>
+        /// 印刷のみボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnExecProc1_Click(object sender, EventArgs e)
+        {
+            // 日付チェック
+            if(!PrintDateCheck()) return;
+
+            m_EndButton = DialogResult.Yes;
+            // 指定データ取得
+            GetPrintRangeData();
+
+            this.Close();
+        }
+        #endregion
+
+        #region 保存のみボタン
+        /// <summary>
+        /// 保存のみボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnExecProc2_Click(object sender, EventArgs e)
+        {
+            // 日付チェック
+            if (!PrintDateCheck()) return;
+
+            m_EndButton = DialogResult.No;
+            // 指定データ取得
+            GetPrintRangeData();
+
+            this.Close();
+        }
+        #endregion
+
+        #region 表示関連
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                if (!DisplayData())
+                {
+                    m_EndButton = DialogResult.Cancel;
+                    this.Close();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region データ表示処理
+        /// <summary>
+        /// データ表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DisplayData()
+        {
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            try
+            {
+                bool bRet = true;
+
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B";
+                strSQL += string.Format(" Where A.CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                strSQL += " AND (B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                strSQL += string.Format(" AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+                ArrayList arList = new ArrayList();
+                if (!cbDB.ExecuteReader(strSQL, ref arList)) return false;
+                if (arList.Count == 0) return false;
+                object[] objRec = (object[])arList[0];
+
+                label1.Text = CommonMotions.cnvString(objRec[1]);
+                ToolTip1.SetToolTip(label1, CommonMotions.cnvString(objRec[1]));
+
+                string strProcess = ClsExcute.ProcessExecuteName[m_ExecuteProcNo];
+                switch(m_ExecuteProcNo)
+                {
+                    case (int)ClsExcute.ProcessExecuteNo.DRConstruction:
+                        label2.Text = strProcess.Substring(0, strProcess.IndexOf("－")) + "印刷";
+                        break;
+                }
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+        }
+        #endregion
+
+        #region 印刷範囲変更
+        /// <summary>
+        /// 印刷範囲変更
+        /// </summary>
+        private void radioButton_CheckedChanged(object sender, EventArgs e)
+        {
+            dateTimePicker1.Value = DateTime.Now;
+            dateTimePicker2.Value = DateTime.Now;
+            if (radioButton1.Checked)
+            {
+                dateTimePicker1.Enabled = false;
+                dateTimePicker2.Enabled = false;
+            }
+            else
+            {
+                dateTimePicker1.Enabled = true;
+                dateTimePicker2.Enabled = true;
+            }
+        }
+        #endregion
+
+        #region 印刷範囲指定取得
+        /// <summary>
+        /// 印刷範囲指定取得
+        /// </summary>
+        private void GetPrintRangeData()
+        {
+            // 印刷範囲セット
+            if (radioButton1.Checked)
+            {
+                m_PrintRange = (int)PrintSelFlg.All;
+            }
+            else if (radioButton2.Checked)
+            {
+                m_PrintRange = (int)PrintSelFlg.Range;
+                m_PrintStartDate = dateTimePicker1.Value;
+                m_PrintCompDate = dateTimePicker2.Value;
+            }
+        }
+        #endregion
+
+        #region 日付関連チェック
+        /// <summary>
+        /// 日付関連チェック
+        /// </summary>
+        /// <returns></returns>
+        private bool PrintDateCheck()
+        {
+            try
+            {
+                if (dateTimePicker1.Value > dateTimePicker2.Value)
+                {
+                    MessageBox.Show("終了日付が開始日付より以前になっています。", "日付エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmPrintConfirmation.resx	(revision 51)
@@ -0,0 +1,120 @@
+﻿<?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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.Designer.cs	(revision 51)
@@ -0,0 +1,329 @@
+﻿namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmRequestPrint
+    {
+        /// <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()
+        {
+            this.btnExecProc1 = new System.Windows.Forms.Button();
+            this.btnCancel = new System.Windows.Forms.Button();
+            this.btnExecProc2 = new System.Windows.Forms.Button();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.lblMessageB = new System.Windows.Forms.Label();
+            this.dateTimePicker1 = new System.Windows.Forms.DateTimePicker();
+            this.groupBox1 = new System.Windows.Forms.GroupBox();
+            this.radioButton2 = new System.Windows.Forms.RadioButton();
+            this.radioButton1 = new System.Windows.Forms.RadioButton();
+            this.lblProgressNameB = new System.Windows.Forms.Label();
+            this.lblProgressNameA = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.radioButton3 = new System.Windows.Forms.RadioButton();
+            this.radioButton4 = new System.Windows.Forms.RadioButton();
+            this.label1 = new System.Windows.Forms.Label();
+            this.cmbOrderNo = new System.Windows.Forms.ComboBox();
+            this.panel1.SuspendLayout();
+            this.groupBox1.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // btnExecProc1
+            // 
+            this.btnExecProc1.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc1.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnExecProc1.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc1.Location = new System.Drawing.Point(185, 10);
+            this.btnExecProc1.Name = "btnExecProc1";
+            this.btnExecProc1.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc1.TabIndex = 0;
+            this.btnExecProc1.Text = "印刷のみ";
+            this.btnExecProc1.UseVisualStyleBackColor = false;
+            this.btnExecProc1.Click += new System.EventHandler(this.btnExecProc1_Click);
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Red;
+            this.btnCancel.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(477, 10);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(140, 40);
+            this.btnCancel.TabIndex = 3;
+            this.btnCancel.Text = "キャンセル";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // btnExecProc2
+            // 
+            this.btnExecProc2.BackColor = System.Drawing.Color.Green;
+            this.btnExecProc2.FlatStyle = System.Windows.Forms.FlatStyle.System;
+            this.btnExecProc2.ForeColor = System.Drawing.Color.White;
+            this.btnExecProc2.Location = new System.Drawing.Point(331, 10);
+            this.btnExecProc2.Name = "btnExecProc2";
+            this.btnExecProc2.Size = new System.Drawing.Size(140, 40);
+            this.btnExecProc2.TabIndex = 1;
+            this.btnExecProc2.Text = "保存のみ";
+            this.btnExecProc2.UseVisualStyleBackColor = false;
+            this.btnExecProc2.Click += new System.EventHandler(this.btnExecProc2_Click);
+            // 
+            // panel1
+            // 
+            this.panel1.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.panel1.Controls.Add(this.btnCancel);
+            this.panel1.Controls.Add(this.btnExecProc1);
+            this.panel1.Controls.Add(this.btnExecProc2);
+            this.panel1.Location = new System.Drawing.Point(20, 429);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(620, 60);
+            this.panel1.TabIndex = 3;
+            // 
+            // lblMessageB
+            // 
+            this.lblMessageB.AutoSize = true;
+            this.lblMessageB.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblMessageB.Location = new System.Drawing.Point(97, 405);
+            this.lblMessageB.Name = "lblMessageB";
+            this.lblMessageB.Size = new System.Drawing.Size(539, 21);
+            this.lblMessageB.TabIndex = 4;
+            this.lblMessageB.Text = "【印刷のみ】、【保存のみ】を選択してください。";
+            // 
+            // dateTimePicker1
+            // 
+            this.dateTimePicker1.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dateTimePicker1.Location = new System.Drawing.Point(204, 62);
+            this.dateTimePicker1.Name = "dateTimePicker1";
+            this.dateTimePicker1.Size = new System.Drawing.Size(179, 28);
+            this.dateTimePicker1.TabIndex = 5;
+            this.dateTimePicker1.TabStop = false;
+            // 
+            // groupBox1
+            // 
+            this.groupBox1.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox1.Controls.Add(this.radioButton2);
+            this.groupBox1.Controls.Add(this.radioButton1);
+            this.groupBox1.Controls.Add(this.lblProgressNameB);
+            this.groupBox1.Controls.Add(this.lblProgressNameA);
+            this.groupBox1.Controls.Add(this.label4);
+            this.groupBox1.Controls.Add(this.label3);
+            this.groupBox1.Controls.Add(this.label2);
+            this.groupBox1.Location = new System.Drawing.Point(16, 193);
+            this.groupBox1.Name = "groupBox1";
+            this.groupBox1.Size = new System.Drawing.Size(620, 200);
+            this.groupBox1.TabIndex = 6;
+            this.groupBox1.TabStop = false;
+            this.groupBox1.Text = "工事の進捗状態";
+            // 
+            // radioButton2
+            // 
+            this.radioButton2.AutoSize = true;
+            this.radioButton2.Location = new System.Drawing.Point(175, 29);
+            this.radioButton2.Name = "radioButton2";
+            this.radioButton2.Size = new System.Drawing.Size(143, 25);
+            this.radioButton2.TabIndex = 12;
+            this.radioButton2.Text = "変更しない";
+            this.radioButton2.UseVisualStyleBackColor = true;
+            // 
+            // radioButton1
+            // 
+            this.radioButton1.AutoSize = true;
+            this.radioButton1.Checked = true;
+            this.radioButton1.Location = new System.Drawing.Point(326, 29);
+            this.radioButton1.Name = "radioButton1";
+            this.radioButton1.Size = new System.Drawing.Size(120, 25);
+            this.radioButton1.TabIndex = 13;
+            this.radioButton1.TabStop = true;
+            this.radioButton1.Text = "変更する";
+            this.radioButton1.UseVisualStyleBackColor = true;
+            this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton1_CheckedChanged);
+            // 
+            // lblProgressNameB
+            // 
+            this.lblProgressNameB.BackColor = System.Drawing.Color.White;
+            this.lblProgressNameB.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblProgressNameB.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.lblProgressNameB.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblProgressNameB.Location = new System.Drawing.Point(204, 148);
+            this.lblProgressNameB.Name = "lblProgressNameB";
+            this.lblProgressNameB.Size = new System.Drawing.Size(360, 30);
+            this.lblProgressNameB.TabIndex = 7;
+            this.lblProgressNameB.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblProgressNameA
+            // 
+            this.lblProgressNameA.BackColor = System.Drawing.Color.White;
+            this.lblProgressNameA.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblProgressNameA.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.lblProgressNameA.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblProgressNameA.Location = new System.Drawing.Point(204, 69);
+            this.lblProgressNameA.Name = "lblProgressNameA";
+            this.lblProgressNameA.Size = new System.Drawing.Size(360, 30);
+            this.lblProgressNameA.TabIndex = 8;
+            this.lblProgressNameA.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label4.Location = new System.Drawing.Point(33, 153);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(171, 21);
+            this.label4.TabIndex = 9;
+            this.label4.Text = "実行後進捗状態";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 24F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.Location = new System.Drawing.Point(368, 107);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(32, 33);
+            this.label3.TabIndex = 10;
+            this.label3.Text = "⇓";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.Location = new System.Drawing.Point(56, 74);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(148, 21);
+            this.label2.TabIndex = 11;
+            this.label2.Text = "現在進捗状態";
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.groupBox2.Controls.Add(this.radioButton3);
+            this.groupBox2.Controls.Add(this.radioButton4);
+            this.groupBox2.Controls.Add(this.dateTimePicker1);
+            this.groupBox2.Location = new System.Drawing.Point(16, 57);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(620, 130);
+            this.groupBox2.TabIndex = 7;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = "請求日";
+            // 
+            // radioButton3
+            // 
+            this.radioButton3.AutoSize = true;
+            this.radioButton3.Location = new System.Drawing.Point(175, 99);
+            this.radioButton3.Name = "radioButton3";
+            this.radioButton3.Size = new System.Drawing.Size(396, 25);
+            this.radioButton3.TabIndex = 14;
+            this.radioButton3.Text = "印字しない（　　年　　月　　日）";
+            this.radioButton3.UseVisualStyleBackColor = true;
+            this.radioButton3.CheckedChanged += new System.EventHandler(this.radioButton3_CheckedChanged);
+            // 
+            // radioButton4
+            // 
+            this.radioButton4.AutoSize = true;
+            this.radioButton4.Checked = true;
+            this.radioButton4.Location = new System.Drawing.Point(175, 29);
+            this.radioButton4.Name = "radioButton4";
+            this.radioButton4.Size = new System.Drawing.Size(120, 25);
+            this.radioButton4.TabIndex = 15;
+            this.radioButton4.TabStop = true;
+            this.radioButton4.Text = "印字する";
+            this.radioButton4.UseVisualStyleBackColor = true;
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Location = new System.Drawing.Point(12, 21);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(102, 21);
+            this.label1.TabIndex = 9;
+            this.label1.Text = "作成対象";
+            // 
+            // cmbOrderNo
+            // 
+            this.cmbOrderNo.BackColor = System.Drawing.Color.White;
+            this.cmbOrderNo.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbOrderNo.FormattingEnabled = true;
+            this.cmbOrderNo.Location = new System.Drawing.Point(121, 21);
+            this.cmbOrderNo.Name = "cmbOrderNo";
+            this.cmbOrderNo.Size = new System.Drawing.Size(161, 29);
+            this.cmbOrderNo.TabIndex = 10;
+            // 
+            // FrmRequestPrint
+            // 
+            this.AcceptButton = this.btnExecProc1;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.BackColor = System.Drawing.Color.White;
+            this.ClientSize = new System.Drawing.Size(652, 488);
+            this.Controls.Add(this.cmbOrderNo);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.groupBox2);
+            this.Controls.Add(this.groupBox1);
+            this.Controls.Add(this.lblMessageB);
+            this.Controls.Add(this.panel1);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmRequestPrint";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "実　行　確　認";
+            this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.FrmStatusAndDate_FormClosed);
+            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            this.panel1.ResumeLayout(false);
+            this.groupBox1.ResumeLayout(false);
+            this.groupBox1.PerformLayout();
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox2.PerformLayout();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnExecProc1;
+        private System.Windows.Forms.Button btnCancel;
+        private System.Windows.Forms.Button btnExecProc2;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Label lblMessageB;
+        private System.Windows.Forms.DateTimePicker dateTimePicker1;
+        private System.Windows.Forms.GroupBox groupBox1;
+        private System.Windows.Forms.RadioButton radioButton2;
+        private System.Windows.Forms.RadioButton radioButton1;
+        private System.Windows.Forms.Label lblProgressNameB;
+        private System.Windows.Forms.Label lblProgressNameA;
+        private System.Windows.Forms.Label label4;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.GroupBox groupBox2;
+        private System.Windows.Forms.RadioButton radioButton3;
+        private System.Windows.Forms.RadioButton radioButton4;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.ComboBox cmbOrderNo;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.cs	(revision 51)
@@ -0,0 +1,1346 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Threading.Tasks;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmRequestPrint : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        private enum Dispcount
+        {
+            ExeCuteDate = 0,
+            ProgressStatusA,
+            ProgressStatusB,
+            radioButtonA1,
+            radioButtonA2,
+            radioButtonB1,
+            radioButtonB2,
+            radioButtonC1,
+            radioButtonC2,
+        }
+
+        /// <summary>
+        /// Excelテンプレートファイル名
+        /// </summary>
+        private static string s_ExcelRequestSheetFileName = @"\RequestSheet.xlsx";
+
+        /// <summary>
+        /// デスクトップフォルダ名
+        /// </summary>
+        private static string s_ExecCurrentDirName = System.Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
+
+        /// <summary>
+        /// シート名称カウント
+        /// </summary>
+        enum enumSheetName
+        {
+            Cover = 0,
+            Detail,
+        }
+
+        /// <summary>
+        /// Excel シート名称
+        /// </summary>
+        private static readonly Dictionary<enumSheetName,string> s_DicSheetName = new Dictionary<enumSheetName, string>()
+        {
+            { enumSheetName.Cover, "請求書（表紙）" },
+            { enumSheetName.Detail, "請求書（内訳）" },
+        };
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+
+        /// <summary>
+        /// 請求番号
+        /// </summary>
+        private int m_RequestNo = 0;
+
+        /// <summary>
+        /// 実行時日付
+        /// </summary>
+        private DateTime m_ExcuteDate = DateTime.Now;
+        
+        /// <summary>
+        /// 実行進捗状態
+        /// </summary>
+        private int m_ProgressStatus = 9;
+
+        /// <summary>
+        /// 日付印刷
+        /// </summary>
+        private bool m_bDatePrintFlg = true;
+        
+        /// <summary>
+        /// コンロールオブジェクト
+        /// </summary>
+        private Control[] m_dispControl = new Control[9];
+
+        /// <summary>
+        /// 工事基本情報
+        /// </summary>
+        private ConstructionBaseInfo m_ConstructionBaseInfo = new ConstructionBaseInfo();
+
+        /// <summary>
+        /// 工事基本情報明細
+        /// </summary>
+        private Dictionary<int, Dictionary<int, string>> m_DicConstructionBaseInfoDetail = new Dictionary<int, Dictionary<int, string>>();
+
+        /// <summary>
+        /// 増減工事情報
+        /// </summary>
+        private List<int> m_LstConstructionLink = new List<int>();
+
+        /// <summary>
+        /// 請求データ
+        /// </summary>
+        private RequestData m_RequestData = new RequestData();
+
+        /// <summary>
+        /// 請求合計データ
+        /// </summary>
+        private List<RequestTotalData> m_LstRequestTotalData = new List<RequestTotalData>();
+
+        /// <summary>
+        /// ツールチップ
+        /// </summary>
+        private ToolTip ToolTip1 = new ToolTip();
+
+        /// <summary>
+        /// Excel印刷クラスオブジェクト
+        /// </summary>
+        private UsedExcel m_UsedExcel = null;
+
+        /// <summary>
+        /// 保存時Excelパス
+        /// </summary>
+        private string m_SelectSaveExcel = "";
+
+        /// <summary>
+        /// 印刷選択請求書受付番号インデックス
+        /// </summary>
+        private int m_SelectOrderIndex = 0;
+
+        // *-----* 共通処理設定 *-----*
+        /// <summary>
+        /// サブフォームフラグ
+        /// </summary>
+        private bool m_SubForm = false;
+        /// <summary>
+        /// 呼出元終了フラグ
+        /// </summary>
+        private bool m_ParentEnd = false;
+        // *-----* 共通処理設定 *-----*
+
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        public int RequestNo
+        {
+            get { return m_RequestNo; }
+            set { m_RequestNo = value; }
+        }
+
+        /// <summary>
+        /// 実行時時間
+        /// </summary>
+        public DateTime ExcuteDate
+        {
+            get { return m_ExcuteDate; }
+            set { m_ExcuteDate = value; }
+        }
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+        /// <summary>
+        /// 日付印刷フラグ
+        /// </summary>
+        public bool DatePrintFlg
+        {
+            get { return m_bDatePrintFlg; }
+            set { m_bDatePrintFlg = value; }
+        }
+
+        // *-----* 共通処理設定 *-----*
+        /// <summary>
+        /// サブフォームフラグ
+        /// </summary>
+        public bool SubForm
+        {
+            get { return m_SubForm; }
+            set { m_SubForm = value; }
+        }
+        /// <summary>
+        /// 呼出元終了フラグ
+        /// </summary>
+        public bool ParentEnd
+        {
+            get { return m_ParentEnd; }
+            set { m_ParentEnd = value; }
+        }
+
+        // *-----* 共通処理設定 *-----*        
+        
+        #endregion
+
+        #region ×ボタン
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmStatusAndDate_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            if (m_EndButton == DialogResult.None) m_EndButton = DialogResult.Cancel;
+        }
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmRequestPrint()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+         
+            // コントロールのセット
+            SetDisplayObject();
+            
+            // 初期表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region キャンセルボタン
+        /// <summary>
+        /// キャンセルボタン追加
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnCancel_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.Cancel;
+            this.Close();
+        }
+        #endregion
+
+        #region 印刷のみボタン
+        /// <summary>
+        /// 印刷のみボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private async void btnExecProc1_Click(object sender, EventArgs e)
+        {
+            // 状態確認
+            if (!StatusChange()) return;
+
+            // 日付印刷をしない
+            if (radioButton3.Checked) m_bDatePrintFlg = false;
+
+            // 選択日付取得
+            m_ExcuteDate = dateTimePicker1.Value;
+
+            // 工事基本情報を更新する
+            UpdateConstructionBaseInfo();
+
+            // 非同期で印刷処理を実行する
+            m_SelectOrderIndex = cmbOrderNo.SelectedIndex;
+            await Task.Run(() =>
+            {
+                // 印刷処理
+                PrintMain(true);
+            });
+
+            m_EndButton = DialogResult.Yes;
+            this.Close();
+        }
+        #endregion
+
+        #region 保存のみボタン
+        /// <summary>
+        /// 保存のみボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private async void btnExecProc2_Click(object sender, EventArgs e)
+        {
+            // 保存先指定ダイアログの表示
+            FrmSaveFilePath frm = new FrmSaveFilePath();
+            frm.SaveType = (int)CommonDefine.SaveFileType.ExcelFile;
+            frm.ShowDialog();
+            if (frm.EndButton == DialogResult.Cancel)
+            {
+                return;
+            }
+            m_SelectSaveExcel = frm.SelectPath;
+
+            // 状態確認
+            if (!StatusChange()) return;
+
+            // 日付印刷をしない
+            if (radioButton3.Checked) m_bDatePrintFlg = false;
+            
+            // 選択日付取得
+            m_ExcuteDate = dateTimePicker1.Value;
+
+            // 工事基本情報を更新する
+            UpdateConstructionBaseInfo();
+
+            // 非同期で印刷処理を実行する
+            m_SelectOrderIndex = cmbOrderNo.SelectedIndex;
+            await Task.Run(() =>
+            {
+                // 印刷処理
+                PrintMain(false);
+            });
+
+            m_EndButton = DialogResult.No;
+            this.Close();
+        }
+        #endregion
+
+        #region 提出時ラジオボタンチェック
+        /// <summary>
+        /// 提出日印字ラジオボタン
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void radioButton3_CheckedChanged(object sender, EventArgs e)
+        {
+            if (radioButton3.Checked)
+            {
+                dateTimePicker1.Visible = false;
+            }
+            else
+            {
+                dateTimePicker1.Visible = true;
+            }
+        }
+        #endregion
+
+        #region 工事進捗ラジオボタン
+        /// <summary>
+        /// 工事進捗ラジオボタンの変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void radioButton1_CheckedChanged(object sender, EventArgs e)
+        {
+            // 工事進捗変更
+            if (radioButton1.Checked)
+            {   // 変更する
+                m_dispControl[(int)Dispcount.ProgressStatusB].Text = CommonDefine.ProjectsStatus[m_ProgressStatus];
+            }
+            else
+            {   // 変更しない
+                m_dispControl[(int)Dispcount.ProgressStatusB].Text = CommonDefine.ProjectsStatus[m_ConstructionBaseInfo.ConstructionStatusFlg];
+            }
+        }
+        #endregion
+
+        #region オブジェクトコントロールセット
+        /// <summary>
+        /// 表示オブジェクトの取得
+        /// </summary>
+        private void SetDisplayObject()
+        {
+            m_dispControl[(int)Dispcount.ExeCuteDate] = dateTimePicker1;
+            m_dispControl[(int)Dispcount.ProgressStatusA] = lblProgressNameA;
+            m_dispControl[(int)Dispcount.ProgressStatusB] = lblProgressNameB;
+            m_dispControl[(int)Dispcount.radioButtonA1] = radioButton1;
+            m_dispControl[(int)Dispcount.radioButtonA2] = radioButton2;
+            m_dispControl[(int)Dispcount.radioButtonB1] = radioButton4;
+            m_dispControl[(int)Dispcount.radioButtonB2] = radioButton3;
+        }
+        #endregion
+
+        #region ステータスチェック
+        /// <summary>
+        /// 工事案件の進捗状態変更の確認
+        /// </summary>
+        /// <returns></returns>
+        private bool StatusChange()
+        {
+            try
+            {
+                if (!lblProgressNameA.Text.Equals(lblProgressNameB.Text))
+                {
+                    if (MessageBox.Show("工事案件の進捗状態が変わります、よろしいですか？",
+                                        "進捗状態変更確認",
+                                        MessageBoxButtons.OKCancel, 
+                                        MessageBoxIcon.Question) == DialogResult.Cancel)
+                    {
+                        return false;
+                    }
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        
+        #endregion
+
+        #region 表示関連
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                if (!DisplayData())
+                {
+                    m_EndButton = DialogResult.Cancel;
+                    this.Close();
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region データ表示処理
+        /// <summary>
+        /// データ表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DisplayData()
+        {
+            var lstReqTotalData = new List<RequestTotalData>();
+
+            try
+            {
+                bool bRet = true;
+
+                // 工事基本情報を取得
+                if (!GetConstructionBaseInfo(m_ConstructionCode, ref m_ConstructionBaseInfo))
+                {
+                    return false;
+                }
+
+                // 増減工事情報を取得
+                if (!GetConstructionLink(m_ConstructionCode, ref m_LstConstructionLink))
+                {
+                    return false;
+                }
+
+                List<int> lstConstCodes = new List<int>();
+                lstConstCodes.Add(m_ConstructionCode);
+                lstConstCodes.AddRange(m_LstConstructionLink);
+
+                // 工事基本情報明細を取得
+                if (!GetConstructionBaseInfoDetail(lstConstCodes, ref m_DicConstructionBaseInfoDetail))
+                {
+                    return false;
+                }
+
+                // 請求データを取得
+                if (!GetRequestData(m_ConstructionCode, ref m_RequestData))
+                {
+                    return false;
+                }
+
+                // 請求合計データを取得
+                if (!GetRequestTotalData(m_RequestNo, ref m_LstRequestTotalData))
+                {
+                    return false;
+                }
+
+                // 作成対象のコンボボックスリストを初期化
+                cmbOrderNo.Items.Clear();
+                foreach (var reqTotalData in m_LstRequestTotalData)
+                {
+                    // 請求回数分
+                    cmbOrderNo.Items.Add(string.Format("{0}回目", reqTotalData.OrderNo));
+                }
+                cmbOrderNo.SelectedIndex = 0;
+
+                // 初期時間セット
+                dateTimePicker1.Value = m_ExcuteDate;
+
+                // ----- 状態を工事基本情報より取る
+                // 現在進捗状態
+                m_dispControl[(int)Dispcount.ProgressStatusA].Text = CommonDefine.ProjectsStatus[m_ConstructionBaseInfo.ConstructionStatusFlg];
+
+                // 実行後進捗状態
+                if (m_ConstructionBaseInfo.ConstructionStatusFlg == 8)
+                {
+                    // 現在の進捗状態が施工完了の場合
+                    radioButton1.Checked = true;
+                    m_dispControl[(int)Dispcount.ProgressStatusB].Text = CommonDefine.ProjectsStatus[m_ProgressStatus];
+                }
+                else
+                {
+                    // 施工完了以外の場合
+                    radioButton2.Checked = true;
+                    radioButton1.Enabled = false;
+                    m_dispControl[(int)Dispcount.ProgressStatusB].Text = m_dispControl[(int)Dispcount.ProgressStatusA].Text;
+                }
+
+                // ----- ToolTipの設定を行う
+                // ToolTipが表示されるまでの時間
+                ToolTip1.InitialDelay = 0;
+                // ToolTipが表示されている時に、別のToolTipを表示するまでの時間
+                ToolTip1.ReshowDelay = 1000;
+                // ToolTipを表示する時間
+                ToolTip1.AutoPopDelay = 10000;
+                // フォームがアクティブでない時はToolTipを表示しない
+                ToolTip1.ShowAlways = false;
+
+                // 文字セット
+                ToolTip1.SetToolTip(dateTimePicker1, "請求日が表示されている日付と違う場合は、変更してください。");
+                ToolTip1.SetToolTip(radioButton4, "請求日を請求書へ「印刷する」場合は、こちらを選択してください。");
+                ToolTip1.SetToolTip(radioButton3, "請求日を請求書へ「印刷せずに空白」で印刷する場合は、こちらを選択してください。");
+
+                ToolTip1.SetToolTip(radioButton1, "工事進捗状態を変更して次の処理へ進む場合は、こちらを選択してください。");
+                ToolTip1.SetToolTip(radioButton2, "工事進捗進捗を現在の状態から変更しない場合は、こちらを選択してください。");
+                
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 工事データ更新
+        /// <summary>
+        /// 工事基本情報を更新する
+        /// </summary>
+        /// <returns></returns>
+        private bool UpdateConstructionBaseInfo()
+        {
+            var lstReqTotalData = new List<RequestTotalData>();
+            IOConstructionBaseInfo cbDB = new IOConstructionBaseInfo();
+            try
+            {
+                bool bUpdate = false;
+
+                string strSQL = cbDB.CreatePrimarykeyString(m_RequestNo);
+                ConstructionBaseInfo DataRec = new ConstructionBaseInfo();
+                if (!cbDB.SelectAction(strSQL, ref DataRec)) return false;
+                
+                // 進捗状態
+                if (radioButton1.Checked)
+                {
+                    DataRec.ConstructionStatusFlg = m_ProgressStatus;
+                    bUpdate = true;
+                }
+
+                // 変化なしは処理しない
+                if (!bUpdate) return true;
+
+                if (!cbDB.UpdateAction(strSQL, DataRec)) return false;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+
+            return true;
+        }
+
+        #endregion
+
+        #region DBアクセス処理
+        #region 請求データ取得
+        /// <summary>
+        /// 請求データ取得
+        /// </summary>
+        /// <param name="constCode">本工事番号</param>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        private bool GetRequestData(int constCode, ref RequestData data)
+        {
+            var cbDB = new IORequestData();
+            try
+            {
+                // 請求データ取得クラス領域
+                var wrk = new List<RequestData>();
+
+                // 請求データ取得SQL
+                string strSQL = cbDB.CreateSubkeyString(constCode);
+
+                // 請求データ取得
+                if (!cbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                if (wrk.Count != 1) return false;
+
+                data = wrk[0];
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 請求書合計データ取得
+        /// <summary>
+        /// 請求書合計データ取得
+        /// </summary>
+        /// <param name="requestNo"></param>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetRequestTotalData(int requestNo, ref List<RequestTotalData> datas)
+        {
+            var cbDB = new IORequestTotalData();
+            try
+            {
+                // 請求書合計データ取得クラス領域
+                var wrk = new List<RequestTotalData>();
+
+                // 請求書合計データ取得SQL
+                string strSQL = cbDB.CreatePrimarykeyString(requestNo);
+
+                // ソート条件追加
+                strSQL += " ORDER BY REQUESTNO, ORDERNO";
+
+                // 請求書合計データ取得
+                if (!cbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                // 請求書合計データ取得クラス領域
+                datas = wrk;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+            return true;
+        }
+
+        #endregion
+
+        #region 請求明細データ取得
+        /// <summary>
+        /// 請求明細データ取得
+        /// </summary>
+        /// <param name="requestNo"></param>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetRequestDataDetail(int requestNo, ref Dictionary<int, Dictionary<int, RequestDataDetail>> datas)
+        {
+            var cbDB = new IORequestDataDetail();
+            try
+            {
+                // 請求明細データ取得クラス領域
+                var wrk = new List<RequestDataDetail>();
+
+                // 請求明細データ取得SQL
+                string strSQL = cbDB.CreatePrimarykeyString(requestNo);
+
+                // 請求明細データ取得
+                if (!cbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                foreach (var record in wrk)
+                {
+                    if (!datas.ContainsKey(record.ConstructionCode))
+                        datas[record.ConstructionCode] = new Dictionary<int, RequestDataDetail>();
+                    datas[record.ConstructionCode][record.OrderNo] = record;
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+            return true;
+        }
+        #endregion
+
+        #region 工事基本情報取得
+        /// <summary>
+        /// 工事基本情報取得
+        /// </summary>
+        /// <param name="constructionCode"></param>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        private bool GetConstructionBaseInfo(int constructionCode, ref ConstructionBaseInfo data)
+        {
+            var cbDB = new IOConstructionBaseInfo();
+            try
+            {
+                // 工事基本情報取得クラス領域
+                var wrk = new ConstructionBaseInfo();
+
+                // 工事基本情報取得SQL
+                string strSQL = cbDB.CreatePrimarykeyString(constructionCode);
+
+                // 工事基本情報取得
+                if (!cbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                // 工事基本情報取得クラス領域
+                data = wrk;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                cbDB.close(); cbDB = null;
+            }
+            return true;
+        }
+        #endregion
+
+        #region 工事基本情報明細
+        /// <summary>
+        /// 工事基本情報明細を工事基本情報明細テーブルから工事番号をキーに取得する関数
+        /// </summary>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetConstructionBaseInfoDetail(List<int> lstConstCode, ref Dictionary<int,Dictionary<int,string>> datas)
+        {
+            var sbDB = new IOConstructionBaseInfoDetail();
+            try
+            {
+                // 工事基本情報明細取得クラス領域
+                var wrk = new List<ConstructionBaseInfoDetail>();
+
+                // 工事基本情報明細取得SQL
+                string strSQL = " Where ConstructionCode in ( ";
+                foreach (int constCode in lstConstCode)
+                {
+                    strSQL += string.Format((lstConstCode.IndexOf(constCode) == 0) ? " {0}" : ", {0}", constCode);
+                }
+                strSQL += " )";
+
+                // 工事基本情報明細取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                datas.Clear();
+
+                foreach (var record in wrk)
+                {
+                    if (!datas.ContainsKey(record.ConstructionCode))
+                        datas[record.ConstructionCode] = new Dictionary<int, string>();
+                    datas[record.ConstructionCode][record.DetailNo] = record.DetailString;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 工事増減情報取得
+        /// <summary>
+        /// 工事増減情報取得
+        /// </summary>
+        /// <param name="constructionCode"></param>
+        /// <param name="datas"></param>
+        /// <returns></returns>
+        private bool GetConstructionLink(int constructionCode, ref List<int> datas)
+        {
+            var sbDB = new IOConstructionLink();
+            try
+            {
+                // 工事増減情報取得クラス領域
+                var wrk = new List<ConstructionLink>();
+
+                // 工事増減情報取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(constructionCode);
+
+                // ソート条件追加
+                strSQL += " ORDER BY FLUCTUATIONCODE";
+
+                // 工事増減情報取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                foreach (var record in wrk)
+                {
+                    datas.Add(record.FluctuationCode);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+
+        #region 工事詳細台帳データ取得
+        /// <summary>
+        /// 工事詳細台帳データ取得
+        /// </summary>
+        /// <param name="constructionCode"></param>
+        /// <param name="data"></param>
+        /// <returns></returns>
+        private bool GetConstructionLedger(int constructionCode, ref ConstructionLedger data)
+        {
+            var sbDB = new IOConstructionLedger();
+            try
+            {
+                // 工事詳細台帳データ取得クラス領域
+                var wrk = new ConstructionLedger();
+
+                // 工事詳細台帳データ取得SQL
+                string strSQL = sbDB.CreatePrimarykeyString(constructionCode);
+
+                // 工事詳細台帳データ取得
+                if (!sbDB.SelectAction(strSQL, ref wrk)) return false;
+
+                data = wrk;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbDB.close();
+                sbDB = null;
+            }
+
+            return true;
+        }
+        #endregion
+        #endregion
+
+        #region 印刷メイン
+        /// <summary>
+        /// 印刷メイン
+        /// </summary>
+        /// <param name="bPrint">true:印刷のみ,false:保存のみ</param>
+        public void PrintMain(bool bPrint)
+        {
+            try
+            {
+                // 請求明細データ取得
+                var dicReqDetail = new Dictionary<int, Dictionary<int, RequestDataDetail>>();
+                if (!GetRequestDataDetail(m_RequestNo,ref dicReqDetail))
+                {
+                    return;
+                }
+
+                // 工事詳細台帳データ取得
+                var constLedger = new ConstructionLedger();
+                if (!GetConstructionLedger(m_ConstructionCode, ref constLedger))
+                {
+                    return;
+                }
+
+                // 印刷クラス
+                m_UsedExcel = new UsedExcel();
+
+                // エクセルブックオープン
+                if (!m_UsedExcel.ExcelBookOpen(System.Environment.CurrentDirectory + s_ExcelRequestSheetFileName))
+                {
+                    return;
+                }
+
+                // 表紙印刷
+                CommonDefine.RetunAnswer rtAns = PrintCover();
+                if (rtAns != CommonDefine.RetunAnswer.Answer0)
+                {
+                    return;
+                }
+
+                // 内訳印刷
+                rtAns = PrintDetail(dicReqDetail, constLedger);
+                if (rtAns != CommonDefine.RetunAnswer.Answer0)
+                {
+                    return;
+                }
+
+                if (bPrint)
+                {
+                    // 印刷処理
+                    m_UsedExcel.ExcelSheetPrint();
+                }
+                else
+                {
+                    // 保存処理
+                    SaveExcelFile();
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                // Excel開放
+                if (m_UsedExcel != null)
+                {
+                    m_UsedExcel.ExcelBookClose();
+                }
+                m_UsedExcel = null;
+
+                // ガーベージコレクト
+                GC.Collect();
+            }
+
+        }
+        #endregion
+
+        /// <summary>
+        /// Excelファイル保存処理
+        /// </summary>
+        private void SaveExcelFile()
+        {
+            try
+            {
+                string filePath = @m_SelectSaveExcel;
+
+                // ファイルパスの存在をチェック
+                if (CommonMotions.ChkDirPath(filePath, true))
+                {
+                    // ファイル名を作成
+                    string wrkFile = m_DicConstructionBaseInfoDetail[m_ConstructionCode][(int)ConstructionBaseInfoDetail.DetailDataNo.OrderersName] + "様 請求書";
+
+                    // ファイル名に使用できない文字を取り除く
+                    foreach (var badCh in m_UsedExcel.ExcelBadCharcter)
+                    {
+                        wrkFile = wrkFile.Replace(badCh, "");
+                    }
+
+                    // ファイル名作成
+                    filePath += @"\" + @wrkFile;
+
+                    // ファイル保存
+                    m_UsedExcel.SaveSwitch = true;
+                    m_UsedExcel.ExcelSaveBook(filePath);
+
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+
+        }
+
+        /// <summary>
+        /// 請求書(表紙)作成
+        /// </summary>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer PrintCover()
+        {
+            try
+            {
+                // 請求書表紙シートの取得
+                m_UsedExcel.ExcelSheetGet(s_DicSheetName[enumSheetName.Cover]);
+
+                // ページ縦・横セット
+                m_UsedExcel.ExcelFitCountSet(2, 1);
+
+                // ① 施工開始日(4行目 M列)
+                ExcelPrintData startDate = new ExcelPrintData();
+                startDate.AddPrintData("L", 3, m_ConstructionBaseInfo.ConstructionStartingDate.ToString("yyyy年MM月dd日")).ExcelCellSet(m_UsedExcel);
+
+                // ② 施工終了日(5行目 M列)
+                ExcelPrintData endDate = new ExcelPrintData();
+                endDate.AddPrintData("L", 4, m_ConstructionBaseInfo.ConstructionCompletionDate.ToString("yyyy年MM月dd日")).ExcelCellSet(m_UsedExcel);
+
+                // ③ 請求日(7行目 K列)
+                ExcelPrintData reqDate = new ExcelPrintData();
+                reqDate.AddPrintData("K", 6, radioButton4.Checked ? dateTimePicker1.Value.ToString("yyyy年MM月dd日") : "　　年　　月　　日").ExcelCellSet(m_UsedExcel);
+
+                // ④ 請求先名称(9行目 D列)
+                ExcelPrintData nameData = new ExcelPrintData();
+                nameData.AddPrintData("D", 8, m_DicConstructionBaseInfoDetail[m_ConstructionCode][(int)ConstructionBaseInfoDetail.DetailDataNo.OrderersName]).ExcelCellSet(m_UsedExcel);
+
+                // ⑤ 請求金額(14行目 G列)
+                ExcelPrintData priceData = new ExcelPrintData();
+                priceData.AddPrintData("G", 13, m_LstRequestTotalData[m_SelectOrderIndex].BillTotalPrice.ToString("#,#")).ExcelCellSet(m_UsedExcel);
+
+                // ⑥ 消費税(15行目 J列)
+                ExcelPrintData taxData = new ExcelPrintData();
+                taxData.AddPrintData("J", 14, m_LstRequestTotalData[m_SelectOrderIndex].TaxPrice.ToString("#,#")).ExcelCellSet(m_UsedExcel);
+
+                // ⑦ 工事件名(17行目 G列)
+                ExcelPrintData constNameData = new ExcelPrintData();
+                constNameData.AddPrintData("G", 16, m_DicConstructionBaseInfoDetail[m_ConstructionCode][(int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName]).ExcelCellSet(m_UsedExcel);
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+        }
+
+        /// <summary>
+        /// 請求書(内訳)作成
+        /// </summary>
+        /// <param name="dicReqDetail"></param>
+        /// <param name="constLedger"></param>
+        /// <param name="lstConstLink"></param>
+        /// <returns></returns>
+        private CommonDefine.RetunAnswer PrintDetail(Dictionary<int,Dictionary<int,RequestDataDetail>> dicReqDetail, ConstructionLedger constLedger)
+        {
+            try
+            {
+                // 請求書内訳シートの取得
+                m_UsedExcel.ExcelSheetGet(s_DicSheetName[enumSheetName.Detail]);
+
+                // ページ縦・横セット
+                m_UsedExcel.ExcelFitCountSet(2, 1);
+
+                // ------------------------------- 工事名 -------------------------------
+                // ① 工事件名
+                ExcelPrintData constNameData = new ExcelPrintData();
+                constNameData.AddPrintData("C", 2, m_DicConstructionBaseInfoDetail[m_ConstructionCode][(int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName]).ExcelCellSet(m_UsedExcel);
+
+                // ------------------------------- 名称列 -------------------------------
+                ExcelPrintData nameDatas = new ExcelPrintData();
+
+                // 増減工事情報
+                foreach (int childConstCode in m_LstConstructionLink)
+                {
+                    if (m_DicConstructionBaseInfoDetail.ContainsKey(childConstCode))
+                    {
+                        // ⑤ 工事件名
+                        nameDatas.AddPrintData("B", 10 + m_LstConstructionLink.IndexOf(childConstCode), m_DicConstructionBaseInfoDetail[childConstCode][(int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName]);
+                    }
+                }
+                nameDatas.ExcelCellSet(m_UsedExcel);
+
+                // ------------------------------- 仕様列 -------------------------------
+                ExcelPrintData spaceData1 = new ExcelPrintData();
+
+                // 増減工事情報
+                // ６行に満たない場合は、残り行は空白とする
+                for (int i = 0; i < (6 - m_LstConstructionLink.Count); i++)
+                {
+                    spaceData1.AddPrintData("C", 15 - i, "");
+                    spaceData1.AddPrintData("D", 15 - i, "");
+                    spaceData1.AddPrintData("E", 15 - i, "");
+                }
+                spaceData1.ExcelCellSet(m_UsedExcel);
+
+                // ------------------------------- 仕様列 -------------------------------
+                // ⑪ 消費税率
+                ExcelPrintData taxData = new ExcelPrintData();
+                taxData.AddPrintData("C", 24, string.Format("{0}%", CommonMotions.SystemMasterData.ConsumptionTax)).ExcelCellSet(m_UsedExcel);
+
+
+                // ------------------------------- 金額列 -------------------------------
+                // 金額列
+                ExcelPrintData priceData = new ExcelPrintData();
+
+                // ② 請負金額
+                priceData.AddPrintData("G", 5, constLedger.OrdersDecisionPrice);
+
+                // ④ 見積もり金額
+                priceData.AddPrintData("G", 9, dicReqDetail[m_ConstructionCode][m_SelectOrderIndex + 1].BillPrice);
+
+                // 増減工事情報
+                foreach (int childConstCode in m_LstConstructionLink)
+                {
+                    if (dicReqDetail.ContainsKey(childConstCode))
+                    {
+                        // ⑥ 見積金額
+                        priceData.AddPrintData("G", 10 + m_LstConstructionLink.IndexOf(childConstCode), dicReqDetail[childConstCode][m_SelectOrderIndex + 1].BillPrice);
+                    }
+                }
+
+                // ⑦ 今回ご請求分
+                priceData.AddPrintData("G", 17, m_LstRequestTotalData[m_SelectOrderIndex].BillPrice);
+
+                if (dicReqDetail[m_ConstructionCode][m_SelectOrderIndex + 1].AmountBlance != 0)
+                {
+                    // ⑨ 未入金分
+                    priceData.AddPrintData("G", 21, dicReqDetail[m_ConstructionCode][m_SelectOrderIndex + 1].AmountBlance);
+                }
+                else
+                {
+                    // ⑨ 未入金分が０の場合は空白行とする
+                    ExcelPrintData spaceData2 = new ExcelPrintData();
+                    spaceData2.AddPrintData("B", 21, "").ExcelCellSet(m_UsedExcel);
+                }
+
+                // ⑩ 小計
+                int partTotal = m_LstRequestTotalData[m_SelectOrderIndex].BillPrice + m_LstRequestTotalData[m_SelectOrderIndex].AmountBlance;
+                priceData.AddPrintData("G", 23, partTotal);
+
+                // ⑫ 消費税
+                priceData.AddPrintData("G", 24, m_LstRequestTotalData[m_SelectOrderIndex].TaxPrice);
+
+                // ⑬ 税込合計金額
+                priceData.AddPrintData("G", 25, m_LstRequestTotalData[m_SelectOrderIndex].BillTotalPrice);
+
+                // 一括請求時は次を印刷対象外とする
+                if (m_ConstructionBaseInfo.BillingSplitFlg != 0)
+                {
+                    if (m_SelectOrderIndex != 0)
+                    {
+                        // ③ 請求済金額
+                        priceData.AddPrintData("G", 7, m_LstRequestTotalData[m_SelectOrderIndex - 1].PricePaid);
+                    }
+
+                    // ⑧ 請負金額残額
+                    priceData.AddPrintData("G", 19, m_LstRequestTotalData[m_SelectOrderIndex].PriceBalance);
+                }
+                else
+                {
+                    // 一括払いの場合は空白行とする
+                    ExcelPrintData spaceData3 = new ExcelPrintData();
+
+                    // ③ 請求済金額
+                    spaceData3.AddPrintData("B", 7, "");
+                    spaceData3.AddPrintData("C", 7, "");
+                    spaceData3.AddPrintData("D", 7, "");
+                    spaceData3.AddPrintData("E", 7, "");
+                    spaceData3.ExcelCellSet(m_UsedExcel);
+
+                    // ⑧ 請負金額残額
+                    ExcelPrintData spaceData4 = new ExcelPrintData();
+                    spaceData4.AddPrintData("B", 19, "");
+                    spaceData4.AddPrintData("D", 19, "");
+                    spaceData4.AddPrintData("E", 19, "");
+                    spaceData4.ExcelCellSet(m_UsedExcel);
+                }
+
+                priceData.ExcelCellSet(m_UsedExcel);
+
+                return CommonDefine.RetunAnswer.Answer0;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return CommonDefine.RetunAnswer.Answer1;
+            }
+
+        }
+
+        /// <summary>
+        /// Excelデータ出力用内部クラス定義
+        /// </summary>
+        private class ExcelPrintData
+        {
+            // Excelデータ保持用用ディクショナリ
+            private Dictionary<int, Dictionary<int, object>> m_DicPrintData = new Dictionary<int, Dictionary<int, object>>();
+
+            // Excelカラム名取得用
+            private static char[] s_Asc = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
+
+            private int m_RowMin = int.MaxValue;
+            private int m_RowMax = int.MinValue;
+            private int m_ColMin = int.MaxValue;
+            private int m_ColMax = int.MinValue;
+
+            /// <summary>
+            /// エクセルカラム名とインデックス番号のディクショナリ
+            /// </summary>
+            private static Dictionary<string, int> s_IndexOfExcelColumn = InitDicColumnIndex();
+
+            /// <summary>
+            /// Excelカラムインデックスディクショナリ作成メソッド
+            /// </summary>
+            /// <returns></returns>
+            private static Dictionary<string, int> InitDicColumnIndex()
+            {
+                var result = new Dictionary<string, int>();
+
+                for (int indx = 0; indx < 256; indx++)
+                {
+                    string res = GetColumnString(indx);
+
+                    result.Add(res, indx);
+
+                }
+                return result;
+            }
+
+            /// <summary>
+            /// カラム英字名を取得
+            /// </summary>
+            /// <param name="colIndex"></param>
+            /// <returns></returns>
+            private static string GetColumnString(int colIndex)
+            {
+                string res = "";
+
+                int court = colIndex;
+                while (court >= s_Asc.Count())
+                {
+                    res = s_Asc[court % s_Asc.Count()] + res;
+                    court = (int)Math.Truncate((double)court / (double)s_Asc.Count() - 1);
+                }
+                res = s_Asc[court % s_Asc.Count()] + res;
+
+                return res;
+            }
+
+            /// <summary>
+            /// データ追加
+            /// </summary>
+            /// <param name="colName">カラム名文字(※ "A", "B", 等...</param>
+            /// <param name="rowNo">行インデックス番号 0オリジン</param>
+            /// <param name="data">出力データオブジェクト</param>
+            /// <returns></returns>
+            public ExcelPrintData AddPrintData(string colName, int rowNo, object data)
+            {
+                return AddPrintData(s_IndexOfExcelColumn[colName], rowNo, data);
+            }
+
+            /// <summary>
+            /// データ追加
+            /// </summary>
+            /// <param name="colIndex">カラムインデックス 0オリジン</param>
+            /// <param name="rowNo">行インデックス番号 0オリジン</param>
+            /// <param name="data">出力データオブジェクト</param>
+            /// <returns></returns>
+            public ExcelPrintData AddPrintData(int colIndex, int rowNo, object data)
+            {
+                if (!m_DicPrintData.ContainsKey(rowNo))
+                    m_DicPrintData[rowNo] = new Dictionary<int, object>();
+
+                m_DicPrintData[rowNo][colIndex] = data;
+
+                if (m_RowMin > rowNo) m_RowMin = rowNo;
+                if (m_RowMax < rowNo) m_RowMax = rowNo;
+                if (m_ColMin > colIndex) m_ColMin = colIndex;
+                if (m_ColMax < colIndex) m_ColMax = colIndex;
+
+                return this;
+            }
+
+            /// <summary>
+            /// UsedExcelオブジェクトにデータをセットする
+            /// </summary>
+            /// <param name="usedExcel">UsedExcelオブジェクト(シート取得済みであること)</param>
+            public void ExcelCellSet(UsedExcel usedExcel)
+            {
+                if (m_RowMin == int.MaxValue ||
+                    m_RowMax == int.MinValue ||
+                    m_ColMin == int.MaxValue ||
+                    m_ColMax == int.MinValue)
+                {
+                    return;
+                }
+
+                // オブジェクト配列を宣言
+                object[,] objCells = new object[m_RowMax - m_RowMin + 1, m_ColMax - m_ColMin + 1];
+
+                // 配列にデータを移し替える
+                foreach (int row in m_DicPrintData.Keys)
+                {
+                    foreach (int col in m_DicPrintData[row].Keys)
+                    {
+                        objCells[row - m_RowMin, col - m_ColMin] = m_DicPrintData[row][col];
+                    }
+                }
+
+                // セル名を取得
+                string startCell = GetColumnString(m_ColMin) + string.Format("{0}", m_RowMin + 1);
+                string endCell = GetColumnString(m_ColMax) + string.Format("{0}", m_RowMax + 1);
+
+                // セルにセット
+                usedExcel.ExcelCellSet(startCell, objCells, endCell);
+
+            }
+        }
+
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmRequestPrint.resx	(revision 51)
@@ -0,0 +1,120 @@
+﻿<?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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmStatusAndDate.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmStatusAndDate.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmStatusAndDate.cs	(revision 51)
@@ -69,6 +69,11 @@
         private bool m_TaxDisplayFlg = true;
 
         /// <summary>
+        /// 実行処理番号
+        /// </summary>
+        private int m_ExecuteProcNo = 0;
+
+        /// <summary>
         /// 日付印刷
         /// </summary>
         private bool m_bDatePrintFlg = true;
@@ -97,7 +102,17 @@
             get { return m_ConstructionCode; }
             set { m_ConstructionCode = value; }
         }
+
         /// <summary>
+        /// 実行処理番号
+        /// </summary>
+        public int ExecuteProcNo
+        {
+            get { return m_ExecuteProcNo; }
+            set { m_ExecuteProcNo = value; }
+        }
+
+        /// <summary>
         /// 消費税フラグ
         /// </summary>
         public int ConsumptionTaxFlg
@@ -444,6 +459,18 @@
                 // 消費税操作パネルの表示を制御する
                 if (!TaxDisplayFlg) groupBox3.Visible = false;
 
+                switch (m_ExecuteProcNo)
+                {
+                    case (int)ClsExcute.ProcessExecuteNo.EstimatePrint:
+                        groupBox2.Text = "見積提出日";
+                        break;
+                    case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:
+                        groupBox2.Text = "注文書作成日";
+                        break;
+                    default:
+                        break;
+                }
+
                 // 文字セット
                 ToolTip1.SetToolTip(dateTimePicker1, "見積提出日が表示されている日付と違う場合は、変更してください。");
                 ToolTip1.SetToolTip(radioButton4, "見積提出日を見積書へ「印刷する」場合は、こちらを選択してください。");
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubConJobDiag.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubConJobDiag.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubConJobDiag.Designer.cs	(revision 51)
@@ -53,7 +53,7 @@
             this.label26 = new System.Windows.Forms.Label();
             this.btnMyCompany = new System.Windows.Forms.Button();
             this.label1 = new System.Windows.Forms.Label();
-            this.cmbIJobType = new System.Windows.Forms.ComboBox();
+            this.cmbJobType = new System.Windows.Forms.ComboBox();
             this.label2 = new System.Windows.Forms.Label();
             this.cmbJapaneseSyllabary = new System.Windows.Forms.ComboBox();
             this.dgvSearch = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
@@ -242,7 +242,7 @@
             this.tableLayoutPanel1.Controls.Add(this.label26, 0, 1);
             this.tableLayoutPanel1.Controls.Add(this.btnMyCompany, 0, 3);
             this.tableLayoutPanel1.Controls.Add(this.label1, 0, 0);
-            this.tableLayoutPanel1.Controls.Add(this.cmbIJobType, 1, 0);
+            this.tableLayoutPanel1.Controls.Add(this.cmbJobType, 1, 0);
             this.tableLayoutPanel1.Controls.Add(this.label2, 0, 2);
             this.tableLayoutPanel1.Controls.Add(this.cmbJapaneseSyllabary, 1, 2);
             this.tableLayoutPanel1.Location = new System.Drawing.Point(48, 4);
@@ -266,7 +266,7 @@
             this.cmbLabour.Name = "cmbLabour";
             this.cmbLabour.Size = new System.Drawing.Size(160, 24);
             this.cmbLabour.TabIndex = 1;
-            this.cmbLabour.SelectedIndexChanged += new System.EventHandler(this.cmbLabour_SelectedIndexChanged);
+            this.cmbLabour.TextChanged += new System.EventHandler(this.cmbLabour_TextChanged);
             // 
             // label26
             // 
@@ -309,16 +309,16 @@
             this.label1.Text = "職　種";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
             // 
-            // cmbIJobType
+            // cmbJobType
             // 
-            this.cmbIJobType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.cmbIJobType.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.cmbIJobType.FormattingEnabled = true;
-            this.cmbIJobType.Location = new System.Drawing.Point(133, 3);
-            this.cmbIJobType.Name = "cmbIJobType";
-            this.cmbIJobType.Size = new System.Drawing.Size(350, 24);
-            this.cmbIJobType.TabIndex = 0;
-            this.cmbIJobType.SelectedIndexChanged += new System.EventHandler(this.cmbItemType_SelectedIndexChanged);
+            this.cmbJobType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbJobType.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
+            this.cmbJobType.FormattingEnabled = true;
+            this.cmbJobType.Location = new System.Drawing.Point(133, 3);
+            this.cmbJobType.Name = "cmbJobType";
+            this.cmbJobType.Size = new System.Drawing.Size(350, 24);
+            this.cmbJobType.TabIndex = 0;
+            this.cmbJobType.TextChanged += new System.EventHandler(this.cmbJobType_TextChanged);
             // 
             // label2
             // 
@@ -341,7 +341,7 @@
             this.cmbJapaneseSyllabary.Name = "cmbJapaneseSyllabary";
             this.cmbJapaneseSyllabary.Size = new System.Drawing.Size(100, 24);
             this.cmbJapaneseSyllabary.TabIndex = 2;
-            this.cmbJapaneseSyllabary.SelectedIndexChanged += new System.EventHandler(this.cmbJapaneseSyllabary_SelectedIndexChanged);
+            this.cmbJapaneseSyllabary.TextChanged += new System.EventHandler(this.cmbJapaneseSyllabary_TextChanged);
             // 
             // dgvSearch
             // 
@@ -450,7 +450,7 @@
         private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
         private System.Windows.Forms.ComboBox cmbJapaneseSyllabary;
         private System.Windows.Forms.Label label1;
-        private System.Windows.Forms.ComboBox cmbIJobType;
+        private System.Windows.Forms.ComboBox cmbJobType;
         private System.Windows.Forms.Label label2;
         private CustomControls.DataGridViewEX dgvSearch;
         private CustomControls.DataGridViewEX dgvHistory;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubConJobDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubConJobDiag.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubConJobDiag.cs	(revision 51)
@@ -318,7 +318,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbItemType_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbJobType_TextChanged(object sender, EventArgs e)
         {
             try
             {
@@ -327,8 +327,9 @@
                 cmbJapaneseSyllabary.SelectedIndex = -1;
                 cmbLabour.SelectedIndex = -1;
 
-                string strSQL = " Where CompanyCode In (Select CompanyCode From SUBCONTRACTORJOBLINK";
-                strSQL += string.Format("  Where JobCategoryCode = {0})", CommonMotions.cnvInt(cmbIJobType.SelectedValue));
+                string strSQL = " Where CompanyCode In (Select A1.CompanyCode From SUBCONTRACTORJOBLINK A1";
+                strSQL += string.Format("  Where A1.JobCategoryCode = {0})", CommonMotions.cnvInt(cmbJobType.SelectedValue));
+                strSQL += " AND DELETEFLG = 0";
                 strSQL += " Order By DisplayOrder";
                 // データ表示
                 DispMasterGridData(strSQL);
@@ -346,16 +347,17 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbJapaneseSyllabary_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbJapaneseSyllabary_TextChanged(object sender, EventArgs e)
         {
             try
             {
                 if (m_InitFlg) return;
 
-                cmbIJobType.SelectedIndex = -1;
+                cmbJobType.SelectedIndex = -1;
                 cmbLabour.SelectedIndex = -1;
 
                 string strSQL = " Where JapaneseSyllabary = '" + cmbJapaneseSyllabary.SelectedValue.ToString() + "'";
+                strSQL += " AND DELETEFLG = 0";
                 strSQL += " Order By DisplayOrder";
                 // データ表示
                 DispMasterGridData(strSQL);
@@ -373,7 +375,7 @@
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void cmbLabour_SelectedIndexChanged(object sender, EventArgs e)
+        private void cmbLabour_TextChanged(object sender, EventArgs e)
         {
             try
             {
@@ -380,9 +382,10 @@
                 if (m_InitFlg) return;
 
                 cmbJapaneseSyllabary.SelectedIndex = -1;
-                cmbIJobType.SelectedIndex = -1;
+                cmbJobType.SelectedIndex = -1;
 
                 string strSQL = string.Format(" Where labourKind = {0}", cmbLabour.SelectedValue);
+                strSQL += " AND DELETEFLG = 0";
                 strSQL += " Order By DisplayOrder";
                 // データ表示
                 DispMasterGridData(strSQL);
@@ -455,7 +458,7 @@
                 List<SubContractorMaster> sbcList = new List<SubContractorMaster>();
                 
                 // SQL作成
-                // 職種マスタ取得
+                // 協力会社マスタ取得
                 if (!sbcDB.SelectAction(strSearch, ref sbcList)) return;
 
                 // 要素表示
@@ -468,12 +471,6 @@
 
                     dgvSearch.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = wrk.CompanyName;
                 }
-                // 画面一杯に行を表示する
-                if (dgvSearch.Rows.Count < CommonDefine.s_MaxInitLineCountMastamente)
-                {
-                    int idspCnt = CommonDefine.s_MaxInitLineCountMastamente - dgvSearch.Rows.Count;
-                    if (idspCnt != 0) dgvSearch.Rows.Add(idspCnt);
-                }
             }
             catch (Exception ex)
             {
@@ -481,8 +478,10 @@
             }
             finally
             {
-                sbcDB.close();
-                sbcDB = null;
+                sbcDB.close(); sbcDB = null;
+
+                // 画面一杯に行を表示する
+                dgvSearch.RowCount += CommonDefine.s_MaxInitLineCountMastamente - dgvSearch.Rows.Count;
             }
         }
         #endregion
@@ -518,8 +517,9 @@
                     }
                     else
                     {
-                        // 職種マスタ取得
+                        // 協力会社マスタ取得
                         strSQL = sbcDB.CreatePrimarykeyString(wrk.InputCode);
+                        strSQL += " AND DELETEFLG = 0";
                         if (!sbcDB.SelectAction(strSQL, ref sbcRec)) continue;
                     }
                     int iRows = dgvHistory.Rows.Add(++i,
@@ -528,12 +528,6 @@
 
                     dgvHistory.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = sbcRec.CompanyName;
                 }
-                // 画面一杯に行を表示する
-                if (dgvHistory.Rows.Count < CommonDefine.s_MaxInitLineCountMastamente)
-                {
-                    int idspCnt = CommonDefine.s_MaxInitLineCountMastamente - dgvHistory.Rows.Count;
-                    if (idspCnt != 0) dgvHistory.Rows.Add(idspCnt);
-                }
             }
             catch (Exception ex)
             {
@@ -543,6 +537,9 @@
             {
                 isdDB.close(); isdDB = null;
                 sbcDB.close(); sbcDB = null;
+
+                // 画面一杯に行を表示する
+                dgvHistory.RowCount += CommonDefine.s_MaxInitLineCountMastamente - dgvHistory.Rows.Count;
             }
         }
         #endregion
@@ -569,7 +566,8 @@
 
                 // SQL作成
                 string strSQL = sbcDB.CreatePrimarykeyString(SubContractorCode);
-                // 職種マスタ取得
+                strSQL += " AND DELETEFLG = 0";
+                // 協力会社マスタ取得
                 if (!sbcDB.SelectAction(strSQL, ref DataRec)) return false;
 
                 return true;
@@ -581,8 +579,7 @@
             }
             finally
             {
-                sbcDB.close();
-                sbcDB = null;
+                sbcDB.close(); sbcDB = null;
             }
         }
         #endregion
@@ -636,7 +633,7 @@
                     DataList.Add(keyval);
                 }
                 // コンボボックス初期表示
-                ComboBoxAction.InitDataSetCombBox(cmbIJobType, DataList);
+                ComboBoxAction.InitDataSetCombBox(cmbJobType, DataList);
             }
             catch (Exception ex)
             {
@@ -658,7 +655,7 @@
             IOMSubContractor sbDB = new IOMSubContractor();
             try
             {
-                string strSQL = "Select Distinct JapaneseSyllabary From SubContractorMaster Order By JapaneseSyllabary";
+                string strSQL = "Select Distinct JapaneseSyllabary From SubContractorMaster WHERE DELETEFLG = 0 Order By JapaneseSyllabary";
                 ArrayList arData = new ArrayList();
                 if (!sbDB.ExecuteReader(strSQL, ref arData)) return;
                 if (arData.Count == 0) return;
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.cs	(revision 51)
@@ -0,0 +1,1202 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+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;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmSubLocationDiag : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        #region 表示カラム
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispGridColumn
+        {
+            No = 0,
+            CompanyCode,
+            CompanyName,
+            DataType,
+        }
+        #endregion
+
+        #region 可変ボタン定義
+        /// <summary>
+        /// 可変ボタン定義
+        /// </summary>
+        private enum buttonVariable
+        {
+            /// <summary>
+            /// 無
+            /// </summary>
+            None = 0,
+            /// <summary>
+            /// 業者未定
+            /// </summary>
+            UnDecided,
+            /// <summary>
+            /// 常雇者
+            /// </summary>
+            AlwaysEmployment,
+        }
+        #endregion
+
+        #region ボタン色
+        /// <summary>
+        /// ボタントップ色
+        /// </summary>
+        private static Color[] ButtonBackColor = new Color[] { Color.White, Color.Gray, Color.Aquamarine };
+        private static Color[] ButtonForeColor = new Color[] { Color.White, Color.White, Color.Black };
+        #endregion
+
+        #region ボタントップ固定文字
+        /// <summary>
+        /// ボタントップ固定文字
+        /// </summary>
+        private static string[] FixButtonTop = new string[] { "", "業　者　未　定", "常　　雇　　者" };
+        #endregion
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 初期処理フラグ
+        /// </summary>
+        //private bool m_InitFlg = true;
+        /// <summary>
+        /// 協力業者マスタレコード
+        /// </summary>
+        private SubContractorMaster m_SubContractorSelcet = new SubContractorMaster();
+
+        /// <summary>
+        /// 起動元フラグ
+        /// </summary>
+        private int m_StartupSource = 0;
+
+        /// <summary>
+        /// 選択データタイプ
+        /// </summary>
+        private int m_DataType = 0;
+
+        /// <summary>
+        /// 複数選択フラグ
+        /// </summary>
+        private bool m_MultiSelect = true;
+
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+
+        /// <summary>
+        /// 使用機能番号（協力会社検索）
+        /// </summary>
+        private const int m_UsedProcessNo = (int)ClsExcute.SubFormExecuteNo.SubconstractorDiag;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+        
+        /// <summary>
+        /// 協力会社
+        /// </summary>
+        public SubContractorMaster SelectData
+        {
+            get { return m_SubContractorSelcet; }
+            set { m_SubContractorSelcet = value; }
+        }
+
+        /// <summary>
+        /// 複数選択フラグ
+        /// </summary>
+        public bool MultiSelect
+        {
+            get { return m_MultiSelect; }
+            set { m_MultiSelect = value; }
+        }
+
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        /// <summary>
+        /// 起動元フラグ
+        /// </summary>
+        public int StartupSource
+        {
+            get { return m_StartupSource; }
+            set { m_StartupSource = value; }
+        }
+
+        /// <summary>
+        /// 選択データタイプ
+        /// </summary>
+        public int DataType
+        {
+            get { return m_DataType; }
+            set { m_DataType = value; }
+        }
+
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmSubLocationDiag()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSubLocationDiag_Load(object sender, EventArgs e)
+        {
+
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
+
+            this.dgvMaster.Columns[0].Width = 60;
+            this.dgvMaster.Columns[1].Width = 120;
+            this.dgvMaster.Columns[2].Width = 797;
+
+            this.dgvMaster.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
+            this.dgvMaster.Columns[1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
+            this.dgvMaster.AllowUserToAddRows = false;
+
+            string no;
+            string kno;
+            string[] ss = { "中之島公園", "靭公園", "大泉緑地", "金岡公園", "長居公園", "浜寺公園", "大阪城公園", "天王寺公園", "扇町公園", "大仙公園", "中之島遊歩道", "北摂自然歩道", "通天閣", "梅田スカイタワー", "山内邸", "野間邸", "西川邸", "スーパー山本繁", "鴻臚寺", "古本市場新金岡店", "北花田イオンモール", "新金岡シティ" };
+
+            this.dgvMaster.Rows.Add(new object[] { "", "", "不明" });
+
+            for (int i = 0; i < 22; i++)
+            {
+                no = (i + 1).ToString();
+                kno = "2016" + (i + 160).ToString("0000") + "-1";
+
+                this.dgvMaster.Rows.Add(new object[] { no, kno, ss[i] + "改修工事" });
+
+            }
+            for (int i = 0; i < 20; i++)
+            {
+                this.dgvMaster.Rows.Add(new object[] { "", "", "" });
+            }
+
+            // 表示形式変更
+            InitDisplayFormat();
+
+            // マスタ検索コンボボックス
+            InitFixDataSet();
+
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // 表示タブの選択
+            //if (ExistHistoryData())
+            //{
+            //    tabControl1.SelectedIndex = 0;
+            //    DispHistryGridData();
+            //}
+            //else
+            //{
+            //    tabControl1.SelectedIndex = 1;
+            //}
+            //m_InitFlg = false;
+        }
+        #endregion
+
+        #region フォームクローズ
+        /// <summary>
+        /// フォーム終了
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmSubLocationDiag_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            //if (m_EndButton == DialogResult.OK)
+            //{
+            //    // グリッド選択
+            //    DataGridView dgv = null;
+            //    if (tabControl1.SelectedIndex == 0)
+            //        dgv = dgvHistory;
+            //    else
+            //        dgv = dgvSearch;
+         
+            //    // 選択データ取得
+            //    int SelRow = dgv.CurrentRow.Index;
+            //    int SelCode = CommonMotions.cnvInt(dgv.Rows[SelRow].Cells[(int)DispGridColumn.CompanyCode].Value);
+            //    m_DataType = CommonMotions.cnvInt(dgv.Rows[SelRow].Cells[(int)DispGridColumn.DataType].Value);
+            //    GetSubContractor(m_DataType, SelCode, ref m_SubContractorSelcet);
+
+            //    // 履歴は終了時に登録を行う
+            //    EntryInputLogData(dgv, SelCode);
+            //}
+        }
+        #endregion
+
+        #region 動作判定
+        /// <summary>
+        /// 動作判定
+        /// </summary>
+        /// <returns></returns>
+        private int JudgmentAction()
+        {
+            int iRet = 0;
+            switch (m_StartupSource)
+            {
+                // 積算見積書
+                case (int)ClsExcute.ProcessExecuteNo.EstimateInput:
+                    iRet = (int)buttonVariable.UnDecided;
+                    break;
+                // 積算予算書
+                case (int)ClsExcute.ProcessExecuteNo.EstimateBudget:
+                    iRet = (int)buttonVariable.UnDecided;
+                    break;
+                // 工事予算書
+                case (int)ClsExcute.ProcessExecuteNo.ConstructionBudget:
+                    iRet = (int)buttonVariable.AlwaysEmployment;
+                    break;
+                // 工事詳細台帳
+                case (int)ClsExcute.ProcessExecuteNo.ConstructionLedger:
+                    iRet = (int)buttonVariable.AlwaysEmployment;
+                    break;
+                // 議事録
+                case (int)ClsExcute.ProcessExecuteNo.Proceedings:
+                    iRet = (int)buttonVariable.None;
+                    break;
+            }
+            return iRet;
+        }
+        #endregion
+
+        #region 初期表示形式変更
+        /// <summary>
+        /// 初期表示形式変更
+        /// </summary>
+        private void InitDisplayFormat()
+        {
+            try
+            {
+                //// 表示ボタンの判定
+                //int ActionNo = JudgmentAction();
+                //if (ActionNo == (int)buttonVariable.None)
+                //{
+                //    btnVariable.Visible = false;
+                //    return;
+                //}
+
+                //btnVariable.BackColor = ButtonBackColor[ActionNo];
+                //btnVariable.ForeColor = ButtonForeColor[ActionNo];
+                //btnVariable.Text = FixButtonTop[ActionNo];
+            }
+            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 btnCancel_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.Cancel;
+            this.Close();
+        }
+        #endregion
+
+        #region 終了ボタン
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.None;
+            this.Close();
+        }
+        #endregion
+
+        #region 選択ボタン
+        /// <summary>
+        /// 選択ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnSelect_Click(object sender, EventArgs e)
+        {
+            //if (tabControl1.SelectedIndex == 0)
+            //{
+            //    // 空白チェック
+            //    if (!BlanckRowCheck(dgvHistory.CurrentRow)) return;
+            //}
+            //else
+            //{
+            //    // 空白チェック
+            //    if (!BlanckRowCheck(dgvSearch.CurrentRow)) return;
+            //}
+
+            m_EndButton = DialogResult.OK;
+            this.Close();
+        }
+        #endregion
+
+        //#region 自社ボタン
+        ///// <summary>
+        ///// 自社選択ボタン押下
+        ///// </summary>
+        ///// <param name="sender"></param>
+        ///// <param name="e"></param>
+        //private void btnMyCompany_Click(object sender, EventArgs e)
+        //{
+        //    dgvSearch.Rows.Clear();
+        //    dgvSearch.Rows.Add(1, CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key,
+        //                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Value,
+        //                            (int)CommonDefine.SearchLogDataType.FixCode);
+        //    dgvSearch.Rows[0].Cells[0].Selected = true;
+
+        //    m_EndButton = DialogResult.OK;
+        //    this.Close();
+        //}
+        //#endregion
+
+        //#region 汎用ボタン
+        ///// <summary>
+        ///// 汎用ボタン押下
+        ///// </summary>
+        ///// <param name="sender"></param>
+        ///// <param name="e"></param>
+        //private void btnVariable_Click(object sender, EventArgs e)
+        //{
+        //    if (JudgmentAction() == (int)buttonVariable.UnDecided)
+        //    {
+        //        // 業者未定
+        //        UnDecided_Action();
+        //    }
+        //    else
+        //    {
+        //        // 常用者選択
+        //        DispPersonMasterGridData();
+        //    }
+        //}
+        //#endregion
+
+        //#region 業者未定時動作
+        ///// <summary>
+        ///// 業者未定時動作
+        ///// </summary>
+        //private void UnDecided_Action()
+        //{
+        //    dgvSearch.Rows.Clear();
+        //    dgvSearch.Rows.Add(1, CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.UnDecided].Key,
+        //                            CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.UnDecided].Value);
+        //    dgvSearch.Rows[0].Cells[0].Selected = true;
+
+        //    m_EndButton = DialogResult.OK;
+        //    this.Close();
+        //}
+        //#endregion
+
+        //#region マスタグリッドダブルクリック
+        ///// <summary>
+        ///// マスタグリッドダブルクリック
+        ///// </summary>
+        ///// <param name="sender"></param>
+        ///// <param name="e"></param>
+        //private void dgvSearch_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        //{
+        //    // 空白チェック
+        //    if (!BlanckRowCheck(dgvSearch.CurrentRow)) return;
+
+        //    m_EndButton = DialogResult.OK;
+        //    this.Close();
+        //}
+        //#endregion
+
+        #region 履歴グリッドグリッドダブルクリック
+        /// <summary>
+        /// 履歴グリッドダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvHistory_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            // 空白チェック
+            if (!BlanckRowCheck(dgvMaster.CurrentRow)) return;
+
+            m_EndButton = DialogResult.OK;
+            this.Close();
+        }
+        #endregion
+
+        #region 固定SQL文字列
+        private const string s_SQLWHERE = " WHERE";
+        private const string s_SQLAND = " AND";
+        #endregion
+
+        //#region 工種コンボボックスチェンジ
+        ///// <summary>
+        ///// 工種コンボ変更時イベント
+        ///// </summary>
+        ///// <param name="sender"></param>
+        ///// <param name="e"></param>
+        //private void cmbItemType_SelectedIndexChanged(object sender, EventArgs e)
+        //{
+        //    try
+        //    {
+        //        if (m_InitFlg) return;
+
+        //        // 工種検索条件取得
+        //        string strSQL = GetSqlFromCmbItemType();
+        //        if (strSQL.Length != 0) strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL);
+
+        //        // 50音検索条件取得
+        //        string SecondSQL = GetSqlFromcmbJapaneseSyllabary();
+        //        if (SecondSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, SecondSQL);
+
+        //        // 支払区分検索条件取得
+        //        string ThirdSQL = GetSqlFromcmbLabour(); ;
+        //        if (ThirdSQL.Length != 0) strSQL += string.Format("{0} {1}", s_SQLAND, ThirdSQL);
+
+        //        strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
+
+        //        // 文字列にWhereが無い場合は先頭をWhereに変更する
+        //        if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
+        //        {
+        //            strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL.Substring(s_SQLAND.Length + 1));
+        //        }
+
+        //        // データ表示
+        //        DispSubconstractorMasterGridData(strSQL);
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //}
+        //#endregion
+
+        #region 工種選択コンボボックスよりSQLを作成する
+        /// <summary>
+        /// 工種選択コンボボックスよりSQLを作成する
+        /// </summary>
+        /// <returns></returns>
+        private string GetSqlFromCmbItemType()
+        {
+            try
+            {
+            //    int Value = CommonMotions.cnvInt(cmbItemType.SelectedValue);
+            //    if (Value < 1) return string.Empty;
+
+            //    return string.Format(" CompanyCode In (Select CompanyCode From SubContractorJobItem Where ItemCode = {0})",
+            //                    CommonMotions.cnvInt(cmbItemType.SelectedValue));
+                return string.Empty;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        //#region 手間業者コンボボックスチェンジ
+        ///// <summary>
+        ///// 手間業者コンボボックスチェンジ
+        ///// </summary>
+        ///// <param name="sender"></param>
+        ///// <param name="e"></param>
+        //private void cmbLabour_SelectedIndexChanged(object sender, EventArgs e)
+        //{
+        //    try
+        //    {
+        //        if (m_InitFlg) return;
+
+        //        // 支払区分検索条件取得
+        //        string strSQL = GetSqlFromcmbLabour();
+        //        if (strSQL.Length != 0) strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL);
+
+        //        // 工種検索条件取得
+        //        string SecondSQL = GetSqlFromCmbItemType();
+        //        if (SecondSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, SecondSQL);
+
+        //        // 50音検索条件取得
+        //        string ThirdSQL = GetSqlFromcmbJapaneseSyllabary(); ;
+        //        if (ThirdSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, ThirdSQL);
+
+        //        strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
+
+        //        // 文字列にWhereが無い場合は先頭をWhereに変更する
+        //        if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
+        //        {
+        //            strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL.Substring(s_SQLAND.Length + 1));
+        //        }
+
+        //        // データ表示
+        //        DispSubconstractorMasterGridData(strSQL);
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //}
+        //#endregion
+
+        #region 支払区分コンボボックスよりSQLを作成する
+        /// <summary>
+        ///  支払区分コンボボックスよりSQLを作成する
+        /// </summary>
+        /// <returns></returns>
+        private string GetSqlFromcmbLabour()
+        {
+            try
+            {
+                //int Value = CommonMotions.cnvInt(cmbLabour.SelectedValue);
+                //if (Value < 0) return string.Empty;
+
+                //return string.Format(" labourKind = {0}", CommonMotions.cnvInt(cmbLabour.SelectedValue));
+                return string.Empty;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        //#region 50音順コンボボックスチェンジ
+        ///// <summary>
+        ///// 50音順コンボ変更時イベント
+        ///// </summary>
+        ///// <param name="sender"></param>
+        ///// <param name="e"></param>
+        //private void cmbJapaneseSyllabary_SelectedIndexChanged(object sender, EventArgs e)
+        //{
+        //    try
+        //    {
+        //        if (m_InitFlg) return;
+
+        //        // 50音検索条件取得
+        //        string strSQL = GetSqlFromcmbJapaneseSyllabary();
+        //        if (strSQL.Length != 0) strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL);
+
+        //        // 工種検索条件取得
+        //        string SecondSQL = GetSqlFromCmbItemType();
+        //        if (SecondSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, SecondSQL);
+
+        //        // 支払区分検索条件取得
+        //        string ThirdSQL = GetSqlFromcmbLabour(); ;
+        //        if (ThirdSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, ThirdSQL);
+
+        //        strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
+
+        //        // 文字列にWhereが無い場合は先頭をWhereに変更する
+        //        if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
+        //        {
+        //            strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL.Substring(s_SQLAND.Length + 1));
+        //        }
+
+        //        // データ表示
+        //        DispSubconstractorMasterGridData(strSQL);
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //}
+        //#endregion
+
+        #region 50音順コンボボックスよりSQLを作成する
+        /// <summary>
+        ///  50音順コンボボックスよりSQLを作成する
+        /// </summary>
+        /// <returns></returns>
+        private string GetSqlFromcmbJapaneseSyllabary()
+        {
+            try
+            {
+                //string Value = CommonMotions.cnvString(cmbJapaneseSyllabary.SelectedValue);
+                //if (Value.Length == 0) return string.Empty;
+
+                //return string.Format(" JapaneseSyllabary = '{0}'", cmbJapaneseSyllabary.SelectedValue);
+                return string.Empty;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return string.Empty;
+            }
+        }
+        #endregion
+
+        #region 初期表示
+        /// <summary>
+        /// マスタ検索グリッド初期設定
+        /// </summary>
+        private void InitFixDataSet()
+        {
+            //dgvSearch.RowCount = CommonDefine.s_MaxInitLineCount;
+            
+            // 協力会社施工工種データセット
+            SetcmbSubContractorItem();
+            // 50音順セット
+            SetcmbcmbJapaneseSyllabary();
+            // 手間業者セット
+            SetcmbcmbLabout();
+        }
+        #endregion
+
+        #region 履歴データ確認処理
+        /// <summary>
+        /// 履歴データがあるかどうかを確認する
+        /// </summary>
+        /// <returns></returns>
+        private bool ExistHistoryData()
+        {
+            IOInputSearchLogData isdDB = new IOInputSearchLogData();
+            try
+            {
+                bool bRet = true;
+
+                string strSQL = isdDB.CreatePrimarykeyString(m_ConstructionCode, m_UsedProcessNo);
+                List<InputSearchLogData> isdList = new List<InputSearchLogData>();
+                if (!isdDB.SelectAction(strSQL, ref isdList)) bRet = false;
+                if (isdList.Count == 0) return false;
+
+                return bRet;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                isdDB.close(); isdDB = null;
+            }
+        }
+        #endregion
+
+        //#region 協力会社マスタグリッドデータ表示
+        ///// <summary>
+        ///// 協力会社マスタグリッドデータ表示
+        ///// </summary>
+        //private void DispSubconstractorMasterGridData(string strSearch)
+        //{
+        //    IOMSubContractor sbcDB = new IOMSubContractor();
+        //    try
+        //    {
+        //        dgvSearch.Rows.Clear();
+
+        //        List<SubContractorMaster> sbcList = new List<SubContractorMaster>();
+                
+        //        // SQL作成
+        //        // 工種マスタ取得
+        //        if (!sbcDB.SelectAction(strSearch, ref sbcList)) return;
+
+        //        // 要素表示
+        //        int i = 0;
+        //        foreach (SubContractorMaster wrk in sbcList)
+        //        {
+        //            int iRows = dgvSearch.Rows.Add(++i,
+        //                                wrk.CompanyCode,
+        //                                wrk.CompanyName,
+        //                                (int)CommonDefine.SearchLogDataType.Subconstractor);
+
+
+        //            dgvSearch.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = wrk.CompanyName;
+        //        }
+        //        // 画面一杯に行を表示する
+        //        if (dgvSearch.Rows.Count < CommonDefine.s_MaxInitLineCountMastamente)
+        //        {
+        //            int idspCnt = CommonDefine.s_MaxInitLineCountMastamente - dgvSearch.Rows.Count;
+        //            if (idspCnt != 0) dgvSearch.Rows.Add(idspCnt);
+        //        }
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //    finally
+        //    {
+        //        sbcDB.close();
+        //        sbcDB = null;
+        //    }
+        //}
+        //#endregion
+
+        //#region 担当者マスタグリッドデータ表示（常用者）
+        ///// <summary>
+        ///// 担当者マスタグリッドデータ表示（常用者）
+        ///// </summary>
+        //private void DispPersonMasterGridData()
+        //{
+        //    IOMPersonInCharge personDB = new IOMPersonInCharge();
+        //    try
+        //    {
+        //        dgvSearch.Rows.Clear();
+
+        //        List<PersonInChargeMaster> personList = new List<PersonInChargeMaster>();
+        //        // SQL作成
+        //        string strSQL = string.Format(" Where EmployeeClassFlg = {0} And DeleteFlg = 0 Order By DisplayOrder ASC", (int)CommonDefine.EmployeeClassFlg.OutSource);
+        //        // 担当者マスタ取得
+        //        if (!personDB.SelectAction(strSQL, ref personList)) return;
+
+        //        // 要素表示
+        //        int i = 0;
+        //        foreach (PersonInChargeMaster wrk in personList)
+        //        {
+        //            int iRows = dgvSearch.Rows.Add(++i,
+        //                                wrk.PersonCode,
+        //                                wrk.PersonName,
+        //                                (int)CommonDefine.SearchLogDataType.Person);
+
+        //            dgvSearch.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = wrk.PersonName;
+        //        }
+        //        // 画面一杯に行を表示する
+        //        if (dgvSearch.Rows.Count < CommonDefine.s_MaxInitLineCountMastamente)
+        //        {
+        //            int idspCnt = CommonDefine.s_MaxInitLineCountMastamente - dgvSearch.Rows.Count;
+        //            if (idspCnt != 0) dgvSearch.Rows.Add(idspCnt);
+        //        }
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //    finally
+        //    {
+        //        personDB.close(); personDB = null;
+        //    }
+        //}
+        //#endregion
+
+        #region 履歴グリッドデータ表示
+        /// <summary>
+        /// 履歴グリッドデータ表示
+        /// </summary>
+        private void DispHistryGridData()
+        {
+            IOInputSearchLogData isdDB = new IOInputSearchLogData();
+            IOMSubContractor sbcDB = new IOMSubContractor();
+            try
+            {
+                dgvMaster.Rows.Clear();
+
+                List<InputSearchLogData> isdList = new List<InputSearchLogData>();
+                // SQL作成
+                string strSQL = isdDB.CreatePrimarykeyString(m_ConstructionCode, m_UsedProcessNo);
+                strSQL += " Order By DisplayOrder";
+                if (!isdDB.SelectAction(strSQL, ref isdList)) return;
+
+                // 要素表示
+                int i = 0;
+                foreach (InputSearchLogData wrk in isdList)
+                {
+                    SubContractorMaster sbcRec = new SubContractorMaster();
+                    if (!GetSubContractor(wrk.DataType, wrk.InputCode, ref sbcRec)) continue;
+
+                    int iRows = dgvMaster.Rows.Add(++i,
+                                        sbcRec.CompanyCode,
+                                        sbcRec.CompanyName,
+                                        wrk.DataType);
+
+                    dgvMaster.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = sbcRec.CompanyName;
+                }
+                // 画面一杯に行を表示する
+                if (dgvMaster.Rows.Count < CommonDefine.s_MaxInitLineCountMastamente)
+                {
+                    int idspCnt = CommonDefine.s_MaxInitLineCountMastamente - dgvMaster.Rows.Count;
+                    if (idspCnt != 0) dgvMaster.Rows.Add(idspCnt);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                isdDB.close(); isdDB = null;
+                sbcDB.close(); sbcDB = null;
+            }
+        }
+        #endregion
+
+        #region 選択データ取得
+        /// <summary>
+        /// 選択データ取得
+        /// </summary>
+        /// <param name="SubContractorCode"></param>
+        /// <param name="DataRec"></param>
+        /// <returns></returns>
+        private bool GetSubContractor(int DataType, int SubContractorCode, ref SubContractorMaster DataRec)
+        {
+            IOMSubContractor sbcDB = new IOMSubContractor();
+            IOMPersonInCharge personDB = new IOMPersonInCharge();
+            try
+            {
+                string strSQL = string.Empty;
+                if (DataType == (int)CommonDefine.SearchLogDataType.FixCode)
+                {
+                    // 自社の場合
+                    if (SubContractorCode == CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key)
+                    {
+                        DataRec.CompanyCode = CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key;
+                        DataRec.CompanyName = CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Value;
+                    }
+                    else if (SubContractorCode == CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.UnDecided].Key)
+                    {   // 業者未定の場合
+                        DataRec.CompanyCode = CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.UnDecided].Key;
+                        DataRec.CompanyName = CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.UnDecided].Value;
+                    }
+                    return true;
+                }
+                else if (DataType == (int)CommonDefine.SearchLogDataType.Subconstractor)
+                {
+                    // SQL作成
+                    strSQL = sbcDB.CreatePrimarykeyString(SubContractorCode);
+                    // 工種マスタ取得
+                    if (!sbcDB.SelectAction(strSQL, ref DataRec)) return false;
+                }
+                else if (DataType == (int)CommonDefine.SearchLogDataType.Person)
+                {
+                    PersonInChargeMaster personRec = new PersonInChargeMaster();
+                    // SQL作成
+                    strSQL = personDB.CreatePrimarykeyString(SubContractorCode);
+                    strSQL += string.Format(" AND EmployeeClassFlg = {0} And DeleteFlg = 0", (int)CommonDefine.EmployeeClassFlg.OutSource);
+                    // 担当者マスタ取得
+                    if (!personDB.SelectAction(strSQL, ref personRec)) return false;
+                    DataRec.CompanyCode = personRec.PersonCode;
+                    DataRec.CompanyName = personRec.PersonName;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                sbcDB.close(); sbcDB = null;
+                personDB.close(); personDB = null;
+            }
+        }
+        #endregion
+
+        #region グリッド空き行チェック
+        /// <summary>
+        /// グリッド空行チェック
+        /// </summary>
+        /// <param name="row"></param>
+        /// <returns></returns>
+        private bool BlanckRowCheck(DataGridViewRow row)
+        {
+            try
+            {
+                // 空欄チェック
+                if (CommonMotions.chkObjectIsNull(row.Cells[(int)DispGridColumn.CompanyName].Value)) return false;
+                if (CommonMotions.cnvString(row.Cells[(int)DispGridColumn.CompanyName].Value).Length == 0) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+
+        #region 協力会社施工工種コンボボックスセット
+        /// <summary>
+        /// 協力会社施工工種コンボボックスセット
+        /// </summary>
+        private void SetcmbSubContractorItem()
+        {
+            IOMSubContractorItem itemDB = new IOMSubContractorItem();
+            try
+            {
+                List<SubContractorItemMaster> itemList = new List<SubContractorItemMaster>();
+
+                string strSQL = " Order By DisplayOrder";
+                if (!itemDB.SelectAction(strSQL, ref itemList)) return;
+                if (itemList.Count == 0) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, ""));
+                // データ表示
+                for (int i = 0; i < itemList.Count; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(itemList[i].ItemCode, itemList[i].ItemName);
+
+                    DataList.Add(keyval);
+                }
+                //// コンボボックス初期表示
+                //ComboBoxAction.InitDataSetCombBox(cmbItemType, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                itemDB.close(); itemDB = null;
+            }
+        }
+        #endregion
+
+        #region 協力会社50音順コンボボックスセット
+        /// <summary>
+        /// 協力会社50音順コンボボックスセット
+        /// </summary>
+        private void SetcmbcmbJapaneseSyllabary()
+        {
+            IOMSubContractor sbDB = new IOMSubContractor();
+            try
+            {
+                string strSQL = "Select Distinct JapaneseSyllabary From SubContractorMaster Order By JapaneseSyllabary";
+                ArrayList arData = new ArrayList();
+                if (!sbDB.ExecuteReader(strSQL, ref arData)) return;
+                if (arData.Count == 0) return;
+
+                // データセット
+                List<KeyValuePair<string, string>> DataList = new List<KeyValuePair<string, string>>();
+                DataList.Add(new KeyValuePair<string, string>("", ""));
+                foreach (object[] objwrk in arData)
+                {
+                    KeyValuePair<string, string> keyval = new KeyValuePair<string, string>(objwrk[0].ToString(), objwrk[0].ToString());
+                    DataList.Add(keyval);
+                }
+                //// コンボボックス初期表示
+                //ComboBoxAction.InitDataSetCombBox(cmbJapaneseSyllabary, DataList);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                sbDB.close(); sbDB = null;
+            }
+        }
+        #endregion
+
+        #region 手間業者コンボボックスセット
+        /// <summary>
+        /// 手間業者コンボボックスセット
+        /// </summary>
+        private void SetcmbcmbLabout()
+        {
+            try
+            {
+
+                // データセット
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(-1, ""));
+
+                foreach (KeyValuePair<int, string> SetValue in CommonDefine.s_SubContractorKind)
+                {
+                    DataList.Add(new KeyValuePair<int, string>(SetValue.Key, SetValue.Value));
+                }
+
+                // コンボボックス初期表示
+                //ComboBoxAction.InitDataSetCombBox(cmbLabour, DataList);
+            }
+            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 tabControl1_DrawItem(object sender, DrawItemEventArgs e)
+        {
+            //対象のTabControlを取得
+            TabControl tab = (TabControl)sender;
+            //タブページのテキストを取得
+            string txt = tab.TabPages[e.Index].Text;
+
+            //タブのテキストと背景を描画するためのブラシを決定する
+            Brush foreBrush = null;
+            Brush backBrush = null;
+
+            if (tab.TabPages[e.Index].Name.Equals("tabPage1"))
+            {
+                // 履歴ページ
+                backBrush = new SolidBrush(Color.LightGreen);
+                foreBrush = Brushes.Black;
+            }
+            else if (tab.TabPages[e.Index].Name.Equals("tabPage2"))
+            {   // 検索ページ
+                backBrush = new SolidBrush(Color.LightSalmon);
+                foreBrush = Brushes.Black;
+            }
+            else
+            {
+                backBrush = new SolidBrush(Color.Black);
+                foreBrush = Brushes.White;
+            }
+
+            //StringFormatを作成
+            StringFormat sf = new StringFormat();
+            //中央に表示する
+            sf.Alignment = StringAlignment.Center;
+            sf.LineAlignment = StringAlignment.Center;
+
+            //背景の描画
+            e.Graphics.FillRectangle(backBrush, e.Bounds);
+            //Textの描画
+            e.Graphics.DrawString(txt, e.Font, foreBrush, e.Bounds, sf);
+        }
+        #endregion
+
+        //#region グリッドより履歴データ登録処理
+        ///// <summary>
+        ///// グリッドよりの登録処理
+        ///// </summary>
+        ///// <returns></returns>
+        //private bool EntryInputLogData(DataGridView dgv, int SubconstructorCode)
+        //{
+        //    IOInputSearchLogData isdDB = new IOInputSearchLogData();
+        //    try
+        //    {
+        //        // グリッドからの選択は処理しない
+        //        if (dgv == dgvMaster && dgvMaster.RowCount > 1)
+        //        {
+        //            return true;
+        //        }
+                
+        //        InputSearchLogData isdRec = new InputSearchLogData();
+        //        string strSQL = isdDB.CreatePrimarykeyString(m_ConstructionCode, m_UsedProcessNo);
+        //        strSQL += string.Format(" And InputCode = {0}", SubconstructorCode);
+                
+        //        // データがあれば登録しない
+        //        if (isdDB.SelectAction(strSQL, ref isdRec)) return true;
+
+        //        // 最大表示番号を取得する
+        //        string strMax = isdDB.CreatePrimarykeyString(m_ConstructionCode, m_UsedProcessNo);
+        //        int iMax = isdDB.SelectMaxCount(strMax);
+
+        //        // 登録対象
+        //        isdRec.ConstructionCode = m_ConstructionCode;       // 工事番号
+        //        isdRec.UsedProcessNo = m_UsedProcessNo;             // 使用機能番号
+        //        isdRec.DisplayOrder = iMax + 1;                     // 表示順
+        //        isdRec.InputCode = SubconstructorCode;              // 入力コード
+        //        isdRec.DataType = CommonMotions.cnvInt(dgvSearch.CurrentRow.Cells[(int)DispGridColumn.DataType].Value);       // データタイプ
+
+        //        if (!isdDB.InsertAction(isdRec)) return false;
+
+        //        return true;
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //        return false;
+        //    }
+        //    finally
+        //    {
+        //        isdDB.close(); isdDB = null;
+        //    }
+        //}
+        //#endregion
+
+        #region アップボタン
+        /// <summary>
+        /// アップキー押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDispUp_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // グリッドアップキー処理
+                DataGridViewAction.GridRowUpAction((DataGridView)dgvMaster, (int)DispGridColumn.CompanyCode, (int)DispGridColumn.CompanyName);
+            }
+            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 btnDispDown_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // グリッドアップキー処理
+                DataGridViewAction.GridRowDownAction((DataGridView)dgvMaster, (int)DispGridColumn.CompanyCode, (int)DispGridColumn.CompanyName);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.designer.cs	(revision 51)
@@ -0,0 +1,174 @@
+﻿namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmSubLocationDiag
+    {
+        /// <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();
+            this.btnSelect = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.dgvMaster = 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.Column4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnSelect
+            // 
+            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(544, 596);
+            this.btnSelect.Name = "btnSelect";
+            this.btnSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnSelect.TabIndex = 4;
+            this.btnSelect.Text = "選　択";
+            this.btnSelect.UseVisualStyleBackColor = false;
+            this.btnSelect.Click += new System.EventHandler(this.btnSelect_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(672, 596);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 5;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.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);
+            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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn1,
+            this.dataGridViewTextBoxColumn2,
+            this.dataGridViewTextBoxColumn3});
+            this.dgvMaster.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
+            this.dgvMaster.Location = new System.Drawing.Point(12, 12);
+            this.dgvMaster.MultiSelect = false;
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(780, 578);
+            this.dgvMaster.TabIndex = 20;
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dataGridViewTextBoxColumn1.Frozen = true;
+            this.dataGridViewTextBoxColumn1.HeaderText = "No.";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            this.dataGridViewTextBoxColumn1.Width = 50;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle3;
+            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.Width = 200;
+            // 
+            // dataGridViewTextBoxColumn3
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.dataGridViewTextBoxColumn3.DefaultCellStyle = dataGridViewCellStyle4;
+            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 = 500;
+            // 
+            // Column4
+            // 
+            this.Column4.Name = "Column4";
+            // 
+            // FrmSubLocationDiag
+            // 
+            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(805, 632);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.btnSelect);
+            this.Controls.Add(this.btnEnd);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmSubLocationDiag";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "工事案件選択";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmSubLocationDiag_FormClosing);
+            this.Load += new System.EventHandler(this.FrmSubLocationDiag_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnSelect;
+        private System.Windows.Forms.Button btnEnd;
+        private CustomControls.DataGridViewEX dgvMaster;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubLocationDiag.resx	(revision 51)
@@ -0,0 +1,132 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="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="Column4.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/SubForms/FrmSubconstractorDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubconstractorDiag.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmSubconstractorDiag.cs	(revision 51)
@@ -79,8 +79,33 @@
         /// </summary>
         private static string[] FixButtonTop = new string[] { "", "業　者　未　定", "常　　雇　　者" };
         #endregion
+
+        #region 選択業者手間区分
+        /// <summary>
+        /// 業者手間区分  Add BIT 2017/02/23
+        /// </summary>
+            public enum SelectLabourKinds
+            {
+                /// <summary>
+                /// 通常業者のみ
+                /// </summary>
+                Normal = 0,
+
+                /// <summary>
+                /// 手間業者のみ
+                /// </summary>
+                Labour,
+
+                /// <summary>
+                /// 通常業者/手間業者
+                /// </summary>
+                Both = 99,
+
+            }
         #endregion
 
+        #endregion
+
         #region 変数
         /// <summary>
         /// 初期処理フラグ
@@ -120,6 +145,13 @@
         /// 使用機能番号（協力会社検索）
         /// </summary>
         private const int m_UsedProcessNo = (int)ClsExcute.SubFormExecuteNo.SubconstractorDiag;
+
+        /// <summary>
+        /// 選択業者手間区分                Add BIT 2017/02/23
+        /// </summary>
+        private int m_SelectLabourKind = (int)SelectLabourKinds.Both;
+
+
         #endregion
 
         #region プロパティ
@@ -176,6 +208,15 @@
             set { m_DataType = value; }
         }
 
+        /// <summary>
+        /// 選択手間業者区分                Add BIT 2017/02/23
+        /// </summary>
+        public int SelectLabourKind
+        {
+            get { return m_SelectLabourKind; }
+            set { m_SelectLabourKind = value; }
+        }
+
         #endregion
 
         #region コンストラクタ
@@ -206,16 +247,37 @@
             // フォームサイズ固定
             this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
 
+            // 履歴データの設定     Add BIT 2017/02/17
+            DispHistryGridData();
+
             // 表示タブの選択
-            if (ExistHistoryData())
+ //           if (ExistHistoryData())       Del BIT 2017/02/17
+
+            // 履歴が存在する場合 Add BIT 2017/02/17
+            
+            if( dgvHistory.Rows[0].Cells[2].Value != null )
             {
                 tabControl1.SelectedIndex = 0;
-                DispHistryGridData();
+
+                // Del BIT 2017/02/25
+                //DispHistryGridData();
             }
             else
             {
                 tabControl1.SelectedIndex = 1;
             }
+
+            // 業者手間区分が指定されている場合             Add BIT 2017/02/23
+            if (m_SelectLabourKind != (int)SelectLabourKinds.Both)
+            {
+                cmbLabour.SelectedIndex = 0;
+                btnMyCompany.Visible = false;
+                // SQLの作成       Add BIT 2017/02/23
+                string strSQL = CreateSQL();
+
+                // データ表示
+                DispSubconstractorMasterGridData(strSQL);
+            }
             m_InitFlg = false;
         }
         #endregion
@@ -372,7 +434,7 @@
             dgvSearch.Rows.Clear();
             dgvSearch.Rows.Add(1, CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key,
                                     CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Value,
-                                    (int)CommonDefine.SearchLogDataType.FixCode);
+                                    (int)CommonDefine.CodeDataType.FixCode);
             dgvSearch.Rows[0].Cells[0].Selected = true;
 
             m_EndButton = DialogResult.OK;
@@ -508,7 +570,7 @@
                 int Value = CommonMotions.cnvInt(cmbItemType.SelectedValue);
                 if (Value < 1) return string.Empty;
 
-                return string.Format(" CompanyCode In (Select CompanyCode From SubContractorJobItem Where ItemCode = {0})",
+                return string.Format(" CompanyCode In (Select A1.CompanyCode From SubContractorJobItem A1 Where A1.ItemCode = {0})",
                                 CommonMotions.cnvInt(cmbItemType.SelectedValue));
 
             }
@@ -532,26 +594,30 @@
             {
                 if (m_InitFlg) return;
 
-                // 支払区分検索条件取得
-                string strSQL = GetSqlFromcmbLabour();
-                if (strSQL.Length != 0) strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL);
+                // Del BIT 2017/02/23
+                //// 支払区分検索条件取得
+                //string strSQL = GetSqlFromcmbLabour();
+                //if (strSQL.Length != 0) strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL);
 
-                // 工種検索条件取得
-                string SecondSQL = GetSqlFromCmbItemType();
-                if (SecondSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, SecondSQL);
+                //// 工種検索条件取得
+                //string SecondSQL = GetSqlFromCmbItemType();
+                //if (SecondSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, SecondSQL);
 
-                // 50音検索条件取得
-                string ThirdSQL = GetSqlFromcmbJapaneseSyllabary(); ;
-                if (ThirdSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, ThirdSQL);
+                //// 50音検索条件取得
+                //string ThirdSQL = GetSqlFromcmbJapaneseSyllabary(); ;
+                //if (ThirdSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, ThirdSQL);
 
-                strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
+                //strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
 
-                // 文字列にWhereが無い場合は先頭をWhereに変更する
-                if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
-                {
-                    strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL.Substring(s_SQLAND.Length + 1));
-                }
+                //// 文字列にWhereが無い場合は先頭をWhereに変更する
+                //if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
+                //{
+                //    strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL.Substring(s_SQLAND.Length + 1));
+                //}
 
+                // SQLの作成       Add BIT 2017/02/23
+                string strSQL = CreateSQL();
+
                 // データ表示
                 DispSubconstractorMasterGridData(strSQL);
             }
@@ -677,10 +743,11 @@
             {
                 bool bRet = true;
 
-                string strSQL = isdDB.CreatePrimarykeyString(m_ConstructionCode, m_UsedProcessNo);
-                List<InputSearchLogData> isdList = new List<InputSearchLogData>();
-                if (!isdDB.SelectAction(strSQL, ref isdList)) bRet = false;
-                if (isdList.Count == 0) return false;
+                // Del BIT 
+                //string strSQL = isdDB.CreatePrimarykeyString(m_ConstructionCode, m_UsedProcessNo);
+                //List<InputSearchLogData> isdList = new List<InputSearchLogData>();
+                //if (!isdDB.SelectAction(strSQL, ref isdList)) bRet = false;
+                //if (isdList.Count == 0) return false;
 
                 return bRet;
             }
@@ -720,7 +787,7 @@
                     int iRows = dgvSearch.Rows.Add(++i,
                                         wrk.CompanyCode,
                                         wrk.CompanyName,
-                                        (int)CommonDefine.SearchLogDataType.Subconstractor);
+                                        (int)CommonDefine.CodeDataType.Subconstractor);
 
 
                     dgvSearch.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = wrk.CompanyName;
@@ -768,7 +835,7 @@
                     int iRows = dgvSearch.Rows.Add(++i,
                                         wrk.PersonCode,
                                         wrk.PersonName,
-                                        (int)CommonDefine.SearchLogDataType.Person);
+                                        (int)CommonDefine.CodeDataType.Person);
 
                     dgvSearch.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = wrk.PersonName;
                 }
@@ -815,12 +882,16 @@
                     SubContractorMaster sbcRec = new SubContractorMaster();
                     if (!GetSubContractor(wrk.DataType, wrk.InputCode, ref sbcRec)) continue;
 
-                    int iRows = dgvHistory.Rows.Add(++i,
-                                        sbcRec.CompanyCode,
-                                        sbcRec.CompanyName,
-                                        wrk.DataType);
+                    // 手間業者区分が一致する場合        Add BIT 2017/02/23
+                    if ((m_SelectLabourKind == (int)SelectLabourKinds.Both) || (m_SelectLabourKind == sbcRec.labourKind))
+                    {
+                        int iRows = dgvHistory.Rows.Add(++i,
+                                            sbcRec.CompanyCode,
+                                            sbcRec.CompanyName,
+                                            wrk.DataType);
+                        dgvHistory.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = sbcRec.CompanyName;
+                    }
 
-                    dgvHistory.Rows[iRows].Cells[(int)DispGridColumn.CompanyName].ToolTipText = sbcRec.CompanyName;
                 }
                 // 画面一杯に行を表示する
                 if (dgvHistory.Rows.Count < CommonDefine.s_MaxInitLineCountMastamente)
@@ -855,7 +926,7 @@
             try
             {
                 string strSQL = string.Empty;
-                if (DataType == (int)CommonDefine.SearchLogDataType.FixCode)
+                if (DataType == (int)CommonDefine.CodeDataType.FixCode)
                 {
                     // 自社の場合
                     if (SubContractorCode == CommonDefine.s_AmountMoney[(int)CommonDefine.AmountMoneyNo.MyCosts].Key)
@@ -870,7 +941,7 @@
                     }
                     return true;
                 }
-                else if (DataType == (int)CommonDefine.SearchLogDataType.Subconstractor)
+                else if (DataType == (int)CommonDefine.CodeDataType.Subconstractor)
                 {
                     // SQL作成
                     strSQL = sbcDB.CreatePrimarykeyString(SubContractorCode);
@@ -877,7 +948,7 @@
                     // 工種マスタ取得
                     if (!sbcDB.SelectAction(strSQL, ref DataRec)) return false;
                 }
-                else if (DataType == (int)CommonDefine.SearchLogDataType.Person)
+                else if (DataType == (int)CommonDefine.CodeDataType.Person)
                 {
                     PersonInChargeMaster personRec = new PersonInChargeMaster();
                     // SQL作成
@@ -1013,12 +1084,29 @@
 
                 // データセット
                 List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
-                DataList.Add(new KeyValuePair<int, string>(-1, ""));
 
-                foreach (KeyValuePair<int, string> SetValue in CommonDefine.s_SubContractorKind)
+                // 両方の場合        Add BIT 2017/02/23
+                if (m_SelectLabourKind == (int)SelectLabourKinds.Both)
                 {
-                    DataList.Add(new KeyValuePair<int, string>(SetValue.Key, SetValue.Value));
+                    DataList.Add(new KeyValuePair<int, string>(-1, ""));
+
+                    foreach (KeyValuePair<int, string> SetValue in CommonDefine.s_SubContractorKind)
+                    {
+                        DataList.Add(new KeyValuePair<int, string>(SetValue.Key, SetValue.Value));
+                    }
                 }
+                // 通常業者、手間業者いずれかの場合     Add BIT 2017/02/23
+                else
+                {
+                    foreach (KeyValuePair<int, string> SetValue in CommonDefine.s_SubContractorKind)
+                    {
+                        // 指定された業者手間区分のみ追加
+                        if (SetValue.Key == m_SelectLabourKind)
+                        {
+                            DataList.Add(new KeyValuePair<int, string>(SetValue.Key, SetValue.Value));
+                        }
+                    }
+                }
 
                 // コンボボックス初期表示
                 ComboBoxAction.InitDataSetCombBox(cmbLabour, DataList);
@@ -1166,5 +1254,36 @@
             }
         }
         #endregion
+
+        #region 検索用SQL作成
+        /// <summary>
+        /// 検索用SQL作成            Add BIT 2017/02/23
+        /// </summary>
+        private string CreateSQL()
+        {
+            // 支払区分検索条件取得
+            string strSQL = GetSqlFromcmbLabour();
+            if (strSQL.Length != 0) strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL);
+
+            // 工種検索条件取得
+            string SecondSQL = GetSqlFromCmbItemType();
+            if (SecondSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, SecondSQL);
+
+            // 50音検索条件取得
+            string ThirdSQL = GetSqlFromcmbJapaneseSyllabary(); ;
+            if (ThirdSQL.Length != 0) strSQL += string.Format(" {0} {1}", s_SQLAND, ThirdSQL);
+
+            strSQL += string.Format("{0} DeleteFlg = 0 Order By DisplayOrder ASC", s_SQLAND);
+
+            // 文字列にWhereが無い場合は先頭をWhereに変更する
+            if (strSQL.IndexOf(s_SQLWHERE, 0) < 0)
+            {
+                strSQL = string.Format("{0} {1}", s_SQLWHERE, strSQL.Substring(s_SQLAND.Length + 1));
+            }
+
+            return strSQL;
+        }
+
+        #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.Designer.cs	(revision 51)
@@ -0,0 +1,173 @@
+﻿namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmTyingConstrDiag
+    {
+        /// <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();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.btnSelect = new System.Windows.Forms.Button();
+            this.dgvMaster = new System.Windows.Forms.DataGridView();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(772, 162);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 3;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // btnSelect
+            // 
+            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(644, 162);
+            this.btnSelect.Name = "btnSelect";
+            this.btnSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnSelect.TabIndex = 2;
+            this.btnSelect.Text = "選　択";
+            this.btnSelect.UseVisualStyleBackColor = false;
+            this.btnSelect.Click += new System.EventHandler(this.btnSelect_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.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);
+            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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeight = 24;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column5,
+            this.Column3});
+            this.dgvMaster.Location = new System.Drawing.Point(12, 8);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 24;
+            this.dgvMaster.Size = new System.Drawing.Size(880, 146);
+            this.dgvMaster.TabIndex = 0;
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            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 = 60;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            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.Visible = false;
+            this.Column5.Width = 120;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            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;
+            this.Column3.Width = 800;
+            // 
+            // FrmTyingConstrDiag
+            // 
+            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(904, 197);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.btnSelect);
+            this.Controls.Add(this.btnEnd);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmTyingConstrDiag";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "工事案件選択";
+            this.Load += new System.EventHandler(this.FrmCostStructureDiag_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Button btnSelect;
+        private System.Windows.Forms.DataGridView dgvMaster;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.cs	(revision 51)
@@ -0,0 +1,341 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+using System.Collections;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmTyingConstrDiag : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum GridColumn
+        {
+            DisplayOrder = 0,
+            ConstructionCode,
+            ConstructionName,
+        }
+
+        /// <summary>
+        /// 担当者検索位置
+        /// </summary>
+        public enum PersonChargePoint
+        {
+            /// <summary>
+            /// 営業担当
+            /// </summary>
+            Sales = 0,
+            /// <summary>
+            /// 工事担当者
+            /// </summary>
+            Construction,
+        }
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        private int m_ConstructionCode = 0;
+
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// 親工事追加フラグ
+        /// </summary>
+        private bool m_ParentAdd = false;
+
+        /// <summary>
+        /// 起動プロセス番号
+        /// </summary>
+        private int m_OperationProcess = 0;
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 工事番号
+        /// </summary>
+        public int ConstructionCode
+        {
+            get { return m_ConstructionCode; }
+            set { m_ConstructionCode = value; }
+        }
+
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        /// <summary>
+        /// 親コード追加フラグ
+        /// </summary>
+        public bool ParentAdd
+        {
+            get { return m_ParentAdd; }
+            set { m_ParentAdd = value; }
+        }
+
+        /// <summary>
+        /// 起動プロセス番号
+        /// </summary>
+        public int OperationProcess
+        {
+            get { return m_OperationProcess; }
+            set { m_OperationProcess = value; }
+        }
+
+        #endregion
+
+        #region フォーム初期化
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmTyingConstrDiag()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmCostStructureDiag_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+            // 処理名称表示
+            if (m_OperationProcess != 0)
+            {
+                this.Text = string.Format("【{0}】　工事案件選択",
+                    ClsExcute.ProcessExecuteName[m_OperationProcess].Replace("－", ""));
+            }
+            
+            // 初期表示
+            InitDataLoad();
+        }
+        #endregion
+
+        #region 終了ボタン押下
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.No;
+            this.Close();
+        }
+        #endregion
+
+        #region 選択ボタン押下
+        /// <summary>
+        /// 選択ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnSelect_Click(object sender, EventArgs e)
+        {
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow dgvRow = dgv.CurrentRow;
+            
+            // 工事番号取得
+            m_ConstructionCode = CommonMotions.cnvInt(dgvRow.Cells[(int)GridColumn.ConstructionCode].Value);
+
+            m_EndButton = DialogResult.OK;
+            this.Close();
+        }
+        #endregion
+
+        #region セルのダブルクリック時
+        /// <summary>
+        /// セルのダブルクリック時
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow dgvRow = dgv.CurrentRow;
+
+            // 空白チェック
+            if (!BlanckRowCheck(dgvRow)) return;
+            // グリッドクリック以外は処理しない
+            if (e.RowIndex < 0) return;
+
+            // 工事番号取得
+            m_ConstructionCode = CommonMotions.cnvInt(dgvRow.Cells[(int)GridColumn.ConstructionCode].Value);
+
+            m_EndButton = DialogResult.OK;
+            this.Close();
+        }
+        #endregion
+
+        #region 初期表示処理
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                // 一覧表示
+                DisplayConstruction();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 工事一覧表示処理
+        /// <summary>
+        /// 工事一覧表示処理
+        /// </summary>
+        private void DisplayConstruction()
+        {
+            IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            try
+            {
+                dgvMaster.Rows.Clear();
+
+                // 表示対象の取得
+                List<int> CodeList = new List<int>();
+                ClsProcessExist.GetTargetList(BaseDB, ref CodeList, m_ParentAdd);
+                int ParentCode = ClsProcessExist.GetParentConstrCode(m_ConstructionCode);
+
+                int iCode = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+
+                string strSQL = "SELECT A.CONSTRUCTIONCODE, B.DETAILSTRING FROM CONSTRUCTIONBASEINFO A, CONSTRUCTIONBASEINFODETAIL B";
+
+                string strInWher = " (";
+                bool binit = true;
+                foreach (int CurCode in CodeList)
+                {
+                    if (!binit) strInWher += " ,";
+                    strInWher += string.Format("{0}", CurCode);
+                    binit = false;
+                }
+                strInWher += ")";
+
+                strSQL += " WHERE A.CONSTRUCTIONCODE in ";
+                strSQL += strInWher;
+
+                strSQL += string.Format(" AND A.CONSTRUCTIONSTATUSFLG != {0}", iCode);
+                strSQL += string.Format(" AND (B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND B.DETAILNO = {0})", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
+
+                switch (m_OperationProcess)
+                {
+                    case (int)ClsExcute.ProcessExecuteNo.EstimateInput:
+                        strSQL += " AND EXISTS (SELECT * FROM ESTIMATEDATA EXDB WHERE EXDB.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                        break;
+                    case (int)ClsExcute.ProcessExecuteNo.ConstructionBudget:
+                        strSQL += " AND EXISTS (SELECT * FROM CONSTRUCTIONBUDGET EXDB WHERE EXDB.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                        break;
+                    case (int)ClsExcute.ProcessExecuteNo.ConstructionCopyList:
+                        strSQL += " AND EXISTS (SELECT * FROM ESTIMATEDATA EXDB WHERE EXDB.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                        break;
+                    case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry:
+                        strSQL += " AND EXISTS (SELECT * FROM CONSTRUCTIONLEDGERDETAIL EXDB";
+                        strSQL += " WHERE EXDB.CONSTRUCTIONCODE in " + strInWher;
+                        strSQL += " AND EXDB.SOURCECODE = A.CONSTRUCTIONCODE";
+                        strSQL += string.Format(" AND EXDB.EXECUTIONAMOUNT >= {0})", CommonDefine.s_PrintOutPrice);
+                        break;
+                    case (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint:
+                        strSQL += " AND EXISTS (SELECT * FROM PURCHASEORDER EXDB WHERE EXDB.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE)";
+                        break;
+                    default:
+                        break;
+                }
+                
+                strSQL += " ORDER BY A.CONSTRUCTIONCODE";
+
+                ArrayList BaseList = new ArrayList();
+                if (!BaseDB.ExecuteReader(strSQL, ref BaseList)) return;
+                if (BaseList.Count == 0) return;
+
+                // 要素表示
+                int i = 0;
+                foreach (object[] wrk in BaseList)
+                {
+                    // データ表示
+                    string EditConstructionCode = CommonMotions.cnvStringCodeFromInt(ConstructionCode, "-", 8);
+                    dgvMaster.Rows.Add((i + 1),
+                                        CommonMotions.cnvInt(wrk[0]),
+                                        CommonMotions.cnvString(wrk[1]));
+
+                    dgvMaster.Rows[i++].Cells[(int)GridColumn.ConstructionName].ToolTipText = CommonMotions.cnvString(wrk[1]);
+
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                BaseDB.close(); BaseDB = null;
+                // 表示行が足りない場合の表示
+                if (dgvMaster.Rows.Count < 5) dgvMaster.Rows.Add(5 - dgvMaster.Rows.Count);
+            }
+        }
+        #endregion
+
+        #region グリッド空行チェック
+        /// <summary>
+        /// グリッド空行チェック
+        /// </summary>
+        /// <param name="row"></param>
+        /// <returns></returns>
+        private bool BlanckRowCheck(DataGridViewRow row)
+        {
+            try
+            {
+                // 空欄チェック
+                if (CommonMotions.chkObjectIsNull(row.Cells[(int)GridColumn.ConstructionCode].Value)) return false;
+                if (CommonMotions.cnvString(row.Cells[(int)GridColumn.ConstructionName].Value).Length == 0) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmTyingConstrDiag.resx	(revision 51)
@@ -0,0 +1,129 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column5.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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmValueOfOrder.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmValueOfOrder.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmValueOfOrder.cs	(revision 51)
@@ -144,9 +144,9 @@
 
         #endregion
 
-        #region フォーム初期化
+        #region コンストラクタ
         /// <summary>
-        /// フォーム初期化
+        /// コンストラクタ
         /// </summary>
         public FrmValueOfOrderDiag()
         {
@@ -362,8 +362,16 @@
                 ClearEditArea();
 
                 // 現在受注金額表示
-                lbl001.Text = m_ConstructionBaseInfo.OrdersDecisionPrice.ToString("#,0");
-                lbl002.Text = m_ConstructionBaseInfo.OrdersDecisionPriceInTax.ToString("#,0");
+                lbl001.Text = m_OrdersDecisionPrice.ToString("#,0");
+                if (m_OrdersDecisionPriceInTax != 0)
+                {
+                    lbl002.Text = m_OrdersDecisionPriceInTax.ToString("#,0");
+                }
+                else
+                {
+                    double taxrate = 1 + CommonMotions.SystemMasterData.ConsumptionTax / 100.0;
+                    lbl002.Text = CommonMotions.cnvRound(m_OrdersDecisionPrice * taxrate).ToString("#,0");
+                }
 
                 m_bChengeAns = false;
             }
@@ -617,12 +625,12 @@
 
                 // 税抜受注金額変更
                 if (!BaseDB.UpdateFeild(m_ConstructionCode,
-                                    (int)IOConstructionBaseInfo.TableColumn.ORDERS_DECISION_PRICE,
+                                    (int)IOConstructionBaseInfo.TableColumn.OrdersDecisionPrice,
                                         CommonMotions.cnvInt(textBox001.Text), false)) return false;
 
                 // 税込受注金額変更
                 if (!BaseDB.UpdateFeild(m_ConstructionCode,
-                                    (int)IOConstructionBaseInfo.TableColumn.ORDERS_DECISION_PRICE_IN_TAX,
+                                    (int)IOConstructionBaseInfo.TableColumn.OrdersDecisionPriceInTax,
                                         CommonMotions.cnvInt(textBox002.Text), false)) return false;
                 return true;
             }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleCalendar.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleCalendar.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleCalendar.cs	(revision 51)
@@ -163,6 +163,8 @@
 
                 vsdDB.commit();
 
+                CommonMotions.EntryEndMessage("車両予約データ");
+
                 m_bChengeAns = false;
 
                 this.Close();
@@ -195,6 +197,8 @@
 
                 m_bChengeAns = false;
 
+                CommonMotions.RemoveEndMessage("車両予約データ");
+
                 // 終了
                 this.Close();
 
@@ -482,7 +486,8 @@
                 wrkEndDate = wrkEndDate.AddDays(-1);
 
                 string wrkSQL = "SELECT Count(*) FROM HolidayCalenderMaster";
-                wrkSQL += string.Format(" Where DATE_FORMAT('{0}','%Y/%m/%d') <= Holiday And Holiday <= DATE_FORMAT('{1}','%Y/%m/%d')"
+                //wrkSQL += string.Format(" Where TO_DATE('{0}','YYYY/MM/DD') <= Holiday And Holiday <= TO_DATE('{1}','YYYY/MM/DD')"
+                wrkSQL += string.Format(" Where STR_TO_DATE('{0}','%Y/%m/%d') <= Holiday And Holiday <= STR_TO_DATE('{1}','%Y/%m/%d')"
                                         , wrkStratDate.ToShortDateString(), wrkEndDate.ToShortDateString());
                 ArrayList arData = new ArrayList();
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.Designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.Designer.cs	(revision 51)
@@ -0,0 +1,169 @@
+﻿namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmVehicleSelector
+    {
+        /// <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();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.btnSelect = new System.Windows.Forms.Button();
+            this.dgvMaster = new System.Windows.Forms.DataGridView();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(407, 238);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 30);
+            this.btnEnd.TabIndex = 3;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // btnSelect
+            // 
+            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(279, 238);
+            this.btnSelect.Name = "btnSelect";
+            this.btnSelect.Size = new System.Drawing.Size(120, 30);
+            this.btnSelect.TabIndex = 2;
+            this.btnSelect.Text = "選　択";
+            this.btnSelect.UseVisualStyleBackColor = false;
+            this.btnSelect.Click += new System.EventHandler(this.btnSelect_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.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);
+            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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeight = 24;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column2,
+            this.Column3});
+            this.dgvMaster.Location = new System.Drawing.Point(7, 8);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 20;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(520, 226);
+            this.dgvMaster.TabIndex = 0;
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("Century", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            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 = 60;
+            // 
+            // Column2
+            // 
+            this.Column2.Frozen = true;
+            this.Column2.HeaderText = "車両コード";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.Visible = false;
+            this.Column2.Width = 5;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle3;
+            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.Width = 440;
+            // 
+            // FrmVehicleSelector
+            // 
+            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(534, 271);
+            this.Controls.Add(this.dgvMaster);
+            this.Controls.Add(this.btnSelect);
+            this.Controls.Add(this.btnEnd);
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.KeyPreview = true;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "FrmVehicleSelector";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "車　両　選　択";
+            this.Load += new System.EventHandler(this.FrmVehicleSelector_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Button btnSelect;
+        private System.Windows.Forms.DataGridView dgvMaster;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.cs	(revision 51)
@@ -0,0 +1,192 @@
+﻿using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmVehicleSelector : Form
+    {
+        #region ログ使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum GridCol
+        {
+            No = 0,
+            VehicleCode,
+            VehicleString,
+        }
+        #endregion
+
+        #region 変数
+        
+        /// <summary>
+        /// 車両番号
+        /// </summary>
+        private int m_VehicleCode = 0;
+        
+        /// <summary>
+        /// 終了状態フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.Cancel;
+
+        #endregion
+
+        #region プロパティ
+        /// <summary>
+        /// 車両キー取得
+        /// </summary>
+        public int VehicleCode
+        {
+            get { return m_VehicleCode; }
+        }
+
+        /// <summary>
+        /// 終了ボタン状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        #endregion
+
+        #region コンストラクタ
+        /// <summary>
+        /// フォーム初期化
+        /// </summary>
+        public FrmVehicleSelector()
+        {
+            InitializeComponent();
+        }
+        #endregion
+
+        #region フォームロード
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmVehicleSelector_Load(object sender, EventArgs e)
+        {
+            // 初期表示
+            InitDataLoad();
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+        }
+        #endregion
+
+        #region 終了ボタン押下
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.Cancel;
+            Close();
+        }
+        #endregion
+
+        #region 選択ボタン押下
+        /// <summary>
+        /// 選択ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnSelect_Click(object sender, EventArgs e)
+        {
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow CurRow = dgv.CurrentRow;
+
+            if (CurRow.Index < 0)
+            {
+                MessageBox.Show("車両が選択されていません。", "車両選択", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                return;
+            }
+            m_VehicleCode = CommonMotions.cnvInt(CurRow.Cells[(int)GridCol.VehicleCode].Value);
+            if (m_VehicleCode == 0) return;
+
+            m_EndButton = DialogResult.OK;
+            this.Close();
+        }
+        #endregion
+
+        #region セルのダブルクリック時
+        /// <summary>
+        /// セルのダブルクリック時
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow CurRow = dgv.CurrentRow;
+
+            // 選択無しは処理しない
+            if (e.RowIndex < 0) return;
+
+            m_VehicleCode = CommonMotions.cnvInt(CurRow.Cells[(int)GridCol.VehicleCode].Value);
+            if (m_VehicleCode == 0) return;
+
+            m_EndButton = DialogResult.OK;
+            this.Close();
+        }
+        #endregion
+
+        #region 初期表示処理
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            IOMVehicle vcDB = new IOMVehicle();
+            try
+            {
+                dgvMaster.Rows.Clear();
+
+                string strSQL = " WHERE VEHICLESCHEDULEFLG = 0 ORDER BY DISPLAYORDER";
+                List<VehicleMaster> vcList = new List<VehicleMaster>();
+                if (!vcDB.SelectAction(strSQL, ref vcList)) return;
+
+                int no = 1;
+                foreach (VehicleMaster vcRec in vcList)
+                {
+                    dgvMaster.Rows.Add(no++,
+                                        vcRec.VehicleCode,
+                                        vcRec.VehicleName);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                if (dgvMaster.RowCount < 10)
+                {
+                    dgvMaster.RowCount = 10;
+                }
+                vcDB.close(); vcDB = null;
+            }
+        }
+        #endregion
+    }
+}
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/FrmVehicleSelector.resx	(revision 51)
@@ -0,0 +1,129 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.cs	(revision 51)
@@ -0,0 +1,486 @@
+using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.Master;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*------------------------ 単位マスタメンテ画面 ----------------------*
+//  2015/07/14  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmMaterialHistory : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispColumn
+        {
+            DisplayOrder = 0,
+            PROCESSDATE,
+            PERSONNAME,
+            RECKIND,
+            DETAILSTRING,
+            MATERIALCOUNT,
+            REPAYPLANDATE,
+            COMMENTTEXT,
+        }
+
+        /// <summary>
+        /// データカラム
+        /// </summary>
+        private enum DataColumn
+        {
+            PROCESSDATE = 0,
+            PERSONNAME,
+            RECKIND,
+            DETAILSTRING,
+            MATERIALCOUNT,
+            REPAYPLANDATE,
+            COMMENTTEXT,
+        }
+
+        #endregion
+
+        #region 変数
+
+        /// <summary>
+        /// 資材種類
+        /// </summary>
+        public String m_MaterialType = "";
+
+        /// <summary>
+        /// 資材品目コード
+        /// </summary>
+        public int m_MaterialItemCode = 0;
+
+        /// <summary>
+        /// 資材品目
+        /// </summary>
+        public String m_MaterialItem = "";
+
+        /// <summary>
+        /// 資材数（変更前）
+        /// </summary>
+        public String m_MaterialCount = "";
+
+        /// <summary>
+        /// 割当可能数（変更前）
+        /// </summary>
+        public String m_MaterialAssignableCount = "";
+
+        /// <summary>
+        /// データ操作
+        /// </summary>
+        private IOMaterialInfo m_IoM = null;
+
+
+        /// <summary>
+        /// 初期時グリッドカウント
+        /// </summary>
+        private int m_initDataCount = 0;
+        /// ダイアログ使用フラグ
+        /// </summary>
+        private bool m_DialogFlg = false;
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialHistory()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialHistory()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+        #region プロパティ
+
+        /// <summary>
+        /// 資材種類
+        /// </summary>
+        public string MaterialType
+        {
+            get { return m_MaterialType; }
+            set { m_MaterialType = value; }
+        }
+
+        /// <summary>
+        /// 資材品目コード
+        /// </summary>
+        public int MaterialItemCode
+        {
+            get { return m_MaterialItemCode; }
+            set { m_MaterialItemCode = value; }
+        }
+
+        /// <summary>
+        /// 資材品目
+        /// </summary>
+        public string MaterialItem
+        {
+            get { return m_MaterialItem; }
+            set { m_MaterialItem = value; }
+        }
+
+        /// <summary>
+        /// 資材数（変更前）
+        /// </summary>
+        public string MaterialCount
+        {
+            get { return m_MaterialCount; }
+            set { m_MaterialCount = value; }
+        }
+        /// <summary>
+        /// 割当可能数（変更前）
+        /// </summary>
+        public string MaterialAssignableCount
+        {
+            get { return m_MaterialAssignableCount; }
+            set { m_MaterialAssignableCount = value; }
+        }
+
+        #endregion
+
+
+        #region イベントメソッド
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialHistory_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            // ロック解除用
+            if (e.Cancel != true && m_IoM != null)
+            {
+                m_IoM.rollback();
+                m_IoM.close();
+                m_IoM = null;
+            }
+
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+        }
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialHistory_Load(object sender, EventArgs e)
+        {
+            // 初期表示
+            InitDataLoad();
+            
+
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+        }
+
+        /// <summary>
+        /// 行データクリア
+        /// </summary>
+        /// <param name="iIndex">行カウント</param>
+        private void SetRowClearData(int iIndex)
+        {
+            // クリアデータセット
+        }
+
+        /// <summary>
+        /// グリッド採番処理
+        /// </summary>
+        private void LineReNumbering()
+        {
+            int icnt = 1;
+            foreach (DataGridViewRow r in dgvMaster.Rows)
+            {
+                // 表示されているものだけ採番
+                if (r.Visible)
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = (icnt++).ToString();
+                else
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = "0";
+            }
+        }
+        
+
+        #endregion
+
+        #region プライベートメソッド
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            // ロック実行
+            try
+            {
+                m_IoM = new IOMaterialInfo();
+                m_IoM.connect();
+                m_IoM.SetLockWaitime(1);
+                m_IoM.beginTran();
+                // 共有ロック
+                if (!m_IoM.RowLockShare(m_MaterialItemCode, false))
+                {
+                    return;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                this.Close();
+            }
+
+
+            try
+            {
+
+                // 資材種類
+                lblMaterialKind.Text = m_MaterialType;
+
+                // 資材品目
+                lblMaterialItem.Text = m_MaterialItem;
+
+                // 資材数
+                lblMaterialCount.Text = m_MaterialCount;
+
+                // 割当可能数
+                lblRentCount.Text = m_MaterialAssignableCount;
+
+                DispGridData();
+                // ダイアログ使用時
+                if (m_DialogFlg)
+                {
+                    //フォームの幅だけを変更する
+                    this.SetBounds(this.Left, this.Top, (this.Width - 40), this.Height, BoundsSpecified.Width);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        /// <summary>
+        /// 資材一覧表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DispGridData()
+        {
+            List<UnitMaster> cm = new List<UnitMaster>();
+            ArrayList arData = new ArrayList();
+
+            try
+            {
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                // 抽出
+                StringBuilder sql = new StringBuilder();
+                sql.AppendLine("select   DATE_FORMAT(Mri.PROCESSDATE, '%Y/%m/%d') as PROCESSDATE ");
+                sql.AppendLine("		,ifnull(P.PERSONNAME,'') as PERSONNAME ");
+                sql.AppendLine("        ,case Mri.RECKIND ");
+                sql.AppendLine("			when 0 then '貸出' ");
+                sql.AppendLine("			when 1 then '返却' ");
+                sql.AppendLine("			when 2 then '追加' ");
+                sql.AppendLine("			when 3 then '破棄' ");
+                sql.AppendLine("		 end as RECKIND ");
+                sql.AppendLine("        ,ifnull(Cbid.DETAILSTRING,'') as DETAILSTRING ");
+                sql.AppendLine("        ,Mri.MATERIALCOUNT ");
+                sql.AppendLine("        ,case Mri.RECKIND when 0 then ifnull(DATE_FORMAT(Mri.REPAYPLANDATE, '%Y/%m/%d'),'') else '' end as REPAYPLANDATE ");
+                sql.AppendLine("        ,ifnull(Mri.COMMENTTEXT,'') as COMMENTTEXT ");
+                sql.AppendLine("from MaterialRecordInfo as Mri 	left join MaterialInfo as Mi on Mri.MATERIALITEMCODE = Mi.MATERIALITEMCODE  ");
+                sql.AppendLine("								left join personinchargemaster as P on Mri.PERSONCODE = P.PERSONCODE ");
+                sql.AppendLine("                                left join ConstructionBaseInfoDetail as Cbid on Mri.CONSTRUCTIONCODE = Cbid.CONSTRUCTIONCODE and Cbid.DETAILNO = 2 ");
+                sql.AppendFormat("where Mri.MaterialItemCode = {0} ",MaterialItemCode);
+                sql.AppendLine("order by Mri.PROCESSDATE desc,Mri.SEQNO desc ");
+                sql.AppendLine("limit 20");
+
+                if (!m_IoM.ExecuteReader(sql.ToString(), ref arData, false)) return false;
+                // データ表示
+                int icnt = 0;
+                foreach (object[] work in arData)
+                {
+                    dgvMaster.Rows.Add();
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.PROCESSDATE].Value = CommonMotions.cnvString(work[(int)DataColumn.PROCESSDATE]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.PERSONNAME].Value = CommonMotions.cnvString(work[(int)DataColumn.PERSONNAME]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RECKIND].Value = CommonMotions.cnvString(work[(int)DataColumn.RECKIND]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.DETAILSTRING].Value = CommonMotions.cnvString(work[(int)DataColumn.DETAILSTRING]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MATERIALCOUNT].Value = CommonMotions.cnvInt(work[(int)DataColumn.MATERIALCOUNT]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.REPAYPLANDATE].Value = CommonMotions.cnvString(work[(int)DataColumn.REPAYPLANDATE]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.COMMENTTEXT].Value = CommonMotions.cnvString(work[(int)DataColumn.COMMENTTEXT]);
+
+                    icnt++;
+                }
+
+                // 読込時データカウント取得
+                m_initDataCount = arData.Count;
+
+                if(m_initDataCount==0)
+                {
+                    return true;
+                }
+
+                // 自動的に選択されている行を外す
+                dgvMaster.Rows[0].Selected = false;
+
+                // №再採番
+                LineReNumbering();
+
+                // クリアデータセット
+                SetRowClearData(dgvMaster.Rows.Count - 1);
+
+           }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            return true;
+        }
+
+        /// <summary>
+        /// グリッド最終行での処理
+        /// </summary>
+        private void GridLastLine()
+        {
+            // 最終行判定
+            if (dgvMaster.CurrentCell.RowIndex == dgvMaster.Rows.Count - 1)
+            {
+                // 最終列判定
+                if (dgvMaster.CurrentCell.ColumnIndex == (int)DispColumn.COMMENTTEXT)
+                {
+                    // 1行追加
+                    dgvMaster.Rows.Add();
+                    // クリアデータセット
+                    SetRowClearData(dgvMaster.Rows.Count - 1);
+                    // №再採番
+                    LineReNumbering();
+                }
+
+            }
+        }
+        /// <summary>
+        /// 資材数が0の資材も表示するボタン押下による表示制御処理
+        /// </summary>
+        private void radioButton1_CheckedChanged(object sender, EventArgs e)
+        {
+
+        }
+        /// <summary>
+        /// 資材数変更ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                // ----- 起動プロセス設定
+
+                //　遷移先の取得処理
+                int NowPoint = 0;
+                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.MaterialCountEntry);
+
+                //　遷移先への連携値
+                // パラメータセット
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[1].Value));
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[2].Value));
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[3].Value));
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[4].Value));
+
+                // 処理実行
+                // 資材数変更画面に遷移
+                ClsExcute.ProcesscExecute();
+
+                btnEnd_Click(sender, (EventArgs)e);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        /// <summary>
+        /// 資材履歴ボタン押下時の処理
+        /// </summary>
+        private void button2_Click(object sender, EventArgs e)
+        {
+            // 資材履歴画面を表示
+            try
+            {
+                // ----- 起動プロセス設定
+
+                //　↓遷移先の取得処理
+                int NowPoint = 0;
+                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.MaterialHistory);
+
+                //　遷移先への連携値
+                // パラメータセット
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[1].Value));
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[2].Value));
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[3].Value));
+                ClsExcute.ProcControlPara[NowPoint].StringExecParameter.Add(CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[4].Value));
+
+                // 処理実行
+                // 資材数変更画面に遷移
+                ClsExcute.ProcesscExecute();
+
+                btnEnd_Click(sender, (EventArgs)e);
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.designer.cs	(revision 51)
@@ -0,0 +1,383 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmMaterialHistory
+    {
+        /// <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();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.lblMaterialKind = new System.Windows.Forms.Label();
+            this.lblMaterialItem = new System.Windows.Forms.Label();
+            this.label5 = new System.Windows.Forms.Label();
+            this.lblMaterialCount = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.lblRentCount = new System.Windows.Forms.Label();
+            this.label10 = new System.Windows.Forms.Label();
+            this.dgvMaster = 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.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(1138, 541);
+            this.btnEnd.Margin = new System.Windows.Forms.Padding(4);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 34);
+            this.btnEnd.TabIndex = 4;
+            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.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(489, 8);
+            this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(292, 34);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "資　材　履　歴";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            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(10, 48);
+            this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(100, 30);
+            this.label2.TabIndex = 23;
+            this.label2.Text = "資材種類";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.BackColor = System.Drawing.Color.White;
+            this.label3.Location = new System.Drawing.Point(156, 34);
+            this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(0, 16);
+            this.label3.TabIndex = 30;
+            // 
+            // lblMaterialKind
+            // 
+            this.lblMaterialKind.BackColor = System.Drawing.Color.White;
+            this.lblMaterialKind.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialKind.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialKind.Location = new System.Drawing.Point(116, 48);
+            this.lblMaterialKind.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.lblMaterialKind.Name = "lblMaterialKind";
+            this.lblMaterialKind.Size = new System.Drawing.Size(200, 30);
+            this.lblMaterialKind.TabIndex = 32;
+            this.lblMaterialKind.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // lblMaterialItem
+            // 
+            this.lblMaterialItem.BackColor = System.Drawing.Color.White;
+            this.lblMaterialItem.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialItem.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialItem.Location = new System.Drawing.Point(434, 48);
+            this.lblMaterialItem.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.lblMaterialItem.Name = "lblMaterialItem";
+            this.lblMaterialItem.Size = new System.Drawing.Size(200, 30);
+            this.lblMaterialItem.TabIndex = 34;
+            this.lblMaterialItem.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label5
+            // 
+            this.label5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label5.ForeColor = System.Drawing.Color.Black;
+            this.label5.Location = new System.Drawing.Point(328, 48);
+            this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(100, 30);
+            this.label5.TabIndex = 33;
+            this.label5.Text = "資材品目";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblMaterialCount
+            // 
+            this.lblMaterialCount.BackColor = System.Drawing.Color.White;
+            this.lblMaterialCount.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblMaterialCount.ForeColor = System.Drawing.Color.Black;
+            this.lblMaterialCount.Location = new System.Drawing.Point(752, 48);
+            this.lblMaterialCount.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.lblMaterialCount.Name = "lblMaterialCount";
+            this.lblMaterialCount.Size = new System.Drawing.Size(86, 30);
+            this.lblMaterialCount.TabIndex = 36;
+            this.lblMaterialCount.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label8
+            // 
+            this.label8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label8.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label8.ForeColor = System.Drawing.Color.Black;
+            this.label8.Location = new System.Drawing.Point(646, 48);
+            this.label8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(100, 30);
+            this.label8.TabIndex = 35;
+            this.label8.Text = "資材数";
+            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblRentCount
+            // 
+            this.lblRentCount.BackColor = System.Drawing.Color.White;
+            this.lblRentCount.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblRentCount.ForeColor = System.Drawing.Color.Black;
+            this.lblRentCount.Location = new System.Drawing.Point(976, 48);
+            this.lblRentCount.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.lblRentCount.Name = "lblRentCount";
+            this.lblRentCount.Size = new System.Drawing.Size(88, 30);
+            this.lblRentCount.TabIndex = 38;
+            this.lblRentCount.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label10
+            // 
+            this.label10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
+            this.label10.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label10.ForeColor = System.Drawing.Color.Black;
+            this.label10.Location = new System.Drawing.Point(850, 48);
+            this.label10.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(120, 30);
+            this.label10.TabIndex = 37;
+            this.label10.Text = "貸出可能数";
+            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeight = 27;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column2,
+            this.Column3,
+            this.Column4,
+            this.Column5,
+            this.Column6,
+            this.Column7,
+            this.Column8});
+            this.dgvMaster.Location = new System.Drawing.Point(10, 84);
+            this.dgvMaster.Margin = new System.Windows.Forms.Padding(4);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.ScrollBars = System.Windows.Forms.ScrollBars.None;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(1250, 449);
+            this.dgvMaster.TabIndex = 0;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            this.Column1.HeaderText = "№";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            this.Column1.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column1.Width = 60;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column2.HeaderText = "日付";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 125;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
+            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.Width = 80;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle5;
+            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 = 80;
+            // 
+            // Column5
+            // 
+            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 = 400;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle6.Format = "#,0";
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle6;
+            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 = 80;
+            // 
+            // Column7
+            // 
+            dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column7.DefaultCellStyle = dataGridViewCellStyle7;
+            this.Column7.HeaderText = "返却予定日";
+            this.Column7.Name = "Column7";
+            this.Column7.ReadOnly = true;
+            this.Column7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column7.Width = 125;
+            // 
+            // Column8
+            // 
+            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 = 300;
+            // 
+            // FrmMaterialHistory
+            // 
+            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(1271, 583);
+            this.Controls.Add(this.lblRentCount);
+            this.Controls.Add(this.label10);
+            this.Controls.Add(this.lblMaterialCount);
+            this.Controls.Add(this.label8);
+            this.Controls.Add(this.lblMaterialItem);
+            this.Controls.Add(this.label5);
+            this.Controls.Add(this.lblMaterialKind);
+            this.Controls.Add(this.label3);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dgvMaster);
+            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.Margin = new System.Windows.Forms.Padding(4);
+            this.MaximizeBox = false;
+            this.Name = "FrmMaterialHistory";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMaterialHistory_FormClosing);
+            this.Load += new System.EventHandler(this.FrmMaterialHistory_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private DataGridViewEX dgvMaster;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Label label3;
+        private System.Windows.Forms.Label lblMaterialKind;
+        private System.Windows.Forms.Label lblMaterialItem;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label lblMaterialCount;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label lblRentCount;
+        private System.Windows.Forms.Label label10;
+        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 Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column8;
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialHistory.resx	(revision 51)
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="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>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.cs	(revision 51)
@@ -0,0 +1,524 @@
+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.DataEntry;
+using ProcessManagement.Forms.Master;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*------------------------ 資材一覧 ----------------------*
+//  2015/07/14  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmMaterialList : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispColumn
+        {
+            DisplayOrder = 0,
+            MaterialKindName,
+            MaterialItemCode,
+            MaterialItemName,
+            MaterialCount,
+            RentCount,
+            EntryDate,
+        }
+
+        /// <summary>
+        /// 取得データカラム
+        /// </summary>
+        private enum DataColumn
+        {
+            MaterialKindName=0,
+            MaterialItemCode,
+            MaterialItemName,
+            MaterialCount,
+            RentCount,
+            EntryDate,
+        }
+        #endregion
+
+        #region 変数
+        /// <summary>
+        /// フィールド値変化フラグ
+        /// </summary>
+        //private bool m_bChengeAns = false;
+
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        private bool m_EditLock = false;
+
+        /// <summary>
+        /// 初期時グリッドカウント
+        /// </summary>
+        //private int m_initDataCount = 0;
+        /// ダイアログ使用フラグ
+        /// </summary>
+        private bool m_DialogFlg = false;
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialList()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialList()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+        #region プロパティ
+        /// <summary>
+        /// 参照フラグ
+        /// </summary>
+        public bool EditLock
+        {
+            get { return m_EditLock; }
+            set { m_EditLock = value; }
+        }
+        #endregion
+
+
+        #region イベントメソッド
+        /// <summary>
+        /// ×ボタン押下処理
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialList_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            // 前プロセスに戻る
+            ClsExcute.BackProcess();
+        }
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            this.Close();
+        }
+
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialList_Load(object sender, EventArgs e)
+        {
+            // 初期表示
+            InitDataLoad();
+            
+            if (m_EditLock) btnMaterialCountEntry.Enabled = false;
+
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+
+        }
+
+        /// <summary>
+        /// 行データクリア
+        /// </summary>
+        /// <param name="iIndex">行カウント</param>
+        private void SetRowClearData(int iIndex)
+        {
+            // クリアデータセット
+        }
+
+        /// <summary>
+        /// グリッド採番処理
+        /// </summary>
+        private void LineReNumbering()
+        {
+            int icnt = 1;
+            foreach (DataGridViewRow r in dgvMaster.Rows)
+            {
+                // 表示されているものだけ採番
+                if (r.Visible)
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = (icnt++).ToString();
+                else
+                    r.Cells[(int)DispColumn.DisplayOrder].Value = "0";
+            }
+        }
+        
+        /// <summary>
+        /// セルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            setButtonEnable();
+        }
+
+        /// <summary>
+        /// セルダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            //　資材履歴画面を表示
+           btnMaterialHistory_Click(sender, e);
+        }
+
+        #endregion
+
+        #region プライベートメソッド
+
+        /// <summary>
+        /// 素材種類のロード
+        /// </summary>
+        private void LoadMaterialKind()
+        {
+            IOMaterialTypes IoMt = new IOMaterialTypes();
+            try
+            {
+                List<MaterialKindMaster> itemList = new List<MaterialKindMaster>();
+                if (!IoMt.SelectAction(" Where DeleteFlg = 0 Order By DisplayOrder ASC", ref itemList)) return;
+                if (itemList.Count == 0) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                DataList.Add(new KeyValuePair<int, string>(0, "すべて"));
+                // データ表示
+                for (int i = 0; i < itemList.Count; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(itemList[i].MaterialKindCode, itemList[i].MaterialKindName);
+
+                    DataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                cmbTypes.ValueMember = "Key";
+                cmbTypes.DisplayMember = "Value";
+                ComboBoxAction.InitDataSetCombBox(cmbTypes, DataList, false);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoMt.close();
+                IoMt = null;
+            }
+        }
+
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+
+                //素材種類表示
+                LoadMaterialKind();
+
+                DispGridData();
+                // ダイアログ使用時
+                if (m_DialogFlg)
+                {
+                    //フォームの幅だけを変更する
+                    this.SetBounds(this.Left, this.Top, (this.Width - 40), this.Height, BoundsSpecified.Width);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        /// <summary>
+        /// 資材一覧表示
+        /// </summary>
+        /// <returns></returns>
+        private bool DispGridData()
+        {
+            List<MaterialInfo> lmi = new List<MaterialInfo>();
+            ArrayList arData = new ArrayList();
+            IOMaterialInfo mi = new IOMaterialInfo();
+ 
+            try
+            {
+                if (cmbTypes.SelectedIndex < 0) return false ;
+
+                string strMaterialKindCode = cmbTypes.SelectedValue.ToString();
+
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                // 抽出
+                StringBuilder sql = new StringBuilder();
+                sql.AppendLine("select   Mk.MATERIALKINDNAME ");
+                sql.AppendLine("		,Mim.MaterialItemCode ");
+                sql.AppendLine("		,Mim.MaterialItemName ");
+                sql.AppendLine("        ,ifnull(Mi.MaterialCount,'0') as MaterialCount ");
+                sql.AppendLine("        ,ifnull(Mi.RentCount,'0') as RentCount ");
+                sql.AppendLine("        ,DATE_FORMAT(Mim.EntryDate, '%Y/%m/%d') as EntryDate ");
+                sql.AppendLine("from MaterialItemMaster as Mim 	left join MaterialInfo as Mi on Mim.MATERIALITEMCODE = Mi.MATERIALITEMCODE ");
+                sql.AppendLine("								left join materialkindmaster as Mk on Mim.MATERIALKINDCODE = Mk.MATERIALKINDCODE ");
+                sql.AppendLine("where Mim.DELETEFLG <> 1 ");
+
+                // 条件追加
+                //if (strMaterialKindCode.Length == 1 && strMaterialKindCode != "0") 
+                if (strMaterialKindCode != "0")
+                {
+                    sql.AppendFormat("and	  Mim.MATERIALKINDCODE = {0} ",strMaterialKindCode);
+                }
+                sql.AppendLine("order by Mk.Displayorder,Mim.Displayorder");
+
+                if (!mi.ExecuteReader(sql.ToString(), ref arData)) return false;
+
+                // データ表示
+                int icnt = 0;
+                foreach (object[] work in arData)
+                {
+                    dgvMaster.Rows.Add();
+
+                    string chkString = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+                    if (icnt == 0
+                        || (icnt != 0 && (!chkString.Equals(dgvMaster.Rows[icnt-1].Cells[(int)DispColumn.MaterialKindName].ToolTipText))))
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+                    }
+                    else 
+                    {
+                        dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].Value = "";
+                    }
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialKindName].ToolTipText = CommonMotions.cnvString(work[(int)DataColumn.MaterialKindName]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemCode].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialItemCode]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemName].Value = CommonMotions.cnvString(work[(int)DataColumn.MaterialItemName]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialItemName].ToolTipText = CommonMotions.cnvString(work[(int)DataColumn.MaterialItemName]);
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.MaterialCount].Value = CommonMotions.cnvInt(work[(int)DataColumn.MaterialCount]);
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.RentCount].Value = CommonMotions.cnvInt(work[(int)DataColumn.RentCount]);
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispColumn.EntryDate].Value = CommonMotions.cnvString(work[(int)DataColumn.EntryDate]);
+
+                    icnt++;
+                }
+
+                // №再採番
+                LineReNumbering();
+
+
+                // 資材種類コンボボックスにフォーカスを設定
+                cmbTypes.Focus();
+
+                // ボタン制御
+                setButtonEnable();
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                mi.close();
+                mi = null;
+            }
+            return true;
+        }
+
+        /// <summary>
+        /// グリッド最終行での処理
+        /// </summary>
+        private void GridLastLine()
+        {
+            // 最終行判定
+            if (dgvMaster.CurrentCell.RowIndex == dgvMaster.Rows.Count - 1)
+            {
+                // 最終列判定
+                if (dgvMaster.CurrentCell.ColumnIndex == (int)DispColumn.RentCount )
+                {
+                    // 1行追加
+                    dgvMaster.Rows.Add();
+                    //// クリアデータセット
+                    //SetRowClearData(dgvMaster.Rows.Count - 1);
+                    // №再採番
+                    LineReNumbering();
+                }
+
+            }
+        }
+        /// <summary>
+        /// 資材数が0の資材も表示するボタン押下による表示制御処理
+        /// </summary>
+        private void radioButton1_CheckedChanged(object sender, EventArgs e)
+        {
+
+        }
+        /// <summary>
+        /// 資材数変更ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnDataEntry_Click(object sender, EventArgs e)
+        {
+            try
+            {
+
+                //　※権限判定あり
+
+                FrmMaterialCountEntry frm = new FrmMaterialCountEntry();
+
+                // ----- 起動プロセス設定
+
+                //　遷移先の取得処理
+                int NowPoint = 0;
+                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.MaterialCountEntry);
+
+                //　遷移先への連携値
+                // パラメータセット
+                frm.MaterialType = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialKindName].ToolTipText);
+                frm.MaterialItemCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemCode].Value);
+                frm.MaterialItem = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemName].Value);
+                frm.MaterialCount = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialCount].Value);
+                frm.MaterialAssignableCount = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.RentCount].Value);
+
+                frm.ShowDialog();
+
+                //最新状態にする
+                int rowFirst = dgvMaster.FirstDisplayedScrollingRowIndex;
+                int rowCurrent = dgvMaster.CurrentCell.RowIndex;
+                DispGridData();
+                dgvMaster.ClearSelection();
+                dgvMaster.FirstDisplayedScrollingRowIndex = rowFirst;
+                dgvMaster.CurrentCell = dgvMaster[0, rowCurrent];
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        /// <summary>
+        /// 資材履歴ボタン押下時の処理
+        /// </summary>
+        private void btnMaterialHistory_Click(object sender, EventArgs e)
+        {
+            IOMaterialInfo mi = new IOMaterialInfo();
+            try
+            {
+                FrmMaterialHistory frm = new FrmMaterialHistory();
+
+                mi.connect();
+                List<MaterialInfo> Mi = new List<MaterialInfo>();
+                mi.SelectAction(string.Format(" where MaterialItemCode = {0}", CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemCode].Value)), ref Mi, false);
+
+                //　遷移先への連携値
+                // パラメータセット
+                frm.MaterialType = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialKindName].ToolTipText);
+                frm.MaterialItemCode = CommonMotions.cnvInt(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemCode].Value);
+                frm.MaterialItem = CommonMotions.cnvString(dgvMaster.CurrentRow.Cells[(int)DispColumn.MaterialItemName].Value);
+                if (Mi.Count != 0)
+                {
+                    frm.MaterialCount = CommonMotions.cnvString(Mi[0].MaterialCount);
+                    frm.MaterialAssignableCount = CommonMotions.cnvString(Mi[0].RentCount);
+                }
+                frm.ShowDialog();
+
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                mi.close();
+                mi = null;
+            }
+        }
+        /// <summary>
+        /// ボタン制御
+        /// </summary>
+        private void setButtonEnable()
+        {       
+            try
+            {
+                // 資材一覧が1行選択されている場合、ボタンを活性にする
+                if (dgvMaster.SelectedRows.Count == 1)
+                {
+                    if (!m_EditLock)
+                    {
+                        btnMaterialCountEntry.Enabled = true;
+                    }
+                    btnMaterialHistory.Enabled = true;
+                }
+                // 資材一覧が選択されていない場合、または2行以上選択している場合、ボタンを非活性にする
+                else
+                {
+                    btnMaterialCountEntry.Enabled = false;
+                    btnMaterialHistory.Enabled = false;
+                }
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        /// <summary>
+        /// 資材種類コンボ変更
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void cmbTypes_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            DispGridData();
+        }
+
+        /// <summary>
+        /// 最新状態に更新押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnResetRecord_Click(object sender, EventArgs e)
+        {
+            DispGridData();
+        }
+
+
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.designer.cs	(revision 51)
@@ -0,0 +1,311 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmMaterialList
+    {
+        /// <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();
+            this.btnMaterialCountEntry = new System.Windows.Forms.Button();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.btnResetRecord = new System.Windows.Forms.Button();
+            this.btnMaterialHistory = new System.Windows.Forms.Button();
+            this.cmbTypes = new ProcessManagement.Forms.CustomControls.ComboBoxEX();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column7 = 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();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // btnMaterialCountEntry
+            // 
+            this.btnMaterialCountEntry.BackColor = System.Drawing.Color.Green;
+            this.btnMaterialCountEntry.Cursor = System.Windows.Forms.Cursors.Arrow;
+            this.btnMaterialCountEntry.ForeColor = System.Drawing.Color.White;
+            this.btnMaterialCountEntry.Location = new System.Drawing.Point(131, 493);
+            this.btnMaterialCountEntry.Margin = new System.Windows.Forms.Padding(2);
+            this.btnMaterialCountEntry.Name = "btnMaterialCountEntry";
+            this.btnMaterialCountEntry.Size = new System.Drawing.Size(120, 28);
+            this.btnMaterialCountEntry.TabIndex = 1;
+            this.btnMaterialCountEntry.Text = "資材数変更";
+            this.btnMaterialCountEntry.UseVisualStyleBackColor = false;
+            this.btnMaterialCountEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(863, 493);
+            this.btnEnd.Margin = new System.Windows.Forms.Padding(2);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 28);
+            this.btnEnd.TabIndex = 4;
+            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.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(356, 6);
+            this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(293, 32);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "資　材　一　覧";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            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(10, 46);
+            this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(107, 24);
+            this.label2.TabIndex = 23;
+            this.label2.Text = "資材種類";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnResetRecord
+            // 
+            this.btnResetRecord.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(192)))));
+            this.btnResetRecord.ForeColor = System.Drawing.Color.Black;
+            this.btnResetRecord.Location = new System.Drawing.Point(825, 8);
+            this.btnResetRecord.Margin = new System.Windows.Forms.Padding(2);
+            this.btnResetRecord.Name = "btnResetRecord";
+            this.btnResetRecord.Size = new System.Drawing.Size(160, 28);
+            this.btnResetRecord.TabIndex = 27;
+            this.btnResetRecord.Text = "最新状態に更新";
+            this.btnResetRecord.UseVisualStyleBackColor = false;
+            this.btnResetRecord.Click += new System.EventHandler(this.btnResetRecord_Click);
+            // 
+            // btnMaterialHistory
+            // 
+            this.btnMaterialHistory.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
+            this.btnMaterialHistory.ForeColor = System.Drawing.Color.Black;
+            this.btnMaterialHistory.Location = new System.Drawing.Point(7, 493);
+            this.btnMaterialHistory.Margin = new System.Windows.Forms.Padding(2);
+            this.btnMaterialHistory.Name = "btnMaterialHistory";
+            this.btnMaterialHistory.Size = new System.Drawing.Size(120, 28);
+            this.btnMaterialHistory.TabIndex = 29;
+            this.btnMaterialHistory.Text = "資材履歴";
+            this.btnMaterialHistory.UseVisualStyleBackColor = false;
+            this.btnMaterialHistory.Click += new System.EventHandler(this.btnMaterialHistory_Click);
+            // 
+            // cmbTypes
+            // 
+            this.cmbTypes.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbTypes.FormattingEnabled = true;
+            this.cmbTypes.Location = new System.Drawing.Point(118, 46);
+            this.cmbTypes.Margin = new System.Windows.Forms.Padding(2);
+            this.cmbTypes.Name = "cmbTypes";
+            this.cmbTypes.Size = new System.Drawing.Size(200, 24);
+            this.cmbTypes.TabIndex = 28;
+            this.cmbTypes.SelectedIndexChanged += new System.EventHandler(this.cmbTypes_SelectedIndexChanged);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeight = 27;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column2,
+            this.Column7,
+            this.Column3,
+            this.Column4,
+            this.Column5,
+            this.Column6});
+            this.dgvMaster.Location = new System.Drawing.Point(9, 79);
+            this.dgvMaster.Margin = new System.Windows.Forms.Padding(2);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 20;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 25;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(975, 403);
+            this.dgvMaster.TabIndex = 0;
+            this.dgvMaster.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellClick);
+            this.dgvMaster.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvMaster_CellDoubleClick);
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            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 = 70;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
+            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;
+            this.Column2.Width = 150;
+            // 
+            // Column7
+            // 
+            this.Column7.HeaderText = "品目コード";
+            this.Column7.Name = "Column7";
+            this.Column7.Visible = false;
+            // 
+            // Column3
+            // 
+            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.Width = 360;
+            // 
+            // Column4
+            // 
+            dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle4.Format = "#,0";
+            this.Column4.DefaultCellStyle = dataGridViewCellStyle4;
+            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 = 125;
+            // 
+            // Column5
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle5.Format = "#,0";
+            this.Column5.DefaultCellStyle = dataGridViewCellStyle5;
+            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 = 125;
+            // 
+            // Column6
+            // 
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.Column6.DefaultCellStyle = dataGridViewCellStyle6;
+            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 = 125;
+            // 
+            // FrmMaterialList
+            // 
+            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(993, 534);
+            this.Controls.Add(this.btnMaterialHistory);
+            this.Controls.Add(this.cmbTypes);
+            this.Controls.Add(this.btnResetRecord);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnMaterialCountEntry);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dgvMaster);
+            this.Cursor = System.Windows.Forms.Cursors.Default;
+            this.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.KeyPreview = true;
+            this.Margin = new System.Windows.Forms.Padding(2);
+            this.MaximizeBox = false;
+            this.Name = "FrmMaterialList";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMaterialList_FormClosing);
+            this.Load += new System.EventHandler(this.FrmMaterialList_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private DataGridViewEX dgvMaster;
+        private System.Windows.Forms.Button btnMaterialCountEntry;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Button btnResetRecord;
+        private ComboBoxEX cmbTypes;
+        private System.Windows.Forms.Button btnMaterialHistory;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column7;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column4;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column5;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
+
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialList.resx	(revision 51)
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column3.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/SubForms/Material/FrmMaterialSelect.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.cs	(revision 51)
@@ -0,0 +1,388 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Linq;
+
+using log4net;
+using log4net.Appender;
+using log4net.Repository.Hierarchy;
+
+using ProcessManagement.Common;
+using ProcessManagement.DB.IOAccess;
+using ProcessManagement.DataModel;
+using ProcessManagement.DB.Core;
+using ProcessManagement.Forms.DataEntry;
+using ProcessManagement.Forms.Master;
+using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.ControlsAction;
+//*------------------------ 単位マスタメンテ画面 ----------------------*
+//  2015/07/14  Ver1.0.0.0      Create Source           
+//
+//
+//
+//*----------------------------------------------------------------------------*
+namespace ProcessManagement.Forms.SubForms
+{
+    public partial class FrmMaterialSelect : Form
+    {
+        #region 使用定義
+        //log4netログを使用する
+        private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+        #endregion
+
+        #region 定数
+        /// <summary>
+        /// 表示カラム
+        /// </summary>
+        private enum DispGridColumn
+        {
+            DisplayOrder=0,
+            MaterialItemCode,
+            MaterialItemName,
+            SelectCheck
+        }
+
+        #endregion
+
+        #region 変数
+
+        /// <summary>
+        /// 単位文字
+        /// </summary>
+        private string m_UnitName = string.Empty;
+
+        /// <summary>
+        /// 終了ボタン押下フラグ
+        /// </summary>
+        private DialogResult m_EndButton = DialogResult.None;
+
+        /// <summary>
+        /// 資材品目
+        /// </summary>
+        private List<MaterialItemMaster> m_MaterialItemNames = new List<MaterialItemMaster>();
+
+        /// <summary>
+        /// 資材種類
+        /// </summary>
+        private List<MaterialKindMaster> m_MaterialKindNames = new List<MaterialKindMaster>();
+        /// </summary>
+        #endregion
+
+        #region コンストラクタ
+        public FrmMaterialSelect()
+        {
+            InitializeComponent();
+        }
+        #endregion
+        #region デストラクタ
+        ~FrmMaterialSelect()
+        {
+            try
+            {
+                GC.Collect();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+
+        #region プロパティ
+        ///// <summary>
+        /// 資材品目名
+        /// </summary>
+        public List<MaterialItemMaster> MaterialItemNames
+        {
+            get { return m_MaterialItemNames; }
+            set { m_MaterialItemNames = value; }
+        }
+
+        ///// <summary>
+        /// 資材種類
+        /// </summary>
+        public List<MaterialKindMaster> MaterialKindNames
+        {
+            get { return m_MaterialKindNames; }
+            set { m_MaterialKindNames = value; }
+        }
+        
+
+        /// <summary>
+        /// ダイアログ終了状態
+        /// </summary>
+        public DialogResult EndButton
+        {
+            get { return m_EndButton; }
+        }
+
+        #endregion
+
+
+
+        /// <summary>
+        /// 終了ボタン押下
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnEnd_Click(object sender, EventArgs e)
+        {
+            m_EndButton = DialogResult.No;
+            this.Close();
+        }
+
+        /// <summary>
+        /// フォームロード
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMaterialSelect_Load(object sender, EventArgs e)
+        {
+            // フォームサイズ固定
+            this.MaximizedBounds = new Rectangle(this.Left, this.Top, this.Width, this.Height);
+            // 初期表示
+            InitDataLoad();
+        }
+
+        /// <summary>
+        /// 行データクリア
+        /// </summary>
+        /// <param name="iIndex">行カウント</param>
+        private void SetRowClearData(int iIndex)
+        {
+            // クリアデータセット
+            dgvMaster[(int)DispGridColumn.DisplayOrder, iIndex].Value = "";
+            dgvMaster[(int)DispGridColumn.MaterialItemCode, iIndex].Value = "";
+            dgvMaster[(int)DispGridColumn.MaterialItemName, iIndex].Value = "";
+        }
+
+        /// <summary>
+        /// グリッド採番処理
+        /// </summary>
+        private void LineReNumbering()
+        {
+            int icnt = 1;
+            foreach (DataGridViewRow r in dgvMaster.Rows)
+            {
+                // 表示されているものだけ採番
+                if (r.Visible)
+                    r.Cells[(int)DispGridColumn.DisplayOrder].Value = (icnt++).ToString();
+                else
+                    r.Cells[(int)DispGridColumn.DisplayOrder].Value = "0";
+            }
+        }
+ 
+
+        /// <summary>
+        /// セルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            dgvMaster_CellDoubleClick(sender, e);
+        }
+
+        /// <summary>
+        /// セルダブルクリック
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void dgvMaster_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+
+        }
+
+        
+        #region プライベートメソッド
+        /// <summary>
+        /// 初期表示処理
+        /// </summary>
+        private void InitDataLoad()
+        {
+            try
+            {
+                // グリッドの行を0に戻す
+                dgvMaster.Rows.Clear();
+
+                //素材種類表示
+                LoadMaterialKind();
+
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+
+        /// <summary>
+        /// 素材種類のロード
+        /// </summary>
+        private void LoadMaterialKind()
+        {
+            IOMaterialTypes IoMt = new IOMaterialTypes();
+            try
+            {
+                List<MaterialKindMaster> itemList = new List<MaterialKindMaster>();
+                if (!IoMt.SelectAction(" Where DeleteFlg = 0 Order By DisplayOrder ASC", ref itemList)) return;
+                if (itemList.Count == 0) return;
+
+                List<KeyValuePair<int, string>> DataList = new List<KeyValuePair<int, string>>();
+                // データ表示
+                for (int i = 0; i < itemList.Count; i++)
+                {
+                    KeyValuePair<int, string> keyval = new KeyValuePair<int, string>(itemList[i].MaterialKindCode, itemList[i].MaterialKindName);
+
+                    DataList.Add(keyval);
+                }
+
+                // コンボボックス初期表示
+                ComboBoxAction.InitDataSetCombBox(cmbTypes, DataList,false);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoMt.close();
+                IoMt = null;
+            }
+        }
+
+        /// <summary>
+        /// 資材品目の表示
+        /// </summary>
+        private void ItemListDisplay()
+        {
+            IOMaterialItem IoMi = new IOMaterialItem();
+            List<MaterialItemMaster> mim = new List<MaterialItemMaster>();
+
+            if (cmbTypes.SelectedIndex < 0) return;
+
+            string strMaterialKindCode = cmbTypes.SelectedValue.ToString();
+
+            try
+            {
+                dgvMaster.Rows.Clear();
+
+                // 資材品目抽出条件
+                string strSQL = string.Format(" Where MaterialKindCode={0} And DeleteFlg = 0 Order By DisplayOrder ASC", strMaterialKindCode); 
+                if (!IoMi.SelectAction(strSQL, ref mim)) return; 
+
+                // データ表示
+                int icnt = 0;
+                foreach (MaterialItemMaster work in mim)
+                {
+                    dgvMaster.Rows.Add();
+
+                    dgvMaster.Rows[icnt].Cells[(int)DispGridColumn.DisplayOrder].Value = work.DisplayOrder;
+                    dgvMaster.Rows[icnt].Cells[(int)DispGridColumn.MaterialItemCode].Value = work.MaterialItemCode;
+                    dgvMaster.Rows[icnt].Cells[(int)DispGridColumn.MaterialItemName].Value = work.MaterialItemName;
+                    dgvMaster.Rows[icnt].Cells[(int)DispGridColumn.MaterialItemName].ToolTipText = work.MaterialItemName;
+                    dgvMaster.Rows[icnt].Cells[(int)DispGridColumn.SelectCheck].Value = false;
+                    icnt++;
+                }
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                IoMi.close(); IoMi = null;
+            }
+        }
+
+ 
+        /// <summary>
+        /// 選択ボタン押し下げ
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void btnSelect_Click(object sender, EventArgs e)
+        {
+            DataGridView dgv = dgvMaster;
+            DataGridViewRow dgvRow = dgv.CurrentRow;
+            MaterialItemMaster item;
+            MaterialKindMaster kind;
+
+            IOMaterialTypes iomt = new IOMaterialTypes();
+
+            try
+            {
+                iomt.connect();
+
+                foreach (DataGridViewRow row in dgv.Rows)
+                {
+                    if (((bool)row.Cells[(int)DispGridColumn.SelectCheck].Value))
+                    {
+                        item = new MaterialItemMaster();
+                        kind = new MaterialKindMaster();
+
+                        item.DisplayOrder = CommonMotions.cnvInt(row.Cells[(int)DispGridColumn.DisplayOrder].Value);
+
+                        // 資材品目コード取得
+                        item.MaterialItemCode = CommonMotions.cnvInt(row.Cells[(int)DispGridColumn.MaterialItemCode].Value);
+                        // 資材品目名称取得
+                        item.MaterialItemName = CommonMotions.cnvString(row.Cells[(int)DispGridColumn.MaterialItemName].Value);
+                        m_MaterialItemNames.Add(item);
+
+                        List<MaterialKindMaster> mkm = new List<MaterialKindMaster>();
+                        iomt.SelectAction(string.Format(" where MaterialKindCode = {0}", cmbTypes.SelectedValue.ToString()), ref mkm);
+                        kind.DisplayOrder = CommonMotions.cnvInt(mkm[0].DisplayOrder);
+                        kind.MaterialKindCode = CommonMotions.cnvInt(cmbTypes.SelectedValue.ToString());
+                        kind.MaterialKindName = CommonMotions.cnvString(cmbTypes.Text);
+                        m_MaterialKindNames.Add(kind);
+
+                    }
+                }
+
+                m_EndButton = DialogResult.OK;
+                this.Close();
+            }
+            finally
+            {
+                iomt.close();
+                iomt = null;
+            }
+        }
+
+        /// <summary>
+        /// グリッド空行チェック
+        /// </summary>
+        /// <param name="row"></param>
+        /// <returns></returns>
+        private bool BlanckRowCheck(DataGridViewRow row)
+        {
+            try
+            {
+                // 空欄チェック
+                if (CommonMotions.chkObjectIsNull(row.Cells[(int)DispGridColumn.MaterialItemCode].Value)) return false;
+                if (CommonMotions.cnvString(row.Cells[(int)DispGridColumn.MaterialItemName].Value).Length == 0) return false;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+
+        #endregion
+
+        private void cmbTypes_SelectedIndexChanged(object sender, EventArgs e)
+        {
+            ItemListDisplay();
+        }
+    }
+
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.designer.cs	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.designer.cs	(revision 51)
@@ -0,0 +1,222 @@
+﻿using ProcessManagement.Forms.CustomControls;
+
+namespace ProcessManagement.Forms.SubForms
+{
+    partial class FrmMaterialSelect
+    {
+        /// <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();
+            this.label1 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.btnEnd = new System.Windows.Forms.Button();
+            this.cmbTypes = new System.Windows.Forms.ComboBox();
+            this.btnSelect = new System.Windows.Forms.Button();
+            this.dgvMaster = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column4 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).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.ForeColor = System.Drawing.Color.Black;
+            this.label1.Location = new System.Drawing.Point(109, 8);
+            this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(292, 34);
+            this.label1.TabIndex = 6;
+            this.label1.Text = "資　材　選　択";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            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(8, 48);
+            this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(100, 24);
+            this.label2.TabIndex = 23;
+            this.label2.Text = "資材種類";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnEnd
+            // 
+            this.btnEnd.BackColor = System.Drawing.Color.Blue;
+            this.btnEnd.ForeColor = System.Drawing.Color.White;
+            this.btnEnd.Location = new System.Drawing.Point(373, 428);
+            this.btnEnd.Margin = new System.Windows.Forms.Padding(4);
+            this.btnEnd.Name = "btnEnd";
+            this.btnEnd.Size = new System.Drawing.Size(120, 34);
+            this.btnEnd.TabIndex = 4;
+            this.btnEnd.Text = "終　了";
+            this.btnEnd.UseVisualStyleBackColor = false;
+            this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click);
+            // 
+            // cmbTypes
+            // 
+            this.cmbTypes.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbTypes.FormattingEnabled = true;
+            this.cmbTypes.Location = new System.Drawing.Point(116, 49);
+            this.cmbTypes.Margin = new System.Windows.Forms.Padding(4);
+            this.cmbTypes.Name = "cmbTypes";
+            this.cmbTypes.Size = new System.Drawing.Size(377, 24);
+            this.cmbTypes.TabIndex = 24;
+            this.cmbTypes.SelectedIndexChanged += new System.EventHandler(this.cmbTypes_SelectedIndexChanged);
+            // 
+            // btnSelect
+            // 
+            this.btnSelect.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
+            this.btnSelect.ForeColor = System.Drawing.Color.Black;
+            this.btnSelect.Location = new System.Drawing.Point(247, 428);
+            this.btnSelect.Margin = new System.Windows.Forms.Padding(4);
+            this.btnSelect.Name = "btnSelect";
+            this.btnSelect.Size = new System.Drawing.Size(120, 34);
+            this.btnSelect.TabIndex = 26;
+            this.btnSelect.Text = "選　択";
+            this.btnSelect.UseVisualStyleBackColor = false;
+            this.btnSelect.Click += new System.EventHandler(this.btnSelect_Click);
+            // 
+            // dgvMaster
+            // 
+            this.dgvMaster.AllowUserToAddRows = false;
+            this.dgvMaster.AllowUserToDeleteRows = false;
+            this.dgvMaster.AllowUserToResizeColumns = false;
+            this.dgvMaster.AllowUserToResizeRows = false;
+            this.dgvMaster.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.dgvMaster.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvMaster.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvMaster.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1,
+            this.Column3,
+            this.Column2,
+            this.Column4});
+            this.dgvMaster.Location = new System.Drawing.Point(8, 80);
+            this.dgvMaster.Margin = new System.Windows.Forms.Padding(4);
+            this.dgvMaster.Name = "dgvMaster";
+            this.dgvMaster.RowHeadersVisible = false;
+            this.dgvMaster.RowHeadersWidth = 24;
+            this.dgvMaster.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            this.dgvMaster.RowTemplate.Height = 21;
+            this.dgvMaster.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.dgvMaster.Size = new System.Drawing.Size(485, 340);
+            this.dgvMaster.TabIndex = 0;
+            // 
+            // Column1
+            // 
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle2;
+            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 = 40;
+            // 
+            // Column3
+            // 
+            dataGridViewCellStyle3.ForeColor = System.Drawing.Color.Black;
+            this.Column3.DefaultCellStyle = dataGridViewCellStyle3;
+            this.Column3.HeaderText = "資材品目コード";
+            this.Column3.Name = "Column3";
+            this.Column3.ReadOnly = true;
+            this.Column3.Visible = false;
+            // 
+            // Column2
+            // 
+            dataGridViewCellStyle4.ForeColor = System.Drawing.Color.Black;
+            this.Column2.DefaultCellStyle = dataGridViewCellStyle4;
+            this.Column2.HeaderText = "名称";
+            this.Column2.Name = "Column2";
+            this.Column2.ReadOnly = true;
+            this.Column2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.Column2.Width = 355;
+            // 
+            // Column4
+            // 
+            this.Column4.HeaderText = "選択";
+            this.Column4.Name = "Column4";
+            this.Column4.Width = 70;
+            // 
+            // FrmMaterialSelect
+            // 
+            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(502, 469);
+            this.Controls.Add(this.btnSelect);
+            this.Controls.Add(this.cmbTypes);
+            this.Controls.Add(this.label2);
+            this.Controls.Add(this.label1);
+            this.Controls.Add(this.btnEnd);
+            this.Controls.Add(this.dgvMaster);
+            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.Margin = new System.Windows.Forms.Padding(4);
+            this.MaximizeBox = false;
+            this.Name = "FrmMaterialSelect";
+            this.ShowIcon = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Load += new System.EventHandler(this.FrmMaterialSelect_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMaster)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private DataGridViewEX dgvMaster;
+        private System.Windows.Forms.Label label1;
+        private System.Windows.Forms.Label label2;
+        private System.Windows.Forms.Button btnEnd;
+        private System.Windows.Forms.ComboBox cmbTypes;
+        private System.Windows.Forms.Button btnSelect;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column3;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column2;
+        private System.Windows.Forms.DataGridViewCheckBoxColumn Column4;
+    }
+}
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.resx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/SubForms/Material/FrmMaterialSelect.resx	(revision 51)
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmChangePassword.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmChangePassword.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmChangePassword.cs	(revision 51)
@@ -143,15 +143,17 @@
                 DialogResult resRet = MessageBox.Show("パスワードを変更します、よろしいですか？。", "変更確認"
                                                         , MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
                 m_EndButton = resRet;
-                if (resRet == DialogResult.Cancel) return;
-                if (resRet == DialogResult.No)
+                if (resRet == DialogResult.Cancel)
                 {
-                    Close();
                     return;
                 }
+                else if (resRet == DialogResult.No)
+                {
+                    this.Close();
+                    return;
+                }
 
-                pmDB.connect();
-                pmDB.beginTran();
+                pmDB.connect(); pmDB.beginTran();
                 string UpdateSQL = string.Format("UPDATE PersonInChargeMaster SET PassWord = '{0}' Where PersonCode = {1}"
                                                     , m_dispLabelControl[(int)DispControl.PassWord].Text.ToString()
                                                     , m_PersonCode);
@@ -170,7 +172,7 @@
                 // パスワード変更
                 CommonMotions.LoginUserData.PassWord = m_dispLabelControl[(int)DispControl.PassWord].Text.ToString();
 
-                Close();
+                this.Close();
             }
             catch (System.Exception ex)
             {
@@ -178,8 +180,7 @@
             }
             finally
             {
-                pmDB.close();
-                pmDB = null;
+                pmDB.close(); pmDB = null;
             }
         }
         #endregion
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmLogin.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmLogin.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmLogin.cs	(revision 51)
@@ -94,7 +94,7 @@
         }
         #endregion
 
-        #region イベントメソッド
+        #region フォームロード
         /// <summary>
         /// フォームロード
         /// </summary>
@@ -108,6 +108,9 @@
             // 初期表示
             InitDataLoad();
         }
+        #endregion
+
+        #region 実行ボタン押下
         /// <summary>
         /// 実行ボタン押下
         /// </summary>
@@ -118,9 +121,13 @@
             try
             {
                 // ログインチェック
-                if (m_dispLabelControl[(int)DispControl.UserID].Text.Length == 0 
-                    && m_dispLabelControl[(int)DispControl.PassWord].Text.Length == 0) return;
                 
+                if (m_dispLabelControl[(int)DispControl.UserID].Text.Length == 0
+                    && m_dispLabelControl[(int)DispControl.PassWord].Text.Length == 0)
+                {
+                    return;
+                }
+
                 // パスワードチェック
                 if (!chkPassWord())
                 {
@@ -129,25 +136,24 @@
                     return;
                 }
 
-                DialogResult passchange = DialogResult.Yes;
-                // 初回ログイン時のみパスワードチェック
-                if (CommonMotions.LoginUserData.PersonCode.ToString() == CommonMotions.LoginUserData.PassWord)
+                // 初回ログイン時のみパスワード変更処理へ
+                m_EndButton = DialogResult.Yes;
+                if (CommonMotions.LoginUserData.PersonCode.ToString().Equals(CommonMotions.LoginUserData.PassWord))
                 {
-                    FrmChangePassword wrkFrm = new FrmChangePassword();
-                    wrkFrm.PerssonCode = CommonMotions.LoginUserData.PersonCode;
-                    //wrkFrm.ShowInTaskbar = false;
-                    wrkFrm.ShowDialog();
-                    passchange = wrkFrm.EndButton;
-                    wrkFrm.Dispose();
-                    wrkFrm = null;
+                    // パスワード変更
+                    m_EndButton = FirstPassChange();
+                    if (m_EndButton == DialogResult.No)
+                    {
+                        // 終了選択時
+                        this.Close();
+                        return;
+                    }
+                    else if (m_EndButton == DialogResult.None)
+                    {
+                        return;
+                    }
                 }
-                // 終了選択時
-                if (passchange == DialogResult.No)
-                {
-                    m_EndButton = passchange;
-                    this.Close();
-                    return;
-                }
+
                 // 開始確認
                 if (MessageBox.Show("システムを開始します、よろしいですか？。", "開始確認"
                                 , MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No) return;
@@ -160,7 +166,38 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region 初回パスワード変更処理
         /// <summary>
+        /// 初回パスワード変更処理
+        /// </summary>
+        /// <returns></returns>
+        private DialogResult FirstPassChange()
+        {
+            FrmChangePassword wrkFrm = new FrmChangePassword();
+            try
+            {
+                wrkFrm.PerssonCode = CommonMotions.LoginUserData.PersonCode;
+                //wrkFrm.ShowInTaskbar = false;
+                wrkFrm.ShowDialog();
+
+                return wrkFrm.EndButton;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return DialogResult.No;
+            }
+            finally
+            {
+                wrkFrm.Dispose(); wrkFrm = null;
+            }
+        }
+        #endregion
+
+        #region フォームクローズ
+        /// <summary>
         /// フォームクローズ
         /// </summary>
         /// <param name="sender"></param>
@@ -178,6 +215,9 @@
                 if (m_EndButton == DialogResult.None) m_EndButton = DialogResult.No;
             }
         }
+        #endregion
+
+        #region 終了ボタン押下
         /// <summary>
         /// 終了ボタン押下
         /// </summary>
@@ -188,7 +228,9 @@
             m_EndButton = DialogResult.No;
             this.Close();
         }
+        #endregion
 
+        #region Formキーダウン処理
         /// <summary>
         /// Formキーダウン処理
         /// </summary>
@@ -196,23 +238,29 @@
         /// <param name="e"></param>
         private void FrmLogin_KeyDown(object sender, KeyEventArgs e)
         {
-            //Enterキーが押されているか確認
-            //AltかCtrlキーが押されている時は無視する
-            if ((e.KeyCode == Keys.Enter) && !e.Alt && !e.Control)
+            try
             {
-                //あたかもTabキーが押されたかのようにする
-                //Shiftが押されている時は前のコントロールのフォーカスを移動
-                this.ProcessTabKey(!e.Shift);
+                //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;
+                    e.Handled = true;
+                    //.NET Framework 2.0以降
+                    e.SuppressKeyPress = true;
+                }
             }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
         }
-
         #endregion
 
-        #region プライベートメソッド
+        #region 初期表示処理
         /// <summary>
         /// 初期表示処理
         /// </summary>
@@ -254,7 +302,9 @@
             {
             }
         }
+        #endregion
 
+        #region 工種コンボボックス初期表示処理
         /// <summary>
         /// 工種コンボボックス初期表示処理
         /// </summary>
@@ -300,6 +350,9 @@
                 picDB = null;
             }
         }
+        #endregion
+
+        #region 表示オブジェクトの取得
         /// <summary>
         /// 表示オブジェクトの取得
         /// </summary>
@@ -309,7 +362,9 @@
             m_dispLabelControl[(int)DispControl.PassWord] = txtPassWord;
             m_dispLabelControl[(int)DispControl.Slogan] = lblSlogan;
         }
+        #endregion
 
+        #region パスワードチェック
         /// <summary>
         /// パスワードチェック
         /// </summary>
@@ -317,36 +372,41 @@
         private bool chkPassWord()
         {
             IOMPersonInCharge pmDB = new IOMPersonInCharge();
+            IOMPersonDepartment pdDB = new IOMPersonDepartment();
             try
             {
-                bool bRet = false;
-                // システム管理者チェック
-                if (cmbUserList.Text.Length == 0 && m_dispLabelControl[(int)DispControl.PassWord].Text == CommonDefine.AdminPass)
+                int LoginUserID = CommonMotions.cnvInt(cmbUserList.SelectedValue);
+                string LoginPassString = m_dispLabelControl[(int)DispControl.PassWord].Text;
+
+                // システム管理者はチェック無
+                if (cmbUserList.Text.Length == 0 && LoginPassString.Equals(CommonDefine.AdminPass))
                 {
-                    PersonInChargeMaster admindata = new PersonInChargeMaster();
-                    admindata.PersonCode = CommonDefine.AdminCode;
-                    admindata.PersonName = CommonDefine.AdminUser;
-                    admindata.PassWord = CommonDefine.AdminPass;
-                    CommonMotions.LoginUserData = admindata;
+                    CommonMotions.LoginUserData.PersonCode = CommonDefine.AdminCode;
                     return true;
                 }
 
-                // 担当者コード取得
-                int PersonCode = CommonMotions.cnvInt(cmbUserList.SelectedValue.ToString());
-                
-                // パスワードチェック
+                // ----- パスワードチェック
                 PersonInChargeMaster wrkrec = new PersonInChargeMaster();
-                string strSQL = pmDB.CreatePrimarykeyString(CommonMotions.cnvInt(((ComboBox)m_dispLabelControl[(int)DispControl.UserID]).SelectedValue.ToString()));
-                if(pmDB.SelectAction(strSQL ,ref wrkrec))
+                string strSQL = pmDB.CreatePrimarykeyString(LoginUserID);
+                // 担当者マスタ読込
+                if (!pmDB.SelectAction(strSQL, ref wrkrec)) return false;
+                // パスワードの比較
+                if (!wrkrec.PassWord.Equals(LoginPassString)) return false;
+
+                // データセット（フォームは破棄されるの値をセットする）
+                SetLoginUserData(wrkrec);
+
+                // ----- 参照部署データ取得
+                List<PersonDepartmentMaster> depList = new List<PersonDepartmentMaster>();
+                string strpdSQL = pdDB.CreatePrimarykeyString(LoginUserID);
+                // 担当者参照部署マスタ読込
+                if (!pdDB.SelectAction(strSQL, ref depList)) return false;
+                foreach (PersonDepartmentMaster wrkRec in depList)
                 {
-                    if (wrkrec.PassWord == m_dispLabelControl[(int)DispControl.PassWord].Text.ToString())
-                    {
-                        // ＯＫの場合はログイン情報を退避する
-                        CommonMotions.LoginUserData = wrkrec;
-                        bRet = true;
-                    }
+                    CommonMotions.LoginUserDepartment.Add(wrkRec);
                 }
-                return bRet;
+
+                return true;
             }
             catch (Exception ex)
             {
@@ -355,10 +415,45 @@
             }
             finally
             {
-                pmDB.close();
-                pmDB = null;
+                pmDB.close(); pmDB = null;
+                pdDB.close(); pdDB = null;
             }
         }
         #endregion
+
+        #region ログインユーザーデータセット
+        /// <summary>
+        /// ログインユーザーデータセット
+        /// </summary>
+        private void SetLoginUserData(PersonInChargeMaster wrkrec)
+        {
+            try
+            {
+                // ＯＫの場合はログイン情報を退避する
+                CommonMotions.LoginUserData.PersonCode = wrkrec.PersonCode;                 // 担当者コード
+                CommonMotions.LoginUserData.DisplayOrder = wrkrec.DisplayOrder;	            // 表示順
+                CommonMotions.LoginUserData.PersonName = wrkrec.PersonName;                 // 担当者名
+                CommonMotions.LoginUserData.StartDate = wrkrec.StartDate;                   // マスタ使用開始年月日付
+                CommonMotions.LoginUserData.EndDate = wrkrec.EndDate;                       // マスタ使用開始年月日付
+                CommonMotions.LoginUserData.PassWord = wrkrec.PassWord;	                    // パスワード
+                CommonMotions.LoginUserData.SecurityManagement = wrkrec.SecurityManagement; // 機密区分
+                CommonMotions.LoginUserData.SecCode = wrkrec.SecCode;                       // 保護区分番号
+                CommonMotions.LoginUserData.MsgBackColor = wrkrec.MsgBackColor;	            // メッセージ背景色
+                CommonMotions.LoginUserData.DisplayString = wrkrec.DisplayString;	        // 表示・印刷名称
+                CommonMotions.LoginUserData.DepartmentCode = wrkrec.DepartmentCode;         // 部署コード
+                CommonMotions.LoginUserData.MonthlySalary = wrkrec.MonthlySalary;           // 月給金額
+                CommonMotions.LoginUserData.YearSalary = wrkrec.YearSalary;	                // 年棒金額
+                CommonMotions.LoginUserData.Qualification = wrkrec.Qualification;           // 資格情報
+                CommonMotions.LoginUserData.SealPrintName = wrkrec.SealPrintName;           // 印鑑表示名
+                CommonMotions.LoginUserData.EmployeeClassFlg = wrkrec.EmployeeClassFlg;     // 社員区分
+                CommonMotions.LoginUserData.LedgerFlg = wrkrec.LedgerFlg;                   // 台帳計算対象フラグ
+                CommonMotions.LoginUserData.DeleteFlg = wrkrec.DeleteFlg;                   // 削除フラグ
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.Designer.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.Designer.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.Designer.cs	(revision 51)
@@ -29,6 +29,12 @@
         private void InitializeComponent()
         {
             this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea1 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
+            System.Windows.Forms.DataVisualization.Charting.Legend legend1 = new System.Windows.Forms.DataVisualization.Charting.Legend();
+            System.Windows.Forms.DataVisualization.Charting.Series series1 = new System.Windows.Forms.DataVisualization.Charting.Series();
+            System.Windows.Forms.DataVisualization.Charting.Series series2 = new System.Windows.Forms.DataVisualization.Charting.Series();
+            System.Windows.Forms.DataVisualization.Charting.Series series3 = new System.Windows.Forms.DataVisualization.Charting.Series();
+            System.Windows.Forms.DataVisualization.Charting.Series series4 = new System.Windows.Forms.DataVisualization.Charting.Series();
             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();
@@ -195,18 +201,305 @@
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle163 = new System.Windows.Forms.DataGridViewCellStyle();
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle164 = new System.Windows.Forms.DataGridViewCellStyle();
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle165 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea1 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
-            System.Windows.Forms.DataVisualization.Charting.Legend legend1 = new System.Windows.Forms.DataVisualization.Charting.Legend();
-            System.Windows.Forms.DataVisualization.Charting.Series series1 = new System.Windows.Forms.DataVisualization.Charting.Series();
-            System.Windows.Forms.DataVisualization.Charting.Series series2 = new System.Windows.Forms.DataVisualization.Charting.Series();
-            System.Windows.Forms.DataVisualization.Charting.Series series3 = new System.Windows.Forms.DataVisualization.Charting.Series();
-            System.Windows.Forms.DataVisualization.Charting.Series series4 = new System.Windows.Forms.DataVisualization.Charting.Series();
             this.lblTitle = new System.Windows.Forms.Label();
             this.btnEnd = new System.Windows.Forms.Button();
             this.tabMenu = new System.Windows.Forms.TabControl();
-            this.tabPage20 = new System.Windows.Forms.TabPage();
+            this.tabPage1 = new System.Windows.Forms.TabPage();
             this.BusinessProgress = new System.Windows.Forms.ProgressBar();
             this.btnReLoadBusinessMsg = new System.Windows.Forms.Button();
+            this.tabPage2 = new System.Windows.Forms.TabPage();
+            this.btnMessageEntry = new System.Windows.Forms.Button();
+            this.UpDateProgress = new System.Windows.Forms.ProgressBar();
+            this.btnReLoadMessage = new System.Windows.Forms.Button();
+            this.tabPage3 = new System.Windows.Forms.TabPage();
+            this.label31 = new System.Windows.Forms.Label();
+            this.label27 = new System.Windows.Forms.Label();
+            this.label26 = new System.Windows.Forms.Label();
+            this.label29 = new System.Windows.Forms.Label();
+            this.label25 = new System.Windows.Forms.Label();
+            this.btnReLoadDAprroval = new System.Windows.Forms.Button();
+            this.ProgressDApproval = new System.Windows.Forms.ProgressBar();
+            this.tabPage4 = new System.Windows.Forms.TabPage();
+            this.btnDataCopyA = new System.Windows.Forms.Button();
+            this.btnDataEntry = new System.Windows.Forms.Button();
+            this.ProgressSalesProjects = new System.Windows.Forms.ProgressBar();
+            this.btnReLoadSales = new System.Windows.Forms.Button();
+            this.label11 = new System.Windows.Forms.Label();
+            this.tabPage5 = new System.Windows.Forms.TabPage();
+            this.btnDataCopyB = new System.Windows.Forms.Button();
+            this.btnReLoadTenders = new System.Windows.Forms.Button();
+            this.ProgressTenders = new System.Windows.Forms.ProgressBar();
+            this.label21 = new System.Windows.Forms.Label();
+            this.tabPage6 = new System.Windows.Forms.TabPage();
+            this.btnDataCopyC = new System.Windows.Forms.Button();
+            this.btnReLoadBudgetUp = new System.Windows.Forms.Button();
+            this.ProgressBudgetUp = new System.Windows.Forms.ProgressBar();
+            this.label22 = new System.Windows.Forms.Label();
+            this.tabPage7 = new System.Windows.Forms.TabPage();
+            this.lblDepTotal05 = new System.Windows.Forms.Label();
+            this.lblDep05 = new System.Windows.Forms.Label();
+            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
+            this.lblTotal03 = new System.Windows.Forms.Label();
+            this.lblTotal02 = new System.Windows.Forms.Label();
+            this.lblTotal01 = new System.Windows.Forms.Label();
+            this.lblDepTotal04 = new System.Windows.Forms.Label();
+            this.lblDepTotal03 = new System.Windows.Forms.Label();
+            this.lblDepTotal02 = new System.Windows.Forms.Label();
+            this.label30 = new System.Windows.Forms.Label();
+            this.lblDepTotal01 = new System.Windows.Forms.Label();
+            this.label28 = new System.Windows.Forms.Label();
+            this.lblPeriod = new System.Windows.Forms.Label();
+            this.lblDep04 = new System.Windows.Forms.Label();
+            this.label23 = new System.Windows.Forms.Label();
+            this.lblDep03 = new System.Windows.Forms.Label();
+            this.lblDep02 = new System.Windows.Forms.Label();
+            this.lblDep01 = new System.Windows.Forms.Label();
+            this.ProgressConstructionProjects = new System.Windows.Forms.ProgressBar();
+            this.btnReloadConstructionProjects = new System.Windows.Forms.Button();
+            this.label12 = new System.Windows.Forms.Label();
+            this.tabPage8 = new System.Windows.Forms.TabPage();
+            this.btnDataCopyF = new System.Windows.Forms.Button();
+            this.btnReloadFluctuationProjects = new System.Windows.Forms.Button();
+            this.ProgressFluctuationProjects = new System.Windows.Forms.ProgressBar();
+            this.label59 = new System.Windows.Forms.Label();
+            this.tabPage9 = new System.Windows.Forms.TabPage();
+            this.label39 = new System.Windows.Forms.Label();
+            this.numUDNonOrder = new System.Windows.Forms.NumericUpDown();
+            this.label40 = new System.Windows.Forms.Label();
+            this.label41 = new System.Windows.Forms.Label();
+            this.btnDataCopyD = new System.Windows.Forms.Button();
+            this.ProgressNonOrders = new System.Windows.Forms.ProgressBar();
+            this.btnReloadNonOrders = new System.Windows.Forms.Button();
+            this.label13 = new System.Windows.Forms.Label();
+            this.tabPage10 = new System.Windows.Forms.TabPage();
+            this.lblCompTotal04 = new System.Windows.Forms.Label();
+            this.lblCompTitle04 = new System.Windows.Forms.Label();
+            this.lblCompTotal03 = new System.Windows.Forms.Label();
+            this.lblCompTitle03 = new System.Windows.Forms.Label();
+            this.lblCompTotal02 = new System.Windows.Forms.Label();
+            this.lblCompTotal01 = new System.Windows.Forms.Label();
+            this.lblCompTitle02 = new System.Windows.Forms.Label();
+            this.lblCompTitle01 = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.numUDCompletion = new System.Windows.Forms.NumericUpDown();
+            this.label10 = new System.Windows.Forms.Label();
+            this.label17 = new System.Windows.Forms.Label();
+            this.ProgressCompletionOfConstruction = new System.Windows.Forms.ProgressBar();
+            this.btnReloadCompletionOfConstruction = new System.Windows.Forms.Button();
+            this.label14 = new System.Windows.Forms.Label();
+            this.tabPage11 = new System.Windows.Forms.TabPage();
+            this.btnDispRight = new System.Windows.Forms.Button();
+            this.btnDispLeft = new System.Windows.Forms.Button();
+            this.btnVehicleSchdule = new System.Windows.Forms.Button();
+            this.btnActionSchdule = new System.Windows.Forms.Button();
+            this.btnReLoadActionSchedule = new System.Windows.Forms.Button();
+            this.label20 = new System.Windows.Forms.Label();
+            this.tabPage12 = new System.Windows.Forms.TabPage();
+            this.progBarStaffAssignment = new System.Windows.Forms.ProgressBar();
+            this.btnReLoadStaffAssignment = new System.Windows.Forms.Button();
+            this.label15 = new System.Windows.Forms.Label();
+            this.tabPage13 = new System.Windows.Forms.TabPage();
+            this.label36 = new System.Windows.Forms.Label();
+            this.SalseGraphNum = new System.Windows.Forms.NumericUpDown();
+            this.label37 = new System.Windows.Forms.Label();
+            this.label38 = new System.Windows.Forms.Label();
+            this.lblSalesGraphUpdate = new System.Windows.Forms.Label();
+            this.chartSalesGraph = new System.Windows.Forms.DataVisualization.Charting.Chart();
+            this.label24 = new System.Windows.Forms.Label();
+            this.progBarSalesGraph = new System.Windows.Forms.ProgressBar();
+            this.btnReLoadSalesGraph = new System.Windows.Forms.Button();
+            this.tabPage14 = new System.Windows.Forms.TabPage();
+            this.tblLayoutOrder = new System.Windows.Forms.TableLayoutPanel();
+            this.btnOrder0000 = new System.Windows.Forms.Button();
+            this.btnOrder0001 = new System.Windows.Forms.Button();
+            this.btnOrder0100 = new System.Windows.Forms.Button();
+            this.btnOrder0200 = new System.Windows.Forms.Button();
+            this.btnOrder0300 = new System.Windows.Forms.Button();
+            this.btnOrder0400 = new System.Windows.Forms.Button();
+            this.btnOrder0401 = new System.Windows.Forms.Button();
+            this.btnOrder0301 = new System.Windows.Forms.Button();
+            this.btnOrder0201 = new System.Windows.Forms.Button();
+            this.btnOrder0101 = new System.Windows.Forms.Button();
+            this.btnOrder0002 = new System.Windows.Forms.Button();
+            this.btnOrder0102 = new System.Windows.Forms.Button();
+            this.btnOrder0202 = new System.Windows.Forms.Button();
+            this.btnOrder0302 = new System.Windows.Forms.Button();
+            this.btnOrder0402 = new System.Windows.Forms.Button();
+            this.btnOrder0500 = new System.Windows.Forms.Button();
+            this.btnOrder0501 = new System.Windows.Forms.Button();
+            this.btnOrder0502 = new System.Windows.Forms.Button();
+            this.label1 = new System.Windows.Forms.Label();
+            this.lblArrpw1_04 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.lblArrpw1_02 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.tabPage15 = new System.Windows.Forms.TabPage();
+            this.pnlConstruction = new System.Windows.Forms.Panel();
+            this.tblLayoutConstruction = new System.Windows.Forms.TableLayoutPanel();
+            this.label43 = new System.Windows.Forms.Label();
+            this.btnConstruction0000 = new System.Windows.Forms.Button();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label7 = new System.Windows.Forms.Label();
+            this.btnConstruction0001 = new System.Windows.Forms.Button();
+            this.btnConstruction0002 = new System.Windows.Forms.Button();
+            this.btnConstruction0003 = new System.Windows.Forms.Button();
+            this.btnConstruction0004 = new System.Windows.Forms.Button();
+            this.btnConstruction0100 = new System.Windows.Forms.Button();
+            this.btnConstruction0101 = new System.Windows.Forms.Button();
+            this.label8 = new System.Windows.Forms.Label();
+            this.btnConstruction0102 = new System.Windows.Forms.Button();
+            this.btnConstruction0103 = new System.Windows.Forms.Button();
+            this.btnConstruction0104 = new System.Windows.Forms.Button();
+            this.label16 = new System.Windows.Forms.Label();
+            this.btnConstruction0200 = new System.Windows.Forms.Button();
+            this.btnConstruction0201 = new System.Windows.Forms.Button();
+            this.btnConstruction0202 = new System.Windows.Forms.Button();
+            this.btnConstruction0203 = new System.Windows.Forms.Button();
+            this.btnConstruction0204 = new System.Windows.Forms.Button();
+            this.label44 = new System.Windows.Forms.Label();
+            this.label45 = new System.Windows.Forms.Label();
+            this.btnConstruction0300 = new System.Windows.Forms.Button();
+            this.btnConstruction0301 = new System.Windows.Forms.Button();
+            this.btnConstruction0302 = new System.Windows.Forms.Button();
+            this.btnConstruction0303 = new System.Windows.Forms.Button();
+            this.btnConstruction0304 = new System.Windows.Forms.Button();
+            this.label46 = new System.Windows.Forms.Label();
+            this.btnConstruction0400 = new System.Windows.Forms.Button();
+            this.btnConstruction0401 = new System.Windows.Forms.Button();
+            this.btnConstruction0402 = new System.Windows.Forms.Button();
+            this.btnConstruction0403 = new System.Windows.Forms.Button();
+            this.btnConstruction0404 = new System.Windows.Forms.Button();
+            this.label47 = new System.Windows.Forms.Label();
+            this.btnConstruction0500 = new System.Windows.Forms.Button();
+            this.btnConstruction0501 = new System.Windows.Forms.Button();
+            this.btnConstruction0502 = new System.Windows.Forms.Button();
+            this.btnConstruction0503 = new System.Windows.Forms.Button();
+            this.btnConstruction0504 = new System.Windows.Forms.Button();
+            this.label50 = new System.Windows.Forms.Label();
+            this.btnConstruction0600 = new System.Windows.Forms.Button();
+            this.btnConstruction0601 = new System.Windows.Forms.Button();
+            this.btnConstruction0602 = new System.Windows.Forms.Button();
+            this.btnConstruction0603 = new System.Windows.Forms.Button();
+            this.btnConstruction0604 = new System.Windows.Forms.Button();
+            this.btnConstruction0700 = new System.Windows.Forms.Button();
+            this.btnConstruction0701 = new System.Windows.Forms.Button();
+            this.btnConstruction0702 = new System.Windows.Forms.Button();
+            this.btnConstruction0703 = new System.Windows.Forms.Button();
+            this.btnConstruction0704 = new System.Windows.Forms.Button();
+            this.label51 = new System.Windows.Forms.Label();
+            this.btnConstruction0800 = new System.Windows.Forms.Button();
+            this.btnConstruction0801 = new System.Windows.Forms.Button();
+            this.btnConstruction0802 = new System.Windows.Forms.Button();
+            this.btnConstruction0803 = new System.Windows.Forms.Button();
+            this.btnConstruction0804 = new System.Windows.Forms.Button();
+            this.label48 = new System.Windows.Forms.Label();
+            this.label49 = new System.Windows.Forms.Label();
+            this.label42 = new System.Windows.Forms.Label();
+            this.label32 = new System.Windows.Forms.Label();
+            this.label52 = new System.Windows.Forms.Label();
+            this.label53 = new System.Windows.Forms.Label();
+            this.label54 = new System.Windows.Forms.Label();
+            this.label55 = new System.Windows.Forms.Label();
+            this.btnConstruction0900 = new System.Windows.Forms.Button();
+            this.btnConstruction0901 = new System.Windows.Forms.Button();
+            this.btnConstruction0902 = new System.Windows.Forms.Button();
+            this.btnConstruction0903 = new System.Windows.Forms.Button();
+            this.btnConstruction0904 = new System.Windows.Forms.Button();
+            this.btnConstruction1000 = new System.Windows.Forms.Button();
+            this.btnConstruction1001 = new System.Windows.Forms.Button();
+            this.btnConstruction1002 = new System.Windows.Forms.Button();
+            this.btnConstruction1003 = new System.Windows.Forms.Button();
+            this.btnConstruction1004 = new System.Windows.Forms.Button();
+            this.label56 = new System.Windows.Forms.Label();
+            this.label57 = new System.Windows.Forms.Label();
+            this.label58 = new System.Windows.Forms.Label();
+            this.btnConstruction1100 = new System.Windows.Forms.Button();
+            this.btnConstruction1101 = new System.Windows.Forms.Button();
+            this.btnConstruction1102 = new System.Windows.Forms.Button();
+            this.btnConstruction1103 = new System.Windows.Forms.Button();
+            this.btnConstruction1104 = new System.Windows.Forms.Button();
+            this.label60 = new System.Windows.Forms.Label();
+            this.label61 = new System.Windows.Forms.Label();
+            this.label62 = new System.Windows.Forms.Label();
+            this.label63 = new System.Windows.Forms.Label();
+            this.label64 = new System.Windows.Forms.Label();
+            this.btnConstruction1200 = new System.Windows.Forms.Button();
+            this.btnConstruction1201 = new System.Windows.Forms.Button();
+            this.btnConstruction1202 = new System.Windows.Forms.Button();
+            this.btnConstruction1203 = new System.Windows.Forms.Button();
+            this.btnConstruction1204 = new System.Windows.Forms.Button();
+            this.label78 = new System.Windows.Forms.Label();
+            this.tabPage16 = new System.Windows.Forms.TabPage();
+            this.pnlAffairs = new System.Windows.Forms.Panel();
+            this.tableLayoutAffairs = new System.Windows.Forms.TableLayoutPanel();
+            this.btnAffairs0000 = new System.Windows.Forms.Button();
+            this.btnAffairs0001 = new System.Windows.Forms.Button();
+            this.label65 = new System.Windows.Forms.Label();
+            this.btnAffairs0002 = new System.Windows.Forms.Button();
+            this.btnAffairs0003 = new System.Windows.Forms.Button();
+            this.btnAffairs0004 = new System.Windows.Forms.Button();
+            this.btnAffairs0100 = new System.Windows.Forms.Button();
+            this.btnAffairs0101 = new System.Windows.Forms.Button();
+            this.btnAffairs0102 = new System.Windows.Forms.Button();
+            this.btnAffairs0103 = new System.Windows.Forms.Button();
+            this.btnAffairs0104 = new System.Windows.Forms.Button();
+            this.label67 = new System.Windows.Forms.Label();
+            this.label66 = new System.Windows.Forms.Label();
+            this.label68 = new System.Windows.Forms.Label();
+            this.btnAffairs0302 = new System.Windows.Forms.Button();
+            this.btnAffairs0300 = new System.Windows.Forms.Button();
+            this.btnAffairs0301 = new System.Windows.Forms.Button();
+            this.btnAffairs0201 = new System.Windows.Forms.Button();
+            this.btnAffairs0200 = new System.Windows.Forms.Button();
+            this.label69 = new System.Windows.Forms.Label();
+            this.btnAffairs0202 = new System.Windows.Forms.Button();
+            this.btnAffairs0203 = new System.Windows.Forms.Button();
+            this.btnAffairs0204 = new System.Windows.Forms.Button();
+            this.btnAffairs0303 = new System.Windows.Forms.Button();
+            this.btnAffairs0304 = new System.Windows.Forms.Button();
+            this.label70 = new System.Windows.Forms.Label();
+            this.btnAffairs0400 = new System.Windows.Forms.Button();
+            this.btnAffairs0401 = new System.Windows.Forms.Button();
+            this.btnAffairs0402 = new System.Windows.Forms.Button();
+            this.btnAffairs0403 = new System.Windows.Forms.Button();
+            this.btnAffairs0404 = new System.Windows.Forms.Button();
+            this.label71 = new System.Windows.Forms.Label();
+            this.label72 = new System.Windows.Forms.Label();
+            this.label73 = new System.Windows.Forms.Label();
+            this.label74 = new System.Windows.Forms.Label();
+            this.btnAffairs0500 = new System.Windows.Forms.Button();
+            this.label75 = new System.Windows.Forms.Label();
+            this.label76 = new System.Windows.Forms.Label();
+            this.label77 = new System.Windows.Forms.Label();
+            this.tabPage17 = new System.Windows.Forms.TabPage();
+            this.tableLayoutDocuments = new System.Windows.Forms.TableLayoutPanel();
+            this.button1 = new System.Windows.Forms.Button();
+            this.button2 = new System.Windows.Forms.Button();
+            this.button3 = new System.Windows.Forms.Button();
+            this.button4 = new System.Windows.Forms.Button();
+            this.button5 = new System.Windows.Forms.Button();
+            this.button6 = new System.Windows.Forms.Button();
+            this.button7 = new System.Windows.Forms.Button();
+            this.button8 = new System.Windows.Forms.Button();
+            this.button9 = new System.Windows.Forms.Button();
+            this.button10 = new System.Windows.Forms.Button();
+            this.button11 = new System.Windows.Forms.Button();
+            this.button12 = new System.Windows.Forms.Button();
+            this.button13 = new System.Windows.Forms.Button();
+            this.button15 = new System.Windows.Forms.Button();
+            this.button16 = new System.Windows.Forms.Button();
+            this.button17 = new System.Windows.Forms.Button();
+            this.button18 = new System.Windows.Forms.Button();
+            this.button19 = new System.Windows.Forms.Button();
+            this.tabPage18 = new System.Windows.Forms.TabPage();
+            this.pnlMaster01 = new System.Windows.Forms.Panel();
+            this.tblLayoutMaster = new System.Windows.Forms.TableLayoutPanel();
+            this.lblDate = new System.Windows.Forms.Label();
+            this.lblVersion = new System.Windows.Forms.Label();
+            this.btnLogOut = new System.Windows.Forms.Button();
+            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
+            this.timer_StaffAssign = new System.Windows.Forms.Timer(this.components);
+            this.btnDataCopyE = new System.Windows.Forms.Button();
             this.dgvBusinessMessage = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn79 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn80 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -216,10 +509,6 @@
             this.Column24 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn84 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn85 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage7 = new System.Windows.Forms.TabPage();
-            this.btnMessageEntry = new System.Windows.Forms.Button();
-            this.UpDateProgress = new System.Windows.Forms.ProgressBar();
-            this.btnReLoadMessage = new System.Windows.Forms.Button();
             this.dgvMessageBoard = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.Column05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column06 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -228,17 +517,10 @@
             this.Column02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column07 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage21 = new System.Windows.Forms.TabPage();
-            this.label31 = new System.Windows.Forms.Label();
-            this.label27 = new System.Windows.Forms.Label();
-            this.label26 = new System.Windows.Forms.Label();
-            this.label29 = new System.Windows.Forms.Label();
-            this.label25 = new System.Windows.Forms.Label();
-            this.btnReLoadDAprroval = new System.Windows.Forms.Button();
-            this.ProgressDApproval = new System.Windows.Forms.ProgressBar();
             this.dgvApproval = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.ApprovalColumn02 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ApprovalColumn12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Column32 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ApprovalColumn01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ApprovalColumn03 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ApprovalColumn04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -249,7 +531,6 @@
             this.ApprovalColumn09 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ApprovalColumn10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ApprovalColumn11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage8 = new System.Windows.Forms.TabPage();
             this.dgvSalesInProjects = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column15 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -264,16 +545,6 @@
             this.Column6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.btnDataCopyA = new System.Windows.Forms.Button();
-            this.btnDataEntry = new System.Windows.Forms.Button();
-            this.ProgressSalesProjects = new System.Windows.Forms.ProgressBar();
-            this.btnReLoadSales = new System.Windows.Forms.Button();
-            this.label11 = new System.Windows.Forms.Label();
-            this.tabPage17 = new System.Windows.Forms.TabPage();
-            this.btnDataCopyB = new System.Windows.Forms.Button();
-            this.btnReLoadTenders = new System.Windows.Forms.Button();
-            this.ProgressTenders = new System.Windows.Forms.ProgressBar();
-            this.label21 = new System.Windows.Forms.Label();
             this.dgvTenders = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn20 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn21 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -288,11 +559,6 @@
             this.dataGridViewTextBoxColumn29 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn30 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn31 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage18 = new System.Windows.Forms.TabPage();
-            this.btnDataCopyC = new System.Windows.Forms.Button();
-            this.btnReLoadBudgetUp = new System.Windows.Forms.Button();
-            this.ProgressBudgetUp = new System.Windows.Forms.ProgressBar();
-            this.label22 = new System.Windows.Forms.Label();
             this.dgvBudgetUp = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn32 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn33 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -307,28 +573,6 @@
             this.dataGridViewTextBoxColumn41 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn42 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn43 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage9 = new System.Windows.Forms.TabPage();
-            this.lblDepTotal05 = new System.Windows.Forms.Label();
-            this.lblDep05 = new System.Windows.Forms.Label();
-            this.numUDConstPro = new System.Windows.Forms.NumericUpDown();
-            this.lblTotal03 = new System.Windows.Forms.Label();
-            this.lblTotal02 = new System.Windows.Forms.Label();
-            this.lblTotal01 = new System.Windows.Forms.Label();
-            this.lblDepTotal04 = new System.Windows.Forms.Label();
-            this.lblDepTotal03 = new System.Windows.Forms.Label();
-            this.lblDepTotal02 = new System.Windows.Forms.Label();
-            this.label30 = new System.Windows.Forms.Label();
-            this.lblDepTotal01 = new System.Windows.Forms.Label();
-            this.label28 = new System.Windows.Forms.Label();
-            this.lblPeriod = new System.Windows.Forms.Label();
-            this.lblDep04 = new System.Windows.Forms.Label();
-            this.label23 = new System.Windows.Forms.Label();
-            this.lblDep03 = new System.Windows.Forms.Label();
-            this.lblDep02 = new System.Windows.Forms.Label();
-            this.lblDep01 = new System.Windows.Forms.Label();
-            this.ProgressConstructionProjects = new System.Windows.Forms.ProgressBar();
-            this.btnReloadConstructionProjects = new System.Windows.Forms.Button();
-            this.label12 = new System.Windows.Forms.Label();
             this.dgvConstructionProjects = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column16 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -345,11 +589,6 @@
             this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage13 = new System.Windows.Forms.TabPage();
-            this.btnDataCopyF = new System.Windows.Forms.Button();
-            this.btnReloadFluctuationProjects = new System.Windows.Forms.Button();
-            this.ProgressFluctuationProjects = new System.Windows.Forms.ProgressBar();
-            this.label59 = new System.Windows.Forms.Label();
             this.dgvFluctuationProjects = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn16 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn17 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -366,15 +605,6 @@
             this.dataGridViewTextBoxColumn50 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn51 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn52 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage14 = new System.Windows.Forms.TabPage();
-            this.label39 = new System.Windows.Forms.Label();
-            this.numUDNonOrder = new System.Windows.Forms.NumericUpDown();
-            this.label40 = new System.Windows.Forms.Label();
-            this.label41 = new System.Windows.Forms.Label();
-            this.btnDataCopyD = new System.Windows.Forms.Button();
-            this.ProgressNonOrders = new System.Windows.Forms.ProgressBar();
-            this.btnReloadNonOrders = new System.Windows.Forms.Button();
-            this.label13 = new System.Windows.Forms.Label();
             this.dgvNonOrders = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column17 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -383,18 +613,6 @@
             this.dataGridViewTextBoxColumn14 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn19 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn18 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage15 = new System.Windows.Forms.TabPage();
-            this.label9 = new System.Windows.Forms.Label();
-            this.numUDCompletion = new System.Windows.Forms.NumericUpDown();
-            this.label10 = new System.Windows.Forms.Label();
-            this.label17 = new System.Windows.Forms.Label();
-            this.lblCompTotal02 = new System.Windows.Forms.Label();
-            this.lblCompTotal01 = new System.Windows.Forms.Label();
-            this.lblCompTitle02 = new System.Windows.Forms.Label();
-            this.lblCompTitle01 = new System.Windows.Forms.Label();
-            this.ProgressCompletionOfConstruction = new System.Windows.Forms.ProgressBar();
-            this.btnReloadCompletionOfConstruction = new System.Windows.Forms.Button();
-            this.label14 = new System.Windows.Forms.Label();
             this.dgvCompletionOfConstruction = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.dataGridViewTextBoxColumn15 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column18 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -408,7 +626,6 @@
             this.dataGridViewTextBoxActionColDays17 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxActionColDays18 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxActionColDays19 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage10 = new System.Windows.Forms.TabPage();
             this.dgvActionSchedule = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.ActionCol00 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Column22 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -447,16 +664,6 @@
             this.ActionColDays29 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ActionColDays30 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ActionColDays31 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.btnDispRight = new System.Windows.Forms.Button();
-            this.btnDispLeft = new System.Windows.Forms.Button();
-            this.btnVehicleSchdule = new System.Windows.Forms.Button();
-            this.btnActionSchdule = new System.Windows.Forms.Button();
-            this.btnReLoadActionSchedule = new System.Windows.Forms.Button();
-            this.label20 = new System.Windows.Forms.Label();
-            this.tabPage11 = new System.Windows.Forms.TabPage();
-            this.progBarStaffAssignment = new System.Windows.Forms.ProgressBar();
-            this.btnReLoadStaffAssignment = new System.Windows.Forms.Button();
-            this.label15 = new System.Windows.Forms.Label();
             this.dgvStaffAssignment = new ProcessManagement.Forms.CustomControls.DataGridViewEX();
             this.StaffFixColumn00 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.StaffFixColumn01 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -465,278 +672,49 @@
             this.StaffFixColumn04 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.StaffFixColumn05 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.StaffFixColumn06 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.tabPage12 = new System.Windows.Forms.TabPage();
-            this.label36 = new System.Windows.Forms.Label();
-            this.SalseGraphNum = new System.Windows.Forms.NumericUpDown();
-            this.label37 = new System.Windows.Forms.Label();
-            this.label38 = new System.Windows.Forms.Label();
-            this.lblSalesGraphUpdate = new System.Windows.Forms.Label();
-            this.chartSalesGraph = new System.Windows.Forms.DataVisualization.Charting.Chart();
-            this.label24 = new System.Windows.Forms.Label();
-            this.progBarSalesGraph = new System.Windows.Forms.ProgressBar();
-            this.btnReLoadSalesGraph = new System.Windows.Forms.Button();
-            this.tabPage1 = new System.Windows.Forms.TabPage();
-            this.tblLayoutOrder = new System.Windows.Forms.TableLayoutPanel();
-            this.btnOrder00 = new System.Windows.Forms.Button();
-            this.btnOrder06 = new System.Windows.Forms.Button();
-            this.btnOrder01 = new System.Windows.Forms.Button();
-            this.btnOrder02 = new System.Windows.Forms.Button();
-            this.btnOrder03 = new System.Windows.Forms.Button();
-            this.btnOrder04 = new System.Windows.Forms.Button();
-            this.btnOrder10 = new System.Windows.Forms.Button();
-            this.btnOrder09 = new System.Windows.Forms.Button();
-            this.btnOrder08 = new System.Windows.Forms.Button();
-            this.btnOrder07 = new System.Windows.Forms.Button();
-            this.btnOrder12 = new System.Windows.Forms.Button();
-            this.btnOrder13 = new System.Windows.Forms.Button();
-            this.btnOrder14 = new System.Windows.Forms.Button();
-            this.btnOrder15 = new System.Windows.Forms.Button();
-            this.btnOrder16 = new System.Windows.Forms.Button();
-            this.btnOrder05 = new System.Windows.Forms.Button();
-            this.btnOrder11 = new System.Windows.Forms.Button();
-            this.btnOrder17 = new System.Windows.Forms.Button();
-            this.label1 = new System.Windows.Forms.Label();
-            this.lblArrpw1_04 = new System.Windows.Forms.Label();
-            this.label2 = new System.Windows.Forms.Label();
-            this.lblArrpw1_02 = new System.Windows.Forms.Label();
-            this.label3 = new System.Windows.Forms.Label();
-            this.tabPage2 = new System.Windows.Forms.TabPage();
-            this.tblLayoutConstruction = new System.Windows.Forms.TableLayoutPanel();
-            this.btnConstruction01 = new System.Windows.Forms.Button();
-            this.btnConstruction00 = new System.Windows.Forms.Button();
-            this.btnConstruction06 = new System.Windows.Forms.Button();
-            this.btnConstruction02 = new System.Windows.Forms.Button();
-            this.btnConstruction03 = new System.Windows.Forms.Button();
-            this.btnConstruction04 = new System.Windows.Forms.Button();
-            this.btnConstruction10 = new System.Windows.Forms.Button();
-            this.btnConstruction09 = new System.Windows.Forms.Button();
-            this.btnConstruction12 = new System.Windows.Forms.Button();
-            this.btnConstruction13 = new System.Windows.Forms.Button();
-            this.btnConstruction14 = new System.Windows.Forms.Button();
-            this.btnConstruction15 = new System.Windows.Forms.Button();
-            this.btnConstruction16 = new System.Windows.Forms.Button();
-            this.btnConstruction05 = new System.Windows.Forms.Button();
-            this.btnConstruction11 = new System.Windows.Forms.Button();
-            this.btnConstruction17 = new System.Windows.Forms.Button();
-            this.lblArrpw2_01 = new System.Windows.Forms.Label();
-            this.btnConstruction08 = new System.Windows.Forms.Button();
-            this.btnConstruction07 = new System.Windows.Forms.Button();
-            this.label8 = new System.Windows.Forms.Label();
-            this.lblArrpw2_04 = new System.Windows.Forms.Label();
-            this.label5 = new System.Windows.Forms.Label();
-            this.label7 = new System.Windows.Forms.Label();
-            this.label16 = new System.Windows.Forms.Label();
-            this.tabPage23 = new System.Windows.Forms.TabPage();
-            this.tabPage3 = new System.Windows.Forms.TabPage();
-            this.tblLayoutBilling = new System.Windows.Forms.TableLayoutPanel();
-            this.btnBilling08 = new System.Windows.Forms.Button();
-            this.btnBilling13 = new System.Windows.Forms.Button();
-            this.label18 = new System.Windows.Forms.Label();
-            this.btnBilling00 = new System.Windows.Forms.Button();
-            this.btnBilling05 = new System.Windows.Forms.Button();
-            this.btnBilling10 = new System.Windows.Forms.Button();
-            this.label4 = new System.Windows.Forms.Label();
-            this.btnBilling01 = new System.Windows.Forms.Button();
-            this.btnBilling06 = new System.Windows.Forms.Button();
-            this.label6 = new System.Windows.Forms.Label();
-            this.label19 = new System.Windows.Forms.Label();
-            this.btnBilling11 = new System.Windows.Forms.Button();
-            this.btnBilling09 = new System.Windows.Forms.Button();
-            this.label34 = new System.Windows.Forms.Label();
-            this.btnBilling04 = new System.Windows.Forms.Button();
-            this.button14 = new System.Windows.Forms.Button();
-            this.btnBilling03 = new System.Windows.Forms.Button();
-            this.btnBilling02 = new System.Windows.Forms.Button();
-            this.btnBilling07 = new System.Windows.Forms.Button();
-            this.btnBilling12 = new System.Windows.Forms.Button();
-            this.label33 = new System.Windows.Forms.Label();
-            this.label35 = new System.Windows.Forms.Label();
-            this.tabPage22 = new System.Windows.Forms.TabPage();
-            this.tableLayoutAffairs = new System.Windows.Forms.TableLayoutPanel();
-            this.button20 = new System.Windows.Forms.Button();
-            this.button21 = new System.Windows.Forms.Button();
-            this.button22 = new System.Windows.Forms.Button();
-            this.button23 = new System.Windows.Forms.Button();
-            this.button24 = new System.Windows.Forms.Button();
-            this.button25 = new System.Windows.Forms.Button();
-            this.button26 = new System.Windows.Forms.Button();
-            this.button27 = new System.Windows.Forms.Button();
-            this.button28 = new System.Windows.Forms.Button();
-            this.button29 = new System.Windows.Forms.Button();
-            this.button30 = new System.Windows.Forms.Button();
-            this.button31 = new System.Windows.Forms.Button();
-            this.button32 = new System.Windows.Forms.Button();
-            this.button33 = new System.Windows.Forms.Button();
-            this.button34 = new System.Windows.Forms.Button();
-            this.button35 = new System.Windows.Forms.Button();
-            this.button36 = new System.Windows.Forms.Button();
-            this.button37 = new System.Windows.Forms.Button();
-            this.tabPage16 = new System.Windows.Forms.TabPage();
-            this.tableLayoutDocuments = new System.Windows.Forms.TableLayoutPanel();
-            this.button1 = new System.Windows.Forms.Button();
-            this.button2 = new System.Windows.Forms.Button();
-            this.button3 = new System.Windows.Forms.Button();
-            this.button4 = new System.Windows.Forms.Button();
-            this.button5 = new System.Windows.Forms.Button();
-            this.button6 = new System.Windows.Forms.Button();
-            this.button7 = new System.Windows.Forms.Button();
-            this.button8 = new System.Windows.Forms.Button();
-            this.button9 = new System.Windows.Forms.Button();
-            this.button10 = new System.Windows.Forms.Button();
-            this.button11 = new System.Windows.Forms.Button();
-            this.button12 = new System.Windows.Forms.Button();
-            this.button13 = new System.Windows.Forms.Button();
-            this.button15 = new System.Windows.Forms.Button();
-            this.button16 = new System.Windows.Forms.Button();
-            this.button17 = new System.Windows.Forms.Button();
-            this.button18 = new System.Windows.Forms.Button();
-            this.button19 = new System.Windows.Forms.Button();
-            this.tabPage4 = new System.Windows.Forms.TabPage();
-            this.pnlMaster01 = new System.Windows.Forms.Panel();
-            this.tblLayoutMaster = new System.Windows.Forms.TableLayoutPanel();
-            this.btnMaster_00 = new System.Windows.Forms.Button();
-            this.btnMaster_06 = new System.Windows.Forms.Button();
-            this.btnMaster_10 = new System.Windows.Forms.Button();
-            this.btnMaster_09 = new System.Windows.Forms.Button();
-            this.btnMaster_08 = new System.Windows.Forms.Button();
-            this.btnMaster_07 = new System.Windows.Forms.Button();
-            this.btnMaster_12 = new System.Windows.Forms.Button();
-            this.btnMaster_13 = new System.Windows.Forms.Button();
-            this.btnMaster_14 = new System.Windows.Forms.Button();
-            this.btnMaster_15 = new System.Windows.Forms.Button();
-            this.btnMaster_16 = new System.Windows.Forms.Button();
-            this.btnMaster_11 = new System.Windows.Forms.Button();
-            this.btnMaster_17 = new System.Windows.Forms.Button();
-            this.btnMaster_05 = new System.Windows.Forms.Button();
-            this.btnMaster_04 = new System.Windows.Forms.Button();
-            this.btnMaster_03 = new System.Windows.Forms.Button();
-            this.btnMaster_02 = new System.Windows.Forms.Button();
-            this.btnMaster_01 = new System.Windows.Forms.Button();
-            this.btnMaster_18 = new System.Windows.Forms.Button();
-            this.btnMaster_19 = new System.Windows.Forms.Button();
-            this.btnMaster_20 = new System.Windows.Forms.Button();
-            this.btnMaster_21 = new System.Windows.Forms.Button();
-            this.btnMaster_22 = new System.Windows.Forms.Button();
-            this.btnMaster_23 = new System.Windows.Forms.Button();
-            this.btnMaster_24 = new System.Windows.Forms.Button();
-            this.btnMaster_25 = new System.Windows.Forms.Button();
-            this.btnMaster_26 = new System.Windows.Forms.Button();
-            this.tabPage19 = new System.Windows.Forms.TabPage();
-            this.tblLayoutMaster1 = new System.Windows.Forms.TableLayoutPanel();
-            this.btnMaster1_00 = new System.Windows.Forms.Button();
-            this.btnMaster1_06 = new System.Windows.Forms.Button();
-            this.btnMaster1_10 = new System.Windows.Forms.Button();
-            this.btnMaster1_09 = new System.Windows.Forms.Button();
-            this.btnMaster1_08 = new System.Windows.Forms.Button();
-            this.btnMaster1_07 = new System.Windows.Forms.Button();
-            this.btnMaster1_12 = new System.Windows.Forms.Button();
-            this.btnMaster1_13 = new System.Windows.Forms.Button();
-            this.btnMaster1_14 = new System.Windows.Forms.Button();
-            this.btnMaster1_15 = new System.Windows.Forms.Button();
-            this.btnMaster1_16 = new System.Windows.Forms.Button();
-            this.btnMaster1_11 = new System.Windows.Forms.Button();
-            this.btnMaster1_17 = new System.Windows.Forms.Button();
-            this.btnMaster1_05 = new System.Windows.Forms.Button();
-            this.btnMaster1_04 = new System.Windows.Forms.Button();
-            this.btnMaster1_03 = new System.Windows.Forms.Button();
-            this.btnMaster1_02 = new System.Windows.Forms.Button();
-            this.btnMaster1_01 = new System.Windows.Forms.Button();
-            this.tabPage5 = new System.Windows.Forms.TabPage();
-            this.tblLayoutMaster2 = new System.Windows.Forms.TableLayoutPanel();
-            this.btnMaster2_00 = new System.Windows.Forms.Button();
-            this.btnMaster2_06 = new System.Windows.Forms.Button();
-            this.btnMaster2_01 = new System.Windows.Forms.Button();
-            this.btnMaster2_02 = new System.Windows.Forms.Button();
-            this.btnMaster2_03 = new System.Windows.Forms.Button();
-            this.btnMaster2_04 = new System.Windows.Forms.Button();
-            this.btnMaster2_10 = new System.Windows.Forms.Button();
-            this.btnMaster2_09 = new System.Windows.Forms.Button();
-            this.btnMaster2_08 = new System.Windows.Forms.Button();
-            this.btnMaster2_07 = new System.Windows.Forms.Button();
-            this.btnMaster2_12 = new System.Windows.Forms.Button();
-            this.btnMaster2_13 = new System.Windows.Forms.Button();
-            this.btnMaster2_14 = new System.Windows.Forms.Button();
-            this.btnMaster2_15 = new System.Windows.Forms.Button();
-            this.btnMaster2_16 = new System.Windows.Forms.Button();
-            this.btnMaster2_r05 = new System.Windows.Forms.Button();
-            this.btnMaster2_11 = new System.Windows.Forms.Button();
-            this.btnMaster2_17 = new System.Windows.Forms.Button();
-            this.tabPage6 = new System.Windows.Forms.TabPage();
-            this.tblLayoutMaster3 = new System.Windows.Forms.TableLayoutPanel();
-            this.btnMaster3_00 = new System.Windows.Forms.Button();
-            this.btnMaster3_06 = new System.Windows.Forms.Button();
-            this.btnMaster3_01 = new System.Windows.Forms.Button();
-            this.btnMaster3_02 = new System.Windows.Forms.Button();
-            this.btnMaster3_03 = new System.Windows.Forms.Button();
-            this.btnMaster3_04 = new System.Windows.Forms.Button();
-            this.btnMaster3_10 = new System.Windows.Forms.Button();
-            this.btnMaster3_09 = new System.Windows.Forms.Button();
-            this.btnMaster3_08 = new System.Windows.Forms.Button();
-            this.btnMaster3_07 = new System.Windows.Forms.Button();
-            this.btnMaster3_12 = new System.Windows.Forms.Button();
-            this.btnMaster3_13 = new System.Windows.Forms.Button();
-            this.btnMaster3_14 = new System.Windows.Forms.Button();
-            this.btnMaster3_15 = new System.Windows.Forms.Button();
-            this.btnMaster3_16 = new System.Windows.Forms.Button();
-            this.btnMaster3_05 = new System.Windows.Forms.Button();
-            this.btnMaster3_11 = new System.Windows.Forms.Button();
-            this.btnMaster3_17 = new System.Windows.Forms.Button();
-            this.lblDate = new System.Windows.Forms.Label();
-            this.lblVersion = new System.Windows.Forms.Label();
-            this.btnLogOut = new System.Windows.Forms.Button();
-            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
-            this.timer_StaffAssign = new System.Windows.Forms.Timer(this.components);
-            this.btnDataCopyE = new System.Windows.Forms.Button();
             this.tabMenu.SuspendLayout();
-            this.tabPage20.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvBusinessMessage)).BeginInit();
+            this.tabPage1.SuspendLayout();
+            this.tabPage2.SuspendLayout();
+            this.tabPage3.SuspendLayout();
+            this.tabPage4.SuspendLayout();
+            this.tabPage5.SuspendLayout();
+            this.tabPage6.SuspendLayout();
             this.tabPage7.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvMessageBoard)).BeginInit();
-            this.tabPage21.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvApproval)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
             this.tabPage8.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvSalesInProjects)).BeginInit();
-            this.tabPage17.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvTenders)).BeginInit();
-            this.tabPage18.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvBudgetUp)).BeginInit();
             this.tabPage9.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvConstructionProjects)).BeginInit();
-            this.tabPage13.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvFluctuationProjects)).BeginInit();
-            this.tabPage14.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDNonOrder)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvNonOrders)).BeginInit();
-            this.tabPage15.SuspendLayout();
+            this.tabPage10.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.numUDCompletion)).BeginInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvCompletionOfConstruction)).BeginInit();
-            this.tabPage10.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvActionSchedule)).BeginInit();
             this.tabPage11.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvStaffAssignment)).BeginInit();
             this.tabPage12.SuspendLayout();
+            this.tabPage13.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.SalseGraphNum)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.chartSalesGraph)).BeginInit();
-            this.tabPage1.SuspendLayout();
+            this.tabPage14.SuspendLayout();
             this.tblLayoutOrder.SuspendLayout();
-            this.tabPage2.SuspendLayout();
+            this.tabPage15.SuspendLayout();
+            this.pnlConstruction.SuspendLayout();
             this.tblLayoutConstruction.SuspendLayout();
-            this.tabPage3.SuspendLayout();
-            this.tblLayoutBilling.SuspendLayout();
-            this.tabPage22.SuspendLayout();
+            this.tabPage16.SuspendLayout();
+            this.pnlAffairs.SuspendLayout();
             this.tableLayoutAffairs.SuspendLayout();
-            this.tabPage16.SuspendLayout();
+            this.tabPage17.SuspendLayout();
             this.tableLayoutDocuments.SuspendLayout();
-            this.tabPage4.SuspendLayout();
+            this.tabPage18.SuspendLayout();
             this.pnlMaster01.SuspendLayout();
-            this.tblLayoutMaster.SuspendLayout();
-            this.tabPage19.SuspendLayout();
-            this.tblLayoutMaster1.SuspendLayout();
-            this.tabPage5.SuspendLayout();
-            this.tblLayoutMaster2.SuspendLayout();
-            this.tabPage6.SuspendLayout();
-            this.tblLayoutMaster3.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvBusinessMessage)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMessageBoard)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvApproval)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvSalesInProjects)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvTenders)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvBudgetUp)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvConstructionProjects)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvFluctuationProjects)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvNonOrders)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvCompletionOfConstruction)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvActionSchedule)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvStaffAssignment)).BeginInit();
             this.SuspendLayout();
             // 
             // lblTitle
@@ -774,29 +752,24 @@
             this.tabMenu.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.tabMenu.Controls.Add(this.tabPage20);
+            this.tabMenu.Controls.Add(this.tabPage1);
+            this.tabMenu.Controls.Add(this.tabPage2);
+            this.tabMenu.Controls.Add(this.tabPage3);
+            this.tabMenu.Controls.Add(this.tabPage4);
+            this.tabMenu.Controls.Add(this.tabPage5);
+            this.tabMenu.Controls.Add(this.tabPage6);
             this.tabMenu.Controls.Add(this.tabPage7);
-            this.tabMenu.Controls.Add(this.tabPage21);
             this.tabMenu.Controls.Add(this.tabPage8);
-            this.tabMenu.Controls.Add(this.tabPage17);
-            this.tabMenu.Controls.Add(this.tabPage18);
             this.tabMenu.Controls.Add(this.tabPage9);
+            this.tabMenu.Controls.Add(this.tabPage10);
+            this.tabMenu.Controls.Add(this.tabPage11);
+            this.tabMenu.Controls.Add(this.tabPage12);
             this.tabMenu.Controls.Add(this.tabPage13);
             this.tabMenu.Controls.Add(this.tabPage14);
             this.tabMenu.Controls.Add(this.tabPage15);
-            this.tabMenu.Controls.Add(this.tabPage10);
-            this.tabMenu.Controls.Add(this.tabPage11);
-            this.tabMenu.Controls.Add(this.tabPage12);
-            this.tabMenu.Controls.Add(this.tabPage1);
-            this.tabMenu.Controls.Add(this.tabPage2);
-            this.tabMenu.Controls.Add(this.tabPage23);
-            this.tabMenu.Controls.Add(this.tabPage3);
-            this.tabMenu.Controls.Add(this.tabPage22);
             this.tabMenu.Controls.Add(this.tabPage16);
-            this.tabMenu.Controls.Add(this.tabPage4);
-            this.tabMenu.Controls.Add(this.tabPage19);
-            this.tabMenu.Controls.Add(this.tabPage5);
-            this.tabMenu.Controls.Add(this.tabPage6);
+            this.tabMenu.Controls.Add(this.tabPage17);
+            this.tabMenu.Controls.Add(this.tabPage18);
             this.tabMenu.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
             this.tabMenu.ItemSize = new System.Drawing.Size(90, 26);
             this.tabMenu.Location = new System.Drawing.Point(5, 56);
@@ -809,18 +782,18 @@
             this.tabMenu.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.tabMenu_DrawItem);
             this.tabMenu.SelectedIndexChanged += new System.EventHandler(this.tabMenu_SelectedIndexChanged);
             // 
-            // tabPage20
+            // tabPage1
             // 
-            this.tabPage20.BackColor = System.Drawing.Color.Black;
-            this.tabPage20.Controls.Add(this.BusinessProgress);
-            this.tabPage20.Controls.Add(this.btnReLoadBusinessMsg);
-            this.tabPage20.Controls.Add(this.dgvBusinessMessage);
-            this.tabPage20.ForeColor = System.Drawing.Color.Black;
-            this.tabPage20.Location = new System.Drawing.Point(4, 30);
-            this.tabPage20.Name = "tabPage20";
-            this.tabPage20.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage20.TabIndex = 18;
-            this.tabPage20.Text = "秘書からの連絡";
+            this.tabPage1.BackColor = System.Drawing.Color.Black;
+            this.tabPage1.Controls.Add(this.BusinessProgress);
+            this.tabPage1.Controls.Add(this.btnReLoadBusinessMsg);
+            this.tabPage1.Controls.Add(this.dgvBusinessMessage);
+            this.tabPage1.ForeColor = System.Drawing.Color.Black;
+            this.tabPage1.Location = new System.Drawing.Point(4, 30);
+            this.tabPage1.Name = "tabPage1";
+            this.tabPage1.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage1.TabIndex = 18;
+            this.tabPage1.Text = "秘書からの連絡";
             // 
             // BusinessProgress
             // 
@@ -845,6 +818,4076 @@
             this.btnReLoadBusinessMsg.UseVisualStyleBackColor = false;
             this.btnReLoadBusinessMsg.Click += new System.EventHandler(this.btnReLoad_Click);
             // 
+            // tabPage2
+            // 
+            this.tabPage2.BackColor = System.Drawing.Color.Black;
+            this.tabPage2.Controls.Add(this.btnMessageEntry);
+            this.tabPage2.Controls.Add(this.UpDateProgress);
+            this.tabPage2.Controls.Add(this.btnReLoadMessage);
+            this.tabPage2.Controls.Add(this.dgvMessageBoard);
+            this.tabPage2.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.tabPage2.ForeColor = System.Drawing.Color.Black;
+            this.tabPage2.Location = new System.Drawing.Point(4, 30);
+            this.tabPage2.Name = "tabPage2";
+            this.tabPage2.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage2.TabIndex = 5;
+            this.tabPage2.Text = "社内掲示板";
+            // 
+            // btnMessageEntry
+            // 
+            this.btnMessageEntry.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnMessageEntry.BackColor = System.Drawing.Color.Green;
+            this.btnMessageEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnMessageEntry.ForeColor = System.Drawing.Color.White;
+            this.btnMessageEntry.Location = new System.Drawing.Point(396, 501);
+            this.btnMessageEntry.Name = "btnMessageEntry";
+            this.btnMessageEntry.Size = new System.Drawing.Size(400, 30);
+            this.btnMessageEntry.TabIndex = 28;
+            this.btnMessageEntry.TabStop = false;
+            this.btnMessageEntry.Text = "新規メッセージ作成";
+            this.btnMessageEntry.UseVisualStyleBackColor = false;
+            this.btnMessageEntry.Click += new System.EventHandler(this.btnMessageEntry_Click);
+            // 
+            // UpDateProgress
+            // 
+            this.UpDateProgress.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.UpDateProgress.Location = new System.Drawing.Point(6, 501);
+            this.UpDateProgress.Name = "UpDateProgress";
+            this.UpDateProgress.Size = new System.Drawing.Size(388, 30);
+            this.UpDateProgress.TabIndex = 27;
+            this.UpDateProgress.Visible = false;
+            // 
+            // btnReLoadMessage
+            // 
+            this.btnReLoadMessage.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadMessage.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadMessage.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadMessage.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadMessage.Name = "btnReLoadMessage";
+            this.btnReLoadMessage.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadMessage.TabIndex = 26;
+            this.btnReLoadMessage.TabStop = false;
+            this.btnReLoadMessage.Text = "最新の状態へ";
+            this.btnReLoadMessage.UseVisualStyleBackColor = false;
+            this.btnReLoadMessage.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // tabPage3
+            // 
+            this.tabPage3.BackColor = System.Drawing.Color.Black;
+            this.tabPage3.Controls.Add(this.label31);
+            this.tabPage3.Controls.Add(this.label27);
+            this.tabPage3.Controls.Add(this.label26);
+            this.tabPage3.Controls.Add(this.label29);
+            this.tabPage3.Controls.Add(this.label25);
+            this.tabPage3.Controls.Add(this.btnReLoadDAprroval);
+            this.tabPage3.Controls.Add(this.ProgressDApproval);
+            this.tabPage3.Controls.Add(this.dgvApproval);
+            this.tabPage3.Location = new System.Drawing.Point(4, 30);
+            this.tabPage3.Name = "tabPage3";
+            this.tabPage3.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage3.TabIndex = 19;
+            this.tabPage3.Text = "承認一覧";
+            // 
+            // label31
+            // 
+            this.label31.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label31.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label31.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label31.ForeColor = System.Drawing.Color.Black;
+            this.label31.Location = new System.Drawing.Point(346, 5);
+            this.label31.Name = "label31";
+            this.label31.Size = new System.Drawing.Size(500, 20);
+            this.label31.TabIndex = 36;
+            this.label31.Text = "承　　認　　申　　請　　一　　覧";
+            this.label31.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label27
+            // 
+            this.label27.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.label27.BackColor = System.Drawing.Color.Red;
+            this.label27.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label27.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label27.Location = new System.Drawing.Point(920, 501);
+            this.label27.Name = "label27";
+            this.label27.Size = new System.Drawing.Size(80, 30);
+            this.label27.TabIndex = 35;
+            this.label27.Text = "不承認";
+            this.label27.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label26
+            // 
+            this.label26.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.label26.BackColor = System.Drawing.Color.Yellow;
+            this.label26.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label26.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label26.Location = new System.Drawing.Point(832, 501);
+            this.label26.Name = "label26";
+            this.label26.Size = new System.Drawing.Size(80, 30);
+            this.label26.TabIndex = 35;
+            this.label26.Text = "保　留";
+            this.label26.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label29
+            // 
+            this.label29.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.label29.BackColor = System.Drawing.Color.LightSkyBlue;
+            this.label29.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label29.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label29.Location = new System.Drawing.Point(656, 501);
+            this.label29.Name = "label29";
+            this.label29.Size = new System.Drawing.Size(80, 30);
+            this.label29.TabIndex = 35;
+            this.label29.Text = "確認中";
+            this.label29.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label25
+            // 
+            this.label25.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.label25.BackColor = System.Drawing.Color.MediumSpringGreen;
+            this.label25.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label25.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label25.Location = new System.Drawing.Point(744, 501);
+            this.label25.Name = "label25";
+            this.label25.Size = new System.Drawing.Size(80, 30);
+            this.label25.TabIndex = 35;
+            this.label25.Text = "承　認";
+            this.label25.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnReLoadDAprroval
+            // 
+            this.btnReLoadDAprroval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadDAprroval.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadDAprroval.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadDAprroval.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadDAprroval.Name = "btnReLoadDAprroval";
+            this.btnReLoadDAprroval.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadDAprroval.TabIndex = 34;
+            this.btnReLoadDAprroval.TabStop = false;
+            this.btnReLoadDAprroval.Text = "最新の状態へ";
+            this.btnReLoadDAprroval.UseVisualStyleBackColor = false;
+            this.btnReLoadDAprroval.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // ProgressDApproval
+            // 
+            this.ProgressDApproval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressDApproval.Location = new System.Drawing.Point(6, 501);
+            this.ProgressDApproval.Name = "ProgressDApproval";
+            this.ProgressDApproval.Size = new System.Drawing.Size(388, 30);
+            this.ProgressDApproval.TabIndex = 33;
+            this.ProgressDApproval.Visible = false;
+            // 
+            // tabPage4
+            // 
+            this.tabPage4.BackColor = System.Drawing.Color.Black;
+            this.tabPage4.Controls.Add(this.dgvSalesInProjects);
+            this.tabPage4.Controls.Add(this.btnDataCopyA);
+            this.tabPage4.Controls.Add(this.btnDataEntry);
+            this.tabPage4.Controls.Add(this.ProgressSalesProjects);
+            this.tabPage4.Controls.Add(this.btnReLoadSales);
+            this.tabPage4.Controls.Add(this.label11);
+            this.tabPage4.Location = new System.Drawing.Point(4, 30);
+            this.tabPage4.Name = "tabPage4";
+            this.tabPage4.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage4.TabIndex = 6;
+            this.tabPage4.Text = "工事案件";
+            // 
+            // btnDataCopyA
+            // 
+            this.btnDataCopyA.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataCopyA.BackColor = System.Drawing.Color.DarkOrange;
+            this.btnDataCopyA.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataCopyA.ForeColor = System.Drawing.Color.Black;
+            this.btnDataCopyA.Location = new System.Drawing.Point(801, 501);
+            this.btnDataCopyA.Name = "btnDataCopyA";
+            this.btnDataCopyA.Size = new System.Drawing.Size(260, 30);
+            this.btnDataCopyA.TabIndex = 29;
+            this.btnDataCopyA.Text = "既存工事からコピー登録";
+            this.btnDataCopyA.UseVisualStyleBackColor = false;
+            this.btnDataCopyA.Click += new System.EventHandler(this.btnDataCopy_Click);
+            // 
+            // btnDataEntry
+            // 
+            this.btnDataEntry.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataEntry.BackColor = System.Drawing.Color.PaleGreen;
+            this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataEntry.ForeColor = System.Drawing.Color.Black;
+            this.btnDataEntry.Location = new System.Drawing.Point(396, 501);
+            this.btnDataEntry.Name = "btnDataEntry";
+            this.btnDataEntry.Size = new System.Drawing.Size(400, 30);
+            this.btnDataEntry.TabIndex = 29;
+            this.btnDataEntry.Text = "新規工事を登録";
+            this.btnDataEntry.UseVisualStyleBackColor = false;
+            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
+            // 
+            // ProgressSalesProjects
+            // 
+            this.ProgressSalesProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressSalesProjects.Location = new System.Drawing.Point(6, 501);
+            this.ProgressSalesProjects.Name = "ProgressSalesProjects";
+            this.ProgressSalesProjects.Size = new System.Drawing.Size(388, 30);
+            this.ProgressSalesProjects.TabIndex = 28;
+            this.ProgressSalesProjects.Visible = false;
+            // 
+            // btnReLoadSales
+            // 
+            this.btnReLoadSales.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadSales.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadSales.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadSales.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadSales.Name = "btnReLoadSales";
+            this.btnReLoadSales.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadSales.TabIndex = 27;
+            this.btnReLoadSales.TabStop = false;
+            this.btnReLoadSales.Text = "最新の状態へ";
+            this.btnReLoadSales.UseVisualStyleBackColor = false;
+            this.btnReLoadSales.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // label11
+            // 
+            this.label11.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
+            this.label11.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label11.ForeColor = System.Drawing.Color.Black;
+            this.label11.Location = new System.Drawing.Point(346, 5);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(500, 20);
+            this.label11.TabIndex = 7;
+            this.label11.Text = "工　　事　　案　　件　　状　　況　　一　　覧";
+            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage5
+            // 
+            this.tabPage5.BackColor = System.Drawing.Color.Black;
+            this.tabPage5.Controls.Add(this.btnDataCopyB);
+            this.tabPage5.Controls.Add(this.btnReLoadTenders);
+            this.tabPage5.Controls.Add(this.ProgressTenders);
+            this.tabPage5.Controls.Add(this.label21);
+            this.tabPage5.Controls.Add(this.dgvTenders);
+            this.tabPage5.Location = new System.Drawing.Point(4, 30);
+            this.tabPage5.Name = "tabPage5";
+            this.tabPage5.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage5.TabIndex = 15;
+            this.tabPage5.Text = "入札案件";
+            // 
+            // btnDataCopyB
+            // 
+            this.btnDataCopyB.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataCopyB.BackColor = System.Drawing.Color.DarkOrange;
+            this.btnDataCopyB.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataCopyB.ForeColor = System.Drawing.Color.Black;
+            this.btnDataCopyB.Location = new System.Drawing.Point(801, 501);
+            this.btnDataCopyB.Name = "btnDataCopyB";
+            this.btnDataCopyB.Size = new System.Drawing.Size(260, 30);
+            this.btnDataCopyB.TabIndex = 33;
+            this.btnDataCopyB.Text = "既存工事からコピー登録";
+            this.btnDataCopyB.UseVisualStyleBackColor = false;
+            this.btnDataCopyB.Click += new System.EventHandler(this.btnDataCopy_Click);
+            // 
+            // btnReLoadTenders
+            // 
+            this.btnReLoadTenders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadTenders.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadTenders.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadTenders.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadTenders.Name = "btnReLoadTenders";
+            this.btnReLoadTenders.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadTenders.TabIndex = 32;
+            this.btnReLoadTenders.TabStop = false;
+            this.btnReLoadTenders.Text = "最新の状態へ";
+            this.btnReLoadTenders.UseVisualStyleBackColor = false;
+            this.btnReLoadTenders.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // ProgressTenders
+            // 
+            this.ProgressTenders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressTenders.Location = new System.Drawing.Point(6, 501);
+            this.ProgressTenders.Name = "ProgressTenders";
+            this.ProgressTenders.Size = new System.Drawing.Size(388, 30);
+            this.ProgressTenders.TabIndex = 29;
+            this.ProgressTenders.Visible = false;
+            // 
+            // label21
+            // 
+            this.label21.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label21.BackColor = System.Drawing.Color.LemonChiffon;
+            this.label21.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label21.ForeColor = System.Drawing.Color.Black;
+            this.label21.Location = new System.Drawing.Point(346, 5);
+            this.label21.Name = "label21";
+            this.label21.Size = new System.Drawing.Size(500, 20);
+            this.label21.TabIndex = 9;
+            this.label21.Text = "入　　札　　案　　件　　状　　況　　一　　覧";
+            this.label21.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage6
+            // 
+            this.tabPage6.BackColor = System.Drawing.Color.Black;
+            this.tabPage6.Controls.Add(this.btnDataCopyC);
+            this.tabPage6.Controls.Add(this.btnReLoadBudgetUp);
+            this.tabPage6.Controls.Add(this.ProgressBudgetUp);
+            this.tabPage6.Controls.Add(this.label22);
+            this.tabPage6.Controls.Add(this.dgvBudgetUp);
+            this.tabPage6.Location = new System.Drawing.Point(4, 30);
+            this.tabPage6.Name = "tabPage6";
+            this.tabPage6.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage6.TabIndex = 16;
+            this.tabPage6.Text = "予算取り案件";
+            // 
+            // btnDataCopyC
+            // 
+            this.btnDataCopyC.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataCopyC.BackColor = System.Drawing.Color.DarkOrange;
+            this.btnDataCopyC.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataCopyC.ForeColor = System.Drawing.Color.Black;
+            this.btnDataCopyC.Location = new System.Drawing.Point(801, 501);
+            this.btnDataCopyC.Name = "btnDataCopyC";
+            this.btnDataCopyC.Size = new System.Drawing.Size(260, 30);
+            this.btnDataCopyC.TabIndex = 34;
+            this.btnDataCopyC.Text = "既存工事からコピー登録";
+            this.btnDataCopyC.UseVisualStyleBackColor = false;
+            this.btnDataCopyC.Click += new System.EventHandler(this.btnDataCopy_Click);
+            // 
+            // btnReLoadBudgetUp
+            // 
+            this.btnReLoadBudgetUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadBudgetUp.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadBudgetUp.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadBudgetUp.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadBudgetUp.Name = "btnReLoadBudgetUp";
+            this.btnReLoadBudgetUp.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadBudgetUp.TabIndex = 32;
+            this.btnReLoadBudgetUp.TabStop = false;
+            this.btnReLoadBudgetUp.Text = "最新の状態へ";
+            this.btnReLoadBudgetUp.UseVisualStyleBackColor = false;
+            this.btnReLoadBudgetUp.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // ProgressBudgetUp
+            // 
+            this.ProgressBudgetUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressBudgetUp.Location = new System.Drawing.Point(6, 501);
+            this.ProgressBudgetUp.Name = "ProgressBudgetUp";
+            this.ProgressBudgetUp.Size = new System.Drawing.Size(388, 30);
+            this.ProgressBudgetUp.TabIndex = 29;
+            this.ProgressBudgetUp.Visible = false;
+            // 
+            // label22
+            // 
+            this.label22.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label22.BackColor = System.Drawing.Color.Cornsilk;
+            this.label22.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label22.ForeColor = System.Drawing.Color.Black;
+            this.label22.Location = new System.Drawing.Point(346, 5);
+            this.label22.Name = "label22";
+            this.label22.Size = new System.Drawing.Size(500, 20);
+            this.label22.TabIndex = 11;
+            this.label22.Text = "予　　算　　取　　り　　案　　件　　状　　況　　一　　覧";
+            this.label22.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage7
+            // 
+            this.tabPage7.BackColor = System.Drawing.Color.Black;
+            this.tabPage7.Controls.Add(this.lblDepTotal05);
+            this.tabPage7.Controls.Add(this.lblDep05);
+            this.tabPage7.Controls.Add(this.numUDConstPro);
+            this.tabPage7.Controls.Add(this.lblTotal03);
+            this.tabPage7.Controls.Add(this.lblTotal02);
+            this.tabPage7.Controls.Add(this.lblTotal01);
+            this.tabPage7.Controls.Add(this.lblDepTotal04);
+            this.tabPage7.Controls.Add(this.lblDepTotal03);
+            this.tabPage7.Controls.Add(this.lblDepTotal02);
+            this.tabPage7.Controls.Add(this.label30);
+            this.tabPage7.Controls.Add(this.lblDepTotal01);
+            this.tabPage7.Controls.Add(this.label28);
+            this.tabPage7.Controls.Add(this.lblPeriod);
+            this.tabPage7.Controls.Add(this.lblDep04);
+            this.tabPage7.Controls.Add(this.label23);
+            this.tabPage7.Controls.Add(this.lblDep03);
+            this.tabPage7.Controls.Add(this.lblDep02);
+            this.tabPage7.Controls.Add(this.lblDep01);
+            this.tabPage7.Controls.Add(this.ProgressConstructionProjects);
+            this.tabPage7.Controls.Add(this.btnReloadConstructionProjects);
+            this.tabPage7.Controls.Add(this.label12);
+            this.tabPage7.Controls.Add(this.dgvConstructionProjects);
+            this.tabPage7.Location = new System.Drawing.Point(4, 30);
+            this.tabPage7.Name = "tabPage7";
+            this.tabPage7.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage7.TabIndex = 7;
+            this.tabPage7.Text = "受注工事";
+            // 
+            // lblDepTotal05
+            // 
+            this.lblDepTotal05.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDepTotal05.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblDepTotal05.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDepTotal05.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDepTotal05.Location = new System.Drawing.Point(895, 506);
+            this.lblDepTotal05.Name = "lblDepTotal05";
+            this.lblDepTotal05.Size = new System.Drawing.Size(130, 20);
+            this.lblDepTotal05.TabIndex = 37;
+            this.lblDepTotal05.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblDep05
+            // 
+            this.lblDep05.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDep05.BackColor = System.Drawing.Color.Aqua;
+            this.lblDep05.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDep05.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDep05.Location = new System.Drawing.Point(775, 506);
+            this.lblDep05.Name = "lblDep05";
+            this.lblDep05.Size = new System.Drawing.Size(120, 20);
+            this.lblDep05.TabIndex = 38;
+            this.lblDep05.Text = "企・設・ﾘﾌｫｰﾑ部";
+            this.lblDep05.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDConstPro
+            // 
+            this.numUDConstPro.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.numUDConstPro.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDConstPro.Location = new System.Drawing.Point(895, 458);
+            this.numUDConstPro.Name = "numUDConstPro";
+            this.numUDConstPro.ReadOnly = true;
+            this.numUDConstPro.Size = new System.Drawing.Size(130, 20);
+            this.numUDConstPro.TabIndex = 36;
+            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
+            // 
+            // lblTotal03
+            // 
+            this.lblTotal03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblTotal03.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblTotal03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotal03.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotal03.Location = new System.Drawing.Point(638, 458);
+            this.lblTotal03.Name = "lblTotal03";
+            this.lblTotal03.Size = new System.Drawing.Size(130, 20);
+            this.lblTotal03.TabIndex = 33;
+            this.lblTotal03.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblTotal02
+            // 
+            this.lblTotal02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblTotal02.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblTotal02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotal02.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotal02.Location = new System.Drawing.Point(382, 458);
+            this.lblTotal02.Name = "lblTotal02";
+            this.lblTotal02.Size = new System.Drawing.Size(130, 20);
+            this.lblTotal02.TabIndex = 33;
+            this.lblTotal02.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblTotal01
+            // 
+            this.lblTotal01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblTotal01.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblTotal01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblTotal01.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblTotal01.Location = new System.Drawing.Point(126, 458);
+            this.lblTotal01.Name = "lblTotal01";
+            this.lblTotal01.Size = new System.Drawing.Size(130, 20);
+            this.lblTotal01.TabIndex = 33;
+            this.lblTotal01.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblDepTotal04
+            // 
+            this.lblDepTotal04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDepTotal04.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblDepTotal04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDepTotal04.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDepTotal04.Location = new System.Drawing.Point(126, 482);
+            this.lblDepTotal04.Name = "lblDepTotal04";
+            this.lblDepTotal04.Size = new System.Drawing.Size(130, 20);
+            this.lblDepTotal04.TabIndex = 33;
+            this.lblDepTotal04.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblDepTotal03
+            // 
+            this.lblDepTotal03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDepTotal03.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblDepTotal03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDepTotal03.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDepTotal03.Location = new System.Drawing.Point(638, 506);
+            this.lblDepTotal03.Name = "lblDepTotal03";
+            this.lblDepTotal03.Size = new System.Drawing.Size(130, 20);
+            this.lblDepTotal03.TabIndex = 33;
+            this.lblDepTotal03.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblDepTotal02
+            // 
+            this.lblDepTotal02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDepTotal02.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblDepTotal02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDepTotal02.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDepTotal02.Location = new System.Drawing.Point(382, 506);
+            this.lblDepTotal02.Name = "lblDepTotal02";
+            this.lblDepTotal02.Size = new System.Drawing.Size(130, 20);
+            this.lblDepTotal02.TabIndex = 33;
+            this.lblDepTotal02.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label30
+            // 
+            this.label30.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.label30.BackColor = System.Drawing.Color.Yellow;
+            this.label30.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label30.Location = new System.Drawing.Point(518, 458);
+            this.label30.Name = "label30";
+            this.label30.Size = new System.Drawing.Size(120, 20);
+            this.label30.TabIndex = 33;
+            this.label30.Text = "総合計金額";
+            this.label30.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDepTotal01
+            // 
+            this.lblDepTotal01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDepTotal01.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblDepTotal01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDepTotal01.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDepTotal01.Location = new System.Drawing.Point(126, 506);
+            this.lblDepTotal01.Name = "lblDepTotal01";
+            this.lblDepTotal01.Size = new System.Drawing.Size(130, 20);
+            this.lblDepTotal01.TabIndex = 33;
+            this.lblDepTotal01.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // label28
+            // 
+            this.label28.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.label28.BackColor = System.Drawing.Color.Yellow;
+            this.label28.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label28.Location = new System.Drawing.Point(262, 458);
+            this.label28.Name = "label28";
+            this.label28.Size = new System.Drawing.Size(120, 20);
+            this.label28.TabIndex = 33;
+            this.label28.Text = "総施工金額";
+            this.label28.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblPeriod
+            // 
+            this.lblPeriod.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblPeriod.BackColor = System.Drawing.Color.Gold;
+            this.lblPeriod.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblPeriod.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblPeriod.ForeColor = System.Drawing.Color.Black;
+            this.lblPeriod.Location = new System.Drawing.Point(775, 458);
+            this.lblPeriod.Name = "lblPeriod";
+            this.lblPeriod.Size = new System.Drawing.Size(120, 20);
+            this.lblPeriod.TabIndex = 33;
+            this.lblPeriod.Text = "集計期数";
+            this.lblPeriod.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDep04
+            // 
+            this.lblDep04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDep04.BackColor = System.Drawing.Color.Aqua;
+            this.lblDep04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDep04.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDep04.Location = new System.Drawing.Point(6, 482);
+            this.lblDep04.Name = "lblDep04";
+            this.lblDep04.Size = new System.Drawing.Size(120, 20);
+            this.lblDep04.TabIndex = 33;
+            this.lblDep04.Text = "営業部";
+            this.lblDep04.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label23
+            // 
+            this.label23.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.label23.BackColor = System.Drawing.Color.Yellow;
+            this.label23.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label23.Font = new System.Drawing.Font("ＭＳ 明朝", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label23.Location = new System.Drawing.Point(6, 458);
+            this.label23.Name = "label23";
+            this.label23.Size = new System.Drawing.Size(120, 20);
+            this.label23.TabIndex = 33;
+            this.label23.Text = "部署未定受注金額";
+            this.label23.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDep03
+            // 
+            this.lblDep03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDep03.BackColor = System.Drawing.Color.Aqua;
+            this.lblDep03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDep03.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDep03.Location = new System.Drawing.Point(518, 506);
+            this.lblDep03.Name = "lblDep03";
+            this.lblDep03.Size = new System.Drawing.Size(120, 20);
+            this.lblDep03.TabIndex = 33;
+            this.lblDep03.Text = "営繕部";
+            this.lblDep03.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDep02
+            // 
+            this.lblDep02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDep02.BackColor = System.Drawing.Color.Aqua;
+            this.lblDep02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDep02.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDep02.Location = new System.Drawing.Point(262, 506);
+            this.lblDep02.Name = "lblDep02";
+            this.lblDep02.Size = new System.Drawing.Size(120, 20);
+            this.lblDep02.TabIndex = 33;
+            this.lblDep02.Text = "工事部";
+            this.lblDep02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblDep01
+            // 
+            this.lblDep01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDep01.BackColor = System.Drawing.Color.Aqua;
+            this.lblDep01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblDep01.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDep01.Location = new System.Drawing.Point(6, 506);
+            this.lblDep01.Name = "lblDep01";
+            this.lblDep01.Size = new System.Drawing.Size(120, 20);
+            this.lblDep01.TabIndex = 33;
+            this.lblDep01.Text = "山本組";
+            this.lblDep01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // ProgressConstructionProjects
+            // 
+            this.ProgressConstructionProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.ProgressConstructionProjects.Location = new System.Drawing.Point(853, 4);
+            this.ProgressConstructionProjects.Name = "ProgressConstructionProjects";
+            this.ProgressConstructionProjects.Size = new System.Drawing.Size(333, 22);
+            this.ProgressConstructionProjects.TabIndex = 32;
+            this.ProgressConstructionProjects.Visible = false;
+            // 
+            // btnReloadConstructionProjects
+            // 
+            this.btnReloadConstructionProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReloadConstructionProjects.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReloadConstructionProjects.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReloadConstructionProjects.Location = new System.Drawing.Point(1066, 506);
+            this.btnReloadConstructionProjects.Name = "btnReloadConstructionProjects";
+            this.btnReloadConstructionProjects.Size = new System.Drawing.Size(120, 26);
+            this.btnReloadConstructionProjects.TabIndex = 31;
+            this.btnReloadConstructionProjects.TabStop = false;
+            this.btnReloadConstructionProjects.Text = "最新の状態へ";
+            this.btnReloadConstructionProjects.UseVisualStyleBackColor = false;
+            this.btnReloadConstructionProjects.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // label12
+            // 
+            this.label12.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label12.BackColor = System.Drawing.Color.Cyan;
+            this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label12.ForeColor = System.Drawing.Color.Black;
+            this.label12.Location = new System.Drawing.Point(346, 5);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(500, 20);
+            this.label12.TabIndex = 30;
+            this.label12.Text = "受　　注　　状　　況　　一　　覧";
+            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage8
+            // 
+            this.tabPage8.BackColor = System.Drawing.Color.Black;
+            this.tabPage8.Controls.Add(this.btnDataCopyF);
+            this.tabPage8.Controls.Add(this.btnReloadFluctuationProjects);
+            this.tabPage8.Controls.Add(this.ProgressFluctuationProjects);
+            this.tabPage8.Controls.Add(this.label59);
+            this.tabPage8.Controls.Add(this.dgvFluctuationProjects);
+            this.tabPage8.Location = new System.Drawing.Point(4, 30);
+            this.tabPage8.Name = "tabPage8";
+            this.tabPage8.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage8.TabIndex = 22;
+            this.tabPage8.Text = "増減工事";
+            // 
+            // btnDataCopyF
+            // 
+            this.btnDataCopyF.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataCopyF.BackColor = System.Drawing.Color.DarkOrange;
+            this.btnDataCopyF.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataCopyF.ForeColor = System.Drawing.Color.Black;
+            this.btnDataCopyF.Location = new System.Drawing.Point(801, 501);
+            this.btnDataCopyF.Name = "btnDataCopyF";
+            this.btnDataCopyF.Size = new System.Drawing.Size(260, 30);
+            this.btnDataCopyF.TabIndex = 43;
+            this.btnDataCopyF.Text = "既存工事からコピー登録";
+            this.btnDataCopyF.UseVisualStyleBackColor = false;
+            this.btnDataCopyF.Click += new System.EventHandler(this.btnDataCopy_Click);
+            // 
+            // btnReloadFluctuationProjects
+            // 
+            this.btnReloadFluctuationProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReloadFluctuationProjects.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReloadFluctuationProjects.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReloadFluctuationProjects.Location = new System.Drawing.Point(1066, 501);
+            this.btnReloadFluctuationProjects.Name = "btnReloadFluctuationProjects";
+            this.btnReloadFluctuationProjects.Size = new System.Drawing.Size(120, 30);
+            this.btnReloadFluctuationProjects.TabIndex = 42;
+            this.btnReloadFluctuationProjects.TabStop = false;
+            this.btnReloadFluctuationProjects.Text = "最新の状態へ";
+            this.btnReloadFluctuationProjects.UseVisualStyleBackColor = false;
+            this.btnReloadFluctuationProjects.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // ProgressFluctuationProjects
+            // 
+            this.ProgressFluctuationProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressFluctuationProjects.Location = new System.Drawing.Point(6, 501);
+            this.ProgressFluctuationProjects.Name = "ProgressFluctuationProjects";
+            this.ProgressFluctuationProjects.Size = new System.Drawing.Size(388, 30);
+            this.ProgressFluctuationProjects.TabIndex = 41;
+            this.ProgressFluctuationProjects.Visible = false;
+            // 
+            // label59
+            // 
+            this.label59.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label59.BackColor = System.Drawing.Color.DarkCyan;
+            this.label59.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label59.ForeColor = System.Drawing.Color.Black;
+            this.label59.Location = new System.Drawing.Point(346, 5);
+            this.label59.Name = "label59";
+            this.label59.Size = new System.Drawing.Size(500, 20);
+            this.label59.TabIndex = 40;
+            this.label59.Text = "増　減　工　事　状　況　一　覧";
+            this.label59.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage9
+            // 
+            this.tabPage9.BackColor = System.Drawing.Color.Black;
+            this.tabPage9.Controls.Add(this.label39);
+            this.tabPage9.Controls.Add(this.numUDNonOrder);
+            this.tabPage9.Controls.Add(this.label40);
+            this.tabPage9.Controls.Add(this.label41);
+            this.tabPage9.Controls.Add(this.btnDataCopyD);
+            this.tabPage9.Controls.Add(this.ProgressNonOrders);
+            this.tabPage9.Controls.Add(this.btnReloadNonOrders);
+            this.tabPage9.Controls.Add(this.label13);
+            this.tabPage9.Controls.Add(this.dgvNonOrders);
+            this.tabPage9.Location = new System.Drawing.Point(4, 30);
+            this.tabPage9.Name = "tabPage9";
+            this.tabPage9.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage9.TabIndex = 12;
+            this.tabPage9.Text = "非受注工事";
+            // 
+            // label39
+            // 
+            this.label39.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label39.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label39.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label39.ForeColor = System.Drawing.Color.Black;
+            this.label39.Location = new System.Drawing.Point(6, 5);
+            this.label39.Name = "label39";
+            this.label39.Size = new System.Drawing.Size(120, 20);
+            this.label39.TabIndex = 69;
+            this.label39.Text = "営業期";
+            this.label39.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDNonOrder
+            // 
+            this.numUDNonOrder.BackColor = System.Drawing.Color.White;
+            this.numUDNonOrder.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDNonOrder.ForeColor = System.Drawing.Color.Black;
+            this.numUDNonOrder.Location = new System.Drawing.Point(159, 4);
+            this.numUDNonOrder.Name = "numUDNonOrder";
+            this.numUDNonOrder.ReadOnly = true;
+            this.numUDNonOrder.Size = new System.Drawing.Size(80, 23);
+            this.numUDNonOrder.TabIndex = 66;
+            this.numUDNonOrder.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDNonOrder.ValueChanged += new System.EventHandler(this.numUDNonOrder_ValueChanged);
+            // 
+            // label40
+            // 
+            this.label40.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label40.ForeColor = System.Drawing.Color.White;
+            this.label40.Location = new System.Drawing.Point(239, 7);
+            this.label40.Name = "label40";
+            this.label40.Size = new System.Drawing.Size(25, 16);
+            this.label40.TabIndex = 67;
+            this.label40.Text = "期";
+            this.label40.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label41
+            // 
+            this.label41.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label41.ForeColor = System.Drawing.Color.White;
+            this.label41.Location = new System.Drawing.Point(134, 7);
+            this.label41.Name = "label41";
+            this.label41.Size = new System.Drawing.Size(25, 16);
+            this.label41.TabIndex = 68;
+            this.label41.Text = "第";
+            this.label41.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnDataCopyD
+            // 
+            this.btnDataCopyD.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataCopyD.BackColor = System.Drawing.Color.DarkOrange;
+            this.btnDataCopyD.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataCopyD.ForeColor = System.Drawing.Color.Black;
+            this.btnDataCopyD.Location = new System.Drawing.Point(801, 501);
+            this.btnDataCopyD.Name = "btnDataCopyD";
+            this.btnDataCopyD.Size = new System.Drawing.Size(260, 30);
+            this.btnDataCopyD.TabIndex = 42;
+            this.btnDataCopyD.Text = "既存工事からコピー登録";
+            this.btnDataCopyD.UseVisualStyleBackColor = false;
+            this.btnDataCopyD.Click += new System.EventHandler(this.btnDataCopy_Click);
+            // 
+            // ProgressNonOrders
+            // 
+            this.ProgressNonOrders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressNonOrders.Location = new System.Drawing.Point(6, 501);
+            this.ProgressNonOrders.Name = "ProgressNonOrders";
+            this.ProgressNonOrders.Size = new System.Drawing.Size(388, 30);
+            this.ProgressNonOrders.TabIndex = 40;
+            this.ProgressNonOrders.Visible = false;
+            // 
+            // btnReloadNonOrders
+            // 
+            this.btnReloadNonOrders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReloadNonOrders.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReloadNonOrders.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReloadNonOrders.Location = new System.Drawing.Point(1066, 501);
+            this.btnReloadNonOrders.Name = "btnReloadNonOrders";
+            this.btnReloadNonOrders.Size = new System.Drawing.Size(120, 30);
+            this.btnReloadNonOrders.TabIndex = 39;
+            this.btnReloadNonOrders.TabStop = false;
+            this.btnReloadNonOrders.Text = "最新の状態へ";
+            this.btnReloadNonOrders.UseVisualStyleBackColor = false;
+            this.btnReloadNonOrders.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // label13
+            // 
+            this.label13.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label13.BackColor = System.Drawing.Color.Red;
+            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label13.ForeColor = System.Drawing.Color.Black;
+            this.label13.Location = new System.Drawing.Point(346, 5);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(500, 20);
+            this.label13.TabIndex = 38;
+            this.label13.Text = "ボ　　ツ　　案　　件　　状　　況　　一　　覧";
+            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage10
+            // 
+            this.tabPage10.BackColor = System.Drawing.Color.Black;
+            this.tabPage10.Controls.Add(this.lblCompTotal04);
+            this.tabPage10.Controls.Add(this.lblCompTitle04);
+            this.tabPage10.Controls.Add(this.lblCompTotal03);
+            this.tabPage10.Controls.Add(this.lblCompTitle03);
+            this.tabPage10.Controls.Add(this.lblCompTotal02);
+            this.tabPage10.Controls.Add(this.lblCompTotal01);
+            this.tabPage10.Controls.Add(this.lblCompTitle02);
+            this.tabPage10.Controls.Add(this.lblCompTitle01);
+            this.tabPage10.Controls.Add(this.label9);
+            this.tabPage10.Controls.Add(this.numUDCompletion);
+            this.tabPage10.Controls.Add(this.label10);
+            this.tabPage10.Controls.Add(this.label17);
+            this.tabPage10.Controls.Add(this.ProgressCompletionOfConstruction);
+            this.tabPage10.Controls.Add(this.btnReloadCompletionOfConstruction);
+            this.tabPage10.Controls.Add(this.label14);
+            this.tabPage10.Controls.Add(this.dgvCompletionOfConstruction);
+            this.tabPage10.Location = new System.Drawing.Point(4, 30);
+            this.tabPage10.Name = "tabPage10";
+            this.tabPage10.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage10.TabIndex = 13;
+            this.tabPage10.Text = "完了工事";
+            // 
+            // lblCompTotal04
+            // 
+            this.lblCompTotal04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTotal04.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblCompTotal04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTotal04.Location = new System.Drawing.Point(642, 504);
+            this.lblCompTotal04.Name = "lblCompTotal04";
+            this.lblCompTotal04.Size = new System.Drawing.Size(130, 25);
+            this.lblCompTotal04.TabIndex = 76;
+            this.lblCompTotal04.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.lblCompTotal04.Visible = false;
+            // 
+            // lblCompTitle04
+            // 
+            this.lblCompTitle04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTitle04.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.lblCompTitle04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTitle04.Location = new System.Drawing.Point(522, 504);
+            this.lblCompTitle04.Name = "lblCompTitle04";
+            this.lblCompTitle04.Size = new System.Drawing.Size(120, 25);
+            this.lblCompTitle04.TabIndex = 77;
+            this.lblCompTitle04.Text = "今期請求完了金額";
+            this.lblCompTitle04.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblCompTitle04.Visible = false;
+            // 
+            // lblCompTotal03
+            // 
+            this.lblCompTotal03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTotal03.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblCompTotal03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTotal03.Location = new System.Drawing.Point(384, 504);
+            this.lblCompTotal03.Name = "lblCompTotal03";
+            this.lblCompTotal03.Size = new System.Drawing.Size(130, 25);
+            this.lblCompTotal03.TabIndex = 74;
+            this.lblCompTotal03.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.lblCompTotal03.Visible = false;
+            // 
+            // lblCompTitle03
+            // 
+            this.lblCompTitle03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTitle03.BackColor = System.Drawing.Color.PaleGoldenrod;
+            this.lblCompTitle03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTitle03.Location = new System.Drawing.Point(264, 504);
+            this.lblCompTitle03.Name = "lblCompTitle03";
+            this.lblCompTitle03.Size = new System.Drawing.Size(120, 25);
+            this.lblCompTitle03.TabIndex = 75;
+            this.lblCompTitle03.Text = "今期請求準備金額";
+            this.lblCompTitle03.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblCompTitle03.Visible = false;
+            // 
+            // lblCompTotal02
+            // 
+            this.lblCompTotal02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTotal02.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblCompTotal02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTotal02.Location = new System.Drawing.Point(900, 504);
+            this.lblCompTotal02.Name = "lblCompTotal02";
+            this.lblCompTotal02.Size = new System.Drawing.Size(130, 25);
+            this.lblCompTotal02.TabIndex = 70;
+            this.lblCompTotal02.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.lblCompTotal02.Visible = false;
+            // 
+            // lblCompTotal01
+            // 
+            this.lblCompTotal01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTotal01.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+            this.lblCompTotal01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTotal01.Location = new System.Drawing.Point(126, 504);
+            this.lblCompTotal01.Name = "lblCompTotal01";
+            this.lblCompTotal01.Size = new System.Drawing.Size(130, 25);
+            this.lblCompTotal01.TabIndex = 71;
+            this.lblCompTotal01.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.lblCompTotal01.Visible = false;
+            // 
+            // lblCompTitle02
+            // 
+            this.lblCompTitle02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTitle02.BackColor = System.Drawing.Color.Yellow;
+            this.lblCompTitle02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTitle02.Location = new System.Drawing.Point(780, 504);
+            this.lblCompTitle02.Name = "lblCompTitle02";
+            this.lblCompTitle02.Size = new System.Drawing.Size(120, 25);
+            this.lblCompTitle02.TabIndex = 72;
+            this.lblCompTitle02.Text = "今期合計完了金額";
+            this.lblCompTitle02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblCompTitle02.Visible = false;
+            // 
+            // lblCompTitle01
+            // 
+            this.lblCompTitle01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblCompTitle01.BackColor = System.Drawing.Color.Ivory;
+            this.lblCompTitle01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.lblCompTitle01.Location = new System.Drawing.Point(6, 504);
+            this.lblCompTitle01.Name = "lblCompTitle01";
+            this.lblCompTitle01.Size = new System.Drawing.Size(120, 25);
+            this.lblCompTitle01.TabIndex = 73;
+            this.lblCompTitle01.Text = "前期完了金額";
+            this.lblCompTitle01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            this.lblCompTitle01.Visible = false;
+            // 
+            // label9
+            // 
+            this.label9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label9.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label9.ForeColor = System.Drawing.Color.Black;
+            this.label9.Location = new System.Drawing.Point(6, 5);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(120, 20);
+            this.label9.TabIndex = 65;
+            this.label9.Text = "営業期";
+            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // numUDCompletion
+            // 
+            this.numUDCompletion.BackColor = System.Drawing.Color.White;
+            this.numUDCompletion.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.numUDCompletion.ForeColor = System.Drawing.Color.Black;
+            this.numUDCompletion.Location = new System.Drawing.Point(159, 4);
+            this.numUDCompletion.Name = "numUDCompletion";
+            this.numUDCompletion.ReadOnly = true;
+            this.numUDCompletion.Size = new System.Drawing.Size(80, 23);
+            this.numUDCompletion.TabIndex = 62;
+            this.numUDCompletion.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.numUDCompletion.ValueChanged += new System.EventHandler(this.numUDCompletion_ValueChanged);
+            // 
+            // label10
+            // 
+            this.label10.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label10.ForeColor = System.Drawing.Color.White;
+            this.label10.Location = new System.Drawing.Point(239, 7);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(25, 16);
+            this.label10.TabIndex = 63;
+            this.label10.Text = "期";
+            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label17
+            // 
+            this.label17.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label17.ForeColor = System.Drawing.Color.White;
+            this.label17.Location = new System.Drawing.Point(134, 7);
+            this.label17.Name = "label17";
+            this.label17.Size = new System.Drawing.Size(25, 16);
+            this.label17.TabIndex = 64;
+            this.label17.Text = "第";
+            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // ProgressCompletionOfConstruction
+            // 
+            this.ProgressCompletionOfConstruction.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.ProgressCompletionOfConstruction.Location = new System.Drawing.Point(853, 4);
+            this.ProgressCompletionOfConstruction.Name = "ProgressCompletionOfConstruction";
+            this.ProgressCompletionOfConstruction.Size = new System.Drawing.Size(333, 22);
+            this.ProgressCompletionOfConstruction.TabIndex = 44;
+            this.ProgressCompletionOfConstruction.Visible = false;
+            // 
+            // btnReloadCompletionOfConstruction
+            // 
+            this.btnReloadCompletionOfConstruction.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReloadCompletionOfConstruction.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReloadCompletionOfConstruction.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReloadCompletionOfConstruction.Location = new System.Drawing.Point(1066, 501);
+            this.btnReloadCompletionOfConstruction.Name = "btnReloadCompletionOfConstruction";
+            this.btnReloadCompletionOfConstruction.Size = new System.Drawing.Size(120, 30);
+            this.btnReloadCompletionOfConstruction.TabIndex = 43;
+            this.btnReloadCompletionOfConstruction.TabStop = false;
+            this.btnReloadCompletionOfConstruction.Text = "最新の状態へ";
+            this.btnReloadCompletionOfConstruction.UseVisualStyleBackColor = false;
+            this.btnReloadCompletionOfConstruction.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // label14
+            // 
+            this.label14.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label14.BackColor = System.Drawing.Color.Lime;
+            this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label14.ForeColor = System.Drawing.Color.Black;
+            this.label14.Location = new System.Drawing.Point(346, 5);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(500, 20);
+            this.label14.TabIndex = 42;
+            this.label14.Text = "完　　了　　工　　事　　状　　況　　一　　覧";
+            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage11
+            // 
+            this.tabPage11.BackColor = System.Drawing.Color.Black;
+            this.tabPage11.Controls.Add(this.dgvActionSchedule);
+            this.tabPage11.Controls.Add(this.btnDispRight);
+            this.tabPage11.Controls.Add(this.btnDispLeft);
+            this.tabPage11.Controls.Add(this.btnVehicleSchdule);
+            this.tabPage11.Controls.Add(this.btnActionSchdule);
+            this.tabPage11.Controls.Add(this.btnReLoadActionSchedule);
+            this.tabPage11.Controls.Add(this.label20);
+            this.tabPage11.Location = new System.Drawing.Point(4, 30);
+            this.tabPage11.Name = "tabPage11";
+            this.tabPage11.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage11.TabIndex = 8;
+            this.tabPage11.Text = "行動一覧";
+            // 
+            // btnDispRight
+            // 
+            this.btnDispRight.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispRight.Location = new System.Drawing.Point(1146, 5);
+            this.btnDispRight.Name = "btnDispRight";
+            this.btnDispRight.Size = new System.Drawing.Size(40, 20);
+            this.btnDispRight.TabIndex = 52;
+            this.btnDispRight.Text = ">>";
+            this.btnDispRight.UseVisualStyleBackColor = true;
+            this.btnDispRight.Visible = false;
+            this.btnDispRight.Click += new System.EventHandler(this.btnDispRight_Click);
+            // 
+            // btnDispLeft
+            // 
+            this.btnDispLeft.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDispLeft.Location = new System.Drawing.Point(6, 5);
+            this.btnDispLeft.Name = "btnDispLeft";
+            this.btnDispLeft.Size = new System.Drawing.Size(40, 20);
+            this.btnDispLeft.TabIndex = 51;
+            this.btnDispLeft.Text = "<<";
+            this.btnDispLeft.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+            this.btnDispLeft.UseVisualStyleBackColor = true;
+            this.btnDispLeft.Visible = false;
+            this.btnDispLeft.Click += new System.EventHandler(this.btnDispLeft_Click);
+            // 
+            // btnVehicleSchdule
+            // 
+            this.btnVehicleSchdule.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnVehicleSchdule.BackColor = System.Drawing.Color.Green;
+            this.btnVehicleSchdule.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnVehicleSchdule.ForeColor = System.Drawing.Color.White;
+            this.btnVehicleSchdule.Location = new System.Drawing.Point(132, 501);
+            this.btnVehicleSchdule.Name = "btnVehicleSchdule";
+            this.btnVehicleSchdule.Size = new System.Drawing.Size(120, 30);
+            this.btnVehicleSchdule.TabIndex = 50;
+            this.btnVehicleSchdule.TabStop = false;
+            this.btnVehicleSchdule.Text = "車両予約入力";
+            this.btnVehicleSchdule.UseVisualStyleBackColor = false;
+            this.btnVehicleSchdule.Click += new System.EventHandler(this.btnVehicleSchdule_Click);
+            // 
+            // btnActionSchdule
+            // 
+            this.btnActionSchdule.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnActionSchdule.BackColor = System.Drawing.Color.Green;
+            this.btnActionSchdule.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnActionSchdule.ForeColor = System.Drawing.Color.White;
+            this.btnActionSchdule.Location = new System.Drawing.Point(6, 501);
+            this.btnActionSchdule.Name = "btnActionSchdule";
+            this.btnActionSchdule.Size = new System.Drawing.Size(120, 30);
+            this.btnActionSchdule.TabIndex = 50;
+            this.btnActionSchdule.TabStop = false;
+            this.btnActionSchdule.Text = "行動予定入力";
+            this.btnActionSchdule.UseVisualStyleBackColor = false;
+            this.btnActionSchdule.Click += new System.EventHandler(this.btnActionSchdule_Click);
+            // 
+            // btnReLoadActionSchedule
+            // 
+            this.btnReLoadActionSchedule.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadActionSchedule.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadActionSchedule.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadActionSchedule.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadActionSchedule.Name = "btnReLoadActionSchedule";
+            this.btnReLoadActionSchedule.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadActionSchedule.TabIndex = 50;
+            this.btnReLoadActionSchedule.TabStop = false;
+            this.btnReLoadActionSchedule.Text = "最新の状態へ";
+            this.btnReLoadActionSchedule.UseVisualStyleBackColor = false;
+            this.btnReLoadActionSchedule.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // label20
+            // 
+            this.label20.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label20.BackColor = System.Drawing.Color.White;
+            this.label20.ForeColor = System.Drawing.Color.Black;
+            this.label20.Location = new System.Drawing.Point(346, 5);
+            this.label20.Name = "label20";
+            this.label20.Size = new System.Drawing.Size(500, 20);
+            this.label20.TabIndex = 47;
+            this.label20.Text = "行　　動　　予　　定　　一　　覧";
+            this.label20.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage12
+            // 
+            this.tabPage12.AutoScroll = true;
+            this.tabPage12.BackColor = System.Drawing.Color.Black;
+            this.tabPage12.Controls.Add(this.progBarStaffAssignment);
+            this.tabPage12.Controls.Add(this.btnReLoadStaffAssignment);
+            this.tabPage12.Controls.Add(this.label15);
+            this.tabPage12.Controls.Add(this.dgvStaffAssignment);
+            this.tabPage12.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.tabPage12.Location = new System.Drawing.Point(4, 30);
+            this.tabPage12.Name = "tabPage12";
+            this.tabPage12.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage12.TabIndex = 9;
+            this.tabPage12.Text = "人員配置";
+            // 
+            // progBarStaffAssignment
+            // 
+            this.progBarStaffAssignment.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.progBarStaffAssignment.Location = new System.Drawing.Point(6, 501);
+            this.progBarStaffAssignment.Name = "progBarStaffAssignment";
+            this.progBarStaffAssignment.Size = new System.Drawing.Size(388, 30);
+            this.progBarStaffAssignment.TabIndex = 53;
+            this.progBarStaffAssignment.Visible = false;
+            // 
+            // btnReLoadStaffAssignment
+            // 
+            this.btnReLoadStaffAssignment.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadStaffAssignment.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadStaffAssignment.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadStaffAssignment.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadStaffAssignment.Name = "btnReLoadStaffAssignment";
+            this.btnReLoadStaffAssignment.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadStaffAssignment.TabIndex = 51;
+            this.btnReLoadStaffAssignment.TabStop = false;
+            this.btnReLoadStaffAssignment.Text = "最新の状態へ";
+            this.btnReLoadStaffAssignment.UseVisualStyleBackColor = false;
+            this.btnReLoadStaffAssignment.Click += new System.EventHandler(this.btnReLoad_Click);
+            // 
+            // label15
+            // 
+            this.label15.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label15.BackColor = System.Drawing.Color.White;
+            this.label15.ForeColor = System.Drawing.Color.Black;
+            this.label15.Location = new System.Drawing.Point(346, 5);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(500, 20);
+            this.label15.TabIndex = 48;
+            this.label15.Text = "人　　員　　配　　置　　一　　覧";
+            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage13
+            // 
+            this.tabPage13.BackColor = System.Drawing.Color.Black;
+            this.tabPage13.Controls.Add(this.label36);
+            this.tabPage13.Controls.Add(this.SalseGraphNum);
+            this.tabPage13.Controls.Add(this.label37);
+            this.tabPage13.Controls.Add(this.label38);
+            this.tabPage13.Controls.Add(this.lblSalesGraphUpdate);
+            this.tabPage13.Controls.Add(this.chartSalesGraph);
+            this.tabPage13.Controls.Add(this.label24);
+            this.tabPage13.Controls.Add(this.progBarSalesGraph);
+            this.tabPage13.Controls.Add(this.btnReLoadSalesGraph);
+            this.tabPage13.ForeColor = System.Drawing.Color.Black;
+            this.tabPage13.Location = new System.Drawing.Point(4, 30);
+            this.tabPage13.Name = "tabPage13";
+            this.tabPage13.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage13.TabIndex = 10;
+            this.tabPage13.Text = "売上グラフ";
+            // 
+            // label36
+            // 
+            this.label36.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
+            this.label36.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.label36.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label36.ForeColor = System.Drawing.Color.Black;
+            this.label36.Location = new System.Drawing.Point(6, 3);
+            this.label36.Name = "label36";
+            this.label36.Size = new System.Drawing.Size(120, 25);
+            this.label36.TabIndex = 61;
+            this.label36.Text = "営業期";
+            this.label36.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // SalseGraphNum
+            // 
+            this.SalseGraphNum.BackColor = System.Drawing.Color.White;
+            this.SalseGraphNum.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.SalseGraphNum.ForeColor = System.Drawing.Color.Black;
+            this.SalseGraphNum.Location = new System.Drawing.Point(159, 4);
+            this.SalseGraphNum.Name = "SalseGraphNum";
+            this.SalseGraphNum.ReadOnly = true;
+            this.SalseGraphNum.Size = new System.Drawing.Size(80, 23);
+            this.SalseGraphNum.TabIndex = 0;
+            this.SalseGraphNum.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+            this.SalseGraphNum.ValueChanged += new System.EventHandler(this.SalseGraphNum_ValueChanged);
+            // 
+            // label37
+            // 
+            this.label37.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label37.ForeColor = System.Drawing.Color.White;
+            this.label37.Location = new System.Drawing.Point(239, 7);
+            this.label37.Name = "label37";
+            this.label37.Size = new System.Drawing.Size(25, 16);
+            this.label37.TabIndex = 58;
+            this.label37.Text = "期";
+            this.label37.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label38
+            // 
+            this.label38.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label38.ForeColor = System.Drawing.Color.White;
+            this.label38.Location = new System.Drawing.Point(134, 7);
+            this.label38.Name = "label38";
+            this.label38.Size = new System.Drawing.Size(25, 16);
+            this.label38.TabIndex = 59;
+            this.label38.Text = "第";
+            this.label38.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblSalesGraphUpdate
+            // 
+            this.lblSalesGraphUpdate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblSalesGraphUpdate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblSalesGraphUpdate.ForeColor = System.Drawing.Color.White;
+            this.lblSalesGraphUpdate.Location = new System.Drawing.Point(886, 11);
+            this.lblSalesGraphUpdate.Name = "lblSalesGraphUpdate";
+            this.lblSalesGraphUpdate.Size = new System.Drawing.Size(300, 16);
+            this.lblSalesGraphUpdate.TabIndex = 57;
+            this.lblSalesGraphUpdate.Text = "label25";
+            this.lblSalesGraphUpdate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // chartSalesGraph
+            // 
+            this.chartSalesGraph.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)));
+            chartArea1.Name = "ChartArea1";
+            this.chartSalesGraph.ChartAreas.Add(chartArea1);
+            legend1.Name = "Legend1";
+            this.chartSalesGraph.Legends.Add(legend1);
+            this.chartSalesGraph.Location = new System.Drawing.Point(6, 29);
+            this.chartSalesGraph.Name = "chartSalesGraph";
+            series1.ChartArea = "ChartArea1";
+            series1.Color = System.Drawing.Color.Lime;
+            series1.Legend = "Legend1";
+            series1.Name = "売上";
+            series2.ChartArea = "ChartArea1";
+            series2.Color = System.Drawing.Color.Yellow;
+            series2.Legend = "Legend1";
+            series2.Name = "販管・部署経費";
+            series3.ChartArea = "ChartArea1";
+            series3.Color = System.Drawing.Color.Cyan;
+            series3.Legend = "Legend1";
+            series3.Name = "粗利益";
+            series4.ChartArea = "ChartArea1";
+            series4.Color = System.Drawing.Color.Blue;
+            series4.Legend = "Legend1";
+            series4.Name = "純利益(損益)";
+            this.chartSalesGraph.Series.Add(series1);
+            this.chartSalesGraph.Series.Add(series2);
+            this.chartSalesGraph.Series.Add(series3);
+            this.chartSalesGraph.Series.Add(series4);
+            this.chartSalesGraph.Size = new System.Drawing.Size(1180, 468);
+            this.chartSalesGraph.TabIndex = 0;
+            this.chartSalesGraph.Text = "売上グラフ";
+            // 
+            // label24
+            // 
+            this.label24.Anchor = System.Windows.Forms.AnchorStyles.Top;
+            this.label24.BackColor = System.Drawing.Color.White;
+            this.label24.ForeColor = System.Drawing.Color.Black;
+            this.label24.Location = new System.Drawing.Point(346, 5);
+            this.label24.Name = "label24";
+            this.label24.Size = new System.Drawing.Size(500, 20);
+            this.label24.TabIndex = 56;
+            this.label24.Text = "売　　上　　グ　　ラ　　フ";
+            this.label24.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // progBarSalesGraph
+            // 
+            this.progBarSalesGraph.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.progBarSalesGraph.Location = new System.Drawing.Point(6, 501);
+            this.progBarSalesGraph.Name = "progBarSalesGraph";
+            this.progBarSalesGraph.Size = new System.Drawing.Size(388, 30);
+            this.progBarSalesGraph.TabIndex = 55;
+            this.progBarSalesGraph.Visible = false;
+            // 
+            // btnReLoadSalesGraph
+            // 
+            this.btnReLoadSalesGraph.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnReLoadSalesGraph.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnReLoadSalesGraph.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnReLoadSalesGraph.Location = new System.Drawing.Point(1066, 501);
+            this.btnReLoadSalesGraph.Name = "btnReLoadSalesGraph";
+            this.btnReLoadSalesGraph.Size = new System.Drawing.Size(120, 30);
+            this.btnReLoadSalesGraph.TabIndex = 54;
+            this.btnReLoadSalesGraph.TabStop = false;
+            this.btnReLoadSalesGraph.Text = "最新の状態へ";
+            this.btnReLoadSalesGraph.UseVisualStyleBackColor = false;
+            this.btnReLoadSalesGraph.Click += new System.EventHandler(this.btnReLoadSalesGraph_Click);
+            // 
+            // tabPage14
+            // 
+            this.tabPage14.BackColor = System.Drawing.Color.RoyalBlue;
+            this.tabPage14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.tabPage14.Controls.Add(this.tblLayoutOrder);
+            this.tabPage14.Location = new System.Drawing.Point(4, 30);
+            this.tabPage14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.tabPage14.Name = "tabPage14";
+            this.tabPage14.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.tabPage14.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage14.TabIndex = 0;
+            this.tabPage14.Text = "受注管理";
+            // 
+            // tblLayoutOrder
+            // 
+            this.tblLayoutOrder.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tblLayoutOrder.ColumnCount = 5;
+            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
+            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
+            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0000, 0, 0);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0001, 2, 0);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0100, 0, 2);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0200, 0, 4);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0300, 0, 6);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0400, 0, 8);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0401, 2, 8);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0301, 2, 6);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0201, 2, 4);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0101, 2, 2);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0002, 4, 0);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0102, 4, 2);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0202, 4, 4);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0302, 4, 6);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0402, 4, 8);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0500, 0, 10);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0501, 2, 10);
+            this.tblLayoutOrder.Controls.Add(this.btnOrder0502, 4, 10);
+            this.tblLayoutOrder.Controls.Add(this.label1, 0, 1);
+            this.tblLayoutOrder.Controls.Add(this.lblArrpw1_04, 1, 4);
+            this.tblLayoutOrder.Controls.Add(this.label2, 0, 3);
+            this.tblLayoutOrder.Controls.Add(this.lblArrpw1_02, 1, 2);
+            this.tblLayoutOrder.Controls.Add(this.label3, 3, 2);
+            this.tblLayoutOrder.Location = new System.Drawing.Point(54, 16);
+            this.tblLayoutOrder.Name = "tblLayoutOrder";
+            this.tblLayoutOrder.RowCount = 11;
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutOrder.Size = new System.Drawing.Size(1080, 484);
+            this.tblLayoutOrder.TabIndex = 10;
+            // 
+            // btnOrder0000
+            // 
+            this.btnOrder0000.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.btnOrder0000.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0000.Location = new System.Drawing.Point(4, 3);
+            this.btnOrder0000.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0000.Name = "btnOrder0000";
+            this.btnOrder0000.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0000.TabIndex = 0;
+            this.btnOrder0000.Text = "工事情報入力";
+            this.btnOrder0000.UseVisualStyleBackColor = true;
+            this.btnOrder0000.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0001
+            // 
+            this.btnOrder0001.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.btnOrder0001.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0001.Location = new System.Drawing.Point(382, 3);
+            this.btnOrder0001.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0001.Name = "btnOrder0001";
+            this.btnOrder0001.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0001.TabIndex = 6;
+            this.btnOrder0001.UseVisualStyleBackColor = true;
+            this.btnOrder0001.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0100
+            // 
+            this.btnOrder0100.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.btnOrder0100.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0100.Location = new System.Drawing.Point(4, 91);
+            this.btnOrder0100.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0100.Name = "btnOrder0100";
+            this.btnOrder0100.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0100.TabIndex = 1;
+            this.btnOrder0100.Text = "積算見積入力";
+            this.btnOrder0100.UseVisualStyleBackColor = true;
+            this.btnOrder0100.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0200
+            // 
+            this.btnOrder0200.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.btnOrder0200.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0200.Location = new System.Drawing.Point(4, 179);
+            this.btnOrder0200.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0200.Name = "btnOrder0200";
+            this.btnOrder0200.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0200.TabIndex = 2;
+            this.btnOrder0200.Text = "積算予算入力";
+            this.btnOrder0200.UseVisualStyleBackColor = true;
+            this.btnOrder0200.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0300
+            // 
+            this.btnOrder0300.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.btnOrder0300.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0300.Location = new System.Drawing.Point(4, 267);
+            this.btnOrder0300.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0300.Name = "btnOrder0300";
+            this.btnOrder0300.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0300.TabIndex = 3;
+            this.btnOrder0300.Text = "工事結合";
+            this.btnOrder0300.UseVisualStyleBackColor = true;
+            this.btnOrder0300.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0400
+            // 
+            this.btnOrder0400.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.btnOrder0400.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0400.Location = new System.Drawing.Point(4, 355);
+            this.btnOrder0400.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0400.Name = "btnOrder0400";
+            this.btnOrder0400.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0400.TabIndex = 4;
+            this.btnOrder0400.UseVisualStyleBackColor = true;
+            this.btnOrder0400.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0401
+            // 
+            this.btnOrder0401.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.btnOrder0401.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0401.Location = new System.Drawing.Point(382, 355);
+            this.btnOrder0401.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0401.Name = "btnOrder0401";
+            this.btnOrder0401.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0401.TabIndex = 10;
+            this.btnOrder0401.UseVisualStyleBackColor = true;
+            this.btnOrder0401.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0301
+            // 
+            this.btnOrder0301.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.btnOrder0301.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0301.Location = new System.Drawing.Point(382, 267);
+            this.btnOrder0301.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0301.Name = "btnOrder0301";
+            this.btnOrder0301.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0301.TabIndex = 9;
+            this.btnOrder0301.Text = "見積分割";
+            this.btnOrder0301.UseVisualStyleBackColor = true;
+            this.btnOrder0301.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0201
+            // 
+            this.btnOrder0201.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.btnOrder0201.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0201.Location = new System.Drawing.Point(382, 179);
+            this.btnOrder0201.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0201.Name = "btnOrder0201";
+            this.btnOrder0201.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0201.TabIndex = 8;
+            this.btnOrder0201.Text = "積算予算書承認";
+            this.btnOrder0201.UseVisualStyleBackColor = true;
+            this.btnOrder0201.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0101
+            // 
+            this.btnOrder0101.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.btnOrder0101.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0101.Location = new System.Drawing.Point(382, 91);
+            this.btnOrder0101.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0101.Name = "btnOrder0101";
+            this.btnOrder0101.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0101.TabIndex = 7;
+            this.btnOrder0101.Text = "積算見積書承認";
+            this.btnOrder0101.UseVisualStyleBackColor = true;
+            this.btnOrder0101.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0002
+            // 
+            this.btnOrder0002.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.btnOrder0002.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0002.Location = new System.Drawing.Point(760, 3);
+            this.btnOrder0002.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0002.Name = "btnOrder0002";
+            this.btnOrder0002.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0002.TabIndex = 12;
+            this.btnOrder0002.UseVisualStyleBackColor = true;
+            this.btnOrder0002.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0102
+            // 
+            this.btnOrder0102.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.btnOrder0102.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0102.Location = new System.Drawing.Point(760, 91);
+            this.btnOrder0102.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0102.Name = "btnOrder0102";
+            this.btnOrder0102.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0102.TabIndex = 13;
+            this.btnOrder0102.Text = "積算見積書印刷";
+            this.btnOrder0102.UseVisualStyleBackColor = true;
+            this.btnOrder0102.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0202
+            // 
+            this.btnOrder0202.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.btnOrder0202.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0202.Location = new System.Drawing.Point(760, 179);
+            this.btnOrder0202.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0202.Name = "btnOrder0202";
+            this.btnOrder0202.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0202.TabIndex = 14;
+            this.btnOrder0202.UseVisualStyleBackColor = true;
+            this.btnOrder0202.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0302
+            // 
+            this.btnOrder0302.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.btnOrder0302.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0302.Location = new System.Drawing.Point(760, 267);
+            this.btnOrder0302.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0302.Name = "btnOrder0302";
+            this.btnOrder0302.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0302.TabIndex = 15;
+            this.btnOrder0302.UseVisualStyleBackColor = true;
+            this.btnOrder0302.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0402
+            // 
+            this.btnOrder0402.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.btnOrder0402.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0402.Location = new System.Drawing.Point(760, 355);
+            this.btnOrder0402.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0402.Name = "btnOrder0402";
+            this.btnOrder0402.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0402.TabIndex = 16;
+            this.btnOrder0402.UseVisualStyleBackColor = true;
+            this.btnOrder0402.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0500
+            // 
+            this.btnOrder0500.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.btnOrder0500.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0500.Location = new System.Drawing.Point(4, 443);
+            this.btnOrder0500.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0500.Name = "btnOrder0500";
+            this.btnOrder0500.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0500.TabIndex = 5;
+            this.btnOrder0500.UseVisualStyleBackColor = true;
+            this.btnOrder0500.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0501
+            // 
+            this.btnOrder0501.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.btnOrder0501.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0501.Location = new System.Drawing.Point(382, 443);
+            this.btnOrder0501.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0501.Name = "btnOrder0501";
+            this.btnOrder0501.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0501.TabIndex = 11;
+            this.btnOrder0501.UseVisualStyleBackColor = true;
+            this.btnOrder0501.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // btnOrder0502
+            // 
+            this.btnOrder0502.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.btnOrder0502.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnOrder0502.Location = new System.Drawing.Point(760, 443);
+            this.btnOrder0502.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnOrder0502.Name = "btnOrder0502";
+            this.btnOrder0502.Size = new System.Drawing.Size(316, 38);
+            this.btnOrder0502.TabIndex = 17;
+            this.btnOrder0502.UseVisualStyleBackColor = true;
+            this.btnOrder0502.Click += new System.EventHandler(this.btnOrder_Click);
+            // 
+            // label1
+            // 
+            this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
+            this.label1.AutoSize = true;
+            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label1.ForeColor = System.Drawing.Color.Blue;
+            this.label1.Location = new System.Drawing.Point(136, 44);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(52, 44);
+            this.label1.TabIndex = 10;
+            this.label1.Text = "↓";
+            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblArrpw1_04
+            // 
+            this.lblArrpw1_04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblArrpw1_04.AutoSize = true;
+            this.lblArrpw1_04.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblArrpw1_04.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
+            this.lblArrpw1_04.Location = new System.Drawing.Point(327, 180);
+            this.lblArrpw1_04.Name = "lblArrpw1_04";
+            this.lblArrpw1_04.Size = new System.Drawing.Size(48, 35);
+            this.lblArrpw1_04.TabIndex = 10;
+            this.lblArrpw1_04.Text = "→";
+            this.lblArrpw1_04.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label2
+            // 
+            this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
+            this.label2.AutoSize = true;
+            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label2.ForeColor = System.Drawing.Color.Blue;
+            this.label2.Location = new System.Drawing.Point(136, 132);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(52, 44);
+            this.label2.TabIndex = 10;
+            this.label2.Text = "↓";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // lblArrpw1_02
+            // 
+            this.lblArrpw1_02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblArrpw1_02.AutoSize = true;
+            this.lblArrpw1_02.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblArrpw1_02.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
+            this.lblArrpw1_02.Location = new System.Drawing.Point(327, 92);
+            this.lblArrpw1_02.Name = "lblArrpw1_02";
+            this.lblArrpw1_02.Size = new System.Drawing.Size(48, 35);
+            this.lblArrpw1_02.TabIndex = 10;
+            this.lblArrpw1_02.Text = "→";
+            this.lblArrpw1_02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label3
+            // 
+            this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label3.AutoSize = true;
+            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label3.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
+            this.label3.Location = new System.Drawing.Point(705, 92);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(48, 35);
+            this.label3.TabIndex = 10;
+            this.label3.Text = "→";
+            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage15
+            // 
+            this.tabPage15.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
+            this.tabPage15.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.tabPage15.Controls.Add(this.pnlConstruction);
+            this.tabPage15.Location = new System.Drawing.Point(4, 30);
+            this.tabPage15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.tabPage15.Name = "tabPage15";
+            this.tabPage15.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.tabPage15.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage15.TabIndex = 2;
+            this.tabPage15.Text = "施工管理";
+            // 
+            // pnlConstruction
+            // 
+            this.pnlConstruction.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.pnlConstruction.AutoScroll = true;
+            this.pnlConstruction.Controls.Add(this.tblLayoutConstruction);
+            this.pnlConstruction.Location = new System.Drawing.Point(4, 16);
+            this.pnlConstruction.Name = "pnlConstruction";
+            this.pnlConstruction.Size = new System.Drawing.Size(1180, 500);
+            this.pnlConstruction.TabIndex = 15;
+            // 
+            // tblLayoutConstruction
+            // 
+            this.tblLayoutConstruction.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tblLayoutConstruction.AutoSize = true;
+            this.tblLayoutConstruction.ColumnCount = 10;
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tblLayoutConstruction.Controls.Add(this.label43, 0, 7);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0000, 1, 1);
+            this.tblLayoutConstruction.Controls.Add(this.label5, 1, 0);
+            this.tblLayoutConstruction.Controls.Add(this.label7, 0, 1);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0001, 3, 1);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0002, 5, 1);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0003, 7, 1);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0004, 9, 1);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0100, 1, 3);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0101, 3, 3);
+            this.tblLayoutConstruction.Controls.Add(this.label8, 0, 3);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0102, 5, 3);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0103, 7, 3);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0104, 9, 3);
+            this.tblLayoutConstruction.Controls.Add(this.label16, 0, 5);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0200, 1, 5);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0201, 3, 5);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0202, 5, 5);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0203, 7, 5);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0204, 9, 5);
+            this.tblLayoutConstruction.Controls.Add(this.label44, 0, 9);
+            this.tblLayoutConstruction.Controls.Add(this.label45, 1, 8);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0300, 1, 9);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0301, 3, 9);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0302, 5, 9);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0303, 7, 9);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0304, 9, 9);
+            this.tblLayoutConstruction.Controls.Add(this.label46, 0, 11);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0400, 1, 11);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0401, 3, 11);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0402, 5, 11);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0403, 7, 11);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0404, 9, 11);
+            this.tblLayoutConstruction.Controls.Add(this.label47, 0, 13);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0500, 1, 13);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0501, 3, 13);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0502, 5, 13);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0503, 7, 13);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0504, 9, 13);
+            this.tblLayoutConstruction.Controls.Add(this.label50, 0, 15);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0600, 1, 15);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0601, 3, 15);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0602, 5, 15);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0603, 7, 15);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0604, 9, 15);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0700, 1, 17);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0701, 3, 17);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0702, 5, 17);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0703, 7, 17);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0704, 9, 17);
+            this.tblLayoutConstruction.Controls.Add(this.label51, 0, 19);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0800, 1, 19);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0801, 3, 19);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0802, 5, 19);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0803, 7, 19);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0804, 9, 19);
+            this.tblLayoutConstruction.Controls.Add(this.label48, 6, 16);
+            this.tblLayoutConstruction.Controls.Add(this.label49, 6, 14);
+            this.tblLayoutConstruction.Controls.Add(this.label42, 6, 6);
+            this.tblLayoutConstruction.Controls.Add(this.label32, 6, 4);
+            this.tblLayoutConstruction.Controls.Add(this.label52, 6, 20);
+            this.tblLayoutConstruction.Controls.Add(this.label53, 0, 21);
+            this.tblLayoutConstruction.Controls.Add(this.label54, 1, 22);
+            this.tblLayoutConstruction.Controls.Add(this.label55, 0, 23);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0900, 1, 23);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0901, 3, 23);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0902, 5, 23);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0903, 7, 23);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction0904, 9, 23);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1000, 1, 25);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1001, 3, 25);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1002, 5, 25);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1003, 7, 25);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1004, 9, 25);
+            this.tblLayoutConstruction.Controls.Add(this.label56, 0, 27);
+            this.tblLayoutConstruction.Controls.Add(this.label57, 1, 28);
+            this.tblLayoutConstruction.Controls.Add(this.label58, 0, 29);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1100, 1, 29);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1101, 3, 29);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1102, 5, 29);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1103, 7, 29);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1104, 9, 29);
+            this.tblLayoutConstruction.Controls.Add(this.label60, 1, 30);
+            this.tblLayoutConstruction.Controls.Add(this.label61, 3, 30);
+            this.tblLayoutConstruction.Controls.Add(this.label62, 0, 31);
+            this.tblLayoutConstruction.Controls.Add(this.label63, 1, 32);
+            this.tblLayoutConstruction.Controls.Add(this.label64, 0, 33);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1200, 1, 33);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1201, 3, 33);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1202, 5, 33);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1203, 7, 33);
+            this.tblLayoutConstruction.Controls.Add(this.btnConstruction1204, 9, 33);
+            this.tblLayoutConstruction.Controls.Add(this.label78, 0, 25);
+            this.tblLayoutConstruction.Location = new System.Drawing.Point(1, 1);
+            this.tblLayoutConstruction.Name = "tblLayoutConstruction";
+            this.tblLayoutConstruction.RowCount = 34;
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tblLayoutConstruction.Size = new System.Drawing.Size(1160, 1224);
+            this.tblLayoutConstruction.TabIndex = 15;
+            // 
+            // label43
+            // 
+            this.label43.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label43.BackColor = System.Drawing.Color.Black;
+            this.tblLayoutConstruction.SetColumnSpan(this.label43, 10);
+            this.label43.Location = new System.Drawing.Point(3, 267);
+            this.label43.Name = "label43";
+            this.label43.Size = new System.Drawing.Size(1154, 6);
+            this.label43.TabIndex = 15;
+            // 
+            // btnConstruction0000
+            // 
+            this.btnConstruction0000.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0000.Location = new System.Drawing.Point(108, 39);
+            this.btnConstruction0000.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0000.Name = "btnConstruction0000";
+            this.btnConstruction0000.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0000.TabIndex = 15;
+            this.btnConstruction0000.Text = "各工事詳細台帳閲覧";
+            this.btnConstruction0000.UseVisualStyleBackColor = true;
+            this.btnConstruction0000.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label5
+            // 
+            this.label5.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.label5.AutoSize = true;
+            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label5.Location = new System.Drawing.Point(107, 0);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(191, 36);
+            this.label5.TabIndex = 15;
+            this.label5.Text = "日次（施工）管理";
+            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label7
+            // 
+            this.label7.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.label7.AutoSize = true;
+            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label7.Location = new System.Drawing.Point(3, 36);
+            this.label7.Name = "label7";
+            this.label7.Size = new System.Drawing.Size(98, 36);
+            this.label7.TabIndex = 15;
+            this.label7.Text = "毎日";
+            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0001
+            // 
+            this.btnConstruction0001.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0001.Location = new System.Drawing.Point(322, 39);
+            this.btnConstruction0001.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0001.Name = "btnConstruction0001";
+            this.btnConstruction0001.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0001.TabIndex = 15;
+            this.btnConstruction0001.Text = "各工事日報";
+            this.btnConstruction0001.UseVisualStyleBackColor = true;
+            this.btnConstruction0001.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0002
+            // 
+            this.btnConstruction0002.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0002.Location = new System.Drawing.Point(536, 39);
+            this.btnConstruction0002.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0002.Name = "btnConstruction0002";
+            this.btnConstruction0002.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0002.TabIndex = 15;
+            this.btnConstruction0002.Text = "各工事打合わせ議事録";
+            this.btnConstruction0002.UseVisualStyleBackColor = true;
+            this.btnConstruction0002.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0003
+            // 
+            this.btnConstruction0003.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0003.Location = new System.Drawing.Point(750, 39);
+            this.btnConstruction0003.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0003.Name = "btnConstruction0003";
+            this.btnConstruction0003.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0003.TabIndex = 15;
+            this.btnConstruction0003.Text = "各工事交通費・購入品入力";
+            this.btnConstruction0003.UseVisualStyleBackColor = true;
+            this.btnConstruction0003.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0004
+            // 
+            this.btnConstruction0004.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0004.Location = new System.Drawing.Point(964, 39);
+            this.btnConstruction0004.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0004.Name = "btnConstruction0004";
+            this.btnConstruction0004.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0004.TabIndex = 15;
+            this.btnConstruction0004.Text = "出勤管理";
+            this.btnConstruction0004.UseVisualStyleBackColor = true;
+            this.btnConstruction0004.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0100
+            // 
+            this.btnConstruction0100.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0100.Location = new System.Drawing.Point(108, 111);
+            this.btnConstruction0100.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0100.Name = "btnConstruction0100";
+            this.btnConstruction0100.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0100.TabIndex = 15;
+            this.btnConstruction0100.Text = "行動予定入力";
+            this.btnConstruction0100.UseVisualStyleBackColor = true;
+            this.btnConstruction0100.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0101
+            // 
+            this.btnConstruction0101.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0101.Location = new System.Drawing.Point(322, 111);
+            this.btnConstruction0101.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0101.Name = "btnConstruction0101";
+            this.btnConstruction0101.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0101.TabIndex = 15;
+            this.btnConstruction0101.Text = "車両予約";
+            this.btnConstruction0101.UseVisualStyleBackColor = true;
+            this.btnConstruction0101.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label8
+            // 
+            this.label8.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.label8.AutoSize = true;
+            this.label8.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label8.Location = new System.Drawing.Point(3, 108);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(98, 36);
+            this.label8.TabIndex = 15;
+            this.label8.Text = "毎日";
+            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0102
+            // 
+            this.btnConstruction0102.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0102.Location = new System.Drawing.Point(536, 111);
+            this.btnConstruction0102.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0102.Name = "btnConstruction0102";
+            this.btnConstruction0102.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0102.TabIndex = 15;
+            this.btnConstruction0102.UseVisualStyleBackColor = true;
+            this.btnConstruction0102.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0103
+            // 
+            this.btnConstruction0103.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0103.Location = new System.Drawing.Point(750, 111);
+            this.btnConstruction0103.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0103.Name = "btnConstruction0103";
+            this.btnConstruction0103.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0103.TabIndex = 15;
+            this.btnConstruction0103.UseVisualStyleBackColor = true;
+            this.btnConstruction0103.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0104
+            // 
+            this.btnConstruction0104.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0104.Location = new System.Drawing.Point(964, 111);
+            this.btnConstruction0104.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0104.Name = "btnConstruction0104";
+            this.btnConstruction0104.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0104.TabIndex = 15;
+            this.btnConstruction0104.UseVisualStyleBackColor = true;
+            this.btnConstruction0104.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label16
+            // 
+            this.label16.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.label16.AutoSize = true;
+            this.label16.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label16.Location = new System.Drawing.Point(3, 180);
+            this.label16.Name = "label16";
+            this.label16.Size = new System.Drawing.Size(98, 36);
+            this.label16.TabIndex = 15;
+            this.label16.Text = "毎回";
+            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0200
+            // 
+            this.btnConstruction0200.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0200.Location = new System.Drawing.Point(108, 183);
+            this.btnConstruction0200.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0200.Name = "btnConstruction0200";
+            this.btnConstruction0200.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0200.TabIndex = 15;
+            this.btnConstruction0200.Text = "資材入力";
+            this.btnConstruction0200.UseVisualStyleBackColor = true;
+            this.btnConstruction0200.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0201
+            // 
+            this.btnConstruction0201.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0201.Location = new System.Drawing.Point(322, 183);
+            this.btnConstruction0201.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0201.Name = "btnConstruction0201";
+            this.btnConstruction0201.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0201.TabIndex = 15;
+            this.btnConstruction0201.Text = "資材貸出";
+            this.btnConstruction0201.UseVisualStyleBackColor = true;
+            this.btnConstruction0201.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0202
+            // 
+            this.btnConstruction0202.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0202.Location = new System.Drawing.Point(536, 183);
+            this.btnConstruction0202.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0202.Name = "btnConstruction0202";
+            this.btnConstruction0202.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0202.TabIndex = 15;
+            this.btnConstruction0202.Text = "資材返却";
+            this.btnConstruction0202.UseVisualStyleBackColor = true;
+            this.btnConstruction0202.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0203
+            // 
+            this.btnConstruction0203.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0203.Location = new System.Drawing.Point(750, 183);
+            this.btnConstruction0203.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0203.Name = "btnConstruction0203";
+            this.btnConstruction0203.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0203.TabIndex = 15;
+            this.btnConstruction0203.UseVisualStyleBackColor = true;
+            this.btnConstruction0203.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0204
+            // 
+            this.btnConstruction0204.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0204.Location = new System.Drawing.Point(964, 183);
+            this.btnConstruction0204.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0204.Name = "btnConstruction0204";
+            this.btnConstruction0204.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0204.TabIndex = 15;
+            this.btnConstruction0204.UseVisualStyleBackColor = true;
+            this.btnConstruction0204.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label44
+            // 
+            this.label44.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.label44.AutoSize = true;
+            this.label44.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label44.Location = new System.Drawing.Point(3, 324);
+            this.label44.Name = "label44";
+            this.label44.Size = new System.Drawing.Size(98, 36);
+            this.label44.TabIndex = 15;
+            this.label44.Text = "着工前";
+            this.label44.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label45
+            // 
+            this.label45.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.label45.AutoSize = true;
+            this.label45.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label45.Location = new System.Drawing.Point(107, 288);
+            this.label45.Name = "label45";
+            this.label45.Size = new System.Drawing.Size(191, 36);
+            this.label45.TabIndex = 15;
+            this.label45.Text = "書類管理";
+            this.label45.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0300
+            // 
+            this.btnConstruction0300.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0300.Location = new System.Drawing.Point(108, 327);
+            this.btnConstruction0300.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0300.Name = "btnConstruction0300";
+            this.btnConstruction0300.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0300.TabIndex = 15;
+            this.btnConstruction0300.Text = "工事予算書作成";
+            this.btnConstruction0300.UseVisualStyleBackColor = true;
+            this.btnConstruction0300.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0301
+            // 
+            this.btnConstruction0301.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0301.Location = new System.Drawing.Point(322, 327);
+            this.btnConstruction0301.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0301.Name = "btnConstruction0301";
+            this.btnConstruction0301.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0301.TabIndex = 15;
+            this.btnConstruction0301.Text = "工事予算書承認";
+            this.btnConstruction0301.UseVisualStyleBackColor = true;
+            this.btnConstruction0301.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0302
+            // 
+            this.btnConstruction0302.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0302.Location = new System.Drawing.Point(536, 327);
+            this.btnConstruction0302.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0302.Name = "btnConstruction0302";
+            this.btnConstruction0302.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0302.TabIndex = 15;
+            this.btnConstruction0302.UseVisualStyleBackColor = true;
+            this.btnConstruction0302.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0303
+            // 
+            this.btnConstruction0303.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0303.Location = new System.Drawing.Point(750, 327);
+            this.btnConstruction0303.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0303.Name = "btnConstruction0303";
+            this.btnConstruction0303.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0303.TabIndex = 15;
+            this.btnConstruction0303.UseVisualStyleBackColor = true;
+            this.btnConstruction0303.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0304
+            // 
+            this.btnConstruction0304.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0304.Location = new System.Drawing.Point(964, 327);
+            this.btnConstruction0304.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0304.Name = "btnConstruction0304";
+            this.btnConstruction0304.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0304.TabIndex = 15;
+            this.btnConstruction0304.UseVisualStyleBackColor = true;
+            this.btnConstruction0304.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label46
+            // 
+            this.label46.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.label46.AutoSize = true;
+            this.label46.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label46.Location = new System.Drawing.Point(3, 396);
+            this.label46.Name = "label46";
+            this.label46.Size = new System.Drawing.Size(98, 36);
+            this.label46.TabIndex = 15;
+            this.label46.Text = "着工前";
+            this.label46.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0400
+            // 
+            this.btnConstruction0400.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0400.Location = new System.Drawing.Point(108, 399);
+            this.btnConstruction0400.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0400.Name = "btnConstruction0400";
+            this.btnConstruction0400.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0400.TabIndex = 15;
+            this.btnConstruction0400.Text = "注文書作成";
+            this.btnConstruction0400.UseVisualStyleBackColor = true;
+            this.btnConstruction0400.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0401
+            // 
+            this.btnConstruction0401.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0401.Location = new System.Drawing.Point(322, 399);
+            this.btnConstruction0401.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0401.Name = "btnConstruction0401";
+            this.btnConstruction0401.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0401.TabIndex = 15;
+            this.btnConstruction0401.Text = "注文書承認";
+            this.btnConstruction0401.UseVisualStyleBackColor = true;
+            this.btnConstruction0401.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0402
+            // 
+            this.btnConstruction0402.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0402.Location = new System.Drawing.Point(536, 399);
+            this.btnConstruction0402.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0402.Name = "btnConstruction0402";
+            this.btnConstruction0402.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0402.TabIndex = 15;
+            this.btnConstruction0402.Text = "注文書印刷";
+            this.btnConstruction0402.UseVisualStyleBackColor = true;
+            this.btnConstruction0402.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0403
+            // 
+            this.btnConstruction0403.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0403.Location = new System.Drawing.Point(750, 399);
+            this.btnConstruction0403.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0403.Name = "btnConstruction0403";
+            this.btnConstruction0403.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0403.TabIndex = 15;
+            this.btnConstruction0403.Text = "注文書状況確認";
+            this.btnConstruction0403.UseVisualStyleBackColor = true;
+            this.btnConstruction0403.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0404
+            // 
+            this.btnConstruction0404.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0404.Location = new System.Drawing.Point(964, 399);
+            this.btnConstruction0404.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0404.Name = "btnConstruction0404";
+            this.btnConstruction0404.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0404.TabIndex = 15;
+            this.btnConstruction0404.UseVisualStyleBackColor = true;
+            this.btnConstruction0404.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label47
+            // 
+            this.label47.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.label47.AutoSize = true;
+            this.label47.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label47.Location = new System.Drawing.Point(3, 468);
+            this.label47.Name = "label47";
+            this.label47.Size = new System.Drawing.Size(98, 36);
+            this.label47.TabIndex = 15;
+            this.label47.Text = "着工前";
+            this.label47.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0500
+            // 
+            this.btnConstruction0500.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0500.Location = new System.Drawing.Point(108, 471);
+            this.btnConstruction0500.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0500.Name = "btnConstruction0500";
+            this.btnConstruction0500.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0500.TabIndex = 15;
+            this.btnConstruction0500.Text = "工程表作成・印刷";
+            this.btnConstruction0500.UseVisualStyleBackColor = true;
+            this.btnConstruction0500.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0501
+            // 
+            this.btnConstruction0501.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0501.Location = new System.Drawing.Point(322, 471);
+            this.btnConstruction0501.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0501.Name = "btnConstruction0501";
+            this.btnConstruction0501.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0501.TabIndex = 15;
+            this.btnConstruction0501.Text = "施工計画書作成・印刷";
+            this.btnConstruction0501.UseVisualStyleBackColor = true;
+            this.btnConstruction0501.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0502
+            // 
+            this.btnConstruction0502.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0502.Location = new System.Drawing.Point(536, 471);
+            this.btnConstruction0502.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0502.Name = "btnConstruction0502";
+            this.btnConstruction0502.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0502.TabIndex = 15;
+            this.btnConstruction0502.Text = "施工体制台帳作成・印刷";
+            this.btnConstruction0502.UseVisualStyleBackColor = true;
+            this.btnConstruction0502.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0503
+            // 
+            this.btnConstruction0503.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0503.Location = new System.Drawing.Point(750, 471);
+            this.btnConstruction0503.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0503.Name = "btnConstruction0503";
+            this.btnConstruction0503.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0503.TabIndex = 15;
+            this.btnConstruction0503.UseVisualStyleBackColor = true;
+            this.btnConstruction0503.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0504
+            // 
+            this.btnConstruction0504.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0504.Location = new System.Drawing.Point(964, 471);
+            this.btnConstruction0504.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0504.Name = "btnConstruction0504";
+            this.btnConstruction0504.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0504.TabIndex = 15;
+            this.btnConstruction0504.UseVisualStyleBackColor = true;
+            this.btnConstruction0504.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label50
+            // 
+            this.label50.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.label50.AutoSize = true;
+            this.label50.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label50.Location = new System.Drawing.Point(3, 540);
+            this.label50.Name = "label50";
+            this.label50.Size = new System.Drawing.Size(98, 36);
+            this.label50.TabIndex = 15;
+            this.label50.Text = "着工前・中";
+            this.label50.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0600
+            // 
+            this.btnConstruction0600.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0600.Location = new System.Drawing.Point(108, 543);
+            this.btnConstruction0600.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0600.Name = "btnConstruction0600";
+            this.btnConstruction0600.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0600.TabIndex = 15;
+            this.btnConstruction0600.Text = "工事施工図承諾願い";
+            this.btnConstruction0600.UseVisualStyleBackColor = true;
+            this.btnConstruction0600.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0601
+            // 
+            this.btnConstruction0601.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0601.Location = new System.Drawing.Point(322, 543);
+            this.btnConstruction0601.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0601.Name = "btnConstruction0601";
+            this.btnConstruction0601.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0601.TabIndex = 15;
+            this.btnConstruction0601.Text = "工事使用材料承諾願い";
+            this.btnConstruction0601.UseVisualStyleBackColor = true;
+            this.btnConstruction0601.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0602
+            // 
+            this.btnConstruction0602.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0602.Location = new System.Drawing.Point(536, 543);
+            this.btnConstruction0602.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0602.Name = "btnConstruction0602";
+            this.btnConstruction0602.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0602.TabIndex = 15;
+            this.btnConstruction0602.Text = "安全パトロール申請";
+            this.btnConstruction0602.UseVisualStyleBackColor = true;
+            this.btnConstruction0602.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0603
+            // 
+            this.btnConstruction0603.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0603.Location = new System.Drawing.Point(750, 543);
+            this.btnConstruction0603.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0603.Name = "btnConstruction0603";
+            this.btnConstruction0603.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0603.TabIndex = 15;
+            this.btnConstruction0603.Text = "社内検査申請";
+            this.btnConstruction0603.UseVisualStyleBackColor = true;
+            this.btnConstruction0603.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0604
+            // 
+            this.btnConstruction0604.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0604.Location = new System.Drawing.Point(964, 543);
+            this.btnConstruction0604.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0604.Name = "btnConstruction0604";
+            this.btnConstruction0604.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0604.TabIndex = 15;
+            this.btnConstruction0604.UseVisualStyleBackColor = true;
+            this.btnConstruction0604.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0700
+            // 
+            this.btnConstruction0700.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0700.Location = new System.Drawing.Point(108, 615);
+            this.btnConstruction0700.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0700.Name = "btnConstruction0700";
+            this.btnConstruction0700.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0700.TabIndex = 15;
+            this.btnConstruction0700.UseVisualStyleBackColor = true;
+            this.btnConstruction0700.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0701
+            // 
+            this.btnConstruction0701.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0701.Location = new System.Drawing.Point(322, 615);
+            this.btnConstruction0701.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0701.Name = "btnConstruction0701";
+            this.btnConstruction0701.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0701.TabIndex = 15;
+            this.btnConstruction0701.UseVisualStyleBackColor = true;
+            this.btnConstruction0701.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0702
+            // 
+            this.btnConstruction0702.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0702.Location = new System.Drawing.Point(536, 615);
+            this.btnConstruction0702.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0702.Name = "btnConstruction0702";
+            this.btnConstruction0702.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0702.TabIndex = 15;
+            this.btnConstruction0702.UseVisualStyleBackColor = true;
+            this.btnConstruction0702.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0703
+            // 
+            this.btnConstruction0703.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0703.Location = new System.Drawing.Point(750, 615);
+            this.btnConstruction0703.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0703.Name = "btnConstruction0703";
+            this.btnConstruction0703.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0703.TabIndex = 15;
+            this.btnConstruction0703.UseVisualStyleBackColor = true;
+            this.btnConstruction0703.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0704
+            // 
+            this.btnConstruction0704.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0704.Location = new System.Drawing.Point(964, 615);
+            this.btnConstruction0704.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0704.Name = "btnConstruction0704";
+            this.btnConstruction0704.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0704.TabIndex = 15;
+            this.btnConstruction0704.UseVisualStyleBackColor = true;
+            this.btnConstruction0704.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label51
+            // 
+            this.label51.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.label51.AutoSize = true;
+            this.label51.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label51.Location = new System.Drawing.Point(3, 684);
+            this.label51.Name = "label51";
+            this.label51.Size = new System.Drawing.Size(98, 36);
+            this.label51.TabIndex = 15;
+            this.label51.Text = "着工中\r\n・完了後";
+            this.label51.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0800
+            // 
+            this.btnConstruction0800.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0800.Location = new System.Drawing.Point(108, 687);
+            this.btnConstruction0800.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0800.Name = "btnConstruction0800";
+            this.btnConstruction0800.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0800.TabIndex = 15;
+            this.btnConstruction0800.Text = "完成図書作成・印刷";
+            this.btnConstruction0800.UseVisualStyleBackColor = true;
+            this.btnConstruction0800.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0801
+            // 
+            this.btnConstruction0801.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0801.Location = new System.Drawing.Point(322, 687);
+            this.btnConstruction0801.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0801.Name = "btnConstruction0801";
+            this.btnConstruction0801.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0801.TabIndex = 15;
+            this.btnConstruction0801.UseVisualStyleBackColor = true;
+            this.btnConstruction0801.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0802
+            // 
+            this.btnConstruction0802.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0802.Location = new System.Drawing.Point(536, 687);
+            this.btnConstruction0802.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0802.Name = "btnConstruction0802";
+            this.btnConstruction0802.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0802.TabIndex = 15;
+            this.btnConstruction0802.UseVisualStyleBackColor = true;
+            this.btnConstruction0802.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0803
+            // 
+            this.btnConstruction0803.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0803.Location = new System.Drawing.Point(750, 687);
+            this.btnConstruction0803.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0803.Name = "btnConstruction0803";
+            this.btnConstruction0803.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0803.TabIndex = 15;
+            this.btnConstruction0803.UseVisualStyleBackColor = true;
+            this.btnConstruction0803.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0804
+            // 
+            this.btnConstruction0804.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0804.Location = new System.Drawing.Point(964, 687);
+            this.btnConstruction0804.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0804.Name = "btnConstruction0804";
+            this.btnConstruction0804.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0804.TabIndex = 15;
+            this.btnConstruction0804.UseVisualStyleBackColor = true;
+            this.btnConstruction0804.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label48
+            // 
+            this.label48.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.label48.AutoSize = true;
+            this.tblLayoutConstruction.SetColumnSpan(this.label48, 4);
+            this.label48.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label48.ForeColor = System.Drawing.Color.Brown;
+            this.label48.Location = new System.Drawing.Point(732, 576);
+            this.label48.Name = "label48";
+            this.label48.Size = new System.Drawing.Size(425, 36);
+            this.label48.TabIndex = 15;
+            this.label48.Text = "※上記項目は各工種の全体施工中の施工前までに作成・提出すること。";
+            this.label48.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label49
+            // 
+            this.label49.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.label49.AutoSize = true;
+            this.tblLayoutConstruction.SetColumnSpan(this.label49, 4);
+            this.label49.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label49.ForeColor = System.Drawing.Color.Brown;
+            this.label49.Location = new System.Drawing.Point(732, 504);
+            this.label49.Name = "label49";
+            this.label49.Size = new System.Drawing.Size(425, 36);
+            this.label49.TabIndex = 15;
+            this.label49.Text = "※上記項目は施工開始までに作成すること。";
+            this.label49.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label42
+            // 
+            this.label42.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.label42.AutoSize = true;
+            this.tblLayoutConstruction.SetColumnSpan(this.label42, 4);
+            this.label42.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label42.ForeColor = System.Drawing.Color.Brown;
+            this.label42.Location = new System.Drawing.Point(732, 216);
+            this.label42.Name = "label42";
+            this.label42.Size = new System.Drawing.Size(425, 36);
+            this.label42.TabIndex = 15;
+            this.label42.Text = "※資材項目は貸出・返却時に毎回記入すること。";
+            this.label42.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label32
+            // 
+            this.label32.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.label32.AutoSize = true;
+            this.tblLayoutConstruction.SetColumnSpan(this.label32, 4);
+            this.label32.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label32.ForeColor = System.Drawing.Color.Brown;
+            this.label32.Location = new System.Drawing.Point(732, 144);
+            this.label32.Name = "label32";
+            this.label32.Size = new System.Drawing.Size(425, 36);
+            this.label32.TabIndex = 15;
+            this.label32.Text = "※該当項目は毎日記入すること。";
+            this.label32.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label52
+            // 
+            this.label52.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.label52.AutoSize = true;
+            this.tblLayoutConstruction.SetColumnSpan(this.label52, 4);
+            this.label52.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label52.ForeColor = System.Drawing.Color.Brown;
+            this.label52.Location = new System.Drawing.Point(732, 720);
+            this.label52.Name = "label52";
+            this.label52.Size = new System.Drawing.Size(425, 36);
+            this.label52.TabIndex = 15;
+            this.label52.Text = "※完成図書は契約工期内に再提出も含めて完了すること。";
+            this.label52.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // label53
+            // 
+            this.label53.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label53.BackColor = System.Drawing.Color.Black;
+            this.tblLayoutConstruction.SetColumnSpan(this.label53, 10);
+            this.label53.Location = new System.Drawing.Point(3, 771);
+            this.label53.Name = "label53";
+            this.label53.Size = new System.Drawing.Size(1154, 6);
+            this.label53.TabIndex = 15;
+            // 
+            // label54
+            // 
+            this.label54.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.label54.AutoSize = true;
+            this.label54.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label54.Location = new System.Drawing.Point(107, 792);
+            this.label54.Name = "label54";
+            this.label54.Size = new System.Drawing.Size(191, 36);
+            this.label54.TabIndex = 15;
+            this.label54.Text = "取引先請求管理";
+            this.label54.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label55
+            // 
+            this.label55.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.label55.AutoSize = true;
+            this.label55.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label55.Location = new System.Drawing.Point(3, 828);
+            this.label55.Name = "label55";
+            this.label55.Size = new System.Drawing.Size(98, 36);
+            this.label55.TabIndex = 15;
+            this.label55.Text = "出来高";
+            this.label55.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction0900
+            // 
+            this.btnConstruction0900.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0900.Location = new System.Drawing.Point(108, 831);
+            this.btnConstruction0900.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0900.Name = "btnConstruction0900";
+            this.btnConstruction0900.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0900.TabIndex = 15;
+            this.btnConstruction0900.Text = "請求書作成";
+            this.btnConstruction0900.UseVisualStyleBackColor = true;
+            this.btnConstruction0900.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0901
+            // 
+            this.btnConstruction0901.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0901.Location = new System.Drawing.Point(322, 831);
+            this.btnConstruction0901.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0901.Name = "btnConstruction0901";
+            this.btnConstruction0901.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0901.TabIndex = 15;
+            this.btnConstruction0901.Text = "請求書承認";
+            this.btnConstruction0901.UseVisualStyleBackColor = true;
+            this.btnConstruction0901.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0902
+            // 
+            this.btnConstruction0902.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0902.Location = new System.Drawing.Point(536, 831);
+            this.btnConstruction0902.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0902.Name = "btnConstruction0902";
+            this.btnConstruction0902.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0902.TabIndex = 15;
+            this.btnConstruction0902.Text = "請求書印刷";
+            this.btnConstruction0902.UseVisualStyleBackColor = true;
+            this.btnConstruction0902.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0903
+            // 
+            this.btnConstruction0903.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0903.Location = new System.Drawing.Point(750, 831);
+            this.btnConstruction0903.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0903.Name = "btnConstruction0903";
+            this.btnConstruction0903.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction0903.TabIndex = 15;
+            this.btnConstruction0903.Text = "請求書郵送・手渡し確認";
+            this.btnConstruction0903.UseVisualStyleBackColor = true;
+            this.btnConstruction0903.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction0904
+            // 
+            this.btnConstruction0904.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction0904.Location = new System.Drawing.Point(964, 831);
+            this.btnConstruction0904.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction0904.Name = "btnConstruction0904";
+            this.btnConstruction0904.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction0904.TabIndex = 15;
+            this.btnConstruction0904.Text = "取引先入金確認";
+            this.btnConstruction0904.UseVisualStyleBackColor = true;
+            this.btnConstruction0904.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1000
+            // 
+            this.btnConstruction1000.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1000.Location = new System.Drawing.Point(108, 903);
+            this.btnConstruction1000.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1000.Name = "btnConstruction1000";
+            this.btnConstruction1000.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1000.TabIndex = 15;
+            this.btnConstruction1000.Text = "請求書作成";
+            this.btnConstruction1000.UseVisualStyleBackColor = true;
+            this.btnConstruction1000.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1001
+            // 
+            this.btnConstruction1001.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1001.Location = new System.Drawing.Point(322, 903);
+            this.btnConstruction1001.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1001.Name = "btnConstruction1001";
+            this.btnConstruction1001.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1001.TabIndex = 15;
+            this.btnConstruction1001.Text = "請求書承認";
+            this.btnConstruction1001.UseVisualStyleBackColor = true;
+            this.btnConstruction1001.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1002
+            // 
+            this.btnConstruction1002.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1002.Location = new System.Drawing.Point(536, 903);
+            this.btnConstruction1002.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1002.Name = "btnConstruction1002";
+            this.btnConstruction1002.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1002.TabIndex = 15;
+            this.btnConstruction1002.Text = "請求書印刷";
+            this.btnConstruction1002.UseVisualStyleBackColor = true;
+            this.btnConstruction1002.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1003
+            // 
+            this.btnConstruction1003.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1003.Location = new System.Drawing.Point(750, 903);
+            this.btnConstruction1003.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1003.Name = "btnConstruction1003";
+            this.btnConstruction1003.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1003.TabIndex = 15;
+            this.btnConstruction1003.Text = "請求書郵送・手渡し確認";
+            this.btnConstruction1003.UseVisualStyleBackColor = true;
+            this.btnConstruction1003.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1004
+            // 
+            this.btnConstruction1004.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1004.Location = new System.Drawing.Point(964, 903);
+            this.btnConstruction1004.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1004.Name = "btnConstruction1004";
+            this.btnConstruction1004.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction1004.TabIndex = 15;
+            this.btnConstruction1004.Text = "取引先入金確認";
+            this.btnConstruction1004.UseVisualStyleBackColor = true;
+            this.btnConstruction1004.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label56
+            // 
+            this.label56.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label56.BackColor = System.Drawing.Color.Black;
+            this.tblLayoutConstruction.SetColumnSpan(this.label56, 10);
+            this.label56.Location = new System.Drawing.Point(3, 987);
+            this.label56.Name = "label56";
+            this.label56.Size = new System.Drawing.Size(1154, 6);
+            this.label56.TabIndex = 15;
+            // 
+            // label57
+            // 
+            this.label57.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.label57.AutoSize = true;
+            this.label57.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label57.Location = new System.Drawing.Point(107, 1008);
+            this.label57.Name = "label57";
+            this.label57.Size = new System.Drawing.Size(191, 36);
+            this.label57.TabIndex = 15;
+            this.label57.Text = "各業者・職人支払い管理";
+            this.label57.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label58
+            // 
+            this.label58.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.label58.AutoSize = true;
+            this.label58.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label58.Location = new System.Drawing.Point(3, 1044);
+            this.label58.Name = "label58";
+            this.label58.Size = new System.Drawing.Size(98, 36);
+            this.label58.TabIndex = 15;
+            this.label58.Text = "毎月";
+            this.label58.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction1100
+            // 
+            this.btnConstruction1100.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1100.Location = new System.Drawing.Point(108, 1047);
+            this.btnConstruction1100.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1100.Name = "btnConstruction1100";
+            this.btnConstruction1100.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1100.TabIndex = 15;
+            this.btnConstruction1100.Text = "業者・職人手間請求確認";
+            this.btnConstruction1100.UseVisualStyleBackColor = true;
+            this.btnConstruction1100.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1101
+            // 
+            this.btnConstruction1101.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1101.Location = new System.Drawing.Point(322, 1047);
+            this.btnConstruction1101.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1101.Name = "btnConstruction1101";
+            this.btnConstruction1101.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1101.TabIndex = 15;
+            this.btnConstruction1101.Text = "施工業者支払い確認";
+            this.btnConstruction1101.UseVisualStyleBackColor = true;
+            this.btnConstruction1101.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1102
+            // 
+            this.btnConstruction1102.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1102.Location = new System.Drawing.Point(536, 1047);
+            this.btnConstruction1102.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1102.Name = "btnConstruction1102";
+            this.btnConstruction1102.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1102.TabIndex = 15;
+            this.btnConstruction1102.UseVisualStyleBackColor = true;
+            this.btnConstruction1102.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1103
+            // 
+            this.btnConstruction1103.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1103.Location = new System.Drawing.Point(750, 1047);
+            this.btnConstruction1103.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1103.Name = "btnConstruction1103";
+            this.btnConstruction1103.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1103.TabIndex = 15;
+            this.btnConstruction1103.UseVisualStyleBackColor = true;
+            this.btnConstruction1103.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1104
+            // 
+            this.btnConstruction1104.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1104.Location = new System.Drawing.Point(964, 1047);
+            this.btnConstruction1104.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1104.Name = "btnConstruction1104";
+            this.btnConstruction1104.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction1104.TabIndex = 15;
+            this.btnConstruction1104.UseVisualStyleBackColor = true;
+            this.btnConstruction1104.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label60
+            // 
+            this.label60.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.label60.AutoSize = true;
+            this.label60.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label60.ForeColor = System.Drawing.Color.Brown;
+            this.label60.Location = new System.Drawing.Point(107, 1080);
+            this.label60.Name = "label60";
+            this.label60.Size = new System.Drawing.Size(191, 36);
+            this.label60.TabIndex = 15;
+            this.label60.Text = "※毎月5日必着\r\n確認は8日まで";
+            this.label60.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label61
+            // 
+            this.label61.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.label61.AutoSize = true;
+            this.label61.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label61.ForeColor = System.Drawing.Color.Brown;
+            this.label61.Location = new System.Drawing.Point(321, 1080);
+            this.label61.Name = "label61";
+            this.label61.Size = new System.Drawing.Size(191, 36);
+            this.label61.TabIndex = 15;
+            this.label61.Text = "※毎月5日必着\r\n確認は15日まで";
+            this.label61.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label62
+            // 
+            this.label62.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label62.BackColor = System.Drawing.Color.Black;
+            this.tblLayoutConstruction.SetColumnSpan(this.label62, 10);
+            this.label62.Location = new System.Drawing.Point(3, 1131);
+            this.label62.Name = "label62";
+            this.label62.Size = new System.Drawing.Size(1154, 6);
+            this.label62.TabIndex = 15;
+            // 
+            // label63
+            // 
+            this.label63.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.label63.AutoSize = true;
+            this.label63.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label63.Location = new System.Drawing.Point(107, 1152);
+            this.label63.Name = "label63";
+            this.label63.Size = new System.Drawing.Size(191, 36);
+            this.label63.TabIndex = 15;
+            this.label63.Text = "その他管理";
+            this.label63.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label64
+            // 
+            this.label64.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.label64.AutoSize = true;
+            this.label64.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label64.Location = new System.Drawing.Point(3, 1188);
+            this.label64.Name = "label64";
+            this.label64.Size = new System.Drawing.Size(98, 36);
+            this.label64.TabIndex = 15;
+            this.label64.Text = "適時";
+            this.label64.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnConstruction1200
+            // 
+            this.btnConstruction1200.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1200.Location = new System.Drawing.Point(108, 1191);
+            this.btnConstruction1200.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1200.Name = "btnConstruction1200";
+            this.btnConstruction1200.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1200.TabIndex = 15;
+            this.btnConstruction1200.Text = "出納帳入力";
+            this.btnConstruction1200.UseVisualStyleBackColor = true;
+            this.btnConstruction1200.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1201
+            // 
+            this.btnConstruction1201.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1201.Location = new System.Drawing.Point(322, 1191);
+            this.btnConstruction1201.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1201.Name = "btnConstruction1201";
+            this.btnConstruction1201.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1201.TabIndex = 15;
+            this.btnConstruction1201.UseVisualStyleBackColor = true;
+            this.btnConstruction1201.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1202
+            // 
+            this.btnConstruction1202.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1202.Location = new System.Drawing.Point(536, 1191);
+            this.btnConstruction1202.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1202.Name = "btnConstruction1202";
+            this.btnConstruction1202.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1202.TabIndex = 15;
+            this.btnConstruction1202.UseVisualStyleBackColor = true;
+            this.btnConstruction1202.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1203
+            // 
+            this.btnConstruction1203.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1203.Location = new System.Drawing.Point(750, 1191);
+            this.btnConstruction1203.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1203.Name = "btnConstruction1203";
+            this.btnConstruction1203.Size = new System.Drawing.Size(189, 30);
+            this.btnConstruction1203.TabIndex = 15;
+            this.btnConstruction1203.UseVisualStyleBackColor = true;
+            this.btnConstruction1203.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // btnConstruction1204
+            // 
+            this.btnConstruction1204.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.btnConstruction1204.Location = new System.Drawing.Point(964, 1191);
+            this.btnConstruction1204.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnConstruction1204.Name = "btnConstruction1204";
+            this.btnConstruction1204.Size = new System.Drawing.Size(192, 30);
+            this.btnConstruction1204.TabIndex = 15;
+            this.btnConstruction1204.UseVisualStyleBackColor = true;
+            this.btnConstruction1204.Click += new System.EventHandler(this.btnConstruction_Click);
+            // 
+            // label78
+            // 
+            this.label78.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.label78.AutoSize = true;
+            this.label78.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label78.Location = new System.Drawing.Point(3, 900);
+            this.label78.Name = "label78";
+            this.label78.Size = new System.Drawing.Size(98, 36);
+            this.label78.TabIndex = 15;
+            this.label78.Text = "完了後";
+            this.label78.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage16
+            // 
+            this.tabPage16.BackColor = System.Drawing.Color.YellowGreen;
+            this.tabPage16.Controls.Add(this.pnlAffairs);
+            this.tabPage16.Location = new System.Drawing.Point(4, 30);
+            this.tabPage16.Name = "tabPage16";
+            this.tabPage16.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage16.TabIndex = 20;
+            this.tabPage16.Text = "総務管理";
+            // 
+            // pnlAffairs
+            // 
+            this.pnlAffairs.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.pnlAffairs.AutoScroll = true;
+            this.pnlAffairs.Controls.Add(this.tableLayoutAffairs);
+            this.pnlAffairs.Location = new System.Drawing.Point(4, 16);
+            this.pnlAffairs.Name = "pnlAffairs";
+            this.pnlAffairs.Size = new System.Drawing.Size(1180, 500);
+            this.pnlAffairs.TabIndex = 13;
+            // 
+            // tableLayoutAffairs
+            // 
+            this.tableLayoutAffairs.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tableLayoutAffairs.ColumnCount = 10;
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.5F));
+            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 17F));
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0000, 1, 1);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0001, 3, 1);
+            this.tableLayoutAffairs.Controls.Add(this.label65, 1, 0);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0002, 5, 1);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0003, 7, 1);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0004, 9, 1);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0100, 1, 3);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0101, 3, 3);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0102, 5, 3);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0103, 7, 3);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0104, 9, 3);
+            this.tableLayoutAffairs.Controls.Add(this.label67, 0, 1);
+            this.tableLayoutAffairs.Controls.Add(this.label66, 0, 3);
+            this.tableLayoutAffairs.Controls.Add(this.label68, 1, 4);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0302, 5, 9);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0300, 1, 9);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0301, 3, 9);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0201, 3, 7);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0200, 1, 7);
+            this.tableLayoutAffairs.Controls.Add(this.label69, 1, 6);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0202, 5, 7);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0203, 7, 7);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0204, 9, 7);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0303, 7, 9);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0304, 9, 9);
+            this.tableLayoutAffairs.Controls.Add(this.label70, 0, 11);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0400, 1, 13);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0401, 3, 13);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0402, 5, 13);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0403, 7, 13);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0404, 9, 13);
+            this.tableLayoutAffairs.Controls.Add(this.label71, 1, 12);
+            this.tableLayoutAffairs.Controls.Add(this.label72, 0, 13);
+            this.tableLayoutAffairs.Controls.Add(this.label73, 0, 15);
+            this.tableLayoutAffairs.Controls.Add(this.label74, 1, 16);
+            this.tableLayoutAffairs.Controls.Add(this.btnAffairs0500, 1, 17);
+            this.tableLayoutAffairs.Controls.Add(this.label75, 1, 14);
+            this.tableLayoutAffairs.Controls.Add(this.label76, 3, 14);
+            this.tableLayoutAffairs.Controls.Add(this.label77, 9, 14);
+            this.tableLayoutAffairs.Location = new System.Drawing.Point(1, 1);
+            this.tableLayoutAffairs.Name = "tableLayoutAffairs";
+            this.tableLayoutAffairs.RowCount = 20;
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tableLayoutAffairs.Size = new System.Drawing.Size(1160, 648);
+            this.tableLayoutAffairs.TabIndex = 13;
+            // 
+            // btnAffairs0000
+            // 
+            this.btnAffairs0000.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.btnAffairs0000.Location = new System.Drawing.Point(108, 39);
+            this.btnAffairs0000.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0000.Name = "btnAffairs0000";
+            this.btnAffairs0000.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0000.TabIndex = 0;
+            this.btnAffairs0000.Text = "行動予定入力";
+            this.btnAffairs0000.UseVisualStyleBackColor = true;
+            this.btnAffairs0000.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0001
+            // 
+            this.btnAffairs0001.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.btnAffairs0001.Location = new System.Drawing.Point(322, 39);
+            this.btnAffairs0001.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0001.Name = "btnAffairs0001";
+            this.btnAffairs0001.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0001.TabIndex = 0;
+            this.btnAffairs0001.Text = "車両予約";
+            this.btnAffairs0001.UseVisualStyleBackColor = true;
+            this.btnAffairs0001.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // label65
+            // 
+            this.label65.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.label65.AutoSize = true;
+            this.label65.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label65.Location = new System.Drawing.Point(107, 0);
+            this.label65.Name = "label65";
+            this.label65.Size = new System.Drawing.Size(191, 36);
+            this.label65.TabIndex = 18;
+            this.label65.Text = "日次管理";
+            this.label65.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnAffairs0002
+            // 
+            this.btnAffairs0002.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.btnAffairs0002.Location = new System.Drawing.Point(536, 39);
+            this.btnAffairs0002.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0002.Name = "btnAffairs0002";
+            this.btnAffairs0002.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0002.TabIndex = 0;
+            this.btnAffairs0002.UseVisualStyleBackColor = true;
+            this.btnAffairs0002.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0003
+            // 
+            this.btnAffairs0003.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.btnAffairs0003.Location = new System.Drawing.Point(750, 39);
+            this.btnAffairs0003.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0003.Name = "btnAffairs0003";
+            this.btnAffairs0003.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0003.TabIndex = 0;
+            this.btnAffairs0003.UseVisualStyleBackColor = true;
+            this.btnAffairs0003.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0004
+            // 
+            this.btnAffairs0004.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.btnAffairs0004.Location = new System.Drawing.Point(964, 39);
+            this.btnAffairs0004.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0004.Name = "btnAffairs0004";
+            this.btnAffairs0004.Size = new System.Drawing.Size(192, 30);
+            this.btnAffairs0004.TabIndex = 0;
+            this.btnAffairs0004.UseVisualStyleBackColor = true;
+            this.btnAffairs0004.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0100
+            // 
+            this.btnAffairs0100.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.btnAffairs0100.Location = new System.Drawing.Point(108, 111);
+            this.btnAffairs0100.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0100.Name = "btnAffairs0100";
+            this.btnAffairs0100.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0100.TabIndex = 0;
+            this.btnAffairs0100.Text = "出勤管理";
+            this.btnAffairs0100.UseVisualStyleBackColor = true;
+            this.btnAffairs0100.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0101
+            // 
+            this.btnAffairs0101.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.btnAffairs0101.Location = new System.Drawing.Point(322, 111);
+            this.btnAffairs0101.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0101.Name = "btnAffairs0101";
+            this.btnAffairs0101.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0101.TabIndex = 0;
+            this.btnAffairs0101.UseVisualStyleBackColor = true;
+            this.btnAffairs0101.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0102
+            // 
+            this.btnAffairs0102.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.btnAffairs0102.Location = new System.Drawing.Point(536, 111);
+            this.btnAffairs0102.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0102.Name = "btnAffairs0102";
+            this.btnAffairs0102.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0102.TabIndex = 0;
+            this.btnAffairs0102.UseVisualStyleBackColor = true;
+            this.btnAffairs0102.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0103
+            // 
+            this.btnAffairs0103.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.btnAffairs0103.Location = new System.Drawing.Point(750, 111);
+            this.btnAffairs0103.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0103.Name = "btnAffairs0103";
+            this.btnAffairs0103.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0103.TabIndex = 0;
+            this.btnAffairs0103.UseVisualStyleBackColor = true;
+            this.btnAffairs0103.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0104
+            // 
+            this.btnAffairs0104.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.btnAffairs0104.Location = new System.Drawing.Point(964, 111);
+            this.btnAffairs0104.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0104.Name = "btnAffairs0104";
+            this.btnAffairs0104.Size = new System.Drawing.Size(192, 30);
+            this.btnAffairs0104.TabIndex = 0;
+            this.btnAffairs0104.UseVisualStyleBackColor = true;
+            this.btnAffairs0104.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // label67
+            // 
+            this.label67.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.label67.AutoSize = true;
+            this.label67.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label67.Location = new System.Drawing.Point(3, 36);
+            this.label67.Name = "label67";
+            this.label67.Size = new System.Drawing.Size(98, 36);
+            this.label67.TabIndex = 19;
+            this.label67.Text = "毎日";
+            this.label67.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label66
+            // 
+            this.label66.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.label66.AutoSize = true;
+            this.label66.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label66.Location = new System.Drawing.Point(3, 108);
+            this.label66.Name = "label66";
+            this.label66.Size = new System.Drawing.Size(98, 36);
+            this.label66.TabIndex = 19;
+            this.label66.Text = "毎日";
+            this.label66.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label68
+            // 
+            this.label68.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label68.BackColor = System.Drawing.Color.Black;
+            this.tableLayoutAffairs.SetColumnSpan(this.label68, 10);
+            this.label68.Location = new System.Drawing.Point(3, 195);
+            this.label68.Name = "label68";
+            this.label68.Size = new System.Drawing.Size(1154, 6);
+            this.label68.TabIndex = 20;
+            // 
+            // btnAffairs0302
+            // 
+            this.btnAffairs0302.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.btnAffairs0302.Location = new System.Drawing.Point(536, 327);
+            this.btnAffairs0302.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0302.Name = "btnAffairs0302";
+            this.btnAffairs0302.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0302.TabIndex = 0;
+            this.btnAffairs0302.UseVisualStyleBackColor = true;
+            this.btnAffairs0302.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0300
+            // 
+            this.btnAffairs0300.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.btnAffairs0300.Location = new System.Drawing.Point(108, 327);
+            this.btnAffairs0300.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0300.Name = "btnAffairs0300";
+            this.btnAffairs0300.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0300.TabIndex = 0;
+            this.btnAffairs0300.Text = "注文書発給状況入力";
+            this.btnAffairs0300.UseVisualStyleBackColor = true;
+            this.btnAffairs0300.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0301
+            // 
+            this.btnAffairs0301.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.btnAffairs0301.Location = new System.Drawing.Point(322, 327);
+            this.btnAffairs0301.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0301.Name = "btnAffairs0301";
+            this.btnAffairs0301.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0301.TabIndex = 0;
+            this.btnAffairs0301.Text = "請求書発送状況入力";
+            this.btnAffairs0301.UseVisualStyleBackColor = true;
+            this.btnAffairs0301.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0201
+            // 
+            this.btnAffairs0201.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.btnAffairs0201.Location = new System.Drawing.Point(322, 255);
+            this.btnAffairs0201.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0201.Name = "btnAffairs0201";
+            this.btnAffairs0201.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0201.TabIndex = 0;
+            this.btnAffairs0201.Text = "工事予算閲覧";
+            this.btnAffairs0201.UseVisualStyleBackColor = true;
+            this.btnAffairs0201.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0200
+            // 
+            this.btnAffairs0200.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.btnAffairs0200.Location = new System.Drawing.Point(108, 255);
+            this.btnAffairs0200.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0200.Name = "btnAffairs0200";
+            this.btnAffairs0200.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0200.TabIndex = 0;
+            this.btnAffairs0200.Text = "工事情報閲覧";
+            this.btnAffairs0200.UseVisualStyleBackColor = true;
+            this.btnAffairs0200.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // label69
+            // 
+            this.label69.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.label69.AutoSize = true;
+            this.label69.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label69.Location = new System.Drawing.Point(107, 216);
+            this.label69.Name = "label69";
+            this.label69.Size = new System.Drawing.Size(191, 36);
+            this.label69.TabIndex = 18;
+            this.label69.Text = "情報閲覧及び入力";
+            this.label69.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnAffairs0202
+            // 
+            this.btnAffairs0202.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.btnAffairs0202.Location = new System.Drawing.Point(536, 255);
+            this.btnAffairs0202.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0202.Name = "btnAffairs0202";
+            this.btnAffairs0202.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0202.TabIndex = 0;
+            this.btnAffairs0202.Text = "請求書承認状況閲覧";
+            this.btnAffairs0202.UseVisualStyleBackColor = true;
+            this.btnAffairs0202.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0203
+            // 
+            this.btnAffairs0203.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.btnAffairs0203.Location = new System.Drawing.Point(750, 255);
+            this.btnAffairs0203.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0203.Name = "btnAffairs0203";
+            this.btnAffairs0203.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0203.TabIndex = 0;
+            this.btnAffairs0203.UseVisualStyleBackColor = true;
+            this.btnAffairs0203.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0204
+            // 
+            this.btnAffairs0204.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.btnAffairs0204.Location = new System.Drawing.Point(964, 255);
+            this.btnAffairs0204.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0204.Name = "btnAffairs0204";
+            this.btnAffairs0204.Size = new System.Drawing.Size(192, 30);
+            this.btnAffairs0204.TabIndex = 0;
+            this.btnAffairs0204.Text = "各社員出勤情報閲覧";
+            this.btnAffairs0204.UseVisualStyleBackColor = true;
+            this.btnAffairs0204.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0303
+            // 
+            this.btnAffairs0303.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.btnAffairs0303.Location = new System.Drawing.Point(750, 327);
+            this.btnAffairs0303.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0303.Name = "btnAffairs0303";
+            this.btnAffairs0303.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0303.TabIndex = 0;
+            this.btnAffairs0303.UseVisualStyleBackColor = true;
+            this.btnAffairs0303.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0304
+            // 
+            this.btnAffairs0304.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.btnAffairs0304.Location = new System.Drawing.Point(964, 327);
+            this.btnAffairs0304.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0304.Name = "btnAffairs0304";
+            this.btnAffairs0304.Size = new System.Drawing.Size(192, 30);
+            this.btnAffairs0304.TabIndex = 0;
+            this.btnAffairs0304.UseVisualStyleBackColor = true;
+            this.btnAffairs0304.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // label70
+            // 
+            this.label70.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label70.BackColor = System.Drawing.Color.Black;
+            this.tableLayoutAffairs.SetColumnSpan(this.label70, 10);
+            this.label70.Location = new System.Drawing.Point(3, 411);
+            this.label70.Name = "label70";
+            this.label70.Size = new System.Drawing.Size(1154, 6);
+            this.label70.TabIndex = 20;
+            // 
+            // btnAffairs0400
+            // 
+            this.btnAffairs0400.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.btnAffairs0400.Location = new System.Drawing.Point(108, 471);
+            this.btnAffairs0400.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0400.Name = "btnAffairs0400";
+            this.btnAffairs0400.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0400.TabIndex = 0;
+            this.btnAffairs0400.Text = "業者・職人手間入力";
+            this.btnAffairs0400.UseVisualStyleBackColor = true;
+            this.btnAffairs0400.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0401
+            // 
+            this.btnAffairs0401.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.btnAffairs0401.Location = new System.Drawing.Point(322, 471);
+            this.btnAffairs0401.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0401.Name = "btnAffairs0401";
+            this.btnAffairs0401.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0401.TabIndex = 0;
+            this.btnAffairs0401.Text = "施工業者支払い入力";
+            this.btnAffairs0401.UseVisualStyleBackColor = true;
+            this.btnAffairs0401.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0402
+            // 
+            this.btnAffairs0402.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.btnAffairs0402.Location = new System.Drawing.Point(536, 471);
+            this.btnAffairs0402.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0402.Name = "btnAffairs0402";
+            this.btnAffairs0402.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0402.TabIndex = 0;
+            this.btnAffairs0402.UseVisualStyleBackColor = true;
+            this.btnAffairs0402.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0403
+            // 
+            this.btnAffairs0403.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.btnAffairs0403.Location = new System.Drawing.Point(750, 471);
+            this.btnAffairs0403.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0403.Name = "btnAffairs0403";
+            this.btnAffairs0403.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0403.TabIndex = 0;
+            this.btnAffairs0403.UseVisualStyleBackColor = true;
+            this.btnAffairs0403.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // btnAffairs0404
+            // 
+            this.btnAffairs0404.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.btnAffairs0404.Location = new System.Drawing.Point(964, 471);
+            this.btnAffairs0404.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0404.Name = "btnAffairs0404";
+            this.btnAffairs0404.Size = new System.Drawing.Size(192, 30);
+            this.btnAffairs0404.TabIndex = 0;
+            this.btnAffairs0404.Text = "取引先入金入力";
+            this.btnAffairs0404.UseVisualStyleBackColor = true;
+            this.btnAffairs0404.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // label71
+            // 
+            this.label71.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.label71.AutoSize = true;
+            this.label71.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label71.Location = new System.Drawing.Point(107, 432);
+            this.label71.Name = "label71";
+            this.label71.Size = new System.Drawing.Size(191, 36);
+            this.label71.TabIndex = 18;
+            this.label71.Text = "請求関係入力管理";
+            this.label71.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label72
+            // 
+            this.label72.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.label72.AutoSize = true;
+            this.label72.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label72.Location = new System.Drawing.Point(3, 468);
+            this.label72.Name = "label72";
+            this.label72.Size = new System.Drawing.Size(98, 36);
+            this.label72.TabIndex = 19;
+            this.label72.Text = "毎月";
+            this.label72.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label73
+            // 
+            this.label73.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.label73.BackColor = System.Drawing.Color.Black;
+            this.tableLayoutAffairs.SetColumnSpan(this.label73, 10);
+            this.label73.Location = new System.Drawing.Point(3, 555);
+            this.label73.Name = "label73";
+            this.label73.Size = new System.Drawing.Size(1154, 6);
+            this.label73.TabIndex = 20;
+            // 
+            // label74
+            // 
+            this.label74.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.label74.AutoSize = true;
+            this.label74.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label74.Location = new System.Drawing.Point(107, 576);
+            this.label74.Name = "label74";
+            this.label74.Size = new System.Drawing.Size(191, 36);
+            this.label74.TabIndex = 18;
+            this.label74.Text = "その他管理";
+            this.label74.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // btnAffairs0500
+            // 
+            this.btnAffairs0500.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.btnAffairs0500.Location = new System.Drawing.Point(108, 615);
+            this.btnAffairs0500.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.btnAffairs0500.Name = "btnAffairs0500";
+            this.btnAffairs0500.Size = new System.Drawing.Size(189, 30);
+            this.btnAffairs0500.TabIndex = 0;
+            this.btnAffairs0500.Text = "出納帳入力";
+            this.btnAffairs0500.UseVisualStyleBackColor = true;
+            this.btnAffairs0500.Click += new System.EventHandler(this.btnAffairs_Click);
+            // 
+            // label75
+            // 
+            this.label75.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.label75.AutoSize = true;
+            this.label75.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label75.ForeColor = System.Drawing.Color.Brown;
+            this.label75.Location = new System.Drawing.Point(107, 504);
+            this.label75.Name = "label75";
+            this.label75.Size = new System.Drawing.Size(191, 36);
+            this.label75.TabIndex = 18;
+            this.label75.Text = "※到着後速やかに入力";
+            this.label75.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label76
+            // 
+            this.label76.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.label76.AutoSize = true;
+            this.label76.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label76.ForeColor = System.Drawing.Color.Brown;
+            this.label76.Location = new System.Drawing.Point(321, 504);
+            this.label76.Name = "label76";
+            this.label76.Size = new System.Drawing.Size(191, 36);
+            this.label76.TabIndex = 18;
+            this.label76.Text = "※到着後速やかに入力";
+            this.label76.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // label77
+            // 
+            this.label77.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.label77.AutoSize = true;
+            this.label77.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.label77.ForeColor = System.Drawing.Color.Brown;
+            this.label77.Location = new System.Drawing.Point(963, 504);
+            this.label77.Name = "label77";
+            this.label77.Size = new System.Drawing.Size(194, 36);
+            this.label77.TabIndex = 18;
+            this.label77.Text = "※到着後速やかに入力";
+            this.label77.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // tabPage17
+            // 
+            this.tabPage17.BackColor = System.Drawing.Color.ForestGreen;
+            this.tabPage17.Controls.Add(this.tableLayoutDocuments);
+            this.tabPage17.ForeColor = System.Drawing.Color.White;
+            this.tabPage17.Location = new System.Drawing.Point(4, 30);
+            this.tabPage17.Name = "tabPage17";
+            this.tabPage17.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage17.TabIndex = 14;
+            this.tabPage17.Text = "各種提出書類";
+            // 
+            // tableLayoutDocuments
+            // 
+            this.tableLayoutDocuments.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tableLayoutDocuments.ColumnCount = 5;
+            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
+            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
+            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
+            this.tableLayoutDocuments.Controls.Add(this.button1, 0, 0);
+            this.tableLayoutDocuments.Controls.Add(this.button2, 2, 0);
+            this.tableLayoutDocuments.Controls.Add(this.button3, 0, 2);
+            this.tableLayoutDocuments.Controls.Add(this.button4, 0, 4);
+            this.tableLayoutDocuments.Controls.Add(this.button5, 0, 6);
+            this.tableLayoutDocuments.Controls.Add(this.button6, 0, 8);
+            this.tableLayoutDocuments.Controls.Add(this.button7, 2, 8);
+            this.tableLayoutDocuments.Controls.Add(this.button8, 2, 6);
+            this.tableLayoutDocuments.Controls.Add(this.button9, 2, 4);
+            this.tableLayoutDocuments.Controls.Add(this.button10, 2, 2);
+            this.tableLayoutDocuments.Controls.Add(this.button11, 4, 0);
+            this.tableLayoutDocuments.Controls.Add(this.button12, 4, 2);
+            this.tableLayoutDocuments.Controls.Add(this.button13, 4, 4);
+            this.tableLayoutDocuments.Controls.Add(this.button15, 4, 6);
+            this.tableLayoutDocuments.Controls.Add(this.button16, 4, 8);
+            this.tableLayoutDocuments.Controls.Add(this.button17, 0, 10);
+            this.tableLayoutDocuments.Controls.Add(this.button18, 2, 10);
+            this.tableLayoutDocuments.Controls.Add(this.button19, 4, 10);
+            this.tableLayoutDocuments.Location = new System.Drawing.Point(56, 16);
+            this.tableLayoutDocuments.Name = "tableLayoutDocuments";
+            this.tableLayoutDocuments.RowCount = 11;
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tableLayoutDocuments.Size = new System.Drawing.Size(1080, 484);
+            this.tableLayoutDocuments.TabIndex = 11;
+            // 
+            // button1
+            // 
+            this.button1.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.button1.ForeColor = System.Drawing.Color.Black;
+            this.button1.Location = new System.Drawing.Point(4, 3);
+            this.button1.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button1.Name = "button1";
+            this.button1.Size = new System.Drawing.Size(316, 38);
+            this.button1.TabIndex = 0;
+            this.button1.Text = "顧客登録シート";
+            this.button1.UseVisualStyleBackColor = true;
+            // 
+            // button2
+            // 
+            this.button2.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.button2.ForeColor = System.Drawing.Color.Black;
+            this.button2.Location = new System.Drawing.Point(382, 3);
+            this.button2.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button2.Name = "button2";
+            this.button2.Size = new System.Drawing.Size(316, 38);
+            this.button2.TabIndex = 6;
+            this.button2.Text = "休日出勤届";
+            this.button2.UseVisualStyleBackColor = true;
+            // 
+            // button3
+            // 
+            this.button3.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.button3.ForeColor = System.Drawing.Color.Black;
+            this.button3.Location = new System.Drawing.Point(4, 91);
+            this.button3.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button3.Name = "button3";
+            this.button3.Size = new System.Drawing.Size(316, 38);
+            this.button3.TabIndex = 1;
+            this.button3.Text = "協力業者登録シート";
+            this.button3.UseVisualStyleBackColor = true;
+            // 
+            // button4
+            // 
+            this.button4.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.button4.ForeColor = System.Drawing.Color.Black;
+            this.button4.Location = new System.Drawing.Point(4, 179);
+            this.button4.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button4.Name = "button4";
+            this.button4.Size = new System.Drawing.Size(316, 38);
+            this.button4.TabIndex = 2;
+            this.button4.UseVisualStyleBackColor = true;
+            // 
+            // button5
+            // 
+            this.button5.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.button5.ForeColor = System.Drawing.Color.Black;
+            this.button5.Location = new System.Drawing.Point(4, 267);
+            this.button5.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button5.Name = "button5";
+            this.button5.Size = new System.Drawing.Size(316, 38);
+            this.button5.TabIndex = 3;
+            this.button5.UseVisualStyleBackColor = true;
+            // 
+            // button6
+            // 
+            this.button6.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.button6.ForeColor = System.Drawing.Color.Black;
+            this.button6.Location = new System.Drawing.Point(4, 355);
+            this.button6.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button6.Name = "button6";
+            this.button6.Size = new System.Drawing.Size(316, 38);
+            this.button6.TabIndex = 4;
+            this.button6.UseVisualStyleBackColor = true;
+            // 
+            // button7
+            // 
+            this.button7.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.button7.ForeColor = System.Drawing.Color.Black;
+            this.button7.Location = new System.Drawing.Point(382, 355);
+            this.button7.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button7.Name = "button7";
+            this.button7.Size = new System.Drawing.Size(316, 38);
+            this.button7.TabIndex = 10;
+            this.button7.UseVisualStyleBackColor = true;
+            // 
+            // button8
+            // 
+            this.button8.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.button8.ForeColor = System.Drawing.Color.Black;
+            this.button8.Location = new System.Drawing.Point(382, 267);
+            this.button8.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button8.Name = "button8";
+            this.button8.Size = new System.Drawing.Size(316, 38);
+            this.button8.TabIndex = 9;
+            this.button8.UseVisualStyleBackColor = true;
+            // 
+            // button9
+            // 
+            this.button9.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.button9.ForeColor = System.Drawing.Color.Black;
+            this.button9.Location = new System.Drawing.Point(382, 179);
+            this.button9.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button9.Name = "button9";
+            this.button9.Size = new System.Drawing.Size(316, 38);
+            this.button9.TabIndex = 8;
+            this.button9.Text = "遅刻・早退・外出・欠勤・有給届";
+            this.button9.UseVisualStyleBackColor = true;
+            // 
+            // button10
+            // 
+            this.button10.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.button10.ForeColor = System.Drawing.Color.Black;
+            this.button10.Location = new System.Drawing.Point(382, 91);
+            this.button10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button10.Name = "button10";
+            this.button10.Size = new System.Drawing.Size(316, 38);
+            this.button10.TabIndex = 7;
+            this.button10.Text = "代休届";
+            this.button10.UseVisualStyleBackColor = true;
+            // 
+            // button11
+            // 
+            this.button11.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.button11.ForeColor = System.Drawing.Color.Black;
+            this.button11.Location = new System.Drawing.Point(760, 3);
+            this.button11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button11.Name = "button11";
+            this.button11.Size = new System.Drawing.Size(316, 38);
+            this.button11.TabIndex = 12;
+            this.button11.UseVisualStyleBackColor = true;
+            // 
+            // button12
+            // 
+            this.button12.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.button12.ForeColor = System.Drawing.Color.Black;
+            this.button12.Location = new System.Drawing.Point(760, 91);
+            this.button12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button12.Name = "button12";
+            this.button12.Size = new System.Drawing.Size(316, 38);
+            this.button12.TabIndex = 13;
+            this.button12.UseVisualStyleBackColor = true;
+            // 
+            // button13
+            // 
+            this.button13.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.button13.ForeColor = System.Drawing.Color.Black;
+            this.button13.Location = new System.Drawing.Point(760, 179);
+            this.button13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button13.Name = "button13";
+            this.button13.Size = new System.Drawing.Size(316, 38);
+            this.button13.TabIndex = 14;
+            this.button13.UseVisualStyleBackColor = true;
+            // 
+            // button15
+            // 
+            this.button15.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.button15.ForeColor = System.Drawing.Color.Black;
+            this.button15.Location = new System.Drawing.Point(760, 267);
+            this.button15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button15.Name = "button15";
+            this.button15.Size = new System.Drawing.Size(316, 38);
+            this.button15.TabIndex = 15;
+            this.button15.UseVisualStyleBackColor = true;
+            // 
+            // button16
+            // 
+            this.button16.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.button16.ForeColor = System.Drawing.Color.Black;
+            this.button16.Location = new System.Drawing.Point(760, 355);
+            this.button16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button16.Name = "button16";
+            this.button16.Size = new System.Drawing.Size(316, 38);
+            this.button16.TabIndex = 16;
+            this.button16.UseVisualStyleBackColor = true;
+            // 
+            // button17
+            // 
+            this.button17.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.button17.ForeColor = System.Drawing.Color.Black;
+            this.button17.Location = new System.Drawing.Point(4, 443);
+            this.button17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button17.Name = "button17";
+            this.button17.Size = new System.Drawing.Size(316, 38);
+            this.button17.TabIndex = 5;
+            this.button17.UseVisualStyleBackColor = true;
+            // 
+            // button18
+            // 
+            this.button18.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.button18.ForeColor = System.Drawing.Color.Black;
+            this.button18.Location = new System.Drawing.Point(382, 443);
+            this.button18.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button18.Name = "button18";
+            this.button18.Size = new System.Drawing.Size(316, 38);
+            this.button18.TabIndex = 11;
+            this.button18.UseVisualStyleBackColor = true;
+            // 
+            // button19
+            // 
+            this.button19.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.button19.ForeColor = System.Drawing.Color.Black;
+            this.button19.Location = new System.Drawing.Point(760, 443);
+            this.button19.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+            this.button19.Name = "button19";
+            this.button19.Size = new System.Drawing.Size(316, 38);
+            this.button19.TabIndex = 17;
+            this.button19.UseVisualStyleBackColor = true;
+            // 
+            // tabPage18
+            // 
+            this.tabPage18.BackColor = System.Drawing.Color.Blue;
+            this.tabPage18.Controls.Add(this.pnlMaster01);
+            this.tabPage18.Location = new System.Drawing.Point(4, 30);
+            this.tabPage18.Name = "tabPage18";
+            this.tabPage18.Size = new System.Drawing.Size(1192, 536);
+            this.tabPage18.TabIndex = 4;
+            this.tabPage18.Text = "BOSSマスタ";
+            // 
+            // pnlMaster01
+            // 
+            this.pnlMaster01.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.pnlMaster01.AutoScroll = true;
+            this.pnlMaster01.Controls.Add(this.tblLayoutMaster);
+            this.pnlMaster01.Location = new System.Drawing.Point(6, 16);
+            this.pnlMaster01.Name = "pnlMaster01";
+            this.pnlMaster01.Size = new System.Drawing.Size(1180, 500);
+            this.pnlMaster01.TabIndex = 14;
+            // 
+            // tblLayoutMaster
+            // 
+            this.tblLayoutMaster.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tblLayoutMaster.AutoSize = true;
+            this.tblLayoutMaster.ColumnCount = 7;
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 24F));
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1F));
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 24F));
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1F));
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 24F));
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1F));
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
+            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+            this.tblLayoutMaster.Location = new System.Drawing.Point(0, 0);
+            this.tblLayoutMaster.Name = "tblLayoutMaster";
+            this.tblLayoutMaster.RowCount = 1;
+            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
+            this.tblLayoutMaster.Size = new System.Drawing.Size(1160, 44);
+            this.tblLayoutMaster.TabIndex = 14;
+            this.tblLayoutMaster.MouseEnter += new System.EventHandler(this.tblLayoutMaster_MouseEnter);
+            // 
+            // lblDate
+            // 
+            this.lblDate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDate.BackColor = System.Drawing.Color.Transparent;
+            this.lblDate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblDate.ForeColor = System.Drawing.Color.White;
+            this.lblDate.Location = new System.Drawing.Point(1040, 14);
+            this.lblDate.Name = "lblDate";
+            this.lblDate.Size = new System.Drawing.Size(150, 23);
+            this.lblDate.TabIndex = 19;
+            this.lblDate.Text = "2015年12月31日";
+            this.lblDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+            // 
+            // lblVersion
+            // 
+            this.lblVersion.AutoSize = true;
+            this.lblVersion.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.lblVersion.ForeColor = System.Drawing.Color.White;
+            this.lblVersion.Location = new System.Drawing.Point(20, 17);
+            this.lblVersion.Name = "lblVersion";
+            this.lblVersion.Size = new System.Drawing.Size(112, 16);
+            this.lblVersion.TabIndex = 20;
+            this.lblVersion.Text = "Version 1.0.0";
+            // 
+            // btnLogOut
+            // 
+            this.btnLogOut.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.btnLogOut.BackColor = System.Drawing.Color.SpringGreen;
+            this.btnLogOut.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnLogOut.Location = new System.Drawing.Point(5, 638);
+            this.btnLogOut.Name = "btnLogOut";
+            this.btnLogOut.Size = new System.Drawing.Size(120, 30);
+            this.btnLogOut.TabIndex = 26;
+            this.btnLogOut.TabStop = false;
+            this.btnLogOut.Text = "ログアウト";
+            this.btnLogOut.UseVisualStyleBackColor = false;
+            this.btnLogOut.Click += new System.EventHandler(this.btnLogOut_Click);
+            // 
+            // timer_StaffAssign
+            // 
+            this.timer_StaffAssign.Interval = 50;
+            this.timer_StaffAssign.Tick += new System.EventHandler(this.timer_StaffAssign_Tick);
+            // 
+            // btnDataCopyE
+            // 
+            this.btnDataCopyE.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.btnDataCopyE.BackColor = System.Drawing.Color.DarkOrange;
+            this.btnDataCopyE.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
+            this.btnDataCopyE.ForeColor = System.Drawing.Color.Black;
+            this.btnDataCopyE.Location = new System.Drawing.Point(810, 638);
+            this.btnDataCopyE.Name = "btnDataCopyE";
+            this.btnDataCopyE.Size = new System.Drawing.Size(260, 30);
+            this.btnDataCopyE.TabIndex = 29;
+            this.btnDataCopyE.Text = "既存工事からコピー登録";
+            this.btnDataCopyE.UseVisualStyleBackColor = false;
+            this.btnDataCopyE.Visible = false;
+            this.btnDataCopyE.Click += new System.EventHandler(this.btnDataCopy_Click);
+            // 
             // dgvBusinessMessage
             // 
             this.dgvBusinessMessage.AllowUserToAddRows = false;
@@ -966,60 +5009,6 @@
             this.dataGridViewTextBoxColumn85.Visible = false;
             this.dataGridViewTextBoxColumn85.Width = 5;
             // 
-            // tabPage7
-            // 
-            this.tabPage7.BackColor = System.Drawing.Color.Black;
-            this.tabPage7.Controls.Add(this.btnMessageEntry);
-            this.tabPage7.Controls.Add(this.UpDateProgress);
-            this.tabPage7.Controls.Add(this.btnReLoadMessage);
-            this.tabPage7.Controls.Add(this.dgvMessageBoard);
-            this.tabPage7.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.tabPage7.ForeColor = System.Drawing.Color.Black;
-            this.tabPage7.Location = new System.Drawing.Point(4, 30);
-            this.tabPage7.Name = "tabPage7";
-            this.tabPage7.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage7.TabIndex = 5;
-            this.tabPage7.Text = "社内掲示板";
-            // 
-            // btnMessageEntry
-            // 
-            this.btnMessageEntry.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMessageEntry.BackColor = System.Drawing.Color.Green;
-            this.btnMessageEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnMessageEntry.ForeColor = System.Drawing.Color.White;
-            this.btnMessageEntry.Location = new System.Drawing.Point(396, 501);
-            this.btnMessageEntry.Name = "btnMessageEntry";
-            this.btnMessageEntry.Size = new System.Drawing.Size(400, 30);
-            this.btnMessageEntry.TabIndex = 28;
-            this.btnMessageEntry.TabStop = false;
-            this.btnMessageEntry.Text = "新規メッセージ作成";
-            this.btnMessageEntry.UseVisualStyleBackColor = false;
-            this.btnMessageEntry.Click += new System.EventHandler(this.btnMessageEntry_Click);
-            // 
-            // UpDateProgress
-            // 
-            this.UpDateProgress.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.UpDateProgress.Location = new System.Drawing.Point(6, 501);
-            this.UpDateProgress.Name = "UpDateProgress";
-            this.UpDateProgress.Size = new System.Drawing.Size(388, 30);
-            this.UpDateProgress.TabIndex = 27;
-            this.UpDateProgress.Visible = false;
-            // 
-            // btnReLoadMessage
-            // 
-            this.btnReLoadMessage.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadMessage.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadMessage.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadMessage.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadMessage.Name = "btnReLoadMessage";
-            this.btnReLoadMessage.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadMessage.TabIndex = 26;
-            this.btnReLoadMessage.TabStop = false;
-            this.btnReLoadMessage.Text = "最新の状態へ";
-            this.btnReLoadMessage.UseVisualStyleBackColor = false;
-            this.btnReLoadMessage.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
             // dgvMessageBoard
             // 
             this.dgvMessageBoard.AllowUserToAddRows = false;
@@ -1133,111 +5122,6 @@
             this.Column07.Visible = false;
             this.Column07.Width = 5;
             // 
-            // tabPage21
-            // 
-            this.tabPage21.BackColor = System.Drawing.Color.Black;
-            this.tabPage21.Controls.Add(this.label31);
-            this.tabPage21.Controls.Add(this.label27);
-            this.tabPage21.Controls.Add(this.label26);
-            this.tabPage21.Controls.Add(this.label29);
-            this.tabPage21.Controls.Add(this.label25);
-            this.tabPage21.Controls.Add(this.btnReLoadDAprroval);
-            this.tabPage21.Controls.Add(this.ProgressDApproval);
-            this.tabPage21.Controls.Add(this.dgvApproval);
-            this.tabPage21.Location = new System.Drawing.Point(4, 30);
-            this.tabPage21.Name = "tabPage21";
-            this.tabPage21.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage21.TabIndex = 19;
-            this.tabPage21.Text = "承認一覧";
-            // 
-            // label31
-            // 
-            this.label31.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label31.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label31.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label31.ForeColor = System.Drawing.Color.Black;
-            this.label31.Location = new System.Drawing.Point(346, 5);
-            this.label31.Name = "label31";
-            this.label31.Size = new System.Drawing.Size(500, 20);
-            this.label31.TabIndex = 36;
-            this.label31.Text = "承　　認　　申　　請　　一　　覧";
-            this.label31.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label27
-            // 
-            this.label27.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.label27.BackColor = System.Drawing.Color.Red;
-            this.label27.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label27.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label27.Location = new System.Drawing.Point(920, 501);
-            this.label27.Name = "label27";
-            this.label27.Size = new System.Drawing.Size(80, 30);
-            this.label27.TabIndex = 35;
-            this.label27.Text = "不承認";
-            this.label27.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label26
-            // 
-            this.label26.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.label26.BackColor = System.Drawing.Color.Yellow;
-            this.label26.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label26.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label26.Location = new System.Drawing.Point(832, 501);
-            this.label26.Name = "label26";
-            this.label26.Size = new System.Drawing.Size(80, 30);
-            this.label26.TabIndex = 35;
-            this.label26.Text = "保　留";
-            this.label26.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label29
-            // 
-            this.label29.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.label29.BackColor = System.Drawing.Color.LightSkyBlue;
-            this.label29.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label29.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label29.Location = new System.Drawing.Point(656, 501);
-            this.label29.Name = "label29";
-            this.label29.Size = new System.Drawing.Size(80, 30);
-            this.label29.TabIndex = 35;
-            this.label29.Text = "確認中";
-            this.label29.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label25
-            // 
-            this.label25.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.label25.BackColor = System.Drawing.Color.MediumSpringGreen;
-            this.label25.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label25.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label25.Location = new System.Drawing.Point(744, 501);
-            this.label25.Name = "label25";
-            this.label25.Size = new System.Drawing.Size(80, 30);
-            this.label25.TabIndex = 35;
-            this.label25.Text = "承　認";
-            this.label25.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // btnReLoadDAprroval
-            // 
-            this.btnReLoadDAprroval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadDAprroval.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadDAprroval.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadDAprroval.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadDAprroval.Name = "btnReLoadDAprroval";
-            this.btnReLoadDAprroval.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadDAprroval.TabIndex = 34;
-            this.btnReLoadDAprroval.TabStop = false;
-            this.btnReLoadDAprroval.Text = "最新の状態へ";
-            this.btnReLoadDAprroval.UseVisualStyleBackColor = false;
-            this.btnReLoadDAprroval.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // ProgressDApproval
-            // 
-            this.ProgressDApproval.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressDApproval.Location = new System.Drawing.Point(6, 501);
-            this.ProgressDApproval.Name = "ProgressDApproval";
-            this.ProgressDApproval.Size = new System.Drawing.Size(388, 30);
-            this.ProgressDApproval.TabIndex = 33;
-            this.ProgressDApproval.Visible = false;
-            // 
             // dgvApproval
             // 
             this.dgvApproval.AllowUserToAddRows = false;
@@ -1264,6 +5148,7 @@
             this.dgvApproval.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.ApprovalColumn02,
             this.ApprovalColumn12,
+            this.Column32,
             this.ApprovalColumn01,
             this.ApprovalColumn03,
             this.ApprovalColumn04,
@@ -1312,6 +5197,15 @@
             this.ApprovalColumn12.Visible = false;
             this.ApprovalColumn12.Width = 5;
             // 
+            // Column32
+            // 
+            this.Column32.Frozen = true;
+            this.Column32.HeaderText = "受付番号";
+            this.Column32.Name = "Column32";
+            this.Column32.ReadOnly = true;
+            this.Column32.Visible = false;
+            this.Column32.Width = 5;
+            // 
             // ApprovalColumn01
             // 
             dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
@@ -1428,21 +5322,6 @@
             this.ApprovalColumn11.ReadOnly = true;
             this.ApprovalColumn11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             // 
-            // tabPage8
-            // 
-            this.tabPage8.BackColor = System.Drawing.Color.Black;
-            this.tabPage8.Controls.Add(this.dgvSalesInProjects);
-            this.tabPage8.Controls.Add(this.btnDataCopyA);
-            this.tabPage8.Controls.Add(this.btnDataEntry);
-            this.tabPage8.Controls.Add(this.ProgressSalesProjects);
-            this.tabPage8.Controls.Add(this.btnReLoadSales);
-            this.tabPage8.Controls.Add(this.label11);
-            this.tabPage8.Location = new System.Drawing.Point(4, 30);
-            this.tabPage8.Name = "tabPage8";
-            this.tabPage8.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage8.TabIndex = 6;
-            this.tabPage8.Text = "工事案件";
-            // 
             // dgvSalesInProjects
             // 
             this.dgvSalesInProjects.AllowUserToAddRows = false;
@@ -1636,135 +5515,6 @@
             this.Column8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column8.Width = 350;
             // 
-            // btnDataCopyA
-            // 
-            this.btnDataCopyA.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataCopyA.BackColor = System.Drawing.Color.DarkOrange;
-            this.btnDataCopyA.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataCopyA.ForeColor = System.Drawing.Color.Black;
-            this.btnDataCopyA.Location = new System.Drawing.Point(801, 501);
-            this.btnDataCopyA.Name = "btnDataCopyA";
-            this.btnDataCopyA.Size = new System.Drawing.Size(260, 30);
-            this.btnDataCopyA.TabIndex = 29;
-            this.btnDataCopyA.Text = "既存工事からコピー登録";
-            this.btnDataCopyA.UseVisualStyleBackColor = false;
-            this.btnDataCopyA.Click += new System.EventHandler(this.btnDataCopy_Click);
-            // 
-            // btnDataEntry
-            // 
-            this.btnDataEntry.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataEntry.BackColor = System.Drawing.Color.PaleGreen;
-            this.btnDataEntry.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataEntry.ForeColor = System.Drawing.Color.Black;
-            this.btnDataEntry.Location = new System.Drawing.Point(396, 501);
-            this.btnDataEntry.Name = "btnDataEntry";
-            this.btnDataEntry.Size = new System.Drawing.Size(400, 30);
-            this.btnDataEntry.TabIndex = 29;
-            this.btnDataEntry.Text = "新規工事を登録";
-            this.btnDataEntry.UseVisualStyleBackColor = false;
-            this.btnDataEntry.Click += new System.EventHandler(this.btnDataEntry_Click);
-            // 
-            // ProgressSalesProjects
-            // 
-            this.ProgressSalesProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressSalesProjects.Location = new System.Drawing.Point(6, 501);
-            this.ProgressSalesProjects.Name = "ProgressSalesProjects";
-            this.ProgressSalesProjects.Size = new System.Drawing.Size(388, 30);
-            this.ProgressSalesProjects.TabIndex = 28;
-            this.ProgressSalesProjects.Visible = false;
-            // 
-            // btnReLoadSales
-            // 
-            this.btnReLoadSales.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadSales.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadSales.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadSales.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadSales.Name = "btnReLoadSales";
-            this.btnReLoadSales.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadSales.TabIndex = 27;
-            this.btnReLoadSales.TabStop = false;
-            this.btnReLoadSales.Text = "最新の状態へ";
-            this.btnReLoadSales.UseVisualStyleBackColor = false;
-            this.btnReLoadSales.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // label11
-            // 
-            this.label11.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.label11.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label11.ForeColor = System.Drawing.Color.Black;
-            this.label11.Location = new System.Drawing.Point(346, 5);
-            this.label11.Name = "label11";
-            this.label11.Size = new System.Drawing.Size(500, 20);
-            this.label11.TabIndex = 7;
-            this.label11.Text = "工　　事　　案　　件　　状　　況　　一　　覧";
-            this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // tabPage17
-            // 
-            this.tabPage17.BackColor = System.Drawing.Color.Black;
-            this.tabPage17.Controls.Add(this.btnDataCopyB);
-            this.tabPage17.Controls.Add(this.btnReLoadTenders);
-            this.tabPage17.Controls.Add(this.ProgressTenders);
-            this.tabPage17.Controls.Add(this.label21);
-            this.tabPage17.Controls.Add(this.dgvTenders);
-            this.tabPage17.Location = new System.Drawing.Point(4, 30);
-            this.tabPage17.Name = "tabPage17";
-            this.tabPage17.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage17.TabIndex = 15;
-            this.tabPage17.Text = "入札案件";
-            // 
-            // btnDataCopyB
-            // 
-            this.btnDataCopyB.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataCopyB.BackColor = System.Drawing.Color.DarkOrange;
-            this.btnDataCopyB.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataCopyB.ForeColor = System.Drawing.Color.Black;
-            this.btnDataCopyB.Location = new System.Drawing.Point(801, 501);
-            this.btnDataCopyB.Name = "btnDataCopyB";
-            this.btnDataCopyB.Size = new System.Drawing.Size(260, 30);
-            this.btnDataCopyB.TabIndex = 33;
-            this.btnDataCopyB.Text = "既存工事からコピー登録";
-            this.btnDataCopyB.UseVisualStyleBackColor = false;
-            this.btnDataCopyB.Click += new System.EventHandler(this.btnDataCopy_Click);
-            // 
-            // btnReLoadTenders
-            // 
-            this.btnReLoadTenders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadTenders.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadTenders.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadTenders.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadTenders.Name = "btnReLoadTenders";
-            this.btnReLoadTenders.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadTenders.TabIndex = 32;
-            this.btnReLoadTenders.TabStop = false;
-            this.btnReLoadTenders.Text = "最新の状態へ";
-            this.btnReLoadTenders.UseVisualStyleBackColor = false;
-            this.btnReLoadTenders.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // ProgressTenders
-            // 
-            this.ProgressTenders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressTenders.Location = new System.Drawing.Point(6, 501);
-            this.ProgressTenders.Name = "ProgressTenders";
-            this.ProgressTenders.Size = new System.Drawing.Size(388, 30);
-            this.ProgressTenders.TabIndex = 29;
-            this.ProgressTenders.Visible = false;
-            // 
-            // label21
-            // 
-            this.label21.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label21.BackColor = System.Drawing.Color.LemonChiffon;
-            this.label21.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label21.ForeColor = System.Drawing.Color.Black;
-            this.label21.Location = new System.Drawing.Point(346, 5);
-            this.label21.Name = "label21";
-            this.label21.Size = new System.Drawing.Size(500, 20);
-            this.label21.TabIndex = 9;
-            this.label21.Text = "入　　札　　案　　件　　状　　況　　一　　覧";
-            this.label21.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // dgvTenders
             // 
             this.dgvTenders.AllowUserToAddRows = false;
@@ -1958,70 +5708,6 @@
             this.dataGridViewTextBoxColumn31.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.dataGridViewTextBoxColumn31.Width = 350;
             // 
-            // tabPage18
-            // 
-            this.tabPage18.BackColor = System.Drawing.Color.Black;
-            this.tabPage18.Controls.Add(this.btnDataCopyC);
-            this.tabPage18.Controls.Add(this.btnReLoadBudgetUp);
-            this.tabPage18.Controls.Add(this.ProgressBudgetUp);
-            this.tabPage18.Controls.Add(this.label22);
-            this.tabPage18.Controls.Add(this.dgvBudgetUp);
-            this.tabPage18.Location = new System.Drawing.Point(4, 30);
-            this.tabPage18.Name = "tabPage18";
-            this.tabPage18.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage18.TabIndex = 16;
-            this.tabPage18.Text = "予算取り案件";
-            // 
-            // btnDataCopyC
-            // 
-            this.btnDataCopyC.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataCopyC.BackColor = System.Drawing.Color.DarkOrange;
-            this.btnDataCopyC.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataCopyC.ForeColor = System.Drawing.Color.Black;
-            this.btnDataCopyC.Location = new System.Drawing.Point(801, 501);
-            this.btnDataCopyC.Name = "btnDataCopyC";
-            this.btnDataCopyC.Size = new System.Drawing.Size(260, 30);
-            this.btnDataCopyC.TabIndex = 34;
-            this.btnDataCopyC.Text = "既存工事からコピー登録";
-            this.btnDataCopyC.UseVisualStyleBackColor = false;
-            this.btnDataCopyC.Click += new System.EventHandler(this.btnDataCopy_Click);
-            // 
-            // btnReLoadBudgetUp
-            // 
-            this.btnReLoadBudgetUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadBudgetUp.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadBudgetUp.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadBudgetUp.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadBudgetUp.Name = "btnReLoadBudgetUp";
-            this.btnReLoadBudgetUp.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadBudgetUp.TabIndex = 32;
-            this.btnReLoadBudgetUp.TabStop = false;
-            this.btnReLoadBudgetUp.Text = "最新の状態へ";
-            this.btnReLoadBudgetUp.UseVisualStyleBackColor = false;
-            this.btnReLoadBudgetUp.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // ProgressBudgetUp
-            // 
-            this.ProgressBudgetUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressBudgetUp.Location = new System.Drawing.Point(6, 501);
-            this.ProgressBudgetUp.Name = "ProgressBudgetUp";
-            this.ProgressBudgetUp.Size = new System.Drawing.Size(388, 30);
-            this.ProgressBudgetUp.TabIndex = 29;
-            this.ProgressBudgetUp.Visible = false;
-            // 
-            // label22
-            // 
-            this.label22.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label22.BackColor = System.Drawing.Color.Cornsilk;
-            this.label22.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label22.ForeColor = System.Drawing.Color.Black;
-            this.label22.Location = new System.Drawing.Point(346, 5);
-            this.label22.Name = "label22";
-            this.label22.Size = new System.Drawing.Size(500, 20);
-            this.label22.TabIndex = 11;
-            this.label22.Text = "予　　算　　取　　り　　案　　件　　状　　況　　一　　覧";
-            this.label22.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // dgvBudgetUp
             // 
             this.dgvBudgetUp.AllowUserToAddRows = false;
@@ -2215,297 +5901,6 @@
             this.dataGridViewTextBoxColumn43.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.dataGridViewTextBoxColumn43.Width = 350;
             // 
-            // tabPage9
-            // 
-            this.tabPage9.BackColor = System.Drawing.Color.Black;
-            this.tabPage9.Controls.Add(this.lblDepTotal05);
-            this.tabPage9.Controls.Add(this.lblDep05);
-            this.tabPage9.Controls.Add(this.numUDConstPro);
-            this.tabPage9.Controls.Add(this.lblTotal03);
-            this.tabPage9.Controls.Add(this.lblTotal02);
-            this.tabPage9.Controls.Add(this.lblTotal01);
-            this.tabPage9.Controls.Add(this.lblDepTotal04);
-            this.tabPage9.Controls.Add(this.lblDepTotal03);
-            this.tabPage9.Controls.Add(this.lblDepTotal02);
-            this.tabPage9.Controls.Add(this.label30);
-            this.tabPage9.Controls.Add(this.lblDepTotal01);
-            this.tabPage9.Controls.Add(this.label28);
-            this.tabPage9.Controls.Add(this.lblPeriod);
-            this.tabPage9.Controls.Add(this.lblDep04);
-            this.tabPage9.Controls.Add(this.label23);
-            this.tabPage9.Controls.Add(this.lblDep03);
-            this.tabPage9.Controls.Add(this.lblDep02);
-            this.tabPage9.Controls.Add(this.lblDep01);
-            this.tabPage9.Controls.Add(this.ProgressConstructionProjects);
-            this.tabPage9.Controls.Add(this.btnReloadConstructionProjects);
-            this.tabPage9.Controls.Add(this.label12);
-            this.tabPage9.Controls.Add(this.dgvConstructionProjects);
-            this.tabPage9.Location = new System.Drawing.Point(4, 30);
-            this.tabPage9.Name = "tabPage9";
-            this.tabPage9.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage9.TabIndex = 7;
-            this.tabPage9.Text = "受注工事";
-            // 
-            // lblDepTotal05
-            // 
-            this.lblDepTotal05.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDepTotal05.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblDepTotal05.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDepTotal05.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDepTotal05.Location = new System.Drawing.Point(895, 506);
-            this.lblDepTotal05.Name = "lblDepTotal05";
-            this.lblDepTotal05.Size = new System.Drawing.Size(130, 20);
-            this.lblDepTotal05.TabIndex = 37;
-            this.lblDepTotal05.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblDep05
-            // 
-            this.lblDep05.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDep05.BackColor = System.Drawing.Color.Aqua;
-            this.lblDep05.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDep05.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDep05.Location = new System.Drawing.Point(775, 506);
-            this.lblDep05.Name = "lblDep05";
-            this.lblDep05.Size = new System.Drawing.Size(120, 20);
-            this.lblDep05.TabIndex = 38;
-            this.lblDep05.Text = "企・設・ﾘﾌｫｰﾑ部";
-            this.lblDep05.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // numUDConstPro
-            // 
-            this.numUDConstPro.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.numUDConstPro.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numUDConstPro.Location = new System.Drawing.Point(895, 458);
-            this.numUDConstPro.Name = "numUDConstPro";
-            this.numUDConstPro.ReadOnly = true;
-            this.numUDConstPro.Size = new System.Drawing.Size(130, 20);
-            this.numUDConstPro.TabIndex = 36;
-            this.numUDConstPro.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            this.numUDConstPro.ValueChanged += new System.EventHandler(this.numUDConstPro_ValueChanged);
-            // 
-            // lblTotal03
-            // 
-            this.lblTotal03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblTotal03.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblTotal03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotal03.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotal03.Location = new System.Drawing.Point(638, 458);
-            this.lblTotal03.Name = "lblTotal03";
-            this.lblTotal03.Size = new System.Drawing.Size(130, 20);
-            this.lblTotal03.TabIndex = 33;
-            this.lblTotal03.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblTotal02
-            // 
-            this.lblTotal02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblTotal02.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblTotal02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotal02.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotal02.Location = new System.Drawing.Point(382, 458);
-            this.lblTotal02.Name = "lblTotal02";
-            this.lblTotal02.Size = new System.Drawing.Size(130, 20);
-            this.lblTotal02.TabIndex = 33;
-            this.lblTotal02.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblTotal01
-            // 
-            this.lblTotal01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblTotal01.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblTotal01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblTotal01.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblTotal01.Location = new System.Drawing.Point(126, 458);
-            this.lblTotal01.Name = "lblTotal01";
-            this.lblTotal01.Size = new System.Drawing.Size(130, 20);
-            this.lblTotal01.TabIndex = 33;
-            this.lblTotal01.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblDepTotal04
-            // 
-            this.lblDepTotal04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDepTotal04.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblDepTotal04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDepTotal04.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDepTotal04.Location = new System.Drawing.Point(126, 482);
-            this.lblDepTotal04.Name = "lblDepTotal04";
-            this.lblDepTotal04.Size = new System.Drawing.Size(130, 20);
-            this.lblDepTotal04.TabIndex = 33;
-            this.lblDepTotal04.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblDepTotal03
-            // 
-            this.lblDepTotal03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDepTotal03.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblDepTotal03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDepTotal03.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDepTotal03.Location = new System.Drawing.Point(638, 506);
-            this.lblDepTotal03.Name = "lblDepTotal03";
-            this.lblDepTotal03.Size = new System.Drawing.Size(130, 20);
-            this.lblDepTotal03.TabIndex = 33;
-            this.lblDepTotal03.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblDepTotal02
-            // 
-            this.lblDepTotal02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDepTotal02.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblDepTotal02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDepTotal02.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDepTotal02.Location = new System.Drawing.Point(382, 506);
-            this.lblDepTotal02.Name = "lblDepTotal02";
-            this.lblDepTotal02.Size = new System.Drawing.Size(130, 20);
-            this.lblDepTotal02.TabIndex = 33;
-            this.lblDepTotal02.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label30
-            // 
-            this.label30.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.label30.BackColor = System.Drawing.Color.Yellow;
-            this.label30.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label30.Location = new System.Drawing.Point(518, 458);
-            this.label30.Name = "label30";
-            this.label30.Size = new System.Drawing.Size(120, 20);
-            this.label30.TabIndex = 33;
-            this.label30.Text = "総合計金額";
-            this.label30.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblDepTotal01
-            // 
-            this.lblDepTotal01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDepTotal01.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblDepTotal01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDepTotal01.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDepTotal01.Location = new System.Drawing.Point(126, 506);
-            this.lblDepTotal01.Name = "lblDepTotal01";
-            this.lblDepTotal01.Size = new System.Drawing.Size(130, 20);
-            this.lblDepTotal01.TabIndex = 33;
-            this.lblDepTotal01.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // label28
-            // 
-            this.label28.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.label28.BackColor = System.Drawing.Color.Yellow;
-            this.label28.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label28.Location = new System.Drawing.Point(262, 458);
-            this.label28.Name = "label28";
-            this.label28.Size = new System.Drawing.Size(120, 20);
-            this.label28.TabIndex = 33;
-            this.label28.Text = "総施工金額";
-            this.label28.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblPeriod
-            // 
-            this.lblPeriod.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblPeriod.BackColor = System.Drawing.Color.Gold;
-            this.lblPeriod.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblPeriod.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblPeriod.ForeColor = System.Drawing.Color.Black;
-            this.lblPeriod.Location = new System.Drawing.Point(775, 458);
-            this.lblPeriod.Name = "lblPeriod";
-            this.lblPeriod.Size = new System.Drawing.Size(120, 20);
-            this.lblPeriod.TabIndex = 33;
-            this.lblPeriod.Text = "集計期数";
-            this.lblPeriod.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblDep04
-            // 
-            this.lblDep04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDep04.BackColor = System.Drawing.Color.Aqua;
-            this.lblDep04.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDep04.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDep04.Location = new System.Drawing.Point(6, 482);
-            this.lblDep04.Name = "lblDep04";
-            this.lblDep04.Size = new System.Drawing.Size(120, 20);
-            this.lblDep04.TabIndex = 33;
-            this.lblDep04.Text = "営業部";
-            this.lblDep04.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label23
-            // 
-            this.label23.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.label23.BackColor = System.Drawing.Color.Yellow;
-            this.label23.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label23.Font = new System.Drawing.Font("ＭＳ 明朝", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label23.Location = new System.Drawing.Point(6, 458);
-            this.label23.Name = "label23";
-            this.label23.Size = new System.Drawing.Size(120, 20);
-            this.label23.TabIndex = 33;
-            this.label23.Text = "部署未定受注金額";
-            this.label23.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblDep03
-            // 
-            this.lblDep03.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDep03.BackColor = System.Drawing.Color.Aqua;
-            this.lblDep03.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDep03.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDep03.Location = new System.Drawing.Point(518, 506);
-            this.lblDep03.Name = "lblDep03";
-            this.lblDep03.Size = new System.Drawing.Size(120, 20);
-            this.lblDep03.TabIndex = 33;
-            this.lblDep03.Text = "営繕部";
-            this.lblDep03.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblDep02
-            // 
-            this.lblDep02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDep02.BackColor = System.Drawing.Color.Aqua;
-            this.lblDep02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDep02.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDep02.Location = new System.Drawing.Point(262, 506);
-            this.lblDep02.Name = "lblDep02";
-            this.lblDep02.Size = new System.Drawing.Size(120, 20);
-            this.lblDep02.TabIndex = 33;
-            this.lblDep02.Text = "工事部";
-            this.lblDep02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblDep01
-            // 
-            this.lblDep01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDep01.BackColor = System.Drawing.Color.Aqua;
-            this.lblDep01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblDep01.Font = new System.Drawing.Font("ＭＳ 明朝", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDep01.Location = new System.Drawing.Point(6, 506);
-            this.lblDep01.Name = "lblDep01";
-            this.lblDep01.Size = new System.Drawing.Size(120, 20);
-            this.lblDep01.TabIndex = 33;
-            this.lblDep01.Text = "山本組";
-            this.lblDep01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // ProgressConstructionProjects
-            // 
-            this.ProgressConstructionProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-            this.ProgressConstructionProjects.Location = new System.Drawing.Point(853, 4);
-            this.ProgressConstructionProjects.Name = "ProgressConstructionProjects";
-            this.ProgressConstructionProjects.Size = new System.Drawing.Size(333, 22);
-            this.ProgressConstructionProjects.TabIndex = 32;
-            this.ProgressConstructionProjects.Visible = false;
-            // 
-            // btnReloadConstructionProjects
-            // 
-            this.btnReloadConstructionProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReloadConstructionProjects.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReloadConstructionProjects.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReloadConstructionProjects.Location = new System.Drawing.Point(1066, 506);
-            this.btnReloadConstructionProjects.Name = "btnReloadConstructionProjects";
-            this.btnReloadConstructionProjects.Size = new System.Drawing.Size(120, 26);
-            this.btnReloadConstructionProjects.TabIndex = 31;
-            this.btnReloadConstructionProjects.TabStop = false;
-            this.btnReloadConstructionProjects.Text = "最新の状態へ";
-            this.btnReloadConstructionProjects.UseVisualStyleBackColor = false;
-            this.btnReloadConstructionProjects.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // label12
-            // 
-            this.label12.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label12.BackColor = System.Drawing.Color.Cyan;
-            this.label12.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label12.ForeColor = System.Drawing.Color.Black;
-            this.label12.Location = new System.Drawing.Point(346, 5);
-            this.label12.Name = "label12";
-            this.label12.Size = new System.Drawing.Size(500, 20);
-            this.label12.TabIndex = 30;
-            this.label12.Text = "受　　注　　状　　況　　一　　覧";
-            this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // dgvConstructionProjects
             // 
             this.dgvConstructionProjects.AllowUserToAddRows = false;
@@ -2722,70 +6117,6 @@
             this.Column11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.Column11.Width = 150;
             // 
-            // tabPage13
-            // 
-            this.tabPage13.BackColor = System.Drawing.Color.Black;
-            this.tabPage13.Controls.Add(this.btnDataCopyF);
-            this.tabPage13.Controls.Add(this.btnReloadFluctuationProjects);
-            this.tabPage13.Controls.Add(this.ProgressFluctuationProjects);
-            this.tabPage13.Controls.Add(this.label59);
-            this.tabPage13.Controls.Add(this.dgvFluctuationProjects);
-            this.tabPage13.Location = new System.Drawing.Point(4, 30);
-            this.tabPage13.Name = "tabPage13";
-            this.tabPage13.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage13.TabIndex = 22;
-            this.tabPage13.Text = "増減工事";
-            // 
-            // btnDataCopyF
-            // 
-            this.btnDataCopyF.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataCopyF.BackColor = System.Drawing.Color.DarkOrange;
-            this.btnDataCopyF.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataCopyF.ForeColor = System.Drawing.Color.Black;
-            this.btnDataCopyF.Location = new System.Drawing.Point(801, 501);
-            this.btnDataCopyF.Name = "btnDataCopyF";
-            this.btnDataCopyF.Size = new System.Drawing.Size(260, 30);
-            this.btnDataCopyF.TabIndex = 43;
-            this.btnDataCopyF.Text = "既存工事からコピー登録";
-            this.btnDataCopyF.UseVisualStyleBackColor = false;
-            this.btnDataCopyF.Click += new System.EventHandler(this.btnDataCopy_Click);
-            // 
-            // btnReloadFluctuationProjects
-            // 
-            this.btnReloadFluctuationProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReloadFluctuationProjects.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReloadFluctuationProjects.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReloadFluctuationProjects.Location = new System.Drawing.Point(1066, 501);
-            this.btnReloadFluctuationProjects.Name = "btnReloadFluctuationProjects";
-            this.btnReloadFluctuationProjects.Size = new System.Drawing.Size(120, 30);
-            this.btnReloadFluctuationProjects.TabIndex = 42;
-            this.btnReloadFluctuationProjects.TabStop = false;
-            this.btnReloadFluctuationProjects.Text = "最新の状態へ";
-            this.btnReloadFluctuationProjects.UseVisualStyleBackColor = false;
-            this.btnReloadFluctuationProjects.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // ProgressFluctuationProjects
-            // 
-            this.ProgressFluctuationProjects.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressFluctuationProjects.Location = new System.Drawing.Point(6, 501);
-            this.ProgressFluctuationProjects.Name = "ProgressFluctuationProjects";
-            this.ProgressFluctuationProjects.Size = new System.Drawing.Size(388, 30);
-            this.ProgressFluctuationProjects.TabIndex = 41;
-            this.ProgressFluctuationProjects.Visible = false;
-            // 
-            // label59
-            // 
-            this.label59.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label59.BackColor = System.Drawing.Color.DarkCyan;
-            this.label59.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label59.ForeColor = System.Drawing.Color.Black;
-            this.label59.Location = new System.Drawing.Point(346, 5);
-            this.label59.Name = "label59";
-            this.label59.Size = new System.Drawing.Size(500, 20);
-            this.label59.TabIndex = 40;
-            this.label59.Text = "増　減　工　事　状　況　一　覧";
-            this.label59.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // dgvFluctuationProjects
             // 
             this.dgvFluctuationProjects.AllowUserToAddRows = false;
@@ -2999,122 +6330,6 @@
             this.dataGridViewTextBoxColumn52.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.dataGridViewTextBoxColumn52.Width = 150;
             // 
-            // tabPage14
-            // 
-            this.tabPage14.BackColor = System.Drawing.Color.Black;
-            this.tabPage14.Controls.Add(this.label39);
-            this.tabPage14.Controls.Add(this.numUDNonOrder);
-            this.tabPage14.Controls.Add(this.label40);
-            this.tabPage14.Controls.Add(this.label41);
-            this.tabPage14.Controls.Add(this.btnDataCopyD);
-            this.tabPage14.Controls.Add(this.ProgressNonOrders);
-            this.tabPage14.Controls.Add(this.btnReloadNonOrders);
-            this.tabPage14.Controls.Add(this.label13);
-            this.tabPage14.Controls.Add(this.dgvNonOrders);
-            this.tabPage14.Location = new System.Drawing.Point(4, 30);
-            this.tabPage14.Name = "tabPage14";
-            this.tabPage14.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage14.TabIndex = 12;
-            this.tabPage14.Text = "非受注工事";
-            // 
-            // label39
-            // 
-            this.label39.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.label39.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label39.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label39.ForeColor = System.Drawing.Color.Black;
-            this.label39.Location = new System.Drawing.Point(6, 5);
-            this.label39.Name = "label39";
-            this.label39.Size = new System.Drawing.Size(120, 20);
-            this.label39.TabIndex = 69;
-            this.label39.Text = "営業期";
-            this.label39.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // numUDNonOrder
-            // 
-            this.numUDNonOrder.BackColor = System.Drawing.Color.White;
-            this.numUDNonOrder.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numUDNonOrder.ForeColor = System.Drawing.Color.Black;
-            this.numUDNonOrder.Location = new System.Drawing.Point(159, 4);
-            this.numUDNonOrder.Name = "numUDNonOrder";
-            this.numUDNonOrder.ReadOnly = true;
-            this.numUDNonOrder.Size = new System.Drawing.Size(80, 23);
-            this.numUDNonOrder.TabIndex = 66;
-            this.numUDNonOrder.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            this.numUDNonOrder.ValueChanged += new System.EventHandler(this.numUDNonOrder_ValueChanged);
-            // 
-            // label40
-            // 
-            this.label40.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label40.ForeColor = System.Drawing.Color.White;
-            this.label40.Location = new System.Drawing.Point(239, 7);
-            this.label40.Name = "label40";
-            this.label40.Size = new System.Drawing.Size(25, 16);
-            this.label40.TabIndex = 67;
-            this.label40.Text = "期";
-            this.label40.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label41
-            // 
-            this.label41.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label41.ForeColor = System.Drawing.Color.White;
-            this.label41.Location = new System.Drawing.Point(134, 7);
-            this.label41.Name = "label41";
-            this.label41.Size = new System.Drawing.Size(25, 16);
-            this.label41.TabIndex = 68;
-            this.label41.Text = "第";
-            this.label41.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // btnDataCopyD
-            // 
-            this.btnDataCopyD.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataCopyD.BackColor = System.Drawing.Color.DarkOrange;
-            this.btnDataCopyD.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataCopyD.ForeColor = System.Drawing.Color.Black;
-            this.btnDataCopyD.Location = new System.Drawing.Point(801, 501);
-            this.btnDataCopyD.Name = "btnDataCopyD";
-            this.btnDataCopyD.Size = new System.Drawing.Size(260, 30);
-            this.btnDataCopyD.TabIndex = 42;
-            this.btnDataCopyD.Text = "既存工事からコピー登録";
-            this.btnDataCopyD.UseVisualStyleBackColor = false;
-            this.btnDataCopyD.Click += new System.EventHandler(this.btnDataCopy_Click);
-            // 
-            // ProgressNonOrders
-            // 
-            this.ProgressNonOrders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressNonOrders.Location = new System.Drawing.Point(6, 501);
-            this.ProgressNonOrders.Name = "ProgressNonOrders";
-            this.ProgressNonOrders.Size = new System.Drawing.Size(388, 30);
-            this.ProgressNonOrders.TabIndex = 40;
-            this.ProgressNonOrders.Visible = false;
-            // 
-            // btnReloadNonOrders
-            // 
-            this.btnReloadNonOrders.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReloadNonOrders.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReloadNonOrders.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReloadNonOrders.Location = new System.Drawing.Point(1066, 501);
-            this.btnReloadNonOrders.Name = "btnReloadNonOrders";
-            this.btnReloadNonOrders.Size = new System.Drawing.Size(120, 30);
-            this.btnReloadNonOrders.TabIndex = 39;
-            this.btnReloadNonOrders.TabStop = false;
-            this.btnReloadNonOrders.Text = "最新の状態へ";
-            this.btnReloadNonOrders.UseVisualStyleBackColor = false;
-            this.btnReloadNonOrders.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // label13
-            // 
-            this.label13.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label13.BackColor = System.Drawing.Color.Red;
-            this.label13.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label13.ForeColor = System.Drawing.Color.Black;
-            this.label13.Location = new System.Drawing.Point(346, 5);
-            this.label13.Name = "label13";
-            this.label13.Size = new System.Drawing.Size(500, 20);
-            this.label13.TabIndex = 38;
-            this.label13.Text = "ボ　　ツ　　案　　件　　状　　況　　一　　覧";
-            this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // dgvNonOrders
             // 
             this.dgvNonOrders.AllowUserToAddRows = false;
@@ -3241,161 +6456,6 @@
             this.dataGridViewTextBoxColumn18.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.dataGridViewTextBoxColumn18.Width = 400;
             // 
-            // tabPage15
-            // 
-            this.tabPage15.BackColor = System.Drawing.Color.Black;
-            this.tabPage15.Controls.Add(this.label9);
-            this.tabPage15.Controls.Add(this.numUDCompletion);
-            this.tabPage15.Controls.Add(this.label10);
-            this.tabPage15.Controls.Add(this.label17);
-            this.tabPage15.Controls.Add(this.lblCompTotal02);
-            this.tabPage15.Controls.Add(this.lblCompTotal01);
-            this.tabPage15.Controls.Add(this.lblCompTitle02);
-            this.tabPage15.Controls.Add(this.lblCompTitle01);
-            this.tabPage15.Controls.Add(this.ProgressCompletionOfConstruction);
-            this.tabPage15.Controls.Add(this.btnReloadCompletionOfConstruction);
-            this.tabPage15.Controls.Add(this.label14);
-            this.tabPage15.Controls.Add(this.dgvCompletionOfConstruction);
-            this.tabPage15.Location = new System.Drawing.Point(4, 30);
-            this.tabPage15.Name = "tabPage15";
-            this.tabPage15.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage15.TabIndex = 13;
-            this.tabPage15.Text = "完了工事";
-            // 
-            // label9
-            // 
-            this.label9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.label9.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label9.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label9.ForeColor = System.Drawing.Color.Black;
-            this.label9.Location = new System.Drawing.Point(6, 5);
-            this.label9.Name = "label9";
-            this.label9.Size = new System.Drawing.Size(120, 20);
-            this.label9.TabIndex = 65;
-            this.label9.Text = "営業期";
-            this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // numUDCompletion
-            // 
-            this.numUDCompletion.BackColor = System.Drawing.Color.White;
-            this.numUDCompletion.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.numUDCompletion.ForeColor = System.Drawing.Color.Black;
-            this.numUDCompletion.Location = new System.Drawing.Point(159, 4);
-            this.numUDCompletion.Name = "numUDCompletion";
-            this.numUDCompletion.ReadOnly = true;
-            this.numUDCompletion.Size = new System.Drawing.Size(80, 23);
-            this.numUDCompletion.TabIndex = 62;
-            this.numUDCompletion.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            this.numUDCompletion.ValueChanged += new System.EventHandler(this.numUDCompletion_ValueChanged);
-            // 
-            // label10
-            // 
-            this.label10.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label10.ForeColor = System.Drawing.Color.White;
-            this.label10.Location = new System.Drawing.Point(239, 7);
-            this.label10.Name = "label10";
-            this.label10.Size = new System.Drawing.Size(25, 16);
-            this.label10.TabIndex = 63;
-            this.label10.Text = "期";
-            this.label10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label17
-            // 
-            this.label17.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label17.ForeColor = System.Drawing.Color.White;
-            this.label17.Location = new System.Drawing.Point(134, 7);
-            this.label17.Name = "label17";
-            this.label17.Size = new System.Drawing.Size(25, 16);
-            this.label17.TabIndex = 64;
-            this.label17.Text = "第";
-            this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblCompTotal02
-            // 
-            this.lblCompTotal02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblCompTotal02.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblCompTotal02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblCompTotal02.Location = new System.Drawing.Point(836, 504);
-            this.lblCompTotal02.Name = "lblCompTotal02";
-            this.lblCompTotal02.Size = new System.Drawing.Size(130, 25);
-            this.lblCompTotal02.TabIndex = 46;
-            this.lblCompTotal02.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            this.lblCompTotal02.Visible = false;
-            // 
-            // lblCompTotal01
-            // 
-            this.lblCompTotal01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblCompTotal01.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.lblCompTotal01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblCompTotal01.Location = new System.Drawing.Point(580, 504);
-            this.lblCompTotal01.Name = "lblCompTotal01";
-            this.lblCompTotal01.Size = new System.Drawing.Size(130, 25);
-            this.lblCompTotal01.TabIndex = 47;
-            this.lblCompTotal01.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            this.lblCompTotal01.Visible = false;
-            // 
-            // lblCompTitle02
-            // 
-            this.lblCompTitle02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblCompTitle02.BackColor = System.Drawing.Color.Yellow;
-            this.lblCompTitle02.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblCompTitle02.Location = new System.Drawing.Point(716, 504);
-            this.lblCompTitle02.Name = "lblCompTitle02";
-            this.lblCompTitle02.Size = new System.Drawing.Size(120, 25);
-            this.lblCompTitle02.TabIndex = 48;
-            this.lblCompTitle02.Text = "今期完了金額";
-            this.lblCompTitle02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            this.lblCompTitle02.Visible = false;
-            // 
-            // lblCompTitle01
-            // 
-            this.lblCompTitle01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblCompTitle01.BackColor = System.Drawing.Color.Yellow;
-            this.lblCompTitle01.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.lblCompTitle01.Location = new System.Drawing.Point(460, 504);
-            this.lblCompTitle01.Name = "lblCompTitle01";
-            this.lblCompTitle01.Size = new System.Drawing.Size(120, 25);
-            this.lblCompTitle01.TabIndex = 49;
-            this.lblCompTitle01.Text = "前期完了金額";
-            this.lblCompTitle01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            this.lblCompTitle01.Visible = false;
-            // 
-            // ProgressCompletionOfConstruction
-            // 
-            this.ProgressCompletionOfConstruction.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.ProgressCompletionOfConstruction.Location = new System.Drawing.Point(6, 501);
-            this.ProgressCompletionOfConstruction.Name = "ProgressCompletionOfConstruction";
-            this.ProgressCompletionOfConstruction.Size = new System.Drawing.Size(388, 30);
-            this.ProgressCompletionOfConstruction.TabIndex = 44;
-            this.ProgressCompletionOfConstruction.Visible = false;
-            // 
-            // btnReloadCompletionOfConstruction
-            // 
-            this.btnReloadCompletionOfConstruction.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReloadCompletionOfConstruction.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReloadCompletionOfConstruction.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReloadCompletionOfConstruction.Location = new System.Drawing.Point(1066, 501);
-            this.btnReloadCompletionOfConstruction.Name = "btnReloadCompletionOfConstruction";
-            this.btnReloadCompletionOfConstruction.Size = new System.Drawing.Size(120, 30);
-            this.btnReloadCompletionOfConstruction.TabIndex = 43;
-            this.btnReloadCompletionOfConstruction.TabStop = false;
-            this.btnReloadCompletionOfConstruction.Text = "最新の状態へ";
-            this.btnReloadCompletionOfConstruction.UseVisualStyleBackColor = false;
-            this.btnReloadCompletionOfConstruction.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // label14
-            // 
-            this.label14.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label14.BackColor = System.Drawing.Color.Lime;
-            this.label14.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label14.ForeColor = System.Drawing.Color.Black;
-            this.label14.Location = new System.Drawing.Point(346, 5);
-            this.label14.Name = "label14";
-            this.label14.Size = new System.Drawing.Size(500, 20);
-            this.label14.TabIndex = 42;
-            this.label14.Text = "完　　了　　工　　事　　状　　況　　一　　覧";
-            this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // dgvCompletionOfConstruction
             // 
             this.dgvCompletionOfConstruction.AllowUserToAddRows = false;
@@ -3577,22 +6637,6 @@
             this.dataGridViewTextBoxActionColDays19.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.dataGridViewTextBoxActionColDays19.Width = 350;
             // 
-            // tabPage10
-            // 
-            this.tabPage10.BackColor = System.Drawing.Color.Black;
-            this.tabPage10.Controls.Add(this.dgvActionSchedule);
-            this.tabPage10.Controls.Add(this.btnDispRight);
-            this.tabPage10.Controls.Add(this.btnDispLeft);
-            this.tabPage10.Controls.Add(this.btnVehicleSchdule);
-            this.tabPage10.Controls.Add(this.btnActionSchdule);
-            this.tabPage10.Controls.Add(this.btnReLoadActionSchedule);
-            this.tabPage10.Controls.Add(this.label20);
-            this.tabPage10.Location = new System.Drawing.Point(4, 30);
-            this.tabPage10.Name = "tabPage10";
-            this.tabPage10.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage10.TabIndex = 8;
-            this.tabPage10.Text = "行動一覧";
-            // 
             // dgvActionSchedule
             // 
             this.dgvActionSchedule.AllowUserToAddRows = false;
@@ -4041,137 +7085,6 @@
             this.ActionColDays31.Resizable = System.Windows.Forms.DataGridViewTriState.False;
             this.ActionColDays31.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             // 
-            // btnDispRight
-            // 
-            this.btnDispRight.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDispRight.Location = new System.Drawing.Point(1146, 5);
-            this.btnDispRight.Name = "btnDispRight";
-            this.btnDispRight.Size = new System.Drawing.Size(40, 20);
-            this.btnDispRight.TabIndex = 52;
-            this.btnDispRight.Text = ">>";
-            this.btnDispRight.UseVisualStyleBackColor = true;
-            this.btnDispRight.Visible = false;
-            this.btnDispRight.Click += new System.EventHandler(this.btnDispRight_Click);
-            // 
-            // btnDispLeft
-            // 
-            this.btnDispLeft.Font = new System.Drawing.Font("ＭＳ 明朝", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDispLeft.Location = new System.Drawing.Point(6, 5);
-            this.btnDispLeft.Name = "btnDispLeft";
-            this.btnDispLeft.Size = new System.Drawing.Size(40, 20);
-            this.btnDispLeft.TabIndex = 51;
-            this.btnDispLeft.Text = "<<";
-            this.btnDispLeft.TextAlign = System.Drawing.ContentAlignment.TopCenter;
-            this.btnDispLeft.UseVisualStyleBackColor = true;
-            this.btnDispLeft.Visible = false;
-            this.btnDispLeft.Click += new System.EventHandler(this.btnDispLeft_Click);
-            // 
-            // btnVehicleSchdule
-            // 
-            this.btnVehicleSchdule.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.btnVehicleSchdule.BackColor = System.Drawing.Color.Green;
-            this.btnVehicleSchdule.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnVehicleSchdule.ForeColor = System.Drawing.Color.White;
-            this.btnVehicleSchdule.Location = new System.Drawing.Point(132, 501);
-            this.btnVehicleSchdule.Name = "btnVehicleSchdule";
-            this.btnVehicleSchdule.Size = new System.Drawing.Size(120, 30);
-            this.btnVehicleSchdule.TabIndex = 50;
-            this.btnVehicleSchdule.TabStop = false;
-            this.btnVehicleSchdule.Text = "車両予約入力";
-            this.btnVehicleSchdule.UseVisualStyleBackColor = false;
-            this.btnVehicleSchdule.Click += new System.EventHandler(this.btnVehicleSchdule_Click);
-            // 
-            // btnActionSchdule
-            // 
-            this.btnActionSchdule.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.btnActionSchdule.BackColor = System.Drawing.Color.Green;
-            this.btnActionSchdule.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnActionSchdule.ForeColor = System.Drawing.Color.White;
-            this.btnActionSchdule.Location = new System.Drawing.Point(6, 501);
-            this.btnActionSchdule.Name = "btnActionSchdule";
-            this.btnActionSchdule.Size = new System.Drawing.Size(120, 30);
-            this.btnActionSchdule.TabIndex = 50;
-            this.btnActionSchdule.TabStop = false;
-            this.btnActionSchdule.Text = "行動予定入力";
-            this.btnActionSchdule.UseVisualStyleBackColor = false;
-            this.btnActionSchdule.Click += new System.EventHandler(this.btnActionSchdule_Click);
-            // 
-            // btnReLoadActionSchedule
-            // 
-            this.btnReLoadActionSchedule.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadActionSchedule.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadActionSchedule.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadActionSchedule.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadActionSchedule.Name = "btnReLoadActionSchedule";
-            this.btnReLoadActionSchedule.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadActionSchedule.TabIndex = 50;
-            this.btnReLoadActionSchedule.TabStop = false;
-            this.btnReLoadActionSchedule.Text = "最新の状態へ";
-            this.btnReLoadActionSchedule.UseVisualStyleBackColor = false;
-            this.btnReLoadActionSchedule.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // label20
-            // 
-            this.label20.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label20.BackColor = System.Drawing.Color.White;
-            this.label20.ForeColor = System.Drawing.Color.Black;
-            this.label20.Location = new System.Drawing.Point(346, 5);
-            this.label20.Name = "label20";
-            this.label20.Size = new System.Drawing.Size(500, 20);
-            this.label20.TabIndex = 47;
-            this.label20.Text = "行　　動　　予　　定　　一　　覧";
-            this.label20.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // tabPage11
-            // 
-            this.tabPage11.AutoScroll = true;
-            this.tabPage11.BackColor = System.Drawing.Color.Black;
-            this.tabPage11.Controls.Add(this.progBarStaffAssignment);
-            this.tabPage11.Controls.Add(this.btnReLoadStaffAssignment);
-            this.tabPage11.Controls.Add(this.label15);
-            this.tabPage11.Controls.Add(this.dgvStaffAssignment);
-            this.tabPage11.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.tabPage11.Location = new System.Drawing.Point(4, 30);
-            this.tabPage11.Name = "tabPage11";
-            this.tabPage11.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage11.TabIndex = 9;
-            this.tabPage11.Text = "人員配置";
-            // 
-            // progBarStaffAssignment
-            // 
-            this.progBarStaffAssignment.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.progBarStaffAssignment.Location = new System.Drawing.Point(6, 501);
-            this.progBarStaffAssignment.Name = "progBarStaffAssignment";
-            this.progBarStaffAssignment.Size = new System.Drawing.Size(388, 30);
-            this.progBarStaffAssignment.TabIndex = 53;
-            this.progBarStaffAssignment.Visible = false;
-            // 
-            // btnReLoadStaffAssignment
-            // 
-            this.btnReLoadStaffAssignment.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadStaffAssignment.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadStaffAssignment.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadStaffAssignment.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadStaffAssignment.Name = "btnReLoadStaffAssignment";
-            this.btnReLoadStaffAssignment.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadStaffAssignment.TabIndex = 51;
-            this.btnReLoadStaffAssignment.TabStop = false;
-            this.btnReLoadStaffAssignment.Text = "最新の状態へ";
-            this.btnReLoadStaffAssignment.UseVisualStyleBackColor = false;
-            this.btnReLoadStaffAssignment.Click += new System.EventHandler(this.btnReLoad_Click);
-            // 
-            // label15
-            // 
-            this.label15.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label15.BackColor = System.Drawing.Color.White;
-            this.label15.ForeColor = System.Drawing.Color.Black;
-            this.label15.Location = new System.Drawing.Point(346, 5);
-            this.label15.Name = "label15";
-            this.label15.Size = new System.Drawing.Size(500, 20);
-            this.label15.TabIndex = 48;
-            this.label15.Text = "人　　員　　配　　置　　一　　覧";
-            this.label15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
             // dgvStaffAssignment
             // 
             this.dgvStaffAssignment.AllowUserToAddRows = false;
@@ -4293,3290 +7206,6 @@
             this.StaffFixColumn06.ReadOnly = true;
             this.StaffFixColumn06.Width = 80;
             // 
-            // tabPage12
-            // 
-            this.tabPage12.BackColor = System.Drawing.Color.Black;
-            this.tabPage12.Controls.Add(this.label36);
-            this.tabPage12.Controls.Add(this.SalseGraphNum);
-            this.tabPage12.Controls.Add(this.label37);
-            this.tabPage12.Controls.Add(this.label38);
-            this.tabPage12.Controls.Add(this.lblSalesGraphUpdate);
-            this.tabPage12.Controls.Add(this.chartSalesGraph);
-            this.tabPage12.Controls.Add(this.label24);
-            this.tabPage12.Controls.Add(this.progBarSalesGraph);
-            this.tabPage12.Controls.Add(this.btnReLoadSalesGraph);
-            this.tabPage12.ForeColor = System.Drawing.Color.Black;
-            this.tabPage12.Location = new System.Drawing.Point(4, 30);
-            this.tabPage12.Name = "tabPage12";
-            this.tabPage12.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage12.TabIndex = 10;
-            this.tabPage12.Text = "売上グラフ";
-            // 
-            // label36
-            // 
-            this.label36.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.label36.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.label36.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label36.ForeColor = System.Drawing.Color.Black;
-            this.label36.Location = new System.Drawing.Point(6, 3);
-            this.label36.Name = "label36";
-            this.label36.Size = new System.Drawing.Size(120, 25);
-            this.label36.TabIndex = 61;
-            this.label36.Text = "営業期";
-            this.label36.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // SalseGraphNum
-            // 
-            this.SalseGraphNum.BackColor = System.Drawing.Color.White;
-            this.SalseGraphNum.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.SalseGraphNum.ForeColor = System.Drawing.Color.Black;
-            this.SalseGraphNum.Location = new System.Drawing.Point(159, 4);
-            this.SalseGraphNum.Name = "SalseGraphNum";
-            this.SalseGraphNum.ReadOnly = true;
-            this.SalseGraphNum.Size = new System.Drawing.Size(80, 23);
-            this.SalseGraphNum.TabIndex = 0;
-            this.SalseGraphNum.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
-            this.SalseGraphNum.ValueChanged += new System.EventHandler(this.SalseGraphNum_ValueChanged);
-            // 
-            // label37
-            // 
-            this.label37.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label37.ForeColor = System.Drawing.Color.White;
-            this.label37.Location = new System.Drawing.Point(239, 7);
-            this.label37.Name = "label37";
-            this.label37.Size = new System.Drawing.Size(25, 16);
-            this.label37.TabIndex = 58;
-            this.label37.Text = "期";
-            this.label37.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label38
-            // 
-            this.label38.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label38.ForeColor = System.Drawing.Color.White;
-            this.label38.Location = new System.Drawing.Point(134, 7);
-            this.label38.Name = "label38";
-            this.label38.Size = new System.Drawing.Size(25, 16);
-            this.label38.TabIndex = 59;
-            this.label38.Text = "第";
-            this.label38.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblSalesGraphUpdate
-            // 
-            this.lblSalesGraphUpdate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblSalesGraphUpdate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblSalesGraphUpdate.ForeColor = System.Drawing.Color.White;
-            this.lblSalesGraphUpdate.Location = new System.Drawing.Point(886, 11);
-            this.lblSalesGraphUpdate.Name = "lblSalesGraphUpdate";
-            this.lblSalesGraphUpdate.Size = new System.Drawing.Size(300, 16);
-            this.lblSalesGraphUpdate.TabIndex = 57;
-            this.lblSalesGraphUpdate.Text = "label25";
-            this.lblSalesGraphUpdate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // chartSalesGraph
-            // 
-            this.chartSalesGraph.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)));
-            chartArea1.Name = "ChartArea1";
-            this.chartSalesGraph.ChartAreas.Add(chartArea1);
-            legend1.Name = "Legend1";
-            this.chartSalesGraph.Legends.Add(legend1);
-            this.chartSalesGraph.Location = new System.Drawing.Point(6, 29);
-            this.chartSalesGraph.Name = "chartSalesGraph";
-            series1.ChartArea = "ChartArea1";
-            series1.Color = System.Drawing.Color.Lime;
-            series1.Legend = "Legend1";
-            series1.Name = "売上";
-            series2.ChartArea = "ChartArea1";
-            series2.Color = System.Drawing.Color.Yellow;
-            series2.Legend = "Legend1";
-            series2.Name = "販管・部署経費";
-            series3.ChartArea = "ChartArea1";
-            series3.Color = System.Drawing.Color.Cyan;
-            series3.Legend = "Legend1";
-            series3.Name = "粗利益";
-            series4.ChartArea = "ChartArea1";
-            series4.Color = System.Drawing.Color.Blue;
-            series4.Legend = "Legend1";
-            series4.Name = "純利益(損益)";
-            this.chartSalesGraph.Series.Add(series1);
-            this.chartSalesGraph.Series.Add(series2);
-            this.chartSalesGraph.Series.Add(series3);
-            this.chartSalesGraph.Series.Add(series4);
-            this.chartSalesGraph.Size = new System.Drawing.Size(1180, 468);
-            this.chartSalesGraph.TabIndex = 0;
-            this.chartSalesGraph.Text = "売上グラフ";
-            // 
-            // label24
-            // 
-            this.label24.Anchor = System.Windows.Forms.AnchorStyles.Top;
-            this.label24.BackColor = System.Drawing.Color.White;
-            this.label24.ForeColor = System.Drawing.Color.Black;
-            this.label24.Location = new System.Drawing.Point(346, 5);
-            this.label24.Name = "label24";
-            this.label24.Size = new System.Drawing.Size(500, 20);
-            this.label24.TabIndex = 56;
-            this.label24.Text = "売　　上　　グ　　ラ　　フ";
-            this.label24.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // progBarSalesGraph
-            // 
-            this.progBarSalesGraph.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.progBarSalesGraph.Location = new System.Drawing.Point(6, 501);
-            this.progBarSalesGraph.Name = "progBarSalesGraph";
-            this.progBarSalesGraph.Size = new System.Drawing.Size(388, 30);
-            this.progBarSalesGraph.TabIndex = 55;
-            this.progBarSalesGraph.Visible = false;
-            // 
-            // btnReLoadSalesGraph
-            // 
-            this.btnReLoadSalesGraph.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnReLoadSalesGraph.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnReLoadSalesGraph.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnReLoadSalesGraph.Location = new System.Drawing.Point(1066, 501);
-            this.btnReLoadSalesGraph.Name = "btnReLoadSalesGraph";
-            this.btnReLoadSalesGraph.Size = new System.Drawing.Size(120, 30);
-            this.btnReLoadSalesGraph.TabIndex = 54;
-            this.btnReLoadSalesGraph.TabStop = false;
-            this.btnReLoadSalesGraph.Text = "最新の状態へ";
-            this.btnReLoadSalesGraph.UseVisualStyleBackColor = false;
-            this.btnReLoadSalesGraph.Click += new System.EventHandler(this.btnReLoadSalesGraph_Click);
-            // 
-            // tabPage1
-            // 
-            this.tabPage1.BackColor = System.Drawing.Color.RoyalBlue;
-            this.tabPage1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.tabPage1.Controls.Add(this.tblLayoutOrder);
-            this.tabPage1.Location = new System.Drawing.Point(4, 30);
-            this.tabPage1.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage1.Name = "tabPage1";
-            this.tabPage1.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage1.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage1.TabIndex = 0;
-            this.tabPage1.Text = "受注管理";
-            // 
-            // tblLayoutOrder
-            // 
-            this.tblLayoutOrder.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tblLayoutOrder.ColumnCount = 5;
-            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutOrder.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutOrder.Controls.Add(this.btnOrder00, 0, 0);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder06, 2, 0);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder01, 0, 2);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder02, 0, 4);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder03, 0, 6);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder04, 0, 8);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder10, 2, 8);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder09, 2, 6);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder08, 2, 4);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder07, 2, 2);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder12, 4, 0);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder13, 4, 2);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder14, 4, 4);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder15, 4, 6);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder16, 4, 8);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder05, 0, 10);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder11, 2, 10);
-            this.tblLayoutOrder.Controls.Add(this.btnOrder17, 4, 10);
-            this.tblLayoutOrder.Controls.Add(this.label1, 0, 1);
-            this.tblLayoutOrder.Controls.Add(this.lblArrpw1_04, 1, 4);
-            this.tblLayoutOrder.Controls.Add(this.label2, 0, 3);
-            this.tblLayoutOrder.Controls.Add(this.lblArrpw1_02, 1, 2);
-            this.tblLayoutOrder.Controls.Add(this.label3, 3, 2);
-            this.tblLayoutOrder.Location = new System.Drawing.Point(54, 16);
-            this.tblLayoutOrder.Name = "tblLayoutOrder";
-            this.tblLayoutOrder.RowCount = 11;
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutOrder.Size = new System.Drawing.Size(1080, 484);
-            this.tblLayoutOrder.TabIndex = 10;
-            // 
-            // btnOrder00
-            // 
-            this.btnOrder00.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.btnOrder00.Location = new System.Drawing.Point(4, 3);
-            this.btnOrder00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder00.Name = "btnOrder00";
-            this.btnOrder00.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder00.TabIndex = 0;
-            this.btnOrder00.Text = "工事情報入力";
-            this.btnOrder00.UseVisualStyleBackColor = true;
-            this.btnOrder00.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder06
-            // 
-            this.btnOrder06.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.btnOrder06.Location = new System.Drawing.Point(382, 3);
-            this.btnOrder06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder06.Name = "btnOrder06";
-            this.btnOrder06.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder06.TabIndex = 6;
-            this.btnOrder06.UseVisualStyleBackColor = true;
-            this.btnOrder06.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder01
-            // 
-            this.btnOrder01.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.btnOrder01.Location = new System.Drawing.Point(4, 91);
-            this.btnOrder01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder01.Name = "btnOrder01";
-            this.btnOrder01.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder01.TabIndex = 1;
-            this.btnOrder01.Text = "積算見積入力";
-            this.btnOrder01.UseVisualStyleBackColor = true;
-            this.btnOrder01.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder02
-            // 
-            this.btnOrder02.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.btnOrder02.Location = new System.Drawing.Point(4, 179);
-            this.btnOrder02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder02.Name = "btnOrder02";
-            this.btnOrder02.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder02.TabIndex = 2;
-            this.btnOrder02.Text = "積算予算入力";
-            this.btnOrder02.UseVisualStyleBackColor = true;
-            this.btnOrder02.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder03
-            // 
-            this.btnOrder03.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.btnOrder03.Location = new System.Drawing.Point(4, 267);
-            this.btnOrder03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder03.Name = "btnOrder03";
-            this.btnOrder03.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder03.TabIndex = 3;
-            this.btnOrder03.UseVisualStyleBackColor = true;
-            this.btnOrder03.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder04
-            // 
-            this.btnOrder04.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.btnOrder04.Location = new System.Drawing.Point(4, 355);
-            this.btnOrder04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder04.Name = "btnOrder04";
-            this.btnOrder04.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder04.TabIndex = 4;
-            this.btnOrder04.UseVisualStyleBackColor = true;
-            this.btnOrder04.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder10
-            // 
-            this.btnOrder10.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.btnOrder10.Location = new System.Drawing.Point(382, 355);
-            this.btnOrder10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder10.Name = "btnOrder10";
-            this.btnOrder10.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder10.TabIndex = 10;
-            this.btnOrder10.UseVisualStyleBackColor = true;
-            this.btnOrder10.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder09
-            // 
-            this.btnOrder09.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.btnOrder09.Location = new System.Drawing.Point(382, 267);
-            this.btnOrder09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder09.Name = "btnOrder09";
-            this.btnOrder09.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder09.TabIndex = 9;
-            this.btnOrder09.UseVisualStyleBackColor = true;
-            this.btnOrder09.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder08
-            // 
-            this.btnOrder08.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.btnOrder08.Location = new System.Drawing.Point(382, 179);
-            this.btnOrder08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder08.Name = "btnOrder08";
-            this.btnOrder08.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder08.TabIndex = 8;
-            this.btnOrder08.Text = "積算予算書承認";
-            this.btnOrder08.UseVisualStyleBackColor = true;
-            this.btnOrder08.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder07
-            // 
-            this.btnOrder07.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.btnOrder07.Location = new System.Drawing.Point(382, 91);
-            this.btnOrder07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder07.Name = "btnOrder07";
-            this.btnOrder07.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder07.TabIndex = 7;
-            this.btnOrder07.Text = "積算見積書承認";
-            this.btnOrder07.UseVisualStyleBackColor = true;
-            this.btnOrder07.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder12
-            // 
-            this.btnOrder12.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.btnOrder12.Location = new System.Drawing.Point(760, 3);
-            this.btnOrder12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder12.Name = "btnOrder12";
-            this.btnOrder12.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder12.TabIndex = 12;
-            this.btnOrder12.UseVisualStyleBackColor = true;
-            this.btnOrder12.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder13
-            // 
-            this.btnOrder13.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.btnOrder13.Location = new System.Drawing.Point(760, 91);
-            this.btnOrder13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder13.Name = "btnOrder13";
-            this.btnOrder13.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder13.TabIndex = 13;
-            this.btnOrder13.Text = "積算見積書印刷";
-            this.btnOrder13.UseVisualStyleBackColor = true;
-            this.btnOrder13.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder14
-            // 
-            this.btnOrder14.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.btnOrder14.Location = new System.Drawing.Point(760, 179);
-            this.btnOrder14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder14.Name = "btnOrder14";
-            this.btnOrder14.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder14.TabIndex = 14;
-            this.btnOrder14.UseVisualStyleBackColor = true;
-            this.btnOrder14.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder15
-            // 
-            this.btnOrder15.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.btnOrder15.Location = new System.Drawing.Point(760, 267);
-            this.btnOrder15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder15.Name = "btnOrder15";
-            this.btnOrder15.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder15.TabIndex = 15;
-            this.btnOrder15.UseVisualStyleBackColor = true;
-            this.btnOrder15.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder16
-            // 
-            this.btnOrder16.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.btnOrder16.Location = new System.Drawing.Point(760, 355);
-            this.btnOrder16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder16.Name = "btnOrder16";
-            this.btnOrder16.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder16.TabIndex = 16;
-            this.btnOrder16.UseVisualStyleBackColor = true;
-            this.btnOrder16.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder05
-            // 
-            this.btnOrder05.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.btnOrder05.Location = new System.Drawing.Point(4, 443);
-            this.btnOrder05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder05.Name = "btnOrder05";
-            this.btnOrder05.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder05.TabIndex = 5;
-            this.btnOrder05.UseVisualStyleBackColor = true;
-            this.btnOrder05.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder11
-            // 
-            this.btnOrder11.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.btnOrder11.Location = new System.Drawing.Point(382, 443);
-            this.btnOrder11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder11.Name = "btnOrder11";
-            this.btnOrder11.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder11.TabIndex = 11;
-            this.btnOrder11.UseVisualStyleBackColor = true;
-            this.btnOrder11.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // btnOrder17
-            // 
-            this.btnOrder17.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.btnOrder17.Location = new System.Drawing.Point(760, 443);
-            this.btnOrder17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnOrder17.Name = "btnOrder17";
-            this.btnOrder17.Size = new System.Drawing.Size(316, 38);
-            this.btnOrder17.TabIndex = 17;
-            this.btnOrder17.Text = "test";
-            this.btnOrder17.UseVisualStyleBackColor = true;
-            this.btnOrder17.Click += new System.EventHandler(this.btnOrder_Click);
-            // 
-            // label1
-            // 
-            this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
-            this.label1.AutoSize = true;
-            this.label1.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label1.ForeColor = System.Drawing.Color.Blue;
-            this.label1.Location = new System.Drawing.Point(136, 44);
-            this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(52, 44);
-            this.label1.TabIndex = 10;
-            this.label1.Text = "↓";
-            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblArrpw1_04
-            // 
-            this.lblArrpw1_04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblArrpw1_04.AutoSize = true;
-            this.lblArrpw1_04.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblArrpw1_04.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.lblArrpw1_04.Location = new System.Drawing.Point(327, 180);
-            this.lblArrpw1_04.Name = "lblArrpw1_04";
-            this.lblArrpw1_04.Size = new System.Drawing.Size(48, 35);
-            this.lblArrpw1_04.TabIndex = 10;
-            this.lblArrpw1_04.Text = "→";
-            this.lblArrpw1_04.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label2
-            // 
-            this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
-            this.label2.AutoSize = true;
-            this.label2.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label2.ForeColor = System.Drawing.Color.Blue;
-            this.label2.Location = new System.Drawing.Point(136, 132);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(52, 44);
-            this.label2.TabIndex = 10;
-            this.label2.Text = "↓";
-            this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblArrpw1_02
-            // 
-            this.lblArrpw1_02.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblArrpw1_02.AutoSize = true;
-            this.lblArrpw1_02.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblArrpw1_02.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.lblArrpw1_02.Location = new System.Drawing.Point(327, 92);
-            this.lblArrpw1_02.Name = "lblArrpw1_02";
-            this.lblArrpw1_02.Size = new System.Drawing.Size(48, 35);
-            this.lblArrpw1_02.TabIndex = 10;
-            this.lblArrpw1_02.Text = "→";
-            this.lblArrpw1_02.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label3
-            // 
-            this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.label3.AutoSize = true;
-            this.label3.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label3.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.label3.Location = new System.Drawing.Point(705, 92);
-            this.label3.Name = "label3";
-            this.label3.Size = new System.Drawing.Size(48, 35);
-            this.label3.TabIndex = 10;
-            this.label3.Text = "→";
-            this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // tabPage2
-            // 
-            this.tabPage2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(128)))), ((int)(((byte)(255)))));
-            this.tabPage2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.tabPage2.Controls.Add(this.tblLayoutConstruction);
-            this.tabPage2.Location = new System.Drawing.Point(4, 30);
-            this.tabPage2.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage2.Name = "tabPage2";
-            this.tabPage2.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage2.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage2.TabIndex = 2;
-            this.tabPage2.Text = "施工管理";
-            // 
-            // tblLayoutConstruction
-            // 
-            this.tblLayoutConstruction.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tblLayoutConstruction.ColumnCount = 5;
-            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutConstruction.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction01, 0, 2);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction00, 0, 0);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction06, 2, 0);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction02, 0, 4);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction03, 0, 6);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction04, 0, 8);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction10, 2, 8);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction09, 2, 6);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction12, 4, 0);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction13, 4, 2);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction14, 4, 4);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction15, 4, 6);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction16, 4, 8);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction05, 0, 10);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction11, 2, 10);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction17, 4, 10);
-            this.tblLayoutConstruction.Controls.Add(this.lblArrpw2_01, 1, 0);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction08, 2, 4);
-            this.tblLayoutConstruction.Controls.Add(this.btnConstruction07, 2, 2);
-            this.tblLayoutConstruction.Controls.Add(this.label8, 3, 0);
-            this.tblLayoutConstruction.Controls.Add(this.lblArrpw2_04, 4, 1);
-            this.tblLayoutConstruction.Controls.Add(this.label5, 4, 3);
-            this.tblLayoutConstruction.Controls.Add(this.label7, 0, 1);
-            this.tblLayoutConstruction.Controls.Add(this.label16, 1, 2);
-            this.tblLayoutConstruction.Location = new System.Drawing.Point(54, 16);
-            this.tblLayoutConstruction.Name = "tblLayoutConstruction";
-            this.tblLayoutConstruction.RowCount = 11;
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutConstruction.Size = new System.Drawing.Size(1080, 484);
-            this.tblLayoutConstruction.TabIndex = 11;
-            // 
-            // btnConstruction01
-            // 
-            this.btnConstruction01.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.btnConstruction01.BackColor = System.Drawing.Color.Lime;
-            this.btnConstruction01.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
-            this.btnConstruction01.Location = new System.Drawing.Point(4, 91);
-            this.btnConstruction01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction01.Name = "btnConstruction01";
-            this.btnConstruction01.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction01.TabIndex = 1;
-            this.btnConstruction01.Text = "工事詳細台帳閲覧（印刷不可）";
-            this.btnConstruction01.UseVisualStyleBackColor = false;
-            this.btnConstruction01.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction00
-            // 
-            this.btnConstruction00.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.btnConstruction00.Location = new System.Drawing.Point(4, 3);
-            this.btnConstruction00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction00.Name = "btnConstruction00";
-            this.btnConstruction00.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction00.TabIndex = 0;
-            this.btnConstruction00.Text = "工事予算書";
-            this.btnConstruction00.UseVisualStyleBackColor = true;
-            this.btnConstruction00.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction06
-            // 
-            this.btnConstruction06.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.btnConstruction06.Location = new System.Drawing.Point(382, 3);
-            this.btnConstruction06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction06.Name = "btnConstruction06";
-            this.btnConstruction06.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction06.TabIndex = 6;
-            this.btnConstruction06.Text = "工事予算書承認";
-            this.btnConstruction06.UseVisualStyleBackColor = true;
-            this.btnConstruction06.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction02
-            // 
-            this.btnConstruction02.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.btnConstruction02.BackColor = System.Drawing.Color.Yellow;
-            this.btnConstruction02.Location = new System.Drawing.Point(4, 179);
-            this.btnConstruction02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction02.Name = "btnConstruction02";
-            this.btnConstruction02.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction02.TabIndex = 2;
-            this.btnConstruction02.Text = "日報管理（各工事）";
-            this.btnConstruction02.UseVisualStyleBackColor = false;
-            this.btnConstruction02.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction03
-            // 
-            this.btnConstruction03.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.btnConstruction03.Location = new System.Drawing.Point(4, 267);
-            this.btnConstruction03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction03.Name = "btnConstruction03";
-            this.btnConstruction03.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction03.TabIndex = 3;
-            this.btnConstruction03.Text = "施工計画書作成・印刷";
-            this.btnConstruction03.UseVisualStyleBackColor = true;
-            this.btnConstruction03.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction04
-            // 
-            this.btnConstruction04.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.btnConstruction04.Location = new System.Drawing.Point(4, 355);
-            this.btnConstruction04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction04.Name = "btnConstruction04";
-            this.btnConstruction04.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction04.TabIndex = 4;
-            this.btnConstruction04.UseVisualStyleBackColor = true;
-            this.btnConstruction04.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction10
-            // 
-            this.btnConstruction10.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.btnConstruction10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
-            this.btnConstruction10.Location = new System.Drawing.Point(382, 355);
-            this.btnConstruction10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction10.Name = "btnConstruction10";
-            this.btnConstruction10.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction10.TabIndex = 10;
-            this.btnConstruction10.UseVisualStyleBackColor = false;
-            this.btnConstruction10.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction09
-            // 
-            this.btnConstruction09.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.btnConstruction09.Location = new System.Drawing.Point(382, 267);
-            this.btnConstruction09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction09.Name = "btnConstruction09";
-            this.btnConstruction09.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction09.TabIndex = 9;
-            this.btnConstruction09.Text = "施工体制台帳作成・印刷";
-            this.btnConstruction09.UseVisualStyleBackColor = true;
-            this.btnConstruction09.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction12
-            // 
-            this.btnConstruction12.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.btnConstruction12.Location = new System.Drawing.Point(760, 3);
-            this.btnConstruction12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction12.Name = "btnConstruction12";
-            this.btnConstruction12.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction12.TabIndex = 12;
-            this.btnConstruction12.Text = "注文書作成";
-            this.btnConstruction12.UseVisualStyleBackColor = true;
-            this.btnConstruction12.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction13
-            // 
-            this.btnConstruction13.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.btnConstruction13.Location = new System.Drawing.Point(760, 91);
-            this.btnConstruction13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction13.Name = "btnConstruction13";
-            this.btnConstruction13.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction13.TabIndex = 13;
-            this.btnConstruction13.Text = "注文書承認";
-            this.btnConstruction13.UseVisualStyleBackColor = true;
-            this.btnConstruction13.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction14
-            // 
-            this.btnConstruction14.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.btnConstruction14.Location = new System.Drawing.Point(760, 179);
-            this.btnConstruction14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction14.Name = "btnConstruction14";
-            this.btnConstruction14.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction14.TabIndex = 14;
-            this.btnConstruction14.Text = "注文書発給状況確認";
-            this.btnConstruction14.UseVisualStyleBackColor = true;
-            this.btnConstruction14.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction15
-            // 
-            this.btnConstruction15.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.btnConstruction15.Location = new System.Drawing.Point(760, 267);
-            this.btnConstruction15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction15.Name = "btnConstruction15";
-            this.btnConstruction15.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction15.TabIndex = 15;
-            this.btnConstruction15.Text = "完成図書作成・印刷";
-            this.btnConstruction15.UseVisualStyleBackColor = true;
-            this.btnConstruction15.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction16
-            // 
-            this.btnConstruction16.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.btnConstruction16.Location = new System.Drawing.Point(760, 355);
-            this.btnConstruction16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction16.Name = "btnConstruction16";
-            this.btnConstruction16.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction16.TabIndex = 16;
-            this.btnConstruction16.UseVisualStyleBackColor = true;
-            this.btnConstruction16.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction05
-            // 
-            this.btnConstruction05.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.btnConstruction05.Location = new System.Drawing.Point(4, 443);
-            this.btnConstruction05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction05.Name = "btnConstruction05";
-            this.btnConstruction05.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction05.TabIndex = 5;
-            this.btnConstruction05.UseVisualStyleBackColor = true;
-            this.btnConstruction05.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction11
-            // 
-            this.btnConstruction11.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.btnConstruction11.Location = new System.Drawing.Point(382, 443);
-            this.btnConstruction11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction11.Name = "btnConstruction11";
-            this.btnConstruction11.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction11.TabIndex = 11;
-            this.btnConstruction11.UseVisualStyleBackColor = true;
-            this.btnConstruction11.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction17
-            // 
-            this.btnConstruction17.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.btnConstruction17.Location = new System.Drawing.Point(760, 443);
-            this.btnConstruction17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction17.Name = "btnConstruction17";
-            this.btnConstruction17.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction17.TabIndex = 17;
-            this.btnConstruction17.UseVisualStyleBackColor = true;
-            this.btnConstruction17.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // lblArrpw2_01
-            // 
-            this.lblArrpw2_01.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblArrpw2_01.AutoSize = true;
-            this.lblArrpw2_01.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblArrpw2_01.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.lblArrpw2_01.Location = new System.Drawing.Point(327, 4);
-            this.lblArrpw2_01.Name = "lblArrpw2_01";
-            this.lblArrpw2_01.Size = new System.Drawing.Size(48, 35);
-            this.lblArrpw2_01.TabIndex = 10;
-            this.lblArrpw2_01.Text = "→";
-            this.lblArrpw2_01.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // btnConstruction08
-            // 
-            this.btnConstruction08.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.btnConstruction08.BackColor = System.Drawing.Color.Yellow;
-            this.btnConstruction08.Location = new System.Drawing.Point(382, 179);
-            this.btnConstruction08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction08.Name = "btnConstruction08";
-            this.btnConstruction08.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction08.TabIndex = 8;
-            this.btnConstruction08.Text = "発注者打ち合わせ議事録入力";
-            this.btnConstruction08.UseVisualStyleBackColor = false;
-            this.btnConstruction08.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // btnConstruction07
-            // 
-            this.btnConstruction07.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.btnConstruction07.BackColor = System.Drawing.Color.Yellow;
-            this.btnConstruction07.Location = new System.Drawing.Point(382, 91);
-            this.btnConstruction07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnConstruction07.Name = "btnConstruction07";
-            this.btnConstruction07.Size = new System.Drawing.Size(316, 38);
-            this.btnConstruction07.TabIndex = 7;
-            this.btnConstruction07.Text = "交通費・購入品管理（各工事）";
-            this.btnConstruction07.UseVisualStyleBackColor = false;
-            this.btnConstruction07.Click += new System.EventHandler(this.btnConstruction_Click);
-            // 
-            // label8
-            // 
-            this.label8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.label8.AutoSize = true;
-            this.label8.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label8.ForeColor = System.Drawing.Color.Blue;
-            this.label8.Location = new System.Drawing.Point(705, 4);
-            this.label8.Name = "label8";
-            this.label8.Size = new System.Drawing.Size(48, 35);
-            this.label8.TabIndex = 10;
-            this.label8.Text = "→";
-            this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // lblArrpw2_04
-            // 
-            this.lblArrpw2_04.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
-            this.lblArrpw2_04.AutoSize = true;
-            this.lblArrpw2_04.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblArrpw2_04.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.lblArrpw2_04.Location = new System.Drawing.Point(892, 44);
-            this.lblArrpw2_04.Name = "lblArrpw2_04";
-            this.lblArrpw2_04.Size = new System.Drawing.Size(52, 44);
-            this.lblArrpw2_04.TabIndex = 19;
-            this.lblArrpw2_04.Text = "↓";
-            this.lblArrpw2_04.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label5
-            // 
-            this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
-            this.label5.AutoSize = true;
-            this.label5.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label5.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.label5.Location = new System.Drawing.Point(892, 132);
-            this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(52, 44);
-            this.label5.TabIndex = 19;
-            this.label5.Text = "↓";
-            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label7
-            // 
-            this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
-            this.label7.AutoSize = true;
-            this.label7.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label7.ForeColor = System.Drawing.Color.Blue;
-            this.label7.Location = new System.Drawing.Point(136, 44);
-            this.label7.Name = "label7";
-            this.label7.Size = new System.Drawing.Size(52, 44);
-            this.label7.TabIndex = 19;
-            this.label7.Text = "↓";
-            this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label16
-            // 
-            this.label16.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.label16.AutoSize = true;
-            this.label16.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label16.ForeColor = System.Drawing.Color.Blue;
-            this.label16.Location = new System.Drawing.Point(327, 92);
-            this.label16.Name = "label16";
-            this.label16.Size = new System.Drawing.Size(48, 35);
-            this.label16.TabIndex = 10;
-            this.label16.Text = "⇐";
-            this.label16.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // tabPage23
-            // 
-            this.tabPage23.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(192)))), ((int)(((byte)(255)))));
-            this.tabPage23.ForeColor = System.Drawing.Color.White;
-            this.tabPage23.Location = new System.Drawing.Point(4, 30);
-            this.tabPage23.Name = "tabPage23";
-            this.tabPage23.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage23.TabIndex = 21;
-            this.tabPage23.Text = "資材管理";
-            // 
-            // tabPage3
-            // 
-            this.tabPage3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(192)))), ((int)(((byte)(255)))));
-            this.tabPage3.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.tabPage3.Controls.Add(this.tblLayoutBilling);
-            this.tabPage3.Location = new System.Drawing.Point(4, 30);
-            this.tabPage3.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage3.Name = "tabPage3";
-            this.tabPage3.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage3.TabIndex = 3;
-            this.tabPage3.Text = "請求管理";
-            // 
-            // tblLayoutBilling
-            // 
-            this.tblLayoutBilling.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tblLayoutBilling.ColumnCount = 5;
-            this.tblLayoutBilling.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutBilling.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutBilling.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutBilling.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutBilling.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutBilling.Controls.Add(this.btnBilling08, 2, 8);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling13, 4, 8);
-            this.tblLayoutBilling.Controls.Add(this.label18, 0, 2);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling00, 0, 1);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling05, 2, 1);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling10, 4, 1);
-            this.tblLayoutBilling.Controls.Add(this.label4, 0, 0);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling01, 0, 3);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling06, 2, 3);
-            this.tblLayoutBilling.Controls.Add(this.label6, 1, 3);
-            this.tblLayoutBilling.Controls.Add(this.label19, 3, 3);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling11, 4, 3);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling09, 2, 10);
-            this.tblLayoutBilling.Controls.Add(this.label34, 0, 9);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling04, 0, 10);
-            this.tblLayoutBilling.Controls.Add(this.button14, 4, 10);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling03, 0, 8);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling02, 0, 6);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling07, 2, 6);
-            this.tblLayoutBilling.Controls.Add(this.btnBilling12, 4, 6);
-            this.tblLayoutBilling.Controls.Add(this.label33, 0, 5);
-            this.tblLayoutBilling.Controls.Add(this.label35, 4, 9);
-            this.tblLayoutBilling.Location = new System.Drawing.Point(54, 16);
-            this.tblLayoutBilling.Name = "tblLayoutBilling";
-            this.tblLayoutBilling.RowCount = 11;
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutBilling.Size = new System.Drawing.Size(1080, 484);
-            this.tblLayoutBilling.TabIndex = 13;
-            // 
-            // btnBilling08
-            // 
-            this.btnBilling08.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.btnBilling08.Location = new System.Drawing.Point(382, 355);
-            this.btnBilling08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling08.Name = "btnBilling08";
-            this.btnBilling08.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling08.TabIndex = 8;
-            this.btnBilling08.UseVisualStyleBackColor = true;
-            this.btnBilling08.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling13
-            // 
-            this.btnBilling13.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.btnBilling13.Location = new System.Drawing.Point(760, 355);
-            this.btnBilling13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling13.Name = "btnBilling13";
-            this.btnBilling13.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling13.TabIndex = 13;
-            this.btnBilling13.UseVisualStyleBackColor = true;
-            this.btnBilling13.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // label18
-            // 
-            this.label18.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
-            this.label18.AutoSize = true;
-            this.label18.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label18.ForeColor = System.Drawing.Color.Blue;
-            this.label18.Location = new System.Drawing.Point(145, 88);
-            this.label18.Name = "label18";
-            this.label18.Size = new System.Drawing.Size(34, 44);
-            this.label18.TabIndex = 20;
-            this.label18.Text = "⇓";
-            this.label18.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // btnBilling00
-            // 
-            this.btnBilling00.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.btnBilling00.Location = new System.Drawing.Point(4, 47);
-            this.btnBilling00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling00.Name = "btnBilling00";
-            this.btnBilling00.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling00.TabIndex = 0;
-            this.btnBilling00.Text = "請求書補正入力（変更がある場合）";
-            this.btnBilling00.UseVisualStyleBackColor = true;
-            this.btnBilling00.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling05
-            // 
-            this.btnBilling05.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.btnBilling05.Location = new System.Drawing.Point(382, 47);
-            this.btnBilling05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling05.Name = "btnBilling05";
-            this.btnBilling05.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling05.TabIndex = 5;
-            this.btnBilling05.UseVisualStyleBackColor = true;
-            this.btnBilling05.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling10
-            // 
-            this.btnBilling10.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.btnBilling10.Location = new System.Drawing.Point(760, 47);
-            this.btnBilling10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling10.Name = "btnBilling10";
-            this.btnBilling10.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling10.TabIndex = 10;
-            this.btnBilling10.UseVisualStyleBackColor = true;
-            this.btnBilling10.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // label4
-            // 
-            this.label4.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.label4.AutoSize = true;
-            this.label4.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label4.Location = new System.Drawing.Point(3, 0);
-            this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(318, 44);
-            this.label4.TabIndex = 21;
-            this.label4.Text = "ヒョウ工務店から顧客への請求";
-            this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
-            // btnBilling01
-            // 
-            this.btnBilling01.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.btnBilling01.Location = new System.Drawing.Point(4, 135);
-            this.btnBilling01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling01.Name = "btnBilling01";
-            this.btnBilling01.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling01.TabIndex = 1;
-            this.btnBilling01.Text = "請求書作成";
-            this.btnBilling01.UseVisualStyleBackColor = true;
-            this.btnBilling01.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling06
-            // 
-            this.btnBilling06.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.btnBilling06.Location = new System.Drawing.Point(382, 135);
-            this.btnBilling06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling06.Name = "btnBilling06";
-            this.btnBilling06.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling06.TabIndex = 6;
-            this.btnBilling06.Text = "請求書承認";
-            this.btnBilling06.UseVisualStyleBackColor = true;
-            this.btnBilling06.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // label6
-            // 
-            this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.label6.AutoSize = true;
-            this.label6.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label6.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.label6.Location = new System.Drawing.Point(327, 136);
-            this.label6.Name = "label6";
-            this.label6.Size = new System.Drawing.Size(48, 35);
-            this.label6.TabIndex = 18;
-            this.label6.Text = "→";
-            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // label19
-            // 
-            this.label19.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.label19.AutoSize = true;
-            this.label19.Font = new System.Drawing.Font("ＭＳ 明朝", 26.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label19.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
-            this.label19.Location = new System.Drawing.Point(705, 136);
-            this.label19.Name = "label19";
-            this.label19.Size = new System.Drawing.Size(48, 35);
-            this.label19.TabIndex = 18;
-            this.label19.Text = "→";
-            this.label19.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-            // 
-            // btnBilling11
-            // 
-            this.btnBilling11.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.btnBilling11.Location = new System.Drawing.Point(760, 135);
-            this.btnBilling11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling11.Name = "btnBilling11";
-            this.btnBilling11.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling11.TabIndex = 11;
-            this.btnBilling11.Text = "請求書印刷";
-            this.btnBilling11.UseVisualStyleBackColor = true;
-            this.btnBilling11.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling09
-            // 
-            this.btnBilling09.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.btnBilling09.Location = new System.Drawing.Point(382, 443);
-            this.btnBilling09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling09.Name = "btnBilling09";
-            this.btnBilling09.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling09.TabIndex = 9;
-            this.btnBilling09.UseVisualStyleBackColor = true;
-            this.btnBilling09.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // label34
-            // 
-            this.label34.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.label34.AutoSize = true;
-            this.label34.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label34.Location = new System.Drawing.Point(3, 396);
-            this.label34.Name = "label34";
-            this.label34.Size = new System.Drawing.Size(318, 44);
-            this.label34.TabIndex = 21;
-            this.label34.Text = "顧客からヒョウ工務店への入金確認";
-            this.label34.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
-            // btnBilling04
-            // 
-            this.btnBilling04.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.btnBilling04.Location = new System.Drawing.Point(4, 443);
-            this.btnBilling04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling04.Name = "btnBilling04";
-            this.btnBilling04.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling04.TabIndex = 4;
-            this.btnBilling04.Text = "取引先　入金確認";
-            this.btnBilling04.UseVisualStyleBackColor = true;
-            this.btnBilling04.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // button14
-            // 
-            this.button14.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.button14.Location = new System.Drawing.Point(760, 443);
-            this.button14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button14.Name = "button14";
-            this.button14.Size = new System.Drawing.Size(316, 38);
-            this.button14.TabIndex = 14;
-            this.button14.Text = "各請求・各入金入力";
-            this.button14.UseVisualStyleBackColor = true;
-            this.button14.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling03
-            // 
-            this.btnBilling03.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.btnBilling03.Location = new System.Drawing.Point(4, 355);
-            this.btnBilling03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling03.Name = "btnBilling03";
-            this.btnBilling03.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling03.TabIndex = 3;
-            this.btnBilling03.UseVisualStyleBackColor = true;
-            this.btnBilling03.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling02
-            // 
-            this.btnBilling02.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.btnBilling02.Location = new System.Drawing.Point(4, 267);
-            this.btnBilling02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling02.Name = "btnBilling02";
-            this.btnBilling02.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling02.TabIndex = 2;
-            this.btnBilling02.Text = "業社・職人手間確認　毎月5日まで";
-            this.btnBilling02.UseVisualStyleBackColor = true;
-            this.btnBilling02.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling07
-            // 
-            this.btnBilling07.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.btnBilling07.Location = new System.Drawing.Point(382, 267);
-            this.btnBilling07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling07.Name = "btnBilling07";
-            this.btnBilling07.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling07.TabIndex = 7;
-            this.btnBilling07.Text = "施工業者支払い確認　毎月18日まで";
-            this.btnBilling07.UseVisualStyleBackColor = true;
-            this.btnBilling07.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // btnBilling12
-            // 
-            this.btnBilling12.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.btnBilling12.Location = new System.Drawing.Point(760, 267);
-            this.btnBilling12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnBilling12.Name = "btnBilling12";
-            this.btnBilling12.Size = new System.Drawing.Size(316, 38);
-            this.btnBilling12.TabIndex = 12;
-            this.btnBilling12.UseVisualStyleBackColor = true;
-            this.btnBilling12.Click += new System.EventHandler(this.btnBilling_Click);
-            // 
-            // label33
-            // 
-            this.label33.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.label33.AutoSize = true;
-            this.tblLayoutBilling.SetColumnSpan(this.label33, 3);
-            this.label33.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label33.Location = new System.Drawing.Point(3, 220);
-            this.label33.Name = "label33";
-            this.label33.Size = new System.Drawing.Size(696, 44);
-            this.label33.TabIndex = 21;
-            this.label33.Text = "協力会社・職人手間からヒョウ工務店への請求";
-            this.label33.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
-            // label35
-            // 
-            this.label35.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.label35.AutoSize = true;
-            this.label35.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.label35.Location = new System.Drawing.Point(759, 396);
-            this.label35.Name = "label35";
-            this.label35.Size = new System.Drawing.Size(318, 44);
-            this.label35.TabIndex = 21;
-            this.label35.Text = "総務部各入力";
-            this.label35.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
-            // tabPage22
-            // 
-            this.tabPage22.BackColor = System.Drawing.Color.YellowGreen;
-            this.tabPage22.Controls.Add(this.tableLayoutAffairs);
-            this.tabPage22.Location = new System.Drawing.Point(4, 30);
-            this.tabPage22.Name = "tabPage22";
-            this.tabPage22.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage22.TabIndex = 20;
-            this.tabPage22.Text = "総務管理";
-            // 
-            // tableLayoutAffairs
-            // 
-            this.tableLayoutAffairs.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tableLayoutAffairs.ColumnCount = 5;
-            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tableLayoutAffairs.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tableLayoutAffairs.Controls.Add(this.button20, 0, 0);
-            this.tableLayoutAffairs.Controls.Add(this.button21, 2, 0);
-            this.tableLayoutAffairs.Controls.Add(this.button22, 0, 2);
-            this.tableLayoutAffairs.Controls.Add(this.button23, 0, 4);
-            this.tableLayoutAffairs.Controls.Add(this.button24, 0, 6);
-            this.tableLayoutAffairs.Controls.Add(this.button25, 0, 8);
-            this.tableLayoutAffairs.Controls.Add(this.button26, 2, 8);
-            this.tableLayoutAffairs.Controls.Add(this.button27, 2, 6);
-            this.tableLayoutAffairs.Controls.Add(this.button28, 2, 4);
-            this.tableLayoutAffairs.Controls.Add(this.button29, 2, 2);
-            this.tableLayoutAffairs.Controls.Add(this.button30, 4, 0);
-            this.tableLayoutAffairs.Controls.Add(this.button31, 4, 2);
-            this.tableLayoutAffairs.Controls.Add(this.button32, 4, 4);
-            this.tableLayoutAffairs.Controls.Add(this.button33, 4, 6);
-            this.tableLayoutAffairs.Controls.Add(this.button34, 4, 8);
-            this.tableLayoutAffairs.Controls.Add(this.button35, 0, 10);
-            this.tableLayoutAffairs.Controls.Add(this.button36, 2, 10);
-            this.tableLayoutAffairs.Controls.Add(this.button37, 4, 10);
-            this.tableLayoutAffairs.Location = new System.Drawing.Point(56, 16);
-            this.tableLayoutAffairs.Name = "tableLayoutAffairs";
-            this.tableLayoutAffairs.RowCount = 11;
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutAffairs.Size = new System.Drawing.Size(1080, 484);
-            this.tableLayoutAffairs.TabIndex = 12;
-            // 
-            // button20
-            // 
-            this.button20.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.button20.Location = new System.Drawing.Point(4, 3);
-            this.button20.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button20.Name = "button20";
-            this.button20.Size = new System.Drawing.Size(316, 38);
-            this.button20.TabIndex = 0;
-            this.button20.Text = "工事情報閲覧";
-            this.button20.UseVisualStyleBackColor = true;
-            // 
-            // button21
-            // 
-            this.button21.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.button21.Location = new System.Drawing.Point(382, 3);
-            this.button21.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button21.Name = "button21";
-            this.button21.Size = new System.Drawing.Size(316, 38);
-            this.button21.TabIndex = 6;
-            this.button21.Text = "業社・職人手間入力確認";
-            this.button21.UseVisualStyleBackColor = true;
-            // 
-            // button22
-            // 
-            this.button22.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.button22.Location = new System.Drawing.Point(4, 91);
-            this.button22.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button22.Name = "button22";
-            this.button22.Size = new System.Drawing.Size(316, 38);
-            this.button22.TabIndex = 1;
-            this.button22.Text = "工事施工予算閲覧";
-            this.button22.UseVisualStyleBackColor = true;
-            // 
-            // button23
-            // 
-            this.button23.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.button23.Location = new System.Drawing.Point(4, 179);
-            this.button23.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button23.Name = "button23";
-            this.button23.Size = new System.Drawing.Size(316, 38);
-            this.button23.TabIndex = 2;
-            this.button23.Text = "注文書印刷及び発給状況";
-            this.button23.UseVisualStyleBackColor = true;
-            // 
-            // button24
-            // 
-            this.button24.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.button24.Location = new System.Drawing.Point(4, 267);
-            this.button24.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button24.Name = "button24";
-            this.button24.Size = new System.Drawing.Size(316, 38);
-            this.button24.TabIndex = 3;
-            this.button24.Text = "交通費及び購入品等確認";
-            this.button24.UseVisualStyleBackColor = true;
-            // 
-            // button25
-            // 
-            this.button25.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.button25.Location = new System.Drawing.Point(4, 355);
-            this.button25.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button25.Name = "button25";
-            this.button25.Size = new System.Drawing.Size(316, 38);
-            this.button25.TabIndex = 4;
-            this.button25.UseVisualStyleBackColor = true;
-            // 
-            // button26
-            // 
-            this.button26.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.button26.Location = new System.Drawing.Point(382, 355);
-            this.button26.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button26.Name = "button26";
-            this.button26.Size = new System.Drawing.Size(316, 38);
-            this.button26.TabIndex = 10;
-            this.button26.UseVisualStyleBackColor = true;
-            // 
-            // button27
-            // 
-            this.button27.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.button27.Location = new System.Drawing.Point(382, 267);
-            this.button27.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button27.Name = "button27";
-            this.button27.Size = new System.Drawing.Size(316, 38);
-            this.button27.TabIndex = 9;
-            this.button27.Text = "請求書閲覧";
-            this.button27.UseVisualStyleBackColor = true;
-            // 
-            // button28
-            // 
-            this.button28.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.button28.Location = new System.Drawing.Point(382, 179);
-            this.button28.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button28.Name = "button28";
-            this.button28.Size = new System.Drawing.Size(316, 38);
-            this.button28.TabIndex = 8;
-            this.button28.Text = "各請求・各入金入力";
-            this.button28.UseVisualStyleBackColor = true;
-            // 
-            // button29
-            // 
-            this.button29.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.button29.Location = new System.Drawing.Point(382, 91);
-            this.button29.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button29.Name = "button29";
-            this.button29.Size = new System.Drawing.Size(316, 38);
-            this.button29.TabIndex = 7;
-            this.button29.Text = "施工業者支払い入力確認";
-            this.button29.UseVisualStyleBackColor = true;
-            // 
-            // button30
-            // 
-            this.button30.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.button30.Location = new System.Drawing.Point(760, 3);
-            this.button30.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button30.Name = "button30";
-            this.button30.Size = new System.Drawing.Size(316, 38);
-            this.button30.TabIndex = 12;
-            this.button30.UseVisualStyleBackColor = true;
-            // 
-            // button31
-            // 
-            this.button31.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.button31.Location = new System.Drawing.Point(760, 91);
-            this.button31.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button31.Name = "button31";
-            this.button31.Size = new System.Drawing.Size(316, 38);
-            this.button31.TabIndex = 13;
-            this.button31.UseVisualStyleBackColor = true;
-            // 
-            // button32
-            // 
-            this.button32.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.button32.Location = new System.Drawing.Point(760, 179);
-            this.button32.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button32.Name = "button32";
-            this.button32.Size = new System.Drawing.Size(316, 38);
-            this.button32.TabIndex = 14;
-            this.button32.UseVisualStyleBackColor = true;
-            // 
-            // button33
-            // 
-            this.button33.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.button33.Location = new System.Drawing.Point(760, 267);
-            this.button33.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button33.Name = "button33";
-            this.button33.Size = new System.Drawing.Size(316, 38);
-            this.button33.TabIndex = 15;
-            this.button33.UseVisualStyleBackColor = true;
-            // 
-            // button34
-            // 
-            this.button34.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.button34.Location = new System.Drawing.Point(760, 355);
-            this.button34.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button34.Name = "button34";
-            this.button34.Size = new System.Drawing.Size(316, 38);
-            this.button34.TabIndex = 16;
-            this.button34.UseVisualStyleBackColor = true;
-            // 
-            // button35
-            // 
-            this.button35.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.button35.Location = new System.Drawing.Point(4, 443);
-            this.button35.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button35.Name = "button35";
-            this.button35.Size = new System.Drawing.Size(316, 38);
-            this.button35.TabIndex = 5;
-            this.button35.UseVisualStyleBackColor = true;
-            // 
-            // button36
-            // 
-            this.button36.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.button36.Location = new System.Drawing.Point(382, 443);
-            this.button36.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button36.Name = "button36";
-            this.button36.Size = new System.Drawing.Size(316, 38);
-            this.button36.TabIndex = 11;
-            this.button36.UseVisualStyleBackColor = true;
-            // 
-            // button37
-            // 
-            this.button37.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.button37.Location = new System.Drawing.Point(760, 443);
-            this.button37.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button37.Name = "button37";
-            this.button37.Size = new System.Drawing.Size(316, 38);
-            this.button37.TabIndex = 17;
-            this.button37.UseVisualStyleBackColor = true;
-            // 
-            // tabPage16
-            // 
-            this.tabPage16.BackColor = System.Drawing.Color.ForestGreen;
-            this.tabPage16.Controls.Add(this.tableLayoutDocuments);
-            this.tabPage16.ForeColor = System.Drawing.Color.White;
-            this.tabPage16.Location = new System.Drawing.Point(4, 30);
-            this.tabPage16.Name = "tabPage16";
-            this.tabPage16.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage16.TabIndex = 14;
-            this.tabPage16.Text = "各種提出書類";
-            // 
-            // tableLayoutDocuments
-            // 
-            this.tableLayoutDocuments.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tableLayoutDocuments.ColumnCount = 5;
-            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tableLayoutDocuments.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tableLayoutDocuments.Controls.Add(this.button1, 0, 0);
-            this.tableLayoutDocuments.Controls.Add(this.button2, 2, 0);
-            this.tableLayoutDocuments.Controls.Add(this.button3, 0, 2);
-            this.tableLayoutDocuments.Controls.Add(this.button4, 0, 4);
-            this.tableLayoutDocuments.Controls.Add(this.button5, 0, 6);
-            this.tableLayoutDocuments.Controls.Add(this.button6, 0, 8);
-            this.tableLayoutDocuments.Controls.Add(this.button7, 2, 8);
-            this.tableLayoutDocuments.Controls.Add(this.button8, 2, 6);
-            this.tableLayoutDocuments.Controls.Add(this.button9, 2, 4);
-            this.tableLayoutDocuments.Controls.Add(this.button10, 2, 2);
-            this.tableLayoutDocuments.Controls.Add(this.button11, 4, 0);
-            this.tableLayoutDocuments.Controls.Add(this.button12, 4, 2);
-            this.tableLayoutDocuments.Controls.Add(this.button13, 4, 4);
-            this.tableLayoutDocuments.Controls.Add(this.button15, 4, 6);
-            this.tableLayoutDocuments.Controls.Add(this.button16, 4, 8);
-            this.tableLayoutDocuments.Controls.Add(this.button17, 0, 10);
-            this.tableLayoutDocuments.Controls.Add(this.button18, 2, 10);
-            this.tableLayoutDocuments.Controls.Add(this.button19, 4, 10);
-            this.tableLayoutDocuments.Location = new System.Drawing.Point(56, 16);
-            this.tableLayoutDocuments.Name = "tableLayoutDocuments";
-            this.tableLayoutDocuments.RowCount = 11;
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tableLayoutDocuments.Size = new System.Drawing.Size(1080, 484);
-            this.tableLayoutDocuments.TabIndex = 11;
-            // 
-            // button1
-            // 
-            this.button1.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.button1.ForeColor = System.Drawing.Color.Black;
-            this.button1.Location = new System.Drawing.Point(4, 3);
-            this.button1.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button1.Name = "button1";
-            this.button1.Size = new System.Drawing.Size(316, 38);
-            this.button1.TabIndex = 0;
-            this.button1.Text = "顧客登録シート";
-            this.button1.UseVisualStyleBackColor = true;
-            // 
-            // button2
-            // 
-            this.button2.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.button2.ForeColor = System.Drawing.Color.Black;
-            this.button2.Location = new System.Drawing.Point(382, 3);
-            this.button2.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button2.Name = "button2";
-            this.button2.Size = new System.Drawing.Size(316, 38);
-            this.button2.TabIndex = 6;
-            this.button2.Text = "休日出勤届";
-            this.button2.UseVisualStyleBackColor = true;
-            // 
-            // button3
-            // 
-            this.button3.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.button3.ForeColor = System.Drawing.Color.Black;
-            this.button3.Location = new System.Drawing.Point(4, 91);
-            this.button3.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button3.Name = "button3";
-            this.button3.Size = new System.Drawing.Size(316, 38);
-            this.button3.TabIndex = 1;
-            this.button3.Text = "協力業者登録シート";
-            this.button3.UseVisualStyleBackColor = true;
-            // 
-            // button4
-            // 
-            this.button4.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.button4.ForeColor = System.Drawing.Color.Black;
-            this.button4.Location = new System.Drawing.Point(4, 179);
-            this.button4.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button4.Name = "button4";
-            this.button4.Size = new System.Drawing.Size(316, 38);
-            this.button4.TabIndex = 2;
-            this.button4.UseVisualStyleBackColor = true;
-            // 
-            // button5
-            // 
-            this.button5.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.button5.ForeColor = System.Drawing.Color.Black;
-            this.button5.Location = new System.Drawing.Point(4, 267);
-            this.button5.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button5.Name = "button5";
-            this.button5.Size = new System.Drawing.Size(316, 38);
-            this.button5.TabIndex = 3;
-            this.button5.UseVisualStyleBackColor = true;
-            // 
-            // button6
-            // 
-            this.button6.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.button6.ForeColor = System.Drawing.Color.Black;
-            this.button6.Location = new System.Drawing.Point(4, 355);
-            this.button6.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button6.Name = "button6";
-            this.button6.Size = new System.Drawing.Size(316, 38);
-            this.button6.TabIndex = 4;
-            this.button6.UseVisualStyleBackColor = true;
-            // 
-            // button7
-            // 
-            this.button7.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.button7.ForeColor = System.Drawing.Color.Black;
-            this.button7.Location = new System.Drawing.Point(382, 355);
-            this.button7.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button7.Name = "button7";
-            this.button7.Size = new System.Drawing.Size(316, 38);
-            this.button7.TabIndex = 10;
-            this.button7.UseVisualStyleBackColor = true;
-            // 
-            // button8
-            // 
-            this.button8.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.button8.ForeColor = System.Drawing.Color.Black;
-            this.button8.Location = new System.Drawing.Point(382, 267);
-            this.button8.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button8.Name = "button8";
-            this.button8.Size = new System.Drawing.Size(316, 38);
-            this.button8.TabIndex = 9;
-            this.button8.UseVisualStyleBackColor = true;
-            // 
-            // button9
-            // 
-            this.button9.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.button9.ForeColor = System.Drawing.Color.Black;
-            this.button9.Location = new System.Drawing.Point(382, 179);
-            this.button9.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button9.Name = "button9";
-            this.button9.Size = new System.Drawing.Size(316, 38);
-            this.button9.TabIndex = 8;
-            this.button9.Text = "遅刻・早退・外出・欠勤・有給届";
-            this.button9.UseVisualStyleBackColor = true;
-            // 
-            // button10
-            // 
-            this.button10.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.button10.ForeColor = System.Drawing.Color.Black;
-            this.button10.Location = new System.Drawing.Point(382, 91);
-            this.button10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button10.Name = "button10";
-            this.button10.Size = new System.Drawing.Size(316, 38);
-            this.button10.TabIndex = 7;
-            this.button10.Text = "代休届";
-            this.button10.UseVisualStyleBackColor = true;
-            // 
-            // button11
-            // 
-            this.button11.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.button11.ForeColor = System.Drawing.Color.Black;
-            this.button11.Location = new System.Drawing.Point(760, 3);
-            this.button11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button11.Name = "button11";
-            this.button11.Size = new System.Drawing.Size(316, 38);
-            this.button11.TabIndex = 12;
-            this.button11.UseVisualStyleBackColor = true;
-            // 
-            // button12
-            // 
-            this.button12.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.button12.ForeColor = System.Drawing.Color.Black;
-            this.button12.Location = new System.Drawing.Point(760, 91);
-            this.button12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button12.Name = "button12";
-            this.button12.Size = new System.Drawing.Size(316, 38);
-            this.button12.TabIndex = 13;
-            this.button12.UseVisualStyleBackColor = true;
-            // 
-            // button13
-            // 
-            this.button13.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.button13.ForeColor = System.Drawing.Color.Black;
-            this.button13.Location = new System.Drawing.Point(760, 179);
-            this.button13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button13.Name = "button13";
-            this.button13.Size = new System.Drawing.Size(316, 38);
-            this.button13.TabIndex = 14;
-            this.button13.UseVisualStyleBackColor = true;
-            // 
-            // button15
-            // 
-            this.button15.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.button15.ForeColor = System.Drawing.Color.Black;
-            this.button15.Location = new System.Drawing.Point(760, 267);
-            this.button15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button15.Name = "button15";
-            this.button15.Size = new System.Drawing.Size(316, 38);
-            this.button15.TabIndex = 15;
-            this.button15.UseVisualStyleBackColor = true;
-            // 
-            // button16
-            // 
-            this.button16.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.button16.ForeColor = System.Drawing.Color.Black;
-            this.button16.Location = new System.Drawing.Point(760, 355);
-            this.button16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button16.Name = "button16";
-            this.button16.Size = new System.Drawing.Size(316, 38);
-            this.button16.TabIndex = 16;
-            this.button16.UseVisualStyleBackColor = true;
-            // 
-            // button17
-            // 
-            this.button17.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.button17.ForeColor = System.Drawing.Color.Black;
-            this.button17.Location = new System.Drawing.Point(4, 443);
-            this.button17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button17.Name = "button17";
-            this.button17.Size = new System.Drawing.Size(316, 38);
-            this.button17.TabIndex = 5;
-            this.button17.UseVisualStyleBackColor = true;
-            // 
-            // button18
-            // 
-            this.button18.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.button18.ForeColor = System.Drawing.Color.Black;
-            this.button18.Location = new System.Drawing.Point(382, 443);
-            this.button18.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button18.Name = "button18";
-            this.button18.Size = new System.Drawing.Size(316, 38);
-            this.button18.TabIndex = 11;
-            this.button18.UseVisualStyleBackColor = true;
-            // 
-            // button19
-            // 
-            this.button19.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.button19.ForeColor = System.Drawing.Color.Black;
-            this.button19.Location = new System.Drawing.Point(760, 443);
-            this.button19.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.button19.Name = "button19";
-            this.button19.Size = new System.Drawing.Size(316, 38);
-            this.button19.TabIndex = 17;
-            this.button19.UseVisualStyleBackColor = true;
-            // 
-            // tabPage4
-            // 
-            this.tabPage4.BackColor = System.Drawing.Color.Blue;
-            this.tabPage4.Controls.Add(this.pnlMaster01);
-            this.tabPage4.Location = new System.Drawing.Point(4, 30);
-            this.tabPage4.Name = "tabPage4";
-            this.tabPage4.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage4.TabIndex = 4;
-            this.tabPage4.Text = "BOSSマスタ";
-            // 
-            // pnlMaster01
-            // 
-            this.pnlMaster01.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.pnlMaster01.AutoScroll = true;
-            this.pnlMaster01.Controls.Add(this.tblLayoutMaster);
-            this.pnlMaster01.Location = new System.Drawing.Point(6, 16);
-            this.pnlMaster01.Name = "pnlMaster01";
-            this.pnlMaster01.Size = new System.Drawing.Size(1180, 500);
-            this.pnlMaster01.TabIndex = 14;
-            // 
-            // tblLayoutMaster
-            // 
-            this.tblLayoutMaster.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tblLayoutMaster.AutoSize = true;
-            this.tblLayoutMaster.ColumnCount = 5;
-            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_00, 0, 0);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_06, 2, 0);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_10, 2, 8);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_09, 2, 6);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_08, 2, 4);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_07, 2, 2);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_12, 4, 0);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_13, 4, 2);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_14, 4, 4);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_15, 4, 6);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_16, 4, 8);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_11, 2, 10);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_17, 4, 10);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_05, 0, 10);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_04, 0, 8);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_03, 0, 6);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_02, 0, 4);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_01, 0, 2);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_18, 0, 12);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_19, 2, 12);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_20, 4, 12);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_21, 0, 14);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_22, 2, 14);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_23, 4, 14);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_24, 0, 16);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_25, 2, 16);
-            this.tblLayoutMaster.Controls.Add(this.btnMaster_26, 4, 16);
-            this.tblLayoutMaster.Location = new System.Drawing.Point(41, 0);
-            this.tblLayoutMaster.Name = "tblLayoutMaster";
-            this.tblLayoutMaster.RowCount = 17;
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster.Size = new System.Drawing.Size(1029, 748);
-            this.tblLayoutMaster.TabIndex = 14;
-            this.tblLayoutMaster.MouseEnter += new System.EventHandler(this.tblLayoutMaster_MouseEnter);
-            // 
-            // btnMaster_00
-            // 
-            this.btnMaster_00.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_00.Location = new System.Drawing.Point(4, 3);
-            this.btnMaster_00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_00.Name = "btnMaster_00";
-            this.btnMaster_00.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_00.TabIndex = 0;
-            this.btnMaster_00.Text = "会社情報登録";
-            this.btnMaster_00.UseVisualStyleBackColor = true;
-            this.btnMaster_00.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_06
-            // 
-            this.btnMaster_06.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_06.Location = new System.Drawing.Point(363, 3);
-            this.btnMaster_06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_06.Name = "btnMaster_06";
-            this.btnMaster_06.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_06.TabIndex = 9;
-            this.btnMaster_06.Text = "部署登録";
-            this.btnMaster_06.UseVisualStyleBackColor = true;
-            this.btnMaster_06.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_10
-            // 
-            this.btnMaster_10.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_10.Location = new System.Drawing.Point(363, 355);
-            this.btnMaster_10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_10.Name = "btnMaster_10";
-            this.btnMaster_10.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_10.TabIndex = 13;
-            this.btnMaster_10.Text = "法人格登録";
-            this.btnMaster_10.UseVisualStyleBackColor = true;
-            this.btnMaster_10.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_09
-            // 
-            this.btnMaster_09.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_09.Location = new System.Drawing.Point(363, 267);
-            this.btnMaster_09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_09.Name = "btnMaster_09";
-            this.btnMaster_09.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_09.TabIndex = 12;
-            this.btnMaster_09.Text = "車　両　登　録";
-            this.btnMaster_09.UseVisualStyleBackColor = true;
-            this.btnMaster_09.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_08
-            // 
-            this.btnMaster_08.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_08.Location = new System.Drawing.Point(363, 179);
-            this.btnMaster_08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_08.Name = "btnMaster_08";
-            this.btnMaster_08.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_08.TabIndex = 11;
-            this.btnMaster_08.Text = "外注扱い（常雇工）登録";
-            this.btnMaster_08.UseVisualStyleBackColor = true;
-            this.btnMaster_08.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_07
-            // 
-            this.btnMaster_07.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_07.Location = new System.Drawing.Point(363, 91);
-            this.btnMaster_07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_07.Name = "btnMaster_07";
-            this.btnMaster_07.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_07.TabIndex = 10;
-            this.btnMaster_07.Text = "担当者登録";
-            this.btnMaster_07.UseVisualStyleBackColor = true;
-            this.btnMaster_07.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_12
-            // 
-            this.btnMaster_12.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_12.Location = new System.Drawing.Point(722, 3);
-            this.btnMaster_12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_12.Name = "btnMaster_12";
-            this.btnMaster_12.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_12.TabIndex = 18;
-            this.btnMaster_12.Text = "協力会社登録";
-            this.btnMaster_12.UseVisualStyleBackColor = true;
-            this.btnMaster_12.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_13
-            // 
-            this.btnMaster_13.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_13.Location = new System.Drawing.Point(722, 91);
-            this.btnMaster_13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_13.Name = "btnMaster_13";
-            this.btnMaster_13.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_13.TabIndex = 18;
-            this.btnMaster_13.Text = "協力会社工種登録";
-            this.btnMaster_13.UseVisualStyleBackColor = true;
-            this.btnMaster_13.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_14
-            // 
-            this.btnMaster_14.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_14.Location = new System.Drawing.Point(722, 179);
-            this.btnMaster_14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_14.Name = "btnMaster_14";
-            this.btnMaster_14.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_14.TabIndex = 20;
-            this.btnMaster_14.Text = "協力会社職種登録";
-            this.btnMaster_14.UseVisualStyleBackColor = true;
-            this.btnMaster_14.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_15
-            // 
-            this.btnMaster_15.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_15.Location = new System.Drawing.Point(722, 267);
-            this.btnMaster_15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_15.Name = "btnMaster_15";
-            this.btnMaster_15.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_15.TabIndex = 21;
-            this.btnMaster_15.UseVisualStyleBackColor = true;
-            this.btnMaster_15.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_16
-            // 
-            this.btnMaster_16.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_16.Location = new System.Drawing.Point(722, 355);
-            this.btnMaster_16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_16.Name = "btnMaster_16";
-            this.btnMaster_16.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_16.TabIndex = 22;
-            this.btnMaster_16.Text = "積算単位登録";
-            this.btnMaster_16.UseVisualStyleBackColor = true;
-            this.btnMaster_16.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_11
-            // 
-            this.btnMaster_11.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_11.Location = new System.Drawing.Point(363, 443);
-            this.btnMaster_11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_11.Name = "btnMaster_11";
-            this.btnMaster_11.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_11.TabIndex = 14;
-            this.btnMaster_11.Text = "発注者区分登録";
-            this.btnMaster_11.UseVisualStyleBackColor = true;
-            this.btnMaster_11.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_17
-            // 
-            this.btnMaster_17.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_17.Location = new System.Drawing.Point(722, 443);
-            this.btnMaster_17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_17.Name = "btnMaster_17";
-            this.btnMaster_17.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_17.TabIndex = 23;
-            this.btnMaster_17.Text = "積算大項目登録";
-            this.btnMaster_17.UseVisualStyleBackColor = true;
-            this.btnMaster_17.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_05
-            // 
-            this.btnMaster_05.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_05.Location = new System.Drawing.Point(4, 443);
-            this.btnMaster_05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_05.Name = "btnMaster_05";
-            this.btnMaster_05.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_05.TabIndex = 5;
-            this.btnMaster_05.Text = "期　限　登　録";
-            this.btnMaster_05.UseVisualStyleBackColor = true;
-            this.btnMaster_05.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_04
-            // 
-            this.btnMaster_04.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_04.Location = new System.Drawing.Point(4, 355);
-            this.btnMaster_04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_04.Name = "btnMaster_04";
-            this.btnMaster_04.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_04.TabIndex = 4;
-            this.btnMaster_04.Text = "会社休日登録";
-            this.btnMaster_04.UseVisualStyleBackColor = true;
-            this.btnMaster_04.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_03
-            // 
-            this.btnMaster_03.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_03.Location = new System.Drawing.Point(4, 267);
-            this.btnMaster_03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_03.Name = "btnMaster_03";
-            this.btnMaster_03.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_03.TabIndex = 3;
-            this.btnMaster_03.UseVisualStyleBackColor = true;
-            this.btnMaster_03.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_02
-            // 
-            this.btnMaster_02.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_02.Location = new System.Drawing.Point(4, 179);
-            this.btnMaster_02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_02.Name = "btnMaster_02";
-            this.btnMaster_02.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_02.TabIndex = 2;
-            this.btnMaster_02.Text = "工事経費名称登録";
-            this.btnMaster_02.UseVisualStyleBackColor = true;
-            this.btnMaster_02.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_01
-            // 
-            this.btnMaster_01.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_01.Location = new System.Drawing.Point(4, 91);
-            this.btnMaster_01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_01.Name = "btnMaster_01";
-            this.btnMaster_01.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_01.TabIndex = 1;
-            this.btnMaster_01.Text = "工事種別登録";
-            this.btnMaster_01.UseVisualStyleBackColor = true;
-            this.btnMaster_01.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_18
-            // 
-            this.btnMaster_18.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_18.Location = new System.Drawing.Point(4, 531);
-            this.btnMaster_18.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_18.Name = "btnMaster_18";
-            this.btnMaster_18.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_18.TabIndex = 6;
-            this.btnMaster_18.UseVisualStyleBackColor = true;
-            this.btnMaster_18.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_19
-            // 
-            this.btnMaster_19.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_19.Location = new System.Drawing.Point(363, 531);
-            this.btnMaster_19.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_19.Name = "btnMaster_19";
-            this.btnMaster_19.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_19.TabIndex = 15;
-            this.btnMaster_19.Text = "発注者登録";
-            this.btnMaster_19.UseVisualStyleBackColor = true;
-            this.btnMaster_19.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_20
-            // 
-            this.btnMaster_20.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_20.Location = new System.Drawing.Point(722, 531);
-            this.btnMaster_20.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_20.Name = "btnMaster_20";
-            this.btnMaster_20.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_20.TabIndex = 24;
-            this.btnMaster_20.Text = "積算大・中項目関連登録";
-            this.btnMaster_20.UseVisualStyleBackColor = true;
-            this.btnMaster_20.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_21
-            // 
-            this.btnMaster_21.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_21.Location = new System.Drawing.Point(4, 619);
-            this.btnMaster_21.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_21.Name = "btnMaster_21";
-            this.btnMaster_21.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_21.TabIndex = 7;
-            this.btnMaster_21.Text = "売上グラフデータ入力";
-            this.btnMaster_21.UseVisualStyleBackColor = true;
-            this.btnMaster_21.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_22
-            // 
-            this.btnMaster_22.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_22.Location = new System.Drawing.Point(363, 619);
-            this.btnMaster_22.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_22.Name = "btnMaster_22";
-            this.btnMaster_22.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_22.TabIndex = 16;
-            this.btnMaster_22.Text = "購入先登録";
-            this.btnMaster_22.UseVisualStyleBackColor = true;
-            this.btnMaster_22.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_23
-            // 
-            this.btnMaster_23.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_23.Location = new System.Drawing.Point(722, 619);
-            this.btnMaster_23.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_23.Name = "btnMaster_23";
-            this.btnMaster_23.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_23.TabIndex = 25;
-            this.btnMaster_23.Text = "積算中項目登録";
-            this.btnMaster_23.UseVisualStyleBackColor = true;
-            this.btnMaster_23.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_24
-            // 
-            this.btnMaster_24.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_24.Location = new System.Drawing.Point(4, 707);
-            this.btnMaster_24.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_24.Name = "btnMaster_24";
-            this.btnMaster_24.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_24.TabIndex = 8;
-            this.btnMaster_24.Text = "部署別工事台帳まとめ一覧";
-            this.btnMaster_24.UseVisualStyleBackColor = true;
-            this.btnMaster_24.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_25
-            // 
-            this.btnMaster_25.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_25.Location = new System.Drawing.Point(363, 707);
-            this.btnMaster_25.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_25.Name = "btnMaster_25";
-            this.btnMaster_25.Size = new System.Drawing.Size(300, 38);
-            this.btnMaster_25.TabIndex = 17;
-            this.btnMaster_25.Text = "承認経路登録";
-            this.btnMaster_25.UseVisualStyleBackColor = true;
-            this.btnMaster_25.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // btnMaster_26
-            // 
-            this.btnMaster_26.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster_26.Location = new System.Drawing.Point(722, 707);
-            this.btnMaster_26.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster_26.Name = "btnMaster_26";
-            this.btnMaster_26.Size = new System.Drawing.Size(303, 38);
-            this.btnMaster_26.TabIndex = 26;
-            this.btnMaster_26.Text = "積算小項目登録";
-            this.btnMaster_26.UseVisualStyleBackColor = true;
-            this.btnMaster_26.Click += new System.EventHandler(this.btnMaster_Click);
-            // 
-            // tabPage19
-            // 
-            this.tabPage19.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
-            this.tabPage19.Controls.Add(this.tblLayoutMaster1);
-            this.tabPage19.Location = new System.Drawing.Point(4, 30);
-            this.tabPage19.Name = "tabPage19";
-            this.tabPage19.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage19.TabIndex = 17;
-            this.tabPage19.Text = "管理者マスタ";
-            // 
-            // tblLayoutMaster1
-            // 
-            this.tblLayoutMaster1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tblLayoutMaster1.ColumnCount = 5;
-            this.tblLayoutMaster1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_00, 0, 0);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_06, 2, 0);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_10, 2, 8);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_09, 2, 6);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_08, 2, 4);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_07, 2, 2);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_12, 4, 0);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_13, 4, 2);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_14, 4, 4);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_15, 4, 6);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_16, 4, 8);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_11, 2, 10);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_17, 4, 10);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_05, 0, 10);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_04, 0, 8);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_03, 0, 6);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_02, 0, 4);
-            this.tblLayoutMaster1.Controls.Add(this.btnMaster1_01, 0, 2);
-            this.tblLayoutMaster1.Location = new System.Drawing.Point(56, 16);
-            this.tblLayoutMaster1.Name = "tblLayoutMaster1";
-            this.tblLayoutMaster1.RowCount = 11;
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster1.Size = new System.Drawing.Size(1080, 484);
-            this.tblLayoutMaster1.TabIndex = 15;
-            // 
-            // btnMaster1_00
-            // 
-            this.btnMaster1_00.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.btnMaster1_00.Location = new System.Drawing.Point(4, 3);
-            this.btnMaster1_00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_00.Name = "btnMaster1_00";
-            this.btnMaster1_00.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_00.TabIndex = 0;
-            this.btnMaster1_00.Text = "担当者登録";
-            this.btnMaster1_00.UseVisualStyleBackColor = true;
-            this.btnMaster1_00.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_06
-            // 
-            this.btnMaster1_06.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_06.Location = new System.Drawing.Point(382, 3);
-            this.btnMaster1_06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_06.Name = "btnMaster1_06";
-            this.btnMaster1_06.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_06.TabIndex = 6;
-            this.btnMaster1_06.Text = "発注者区分登録";
-            this.btnMaster1_06.UseVisualStyleBackColor = true;
-            this.btnMaster1_06.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_10
-            // 
-            this.btnMaster1_10.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster1_10.Location = new System.Drawing.Point(382, 355);
-            this.btnMaster1_10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_10.Name = "btnMaster1_10";
-            this.btnMaster1_10.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_10.TabIndex = 10;
-            this.btnMaster1_10.Text = "積算中項目登録";
-            this.btnMaster1_10.UseVisualStyleBackColor = false;
-            this.btnMaster1_10.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_09
-            // 
-            this.btnMaster1_09.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_09.Location = new System.Drawing.Point(382, 267);
-            this.btnMaster1_09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_09.Name = "btnMaster1_09";
-            this.btnMaster1_09.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_09.TabIndex = 9;
-            this.btnMaster1_09.UseVisualStyleBackColor = true;
-            this.btnMaster1_09.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_08
-            // 
-            this.btnMaster1_08.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_08.Location = new System.Drawing.Point(382, 179);
-            this.btnMaster1_08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_08.Name = "btnMaster1_08";
-            this.btnMaster1_08.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_08.TabIndex = 8;
-            this.btnMaster1_08.Text = "購入先登録";
-            this.btnMaster1_08.UseVisualStyleBackColor = true;
-            this.btnMaster1_08.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_07
-            // 
-            this.btnMaster1_07.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_07.Location = new System.Drawing.Point(382, 91);
-            this.btnMaster1_07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_07.Name = "btnMaster1_07";
-            this.btnMaster1_07.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_07.TabIndex = 7;
-            this.btnMaster1_07.Text = "発注者登録";
-            this.btnMaster1_07.UseVisualStyleBackColor = true;
-            this.btnMaster1_07.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_12
-            // 
-            this.btnMaster1_12.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_12.Location = new System.Drawing.Point(760, 3);
-            this.btnMaster1_12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_12.Name = "btnMaster1_12";
-            this.btnMaster1_12.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_12.TabIndex = 12;
-            this.btnMaster1_12.Text = "協力会社登録";
-            this.btnMaster1_12.UseVisualStyleBackColor = true;
-            this.btnMaster1_12.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_13
-            // 
-            this.btnMaster1_13.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_13.Location = new System.Drawing.Point(760, 91);
-            this.btnMaster1_13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_13.Name = "btnMaster1_13";
-            this.btnMaster1_13.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_13.TabIndex = 13;
-            this.btnMaster1_13.Text = "協力会社工種登録";
-            this.btnMaster1_13.UseVisualStyleBackColor = true;
-            this.btnMaster1_13.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_14
-            // 
-            this.btnMaster1_14.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_14.Location = new System.Drawing.Point(760, 179);
-            this.btnMaster1_14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_14.Name = "btnMaster1_14";
-            this.btnMaster1_14.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_14.TabIndex = 14;
-            this.btnMaster1_14.Text = "協力会社職種登録（日報用）";
-            this.btnMaster1_14.UseVisualStyleBackColor = true;
-            this.btnMaster1_14.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_15
-            // 
-            this.btnMaster1_15.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_15.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster1_15.Location = new System.Drawing.Point(760, 267);
-            this.btnMaster1_15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_15.Name = "btnMaster1_15";
-            this.btnMaster1_15.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_15.TabIndex = 15;
-            this.btnMaster1_15.Text = "積算単位登録";
-            this.btnMaster1_15.UseVisualStyleBackColor = false;
-            this.btnMaster1_15.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_16
-            // 
-            this.btnMaster1_16.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_16.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster1_16.Location = new System.Drawing.Point(760, 355);
-            this.btnMaster1_16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_16.Name = "btnMaster1_16";
-            this.btnMaster1_16.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_16.TabIndex = 16;
-            this.btnMaster1_16.Text = "積算小項目登録";
-            this.btnMaster1_16.UseVisualStyleBackColor = false;
-            this.btnMaster1_16.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_11
-            // 
-            this.btnMaster1_11.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_11.BackColor = System.Drawing.SystemColors.ControlLight;
-            this.btnMaster1_11.Location = new System.Drawing.Point(382, 443);
-            this.btnMaster1_11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_11.Name = "btnMaster1_11";
-            this.btnMaster1_11.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_11.TabIndex = 11;
-            this.btnMaster1_11.UseVisualStyleBackColor = false;
-            this.btnMaster1_11.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_17
-            // 
-            this.btnMaster1_17.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster1_17.BackColor = System.Drawing.SystemColors.ControlLight;
-            this.btnMaster1_17.Location = new System.Drawing.Point(760, 443);
-            this.btnMaster1_17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_17.Name = "btnMaster1_17";
-            this.btnMaster1_17.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_17.TabIndex = 17;
-            this.btnMaster1_17.UseVisualStyleBackColor = false;
-            this.btnMaster1_17.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_05
-            // 
-            this.btnMaster1_05.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.btnMaster1_05.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster1_05.Location = new System.Drawing.Point(4, 443);
-            this.btnMaster1_05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_05.Name = "btnMaster1_05";
-            this.btnMaster1_05.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_05.TabIndex = 5;
-            this.btnMaster1_05.Text = "積算大・中項目関連登録";
-            this.btnMaster1_05.UseVisualStyleBackColor = false;
-            this.btnMaster1_05.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_04
-            // 
-            this.btnMaster1_04.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.btnMaster1_04.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster1_04.Location = new System.Drawing.Point(4, 355);
-            this.btnMaster1_04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_04.Name = "btnMaster1_04";
-            this.btnMaster1_04.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_04.TabIndex = 4;
-            this.btnMaster1_04.Text = "積算大項目登録";
-            this.btnMaster1_04.UseVisualStyleBackColor = false;
-            this.btnMaster1_04.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_03
-            // 
-            this.btnMaster1_03.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.btnMaster1_03.Location = new System.Drawing.Point(4, 267);
-            this.btnMaster1_03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_03.Name = "btnMaster1_03";
-            this.btnMaster1_03.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_03.TabIndex = 3;
-            this.btnMaster1_03.Text = "期　限　登　録";
-            this.btnMaster1_03.UseVisualStyleBackColor = true;
-            this.btnMaster1_03.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_02
-            // 
-            this.btnMaster1_02.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.btnMaster1_02.Location = new System.Drawing.Point(4, 179);
-            this.btnMaster1_02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_02.Name = "btnMaster1_02";
-            this.btnMaster1_02.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_02.TabIndex = 2;
-            this.btnMaster1_02.Text = "車　両　登　録";
-            this.btnMaster1_02.UseVisualStyleBackColor = true;
-            this.btnMaster1_02.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // btnMaster1_01
-            // 
-            this.btnMaster1_01.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.btnMaster1_01.Location = new System.Drawing.Point(4, 91);
-            this.btnMaster1_01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster1_01.Name = "btnMaster1_01";
-            this.btnMaster1_01.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster1_01.TabIndex = 1;
-            this.btnMaster1_01.Text = "外注扱い（常雇工）登録";
-            this.btnMaster1_01.UseVisualStyleBackColor = true;
-            this.btnMaster1_01.Click += new System.EventHandler(this.btnMaster1_Click);
-            // 
-            // tabPage5
-            // 
-            this.tabPage5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
-            this.tabPage5.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.tabPage5.Controls.Add(this.tblLayoutMaster2);
-            this.tabPage5.Location = new System.Drawing.Point(4, 30);
-            this.tabPage5.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage5.Name = "tabPage5";
-            this.tabPage5.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage5.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage5.TabIndex = 1;
-            this.tabPage5.Text = "所属長マスタ";
-            // 
-            // tblLayoutMaster2
-            // 
-            this.tblLayoutMaster2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tblLayoutMaster2.ColumnCount = 5;
-            this.tblLayoutMaster2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_00, 0, 0);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_06, 2, 0);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_01, 0, 2);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_02, 0, 4);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_03, 0, 6);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_04, 0, 8);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_10, 2, 8);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_09, 2, 6);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_08, 2, 4);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_07, 2, 2);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_12, 4, 0);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_13, 4, 2);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_14, 4, 4);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_15, 4, 6);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_16, 4, 8);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_r05, 0, 10);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_11, 2, 10);
-            this.tblLayoutMaster2.Controls.Add(this.btnMaster2_17, 4, 10);
-            this.tblLayoutMaster2.Location = new System.Drawing.Point(54, 16);
-            this.tblLayoutMaster2.Name = "tblLayoutMaster2";
-            this.tblLayoutMaster2.RowCount = 11;
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster2.Size = new System.Drawing.Size(1080, 484);
-            this.tblLayoutMaster2.TabIndex = 12;
-            // 
-            // btnMaster2_00
-            // 
-            this.btnMaster2_00.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.btnMaster2_00.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster2_00.Location = new System.Drawing.Point(4, 3);
-            this.btnMaster2_00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_00.Name = "btnMaster2_00";
-            this.btnMaster2_00.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_00.TabIndex = 0;
-            this.btnMaster2_00.Text = "積算中項目登録";
-            this.btnMaster2_00.UseVisualStyleBackColor = false;
-            this.btnMaster2_00.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_06
-            // 
-            this.btnMaster2_06.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_06.Location = new System.Drawing.Point(382, 3);
-            this.btnMaster2_06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_06.Name = "btnMaster2_06";
-            this.btnMaster2_06.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_06.TabIndex = 6;
-            this.btnMaster2_06.Text = "発注者登録";
-            this.btnMaster2_06.UseVisualStyleBackColor = true;
-            this.btnMaster2_06.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_01
-            // 
-            this.btnMaster2_01.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.btnMaster2_01.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster2_01.Location = new System.Drawing.Point(4, 91);
-            this.btnMaster2_01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_01.Name = "btnMaster2_01";
-            this.btnMaster2_01.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_01.TabIndex = 1;
-            this.btnMaster2_01.Text = "積算小項目登録";
-            this.btnMaster2_01.UseVisualStyleBackColor = false;
-            this.btnMaster2_01.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_02
-            // 
-            this.btnMaster2_02.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.btnMaster2_02.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
-            this.btnMaster2_02.Location = new System.Drawing.Point(4, 179);
-            this.btnMaster2_02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_02.Name = "btnMaster2_02";
-            this.btnMaster2_02.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_02.TabIndex = 2;
-            this.btnMaster2_02.Text = "積算単位登録";
-            this.btnMaster2_02.UseVisualStyleBackColor = false;
-            this.btnMaster2_02.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_03
-            // 
-            this.btnMaster2_03.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.btnMaster2_03.Location = new System.Drawing.Point(4, 267);
-            this.btnMaster2_03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_03.Name = "btnMaster2_03";
-            this.btnMaster2_03.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_03.TabIndex = 3;
-            this.btnMaster2_03.UseVisualStyleBackColor = true;
-            this.btnMaster2_03.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_04
-            // 
-            this.btnMaster2_04.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.btnMaster2_04.Location = new System.Drawing.Point(4, 355);
-            this.btnMaster2_04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_04.Name = "btnMaster2_04";
-            this.btnMaster2_04.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_04.TabIndex = 4;
-            this.btnMaster2_04.UseVisualStyleBackColor = true;
-            this.btnMaster2_04.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_10
-            // 
-            this.btnMaster2_10.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_10.Location = new System.Drawing.Point(382, 355);
-            this.btnMaster2_10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_10.Name = "btnMaster2_10";
-            this.btnMaster2_10.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_10.TabIndex = 10;
-            this.btnMaster2_10.UseVisualStyleBackColor = true;
-            this.btnMaster2_10.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_09
-            // 
-            this.btnMaster2_09.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_09.Location = new System.Drawing.Point(382, 267);
-            this.btnMaster2_09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_09.Name = "btnMaster2_09";
-            this.btnMaster2_09.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_09.TabIndex = 9;
-            this.btnMaster2_09.UseVisualStyleBackColor = true;
-            this.btnMaster2_09.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_08
-            // 
-            this.btnMaster2_08.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_08.Location = new System.Drawing.Point(382, 179);
-            this.btnMaster2_08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_08.Name = "btnMaster2_08";
-            this.btnMaster2_08.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_08.TabIndex = 8;
-            this.btnMaster2_08.UseVisualStyleBackColor = true;
-            this.btnMaster2_08.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_07
-            // 
-            this.btnMaster2_07.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_07.Location = new System.Drawing.Point(382, 91);
-            this.btnMaster2_07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_07.Name = "btnMaster2_07";
-            this.btnMaster2_07.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_07.TabIndex = 7;
-            this.btnMaster2_07.Text = "購入先登録";
-            this.btnMaster2_07.UseVisualStyleBackColor = true;
-            this.btnMaster2_07.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_12
-            // 
-            this.btnMaster2_12.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_12.Location = new System.Drawing.Point(760, 3);
-            this.btnMaster2_12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_12.Name = "btnMaster2_12";
-            this.btnMaster2_12.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_12.TabIndex = 12;
-            this.btnMaster2_12.Text = "協力会社登録";
-            this.btnMaster2_12.UseVisualStyleBackColor = true;
-            this.btnMaster2_12.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_13
-            // 
-            this.btnMaster2_13.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_13.Location = new System.Drawing.Point(760, 91);
-            this.btnMaster2_13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_13.Name = "btnMaster2_13";
-            this.btnMaster2_13.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_13.TabIndex = 13;
-            this.btnMaster2_13.Text = "協力会社工種登録";
-            this.btnMaster2_13.UseVisualStyleBackColor = true;
-            this.btnMaster2_13.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_14
-            // 
-            this.btnMaster2_14.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_14.Location = new System.Drawing.Point(760, 179);
-            this.btnMaster2_14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_14.Name = "btnMaster2_14";
-            this.btnMaster2_14.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_14.TabIndex = 14;
-            this.btnMaster2_14.Text = "協力会社職種登録（日報用）";
-            this.btnMaster2_14.UseVisualStyleBackColor = true;
-            this.btnMaster2_14.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_15
-            // 
-            this.btnMaster2_15.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_15.Location = new System.Drawing.Point(760, 267);
-            this.btnMaster2_15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_15.Name = "btnMaster2_15";
-            this.btnMaster2_15.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_15.TabIndex = 15;
-            this.btnMaster2_15.UseVisualStyleBackColor = true;
-            this.btnMaster2_15.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_16
-            // 
-            this.btnMaster2_16.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_16.Location = new System.Drawing.Point(760, 355);
-            this.btnMaster2_16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_16.Name = "btnMaster2_16";
-            this.btnMaster2_16.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_16.TabIndex = 16;
-            this.btnMaster2_16.UseVisualStyleBackColor = true;
-            this.btnMaster2_16.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_r05
-            // 
-            this.btnMaster2_r05.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.btnMaster2_r05.Location = new System.Drawing.Point(4, 443);
-            this.btnMaster2_r05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_r05.Name = "btnMaster2_r05";
-            this.btnMaster2_r05.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_r05.TabIndex = 5;
-            this.btnMaster2_r05.UseVisualStyleBackColor = true;
-            this.btnMaster2_r05.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_11
-            // 
-            this.btnMaster2_11.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_11.Location = new System.Drawing.Point(382, 443);
-            this.btnMaster2_11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_11.Name = "btnMaster2_11";
-            this.btnMaster2_11.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_11.TabIndex = 11;
-            this.btnMaster2_11.UseVisualStyleBackColor = true;
-            this.btnMaster2_11.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // btnMaster2_17
-            // 
-            this.btnMaster2_17.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster2_17.Location = new System.Drawing.Point(760, 443);
-            this.btnMaster2_17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster2_17.Name = "btnMaster2_17";
-            this.btnMaster2_17.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster2_17.TabIndex = 17;
-            this.btnMaster2_17.UseVisualStyleBackColor = true;
-            this.btnMaster2_17.Click += new System.EventHandler(this.btnMaster2_Click);
-            // 
-            // tabPage6
-            // 
-            this.tabPage6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(128)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
-            this.tabPage6.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.tabPage6.Controls.Add(this.tblLayoutMaster3);
-            this.tabPage6.Location = new System.Drawing.Point(4, 30);
-            this.tabPage6.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage6.Name = "tabPage6";
-            this.tabPage6.Padding = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.tabPage6.Size = new System.Drawing.Size(1192, 536);
-            this.tabPage6.TabIndex = 1;
-            this.tabPage6.Text = "担当者マスタ";
-            // 
-            // tblLayoutMaster3
-            // 
-            this.tblLayoutMaster3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tblLayoutMaster3.ColumnCount = 5;
-            this.tblLayoutMaster3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 5F));
-            this.tblLayoutMaster3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_00, 0, 0);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_06, 2, 0);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_01, 0, 2);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_02, 0, 4);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_03, 0, 6);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_04, 0, 8);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_10, 2, 8);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_09, 2, 6);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_08, 2, 4);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_07, 2, 2);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_12, 4, 0);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_13, 4, 2);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_14, 4, 4);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_15, 4, 6);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_16, 4, 8);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_05, 0, 10);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_11, 2, 10);
-            this.tblLayoutMaster3.Controls.Add(this.btnMaster3_17, 4, 10);
-            this.tblLayoutMaster3.Location = new System.Drawing.Point(54, 16);
-            this.tblLayoutMaster3.Name = "tblLayoutMaster3";
-            this.tblLayoutMaster3.RowCount = 11;
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 44F));
-            this.tblLayoutMaster3.Size = new System.Drawing.Size(1080, 484);
-            this.tblLayoutMaster3.TabIndex = 13;
-            // 
-            // btnMaster3_00
-            // 
-            this.btnMaster3_00.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.btnMaster3_00.Location = new System.Drawing.Point(4, 3);
-            this.btnMaster3_00.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_00.Name = "btnMaster3_00";
-            this.btnMaster3_00.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_00.TabIndex = 0;
-            this.btnMaster3_00.UseVisualStyleBackColor = true;
-            this.btnMaster3_00.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_06
-            // 
-            this.btnMaster3_06.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_06.Location = new System.Drawing.Point(382, 3);
-            this.btnMaster3_06.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_06.Name = "btnMaster3_06";
-            this.btnMaster3_06.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_06.TabIndex = 6;
-            this.btnMaster3_06.Text = "発注者一覧(閲覧のみ)";
-            this.btnMaster3_06.UseVisualStyleBackColor = true;
-            this.btnMaster3_06.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_01
-            // 
-            this.btnMaster3_01.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.btnMaster3_01.Location = new System.Drawing.Point(4, 91);
-            this.btnMaster3_01.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_01.Name = "btnMaster3_01";
-            this.btnMaster3_01.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_01.TabIndex = 1;
-            this.btnMaster3_01.UseVisualStyleBackColor = true;
-            this.btnMaster3_01.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_02
-            // 
-            this.btnMaster3_02.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.btnMaster3_02.Location = new System.Drawing.Point(4, 179);
-            this.btnMaster3_02.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_02.Name = "btnMaster3_02";
-            this.btnMaster3_02.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_02.TabIndex = 2;
-            this.btnMaster3_02.UseVisualStyleBackColor = true;
-            this.btnMaster3_02.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_03
-            // 
-            this.btnMaster3_03.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.btnMaster3_03.Location = new System.Drawing.Point(4, 267);
-            this.btnMaster3_03.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_03.Name = "btnMaster3_03";
-            this.btnMaster3_03.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_03.TabIndex = 3;
-            this.btnMaster3_03.UseVisualStyleBackColor = true;
-            this.btnMaster3_03.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_04
-            // 
-            this.btnMaster3_04.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.btnMaster3_04.Location = new System.Drawing.Point(4, 355);
-            this.btnMaster3_04.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_04.Name = "btnMaster3_04";
-            this.btnMaster3_04.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_04.TabIndex = 4;
-            this.btnMaster3_04.UseVisualStyleBackColor = true;
-            this.btnMaster3_04.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_10
-            // 
-            this.btnMaster3_10.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_10.Location = new System.Drawing.Point(382, 355);
-            this.btnMaster3_10.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_10.Name = "btnMaster3_10";
-            this.btnMaster3_10.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_10.TabIndex = 10;
-            this.btnMaster3_10.UseVisualStyleBackColor = true;
-            this.btnMaster3_10.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_09
-            // 
-            this.btnMaster3_09.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_09.Location = new System.Drawing.Point(382, 267);
-            this.btnMaster3_09.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_09.Name = "btnMaster3_09";
-            this.btnMaster3_09.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_09.TabIndex = 9;
-            this.btnMaster3_09.UseVisualStyleBackColor = true;
-            this.btnMaster3_09.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_08
-            // 
-            this.btnMaster3_08.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_08.Location = new System.Drawing.Point(382, 179);
-            this.btnMaster3_08.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_08.Name = "btnMaster3_08";
-            this.btnMaster3_08.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_08.TabIndex = 8;
-            this.btnMaster3_08.UseVisualStyleBackColor = true;
-            this.btnMaster3_08.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_07
-            // 
-            this.btnMaster3_07.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_07.Location = new System.Drawing.Point(382, 91);
-            this.btnMaster3_07.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_07.Name = "btnMaster3_07";
-            this.btnMaster3_07.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_07.TabIndex = 7;
-            this.btnMaster3_07.Text = "購入先登録";
-            this.btnMaster3_07.UseVisualStyleBackColor = true;
-            this.btnMaster3_07.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_12
-            // 
-            this.btnMaster3_12.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_12.Location = new System.Drawing.Point(760, 3);
-            this.btnMaster3_12.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_12.Name = "btnMaster3_12";
-            this.btnMaster3_12.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_12.TabIndex = 12;
-            this.btnMaster3_12.Text = "協力会社登録";
-            this.btnMaster3_12.UseVisualStyleBackColor = true;
-            this.btnMaster3_12.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_13
-            // 
-            this.btnMaster3_13.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_13.Location = new System.Drawing.Point(760, 91);
-            this.btnMaster3_13.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_13.Name = "btnMaster3_13";
-            this.btnMaster3_13.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_13.TabIndex = 13;
-            this.btnMaster3_13.Text = "協力会社工種登録";
-            this.btnMaster3_13.UseVisualStyleBackColor = true;
-            this.btnMaster3_13.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_14
-            // 
-            this.btnMaster3_14.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_14.Location = new System.Drawing.Point(760, 179);
-            this.btnMaster3_14.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_14.Name = "btnMaster3_14";
-            this.btnMaster3_14.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_14.TabIndex = 14;
-            this.btnMaster3_14.Text = "協力会社職種登録（日報用）";
-            this.btnMaster3_14.UseVisualStyleBackColor = true;
-            this.btnMaster3_14.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_15
-            // 
-            this.btnMaster3_15.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_15.Location = new System.Drawing.Point(760, 267);
-            this.btnMaster3_15.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_15.Name = "btnMaster3_15";
-            this.btnMaster3_15.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_15.TabIndex = 15;
-            this.btnMaster3_15.UseVisualStyleBackColor = true;
-            this.btnMaster3_15.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_16
-            // 
-            this.btnMaster3_16.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_16.Location = new System.Drawing.Point(760, 355);
-            this.btnMaster3_16.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_16.Name = "btnMaster3_16";
-            this.btnMaster3_16.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_16.TabIndex = 16;
-            this.btnMaster3_16.UseVisualStyleBackColor = true;
-            this.btnMaster3_16.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_05
-            // 
-            this.btnMaster3_05.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.btnMaster3_05.Location = new System.Drawing.Point(4, 443);
-            this.btnMaster3_05.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_05.Name = "btnMaster3_05";
-            this.btnMaster3_05.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_05.TabIndex = 5;
-            this.btnMaster3_05.UseVisualStyleBackColor = true;
-            this.btnMaster3_05.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_11
-            // 
-            this.btnMaster3_11.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_11.Location = new System.Drawing.Point(382, 443);
-            this.btnMaster3_11.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_11.Name = "btnMaster3_11";
-            this.btnMaster3_11.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_11.TabIndex = 11;
-            this.btnMaster3_11.UseVisualStyleBackColor = true;
-            this.btnMaster3_11.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // btnMaster3_17
-            // 
-            this.btnMaster3_17.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnMaster3_17.Location = new System.Drawing.Point(760, 443);
-            this.btnMaster3_17.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
-            this.btnMaster3_17.Name = "btnMaster3_17";
-            this.btnMaster3_17.Size = new System.Drawing.Size(316, 38);
-            this.btnMaster3_17.TabIndex = 17;
-            this.btnMaster3_17.UseVisualStyleBackColor = true;
-            this.btnMaster3_17.Click += new System.EventHandler(this.btnMaster3_Click);
-            // 
-            // lblDate
-            // 
-            this.lblDate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-            this.lblDate.BackColor = System.Drawing.Color.Transparent;
-            this.lblDate.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblDate.ForeColor = System.Drawing.Color.White;
-            this.lblDate.Location = new System.Drawing.Point(1040, 14);
-            this.lblDate.Name = "lblDate";
-            this.lblDate.Size = new System.Drawing.Size(150, 23);
-            this.lblDate.TabIndex = 19;
-            this.lblDate.Text = "2015年12月31日";
-            this.lblDate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
-            // 
-            // lblVersion
-            // 
-            this.lblVersion.AutoSize = true;
-            this.lblVersion.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.lblVersion.ForeColor = System.Drawing.Color.White;
-            this.lblVersion.Location = new System.Drawing.Point(20, 17);
-            this.lblVersion.Name = "lblVersion";
-            this.lblVersion.Size = new System.Drawing.Size(112, 16);
-            this.lblVersion.TabIndex = 20;
-            this.lblVersion.Text = "Version 1.0.0";
-            // 
-            // btnLogOut
-            // 
-            this.btnLogOut.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.btnLogOut.BackColor = System.Drawing.Color.SpringGreen;
-            this.btnLogOut.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnLogOut.Location = new System.Drawing.Point(5, 638);
-            this.btnLogOut.Name = "btnLogOut";
-            this.btnLogOut.Size = new System.Drawing.Size(120, 30);
-            this.btnLogOut.TabIndex = 26;
-            this.btnLogOut.TabStop = false;
-            this.btnLogOut.Text = "ログアウト";
-            this.btnLogOut.UseVisualStyleBackColor = false;
-            this.btnLogOut.Click += new System.EventHandler(this.btnLogOut_Click);
-            // 
-            // timer_StaffAssign
-            // 
-            this.timer_StaffAssign.Interval = 50;
-            this.timer_StaffAssign.Tick += new System.EventHandler(this.timer_StaffAssign_Tick);
-            // 
-            // btnDataCopyE
-            // 
-            this.btnDataCopyE.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.btnDataCopyE.BackColor = System.Drawing.Color.DarkOrange;
-            this.btnDataCopyE.Font = new System.Drawing.Font("ＭＳ 明朝", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
-            this.btnDataCopyE.ForeColor = System.Drawing.Color.Black;
-            this.btnDataCopyE.Location = new System.Drawing.Point(810, 638);
-            this.btnDataCopyE.Name = "btnDataCopyE";
-            this.btnDataCopyE.Size = new System.Drawing.Size(260, 30);
-            this.btnDataCopyE.TabIndex = 29;
-            this.btnDataCopyE.Text = "既存工事からコピー登録";
-            this.btnDataCopyE.UseVisualStyleBackColor = false;
-            this.btnDataCopyE.Visible = false;
-            this.btnDataCopyE.Click += new System.EventHandler(this.btnDataCopy_Click);
-            // 
             // FrmMenu
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -7599,61 +7228,56 @@
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMenu_FormClosing);
             this.Load += new System.EventHandler(this.FormMenu_Load);
+            this.Shown += new System.EventHandler(this.FrmMenu_Shown);
             this.SizeChanged += new System.EventHandler(this.FrmMenu_SizeChanged);
             this.tabMenu.ResumeLayout(false);
-            this.tabPage20.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvBusinessMessage)).EndInit();
+            this.tabPage1.ResumeLayout(false);
+            this.tabPage2.ResumeLayout(false);
+            this.tabPage3.ResumeLayout(false);
+            this.tabPage4.ResumeLayout(false);
+            this.tabPage5.ResumeLayout(false);
+            this.tabPage6.ResumeLayout(false);
             this.tabPage7.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvMessageBoard)).EndInit();
-            this.tabPage21.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvApproval)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
             this.tabPage8.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvSalesInProjects)).EndInit();
-            this.tabPage17.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvTenders)).EndInit();
-            this.tabPage18.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvBudgetUp)).EndInit();
             this.tabPage9.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.numUDConstPro)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvConstructionProjects)).EndInit();
-            this.tabPage13.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvFluctuationProjects)).EndInit();
-            this.tabPage14.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.numUDNonOrder)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvNonOrders)).EndInit();
-            this.tabPage15.ResumeLayout(false);
+            this.tabPage10.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.numUDCompletion)).EndInit();
-            ((System.ComponentModel.ISupportInitialize)(this.dgvCompletionOfConstruction)).EndInit();
-            this.tabPage10.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvActionSchedule)).EndInit();
             this.tabPage11.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.dgvStaffAssignment)).EndInit();
             this.tabPage12.ResumeLayout(false);
+            this.tabPage13.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.SalseGraphNum)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.chartSalesGraph)).EndInit();
-            this.tabPage1.ResumeLayout(false);
+            this.tabPage14.ResumeLayout(false);
             this.tblLayoutOrder.ResumeLayout(false);
             this.tblLayoutOrder.PerformLayout();
-            this.tabPage2.ResumeLayout(false);
+            this.tabPage15.ResumeLayout(false);
+            this.pnlConstruction.ResumeLayout(false);
+            this.pnlConstruction.PerformLayout();
             this.tblLayoutConstruction.ResumeLayout(false);
             this.tblLayoutConstruction.PerformLayout();
-            this.tabPage3.ResumeLayout(false);
-            this.tblLayoutBilling.ResumeLayout(false);
-            this.tblLayoutBilling.PerformLayout();
-            this.tabPage22.ResumeLayout(false);
+            this.tabPage16.ResumeLayout(false);
+            this.pnlAffairs.ResumeLayout(false);
             this.tableLayoutAffairs.ResumeLayout(false);
-            this.tabPage16.ResumeLayout(false);
+            this.tableLayoutAffairs.PerformLayout();
+            this.tabPage17.ResumeLayout(false);
             this.tableLayoutDocuments.ResumeLayout(false);
-            this.tabPage4.ResumeLayout(false);
+            this.tabPage18.ResumeLayout(false);
             this.pnlMaster01.ResumeLayout(false);
             this.pnlMaster01.PerformLayout();
-            this.tblLayoutMaster.ResumeLayout(false);
-            this.tabPage19.ResumeLayout(false);
-            this.tblLayoutMaster1.ResumeLayout(false);
-            this.tabPage5.ResumeLayout(false);
-            this.tblLayoutMaster2.ResumeLayout(false);
-            this.tabPage6.ResumeLayout(false);
-            this.tblLayoutMaster3.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvBusinessMessage)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvMessageBoard)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvApproval)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvSalesInProjects)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvTenders)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvBudgetUp)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvConstructionProjects)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvFluctuationProjects)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvNonOrders)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvCompletionOfConstruction)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvActionSchedule)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvStaffAssignment)).EndInit();
             this.ResumeLayout(false);
             this.PerformLayout();
 
@@ -7664,125 +7288,45 @@
         private System.Windows.Forms.Label lblTitle;
         private System.Windows.Forms.Button btnEnd;
         private System.Windows.Forms.TabControl tabMenu;
-        private System.Windows.Forms.TabPage tabPage1;
-        private System.Windows.Forms.TabPage tabPage5;
-        private System.Windows.Forms.TabPage tabPage2;
-        private System.Windows.Forms.TabPage tabPage3;
-        private System.Windows.Forms.Button btnOrder10;
-        private System.Windows.Forms.Button btnOrder09;
-        private System.Windows.Forms.Button btnOrder08;
-        private System.Windows.Forms.Button btnOrder07;
-        private System.Windows.Forms.Button btnOrder06;
-        private System.Windows.Forms.Button btnOrder04;
-        private System.Windows.Forms.Button btnOrder03;
-        private System.Windows.Forms.Button btnOrder02;
-        private System.Windows.Forms.Button btnOrder01;
-        private System.Windows.Forms.Button btnOrder00;
+        private System.Windows.Forms.TabPage tabPage14;
+        private System.Windows.Forms.TabPage tabPage15;
+        private System.Windows.Forms.Button btnOrder0401;
+        private System.Windows.Forms.Button btnOrder0301;
+        private System.Windows.Forms.Button btnOrder0201;
+        private System.Windows.Forms.Button btnOrder0101;
+        private System.Windows.Forms.Button btnOrder0001;
+        private System.Windows.Forms.Button btnOrder0400;
+        private System.Windows.Forms.Button btnOrder0300;
+        private System.Windows.Forms.Button btnOrder0200;
+        private System.Windows.Forms.Button btnOrder0100;
+        private System.Windows.Forms.Button btnOrder0000;
         private System.Windows.Forms.TableLayoutPanel tblLayoutOrder;
         private System.Windows.Forms.Label lblArrpw1_02;
         private System.Windows.Forms.Label lblArrpw1_04;
-        private System.Windows.Forms.Button btnOrder12;
-        private System.Windows.Forms.Button btnOrder13;
-        private System.Windows.Forms.Button btnOrder14;
-        private System.Windows.Forms.Button btnOrder15;
-        private System.Windows.Forms.Button btnOrder16;
-        private System.Windows.Forms.Button btnOrder05;
-        private System.Windows.Forms.Button btnOrder11;
-        private System.Windows.Forms.Button btnOrder17;
-        private System.Windows.Forms.TableLayoutPanel tblLayoutConstruction;
-        private System.Windows.Forms.Button btnConstruction00;
-        private System.Windows.Forms.Button btnConstruction06;
-        private System.Windows.Forms.Button btnConstruction01;
-        private System.Windows.Forms.Button btnConstruction02;
-        private System.Windows.Forms.Button btnConstruction03;
-        private System.Windows.Forms.Button btnConstruction04;
-        private System.Windows.Forms.Button btnConstruction10;
-        private System.Windows.Forms.Button btnConstruction09;
-        private System.Windows.Forms.Button btnConstruction08;
-        private System.Windows.Forms.Button btnConstruction07;
-        private System.Windows.Forms.Label lblArrpw2_01;
-        private System.Windows.Forms.Button btnConstruction12;
-        private System.Windows.Forms.Button btnConstruction13;
-        private System.Windows.Forms.Button btnConstruction14;
-        private System.Windows.Forms.Button btnConstruction15;
-        private System.Windows.Forms.Button btnConstruction16;
-        private System.Windows.Forms.Button btnConstruction05;
-        private System.Windows.Forms.Button btnConstruction11;
-        private System.Windows.Forms.Button btnConstruction17;
-        private System.Windows.Forms.TableLayoutPanel tblLayoutMaster2;
-        private System.Windows.Forms.Button btnMaster2_00;
-        private System.Windows.Forms.Button btnMaster2_06;
-        private System.Windows.Forms.Button btnMaster2_01;
-        private System.Windows.Forms.Button btnMaster2_02;
-        private System.Windows.Forms.Button btnMaster2_03;
-        private System.Windows.Forms.Button btnMaster2_04;
-        private System.Windows.Forms.Button btnMaster2_10;
-        private System.Windows.Forms.Button btnMaster2_09;
-        private System.Windows.Forms.Button btnMaster2_08;
-        private System.Windows.Forms.Button btnMaster2_07;
-        private System.Windows.Forms.Button btnMaster2_12;
-        private System.Windows.Forms.Button btnMaster2_13;
-        private System.Windows.Forms.Button btnMaster2_14;
-        private System.Windows.Forms.Button btnMaster2_15;
-        private System.Windows.Forms.Button btnMaster2_16;
-        private System.Windows.Forms.Button btnMaster2_r05;
-        private System.Windows.Forms.Button btnMaster2_11;
-        private System.Windows.Forms.Button btnMaster2_17;
-        private System.Windows.Forms.TableLayoutPanel tblLayoutBilling;
-        private System.Windows.Forms.Button btnBilling05;
-        private System.Windows.Forms.Button btnBilling01;
-        private System.Windows.Forms.Button btnBilling09;
-        private System.Windows.Forms.Button btnBilling03;
-        private System.Windows.Forms.Button btnBilling08;
-        private System.Windows.Forms.Button btnBilling06;
-        private System.Windows.Forms.Button btnBilling10;
-        private System.Windows.Forms.Button btnBilling11;
-        private System.Windows.Forms.Button btnBilling12;
-        private System.Windows.Forms.Button btnBilling13;
-        private System.Windows.Forms.Button btnBilling02;
-        private System.Windows.Forms.Button btnBilling07;
-        private System.Windows.Forms.Button btnBilling04;
+        private System.Windows.Forms.Button btnOrder0002;
+        private System.Windows.Forms.Button btnOrder0102;
+        private System.Windows.Forms.Button btnOrder0202;
+        private System.Windows.Forms.Button btnOrder0302;
+        private System.Windows.Forms.Button btnOrder0402;
+        private System.Windows.Forms.Button btnOrder0500;
+        private System.Windows.Forms.Button btnOrder0501;
+        private System.Windows.Forms.Button btnOrder0502;
         private System.Windows.Forms.Label label1;
-        private System.Windows.Forms.TabPage tabPage6;
-        private System.Windows.Forms.TableLayoutPanel tblLayoutMaster3;
-        private System.Windows.Forms.Button btnMaster3_00;
-        private System.Windows.Forms.Button btnMaster3_01;
-        private System.Windows.Forms.Button btnMaster3_02;
-        private System.Windows.Forms.Button btnMaster3_03;
-        private System.Windows.Forms.Button btnMaster3_04;
-        private System.Windows.Forms.Button btnMaster3_05;
-        private System.Windows.Forms.Button btnMaster3_06;
-        private System.Windows.Forms.Button btnMaster3_07;
-        private System.Windows.Forms.Button btnMaster3_08;
-        private System.Windows.Forms.Button btnMaster3_09;
-        private System.Windows.Forms.Button btnMaster3_10;
-        private System.Windows.Forms.Button btnMaster3_11;
-        private System.Windows.Forms.Button btnMaster3_12;
-        private System.Windows.Forms.Button btnMaster3_13;
-        private System.Windows.Forms.Button btnMaster3_14;
-        private System.Windows.Forms.Button btnMaster3_15;
-        private System.Windows.Forms.Button btnMaster3_16;
-        private System.Windows.Forms.Button btnMaster3_17;
-        private System.Windows.Forms.TabPage tabPage4;
+        private System.Windows.Forms.TabPage tabPage18;
         private System.Windows.Forms.Label label2;
         private System.Windows.Forms.Label label3;
-        private System.Windows.Forms.Label label6;
         private System.Windows.Forms.Label lblDate;
         private System.Windows.Forms.Label lblVersion;
-        private System.Windows.Forms.TabPage tabPage7;
+        private System.Windows.Forms.TabPage tabPage2;
         private CustomControls.DataGridViewEX dgvMessageBoard;
         private System.Windows.Forms.Button btnLogOut;
-        private System.Windows.Forms.TabPage tabPage8;
-        private System.Windows.Forms.TabPage tabPage9;
-        private System.Windows.Forms.TabPage tabPage10;
+        private System.Windows.Forms.TabPage tabPage4;
+        private System.Windows.Forms.TabPage tabPage7;
         private System.Windows.Forms.TabPage tabPage11;
         private System.Windows.Forms.TabPage tabPage12;
+        private System.Windows.Forms.TabPage tabPage13;
         private System.Windows.Forms.ToolTip toolTip1;
         private System.Windows.Forms.Button btnReLoadMessage;
-        private System.Windows.Forms.Label label8;
-        private System.Windows.Forms.Label lblArrpw2_04;
-        private System.Windows.Forms.Label label5;
-        private System.Windows.Forms.Label label7;
         private System.Windows.Forms.ProgressBar UpDateProgress;
         private System.Windows.Forms.Button btnMessageEntry;
         private CustomControls.DataGridViewEX dgvSalesInProjects;
@@ -7794,13 +7338,13 @@
         private System.Windows.Forms.Button btnReloadConstructionProjects;
         private System.Windows.Forms.Label label12;
         private CustomControls.DataGridViewEX dgvConstructionProjects;
-        private System.Windows.Forms.TabPage tabPage14;
+        private System.Windows.Forms.TabPage tabPage9;
         private System.Windows.Forms.ProgressBar ProgressNonOrders;
         private System.Windows.Forms.Button btnReloadNonOrders;
         private System.Windows.Forms.Label label13;
         private CustomControls.DataGridViewEX dgvNonOrders;
-        private System.Windows.Forms.TabPage tabPage15;
-        private System.Windows.Forms.TabPage tabPage16;
+        private System.Windows.Forms.TabPage tabPage10;
+        private System.Windows.Forms.TabPage tabPage17;
         private CustomControls.DataGridViewEX dgvCompletionOfConstruction;
         private System.Windows.Forms.ProgressBar ProgressCompletionOfConstruction;
         private System.Windows.Forms.Button btnReloadCompletionOfConstruction;
@@ -7807,12 +7351,9 @@
         private System.Windows.Forms.Label label14;
         private System.Windows.Forms.Label lblDepTotal01;
         private System.Windows.Forms.Label lblDep01;
-        private System.Windows.Forms.Label label16;
-        private System.Windows.Forms.Label label18;
-        private System.Windows.Forms.Label label19;
         private System.Windows.Forms.Label label20;
-        private System.Windows.Forms.TabPage tabPage17;
-        private System.Windows.Forms.TabPage tabPage18;
+        private System.Windows.Forms.TabPage tabPage5;
+        private System.Windows.Forms.TabPage tabPage6;
         private CustomControls.DataGridViewEX dgvTenders;
         private System.Windows.Forms.Label label21;
         private CustomControls.DataGridViewEX dgvBudgetUp;
@@ -7834,30 +7375,6 @@
         private System.Windows.Forms.Label lblDep02;
         private System.Windows.Forms.Panel pnlMaster01;
         private System.Windows.Forms.TableLayoutPanel tblLayoutMaster;
-        private System.Windows.Forms.Button btnMaster_00;
-        private System.Windows.Forms.Button btnMaster_06;
-        private System.Windows.Forms.Button btnMaster_10;
-        private System.Windows.Forms.Button btnMaster_09;
-        private System.Windows.Forms.Button btnMaster_08;
-        private System.Windows.Forms.Button btnMaster_07;
-        private System.Windows.Forms.Button btnMaster_12;
-        private System.Windows.Forms.Button btnMaster_13;
-        private System.Windows.Forms.Button btnMaster_14;
-        private System.Windows.Forms.Button btnMaster_15;
-        private System.Windows.Forms.Button btnMaster_16;
-        private System.Windows.Forms.Button btnMaster_11;
-        private System.Windows.Forms.Button btnMaster_17;
-        private System.Windows.Forms.Button btnMaster_05;
-        private System.Windows.Forms.Button btnMaster_04;
-        private System.Windows.Forms.Button btnMaster_03;
-        private System.Windows.Forms.Button btnMaster_02;
-        private System.Windows.Forms.Button btnMaster_01;
-        private System.Windows.Forms.Button btnMaster_18;
-        private System.Windows.Forms.Button btnMaster_19;
-        private System.Windows.Forms.Button btnMaster_20;
-        private System.Windows.Forms.Button btnMaster_21;
-        private System.Windows.Forms.Button btnMaster_22;
-        private System.Windows.Forms.Button btnMaster_23;
         private System.Windows.Forms.Label lblTotal03;
         private System.Windows.Forms.Label lblTotal02;
         private System.Windows.Forms.Label lblDepTotal04;
@@ -7864,34 +7381,14 @@
         private System.Windows.Forms.Label label30;
         private System.Windows.Forms.Label label28;
         private System.Windows.Forms.Label lblDep04;
-        private System.Windows.Forms.TabPage tabPage19;
         private System.Windows.Forms.Label label15;
         private System.Windows.Forms.Button btnReLoadStaffAssignment;
         private CustomControls.DataGridViewEX dgvStaffAssignment;
-        private System.Windows.Forms.TabPage tabPage20;
+        private System.Windows.Forms.TabPage tabPage1;
         private System.Windows.Forms.ProgressBar BusinessProgress;
         private System.Windows.Forms.Button btnReLoadBusinessMsg;
         private CustomControls.DataGridViewEX dgvBusinessMessage;
         private System.Windows.Forms.ProgressBar progBarStaffAssignment;
-        private System.Windows.Forms.TableLayoutPanel tblLayoutMaster1;
-        private System.Windows.Forms.Button btnMaster1_00;
-        private System.Windows.Forms.Button btnMaster1_06;
-        private System.Windows.Forms.Button btnMaster1_10;
-        private System.Windows.Forms.Button btnMaster1_09;
-        private System.Windows.Forms.Button btnMaster1_08;
-        private System.Windows.Forms.Button btnMaster1_07;
-        private System.Windows.Forms.Button btnMaster1_12;
-        private System.Windows.Forms.Button btnMaster1_13;
-        private System.Windows.Forms.Button btnMaster1_14;
-        private System.Windows.Forms.Button btnMaster1_15;
-        private System.Windows.Forms.Button btnMaster1_16;
-        private System.Windows.Forms.Button btnMaster1_11;
-        private System.Windows.Forms.Button btnMaster1_17;
-        private System.Windows.Forms.Button btnMaster1_05;
-        private System.Windows.Forms.Button btnMaster1_04;
-        private System.Windows.Forms.Button btnMaster1_03;
-        private System.Windows.Forms.Button btnMaster1_02;
-        private System.Windows.Forms.Button btnMaster1_01;
         private System.Windows.Forms.ProgressBar progBarSalesGraph;
         private System.Windows.Forms.Button btnReLoadSalesGraph;
         private System.Windows.Forms.Label label24;
@@ -7898,15 +7395,8 @@
         private System.Windows.Forms.DataVisualization.Charting.Chart chartSalesGraph;
         private System.Windows.Forms.Label lblSalesGraphUpdate;
         private System.Windows.Forms.Timer timer_StaffAssign;
-        private System.Windows.Forms.Label lblCompTotal02;
-        private System.Windows.Forms.Label lblCompTotal01;
-        private System.Windows.Forms.Label lblCompTitle02;
-        private System.Windows.Forms.Label lblCompTitle01;
-        private System.Windows.Forms.Button btnMaster_24;
-        private System.Windows.Forms.Button btnMaster_25;
-        private System.Windows.Forms.Button btnMaster_26;
         private CustomControls.DataGridViewEX dgvActionSchedule;
-        private System.Windows.Forms.TabPage tabPage21;
+        private System.Windows.Forms.TabPage tabPage3;
         private System.Windows.Forms.Button btnReLoadDAprroval;
         private System.Windows.Forms.ProgressBar ProgressDApproval;
         private CustomControls.DataGridViewEX dgvApproval;
@@ -7973,12 +7463,6 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn StaffFixColumn06;
         private System.Windows.Forms.NumericUpDown numUDConstPro;
         private System.Windows.Forms.Label lblPeriod;
-        private System.Windows.Forms.Button btnBilling00;
-        private System.Windows.Forms.Label label4;
-        private System.Windows.Forms.Label label34;
-        private System.Windows.Forms.Button button14;
-        private System.Windows.Forms.Label label33;
-        private System.Windows.Forms.Label label35;
         private System.Windows.Forms.Label label36;
         private System.Windows.Forms.NumericUpDown SalseGraphNum;
         private System.Windows.Forms.Label label37;
@@ -7985,7 +7469,7 @@
         private System.Windows.Forms.Label label38;
         private System.Windows.Forms.Label lblDepTotal05;
         private System.Windows.Forms.Label lblDep05;
-        private System.Windows.Forms.TabPage tabPage22;
+        private System.Windows.Forms.TabPage tabPage16;
         private System.Windows.Forms.TableLayoutPanel tableLayoutDocuments;
         private System.Windows.Forms.Button button1;
         private System.Windows.Forms.Button button2;
@@ -8005,26 +7489,6 @@
         private System.Windows.Forms.Button button17;
         private System.Windows.Forms.Button button18;
         private System.Windows.Forms.Button button19;
-        private System.Windows.Forms.TableLayoutPanel tableLayoutAffairs;
-        private System.Windows.Forms.Button button20;
-        private System.Windows.Forms.Button button21;
-        private System.Windows.Forms.Button button22;
-        private System.Windows.Forms.Button button23;
-        private System.Windows.Forms.Button button24;
-        private System.Windows.Forms.Button button25;
-        private System.Windows.Forms.Button button26;
-        private System.Windows.Forms.Button button27;
-        private System.Windows.Forms.Button button28;
-        private System.Windows.Forms.Button button29;
-        private System.Windows.Forms.Button button30;
-        private System.Windows.Forms.Button button31;
-        private System.Windows.Forms.Button button32;
-        private System.Windows.Forms.Button button33;
-        private System.Windows.Forms.Button button34;
-        private System.Windows.Forms.Button button35;
-        private System.Windows.Forms.Button button36;
-        private System.Windows.Forms.Button button37;
-        private System.Windows.Forms.TabPage tabPage23;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn79;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn80;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn81;
@@ -8060,24 +7524,12 @@
         private System.Windows.Forms.NumericUpDown numUDNonOrder;
         private System.Windows.Forms.Label label40;
         private System.Windows.Forms.Label label41;
-        private System.Windows.Forms.TabPage tabPage13;
+        private System.Windows.Forms.TabPage tabPage8;
         private System.Windows.Forms.Label label59;
         private CustomControls.DataGridViewEX dgvFluctuationProjects;
         private System.Windows.Forms.Button btnDataCopyF;
         private System.Windows.Forms.Button btnReloadFluctuationProjects;
         private System.Windows.Forms.ProgressBar ProgressFluctuationProjects;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn02;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn12;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn01;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn03;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn04;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn05;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn06;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn07;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn08;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn09;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn10;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn11;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column15;
         private System.Windows.Forms.DataGridViewTextBoxColumn Column10;
@@ -8147,6 +7599,163 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn50;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn51;
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn52;
+        private System.Windows.Forms.Label lblCompTotal04;
+        private System.Windows.Forms.Label lblCompTitle04;
+        private System.Windows.Forms.Label lblCompTotal03;
+        private System.Windows.Forms.Label lblCompTitle03;
+        private System.Windows.Forms.Label lblCompTotal02;
+        private System.Windows.Forms.Label lblCompTotal01;
+        private System.Windows.Forms.Label lblCompTitle02;
+        private System.Windows.Forms.Label lblCompTitle01;
+        private System.Windows.Forms.Panel pnlConstruction;
+        private System.Windows.Forms.TableLayoutPanel tblLayoutConstruction;
+        private System.Windows.Forms.Label label43;
+        private System.Windows.Forms.Button btnConstruction0000;
+        private System.Windows.Forms.Label label5;
+        private System.Windows.Forms.Label label7;
+        private System.Windows.Forms.Button btnConstruction0001;
+        private System.Windows.Forms.Button btnConstruction0002;
+        private System.Windows.Forms.Button btnConstruction0003;
+        private System.Windows.Forms.Button btnConstruction0004;
+        private System.Windows.Forms.Button btnConstruction0100;
+        private System.Windows.Forms.Button btnConstruction0101;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Button btnConstruction0102;
+        private System.Windows.Forms.Button btnConstruction0103;
+        private System.Windows.Forms.Button btnConstruction0104;
+        private System.Windows.Forms.Label label16;
+        private System.Windows.Forms.Button btnConstruction0200;
+        private System.Windows.Forms.Button btnConstruction0201;
+        private System.Windows.Forms.Button btnConstruction0202;
+        private System.Windows.Forms.Button btnConstruction0203;
+        private System.Windows.Forms.Button btnConstruction0204;
+        private System.Windows.Forms.Label label44;
+        private System.Windows.Forms.Label label45;
+        private System.Windows.Forms.Button btnConstruction0300;
+        private System.Windows.Forms.Button btnConstruction0301;
+        private System.Windows.Forms.Button btnConstruction0302;
+        private System.Windows.Forms.Button btnConstruction0303;
+        private System.Windows.Forms.Button btnConstruction0304;
+        private System.Windows.Forms.Label label46;
+        private System.Windows.Forms.Button btnConstruction0400;
+        private System.Windows.Forms.Button btnConstruction0401;
+        private System.Windows.Forms.Button btnConstruction0402;
+        private System.Windows.Forms.Button btnConstruction0403;
+        private System.Windows.Forms.Button btnConstruction0404;
+        private System.Windows.Forms.Label label47;
+        private System.Windows.Forms.Button btnConstruction0500;
+        private System.Windows.Forms.Button btnConstruction0501;
+        private System.Windows.Forms.Button btnConstruction0502;
+        private System.Windows.Forms.Button btnConstruction0503;
+        private System.Windows.Forms.Button btnConstruction0504;
+        private System.Windows.Forms.Label label32;
+        private System.Windows.Forms.Label label42;
+        private System.Windows.Forms.Label label48;
+        private System.Windows.Forms.Label label49;
+        private System.Windows.Forms.Label label50;
+        private System.Windows.Forms.Button btnConstruction0600;
+        private System.Windows.Forms.Button btnConstruction0601;
+        private System.Windows.Forms.Button btnConstruction0602;
+        private System.Windows.Forms.Button btnConstruction0603;
+        private System.Windows.Forms.Button btnConstruction0604;
+        private System.Windows.Forms.Button btnConstruction0700;
+        private System.Windows.Forms.Button btnConstruction0701;
+        private System.Windows.Forms.Button btnConstruction0702;
+        private System.Windows.Forms.Button btnConstruction0703;
+        private System.Windows.Forms.Button btnConstruction0704;
+        private System.Windows.Forms.Label label51;
+        private System.Windows.Forms.Button btnConstruction0800;
+        private System.Windows.Forms.Button btnConstruction0801;
+        private System.Windows.Forms.Button btnConstruction0802;
+        private System.Windows.Forms.Button btnConstruction0803;
+        private System.Windows.Forms.Button btnConstruction0804;
+        private System.Windows.Forms.Label label52;
+        private System.Windows.Forms.Label label53;
+        private System.Windows.Forms.Label label54;
+        private System.Windows.Forms.Label label55;
+        private System.Windows.Forms.Button btnConstruction0900;
+        private System.Windows.Forms.Button btnConstruction0901;
+        private System.Windows.Forms.Button btnConstruction0902;
+        private System.Windows.Forms.Button btnConstruction0903;
+        private System.Windows.Forms.Button btnConstruction0904;
+        private System.Windows.Forms.Button btnConstruction1000;
+        private System.Windows.Forms.Button btnConstruction1001;
+        private System.Windows.Forms.Button btnConstruction1002;
+        private System.Windows.Forms.Button btnConstruction1003;
+        private System.Windows.Forms.Button btnConstruction1004;
+        private System.Windows.Forms.Label label56;
+        private System.Windows.Forms.Label label57;
+        private System.Windows.Forms.Label label58;
+        private System.Windows.Forms.Button btnConstruction1100;
+        private System.Windows.Forms.Button btnConstruction1101;
+        private System.Windows.Forms.Button btnConstruction1102;
+        private System.Windows.Forms.Button btnConstruction1103;
+        private System.Windows.Forms.Button btnConstruction1104;
+        private System.Windows.Forms.Label label60;
+        private System.Windows.Forms.Label label61;
+        private System.Windows.Forms.Label label62;
+        private System.Windows.Forms.Label label63;
+        private System.Windows.Forms.Label label64;
+        private System.Windows.Forms.Button btnConstruction1200;
+        private System.Windows.Forms.Button btnConstruction1201;
+        private System.Windows.Forms.Button btnConstruction1202;
+        private System.Windows.Forms.Button btnConstruction1203;
+        private System.Windows.Forms.Button btnConstruction1204;
+        private System.Windows.Forms.Panel pnlAffairs;
+        private System.Windows.Forms.TableLayoutPanel tableLayoutAffairs;
+        private System.Windows.Forms.Button btnAffairs0000;
+        private System.Windows.Forms.Button btnAffairs0001;
+        private System.Windows.Forms.Label label65;
+        private System.Windows.Forms.Button btnAffairs0002;
+        private System.Windows.Forms.Button btnAffairs0003;
+        private System.Windows.Forms.Button btnAffairs0004;
+        private System.Windows.Forms.Button btnAffairs0100;
+        private System.Windows.Forms.Button btnAffairs0101;
+        private System.Windows.Forms.Button btnAffairs0102;
+        private System.Windows.Forms.Button btnAffairs0103;
+        private System.Windows.Forms.Button btnAffairs0104;
+        private System.Windows.Forms.Label label67;
+        private System.Windows.Forms.Label label66;
+        private System.Windows.Forms.Label label68;
+        private System.Windows.Forms.Button btnAffairs0302;
+        private System.Windows.Forms.Button btnAffairs0300;
+        private System.Windows.Forms.Button btnAffairs0301;
+        private System.Windows.Forms.Button btnAffairs0201;
+        private System.Windows.Forms.Button btnAffairs0200;
+        private System.Windows.Forms.Label label69;
+        private System.Windows.Forms.Button btnAffairs0202;
+        private System.Windows.Forms.Button btnAffairs0203;
+        private System.Windows.Forms.Button btnAffairs0204;
+        private System.Windows.Forms.Button btnAffairs0303;
+        private System.Windows.Forms.Button btnAffairs0304;
+        private System.Windows.Forms.Label label70;
+        private System.Windows.Forms.Button btnAffairs0400;
+        private System.Windows.Forms.Button btnAffairs0401;
+        private System.Windows.Forms.Button btnAffairs0402;
+        private System.Windows.Forms.Button btnAffairs0403;
+        private System.Windows.Forms.Button btnAffairs0404;
+        private System.Windows.Forms.Label label71;
+        private System.Windows.Forms.Label label72;
+        private System.Windows.Forms.Label label73;
+        private System.Windows.Forms.Label label74;
+        private System.Windows.Forms.Button btnAffairs0500;
+        private System.Windows.Forms.Label label75;
+        private System.Windows.Forms.Label label76;
+        private System.Windows.Forms.Label label77;
+        private System.Windows.Forms.Label label78;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn02;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn12;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column32;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn01;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn03;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn04;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn05;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn06;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn07;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn08;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn09;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn10;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ApprovalColumn11;
     }
 }
 
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.cs	(revision 51)
@@ -1,4 +1,5 @@
 ﻿using System;
+using System.IO;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Data;
@@ -25,108 +26,7 @@
 using ProcessManagement.Forms.SubForms;
 namespace ProcessManagement.Forms
 {
-    #region システム共通定義
     /// <summary>
-    /// メニュータブ名前とEnumを関連付けるEnum
-    /// </summary>
-    public enum FrmMenuTabNameEnum
-    {
-        /// <summary>
-        ///  tabPage1:受注管理
-        /// </summary>
-        OrderMenu = 1,
-        /// <summary>
-        ///  tabPage2:施工管理
-        /// </summary>
-        ConstructionMenu,
-        /// <summary>
-        ///  tabPage3:請求管理
-        /// </summary>
-        BillingMenu,
-        /// <summary>
-        ///  tabPage4:BOSSマスタ
-        /// </summary>
-        MentenanceMenu,
-        /// <summary>
-        /// tabPage5:所属長マスタ
-        /// </summary>
-        MentenanceMenu2,
-        /// <summary>
-        /// tabPage6:担当者マスタ
-        /// </summary>
-        MentenanceMenu3,
-        /// <summary>
-        /// tabPage7:社内掲示板
-        /// </summary>
-        MessageBoard,
-        /// <summary>
-        /// tabPage8:工事案件
-        /// </summary>
-        SalesInProjects,
-        /// <summary>
-        /// tabPage9:受注案件
-        /// </summary>
-        ConstructionProjects,
-        /// <summary>
-        /// tabPage10:行動予定
-        /// </summary>
-        ActionSchedule,
-        /// <summary>
-        /// tabPage11:人員配置
-        /// </summary>
-        StaffAssignment,
-        /// <summary>
-        /// tabPage12:売上グラフ
-        /// </summary>
-        SalesGraph,
-        /// <summary>
-        /// tabPage13:増減工事案件
-        /// </summary>
-        FluctuationProjects,
-        /// <summary>
-        /// tabPage14:非受注工事
-        /// </summary>
-        NonOrders,
-        /// <summary>
-        /// tabPage15:完了工事
-        /// </summary>
-        CompletionOfConstruction,
-        /// <summary>
-        /// tabPage16:各種提出書類
-        /// </summary>
-        DocumentsToBeBubmitted,
-        /// <summary>
-        /// tabPage17:入札案件
-        /// </summary>
-        Tenders,
-        /// <summary>
-        /// tabPage18:予算取り案件
-        /// </summary>
-        BudgetUpProjects,
-        /// <summary>
-        /// tabPage19:管理者マスタ
-        /// </summary>
-        MentenanceMenu1,
-        /// <summary>
-        /// tabPage20:秘書からの連絡
-        /// </summary>
-        BusinessMessage,
-        /// <summary>
-        /// tabPage21:書類承認
-        /// </summary>
-        DocumentApproval,
-        /// <summary>
-        /// tabPage22:総務管理
-        /// </summary>
-        Affairs,
-        /// <summary>
-        /// tabPage23:資材管理
-        /// </summary>
-        Materials,
-    }
-    #endregion
-
-    /// <summary>
     /// 工事管理システムメニュー
     /// </summary>
     public partial class FrmMenu : Form
@@ -139,6 +39,87 @@
         #endregion
 
         #region 定数
+        #region メニュータブ名前とEnumを関連付けるEnum
+        /// <summary>
+        /// メニュータブ名前とEnumを関連付けるEnum
+        /// </summary>
+        public enum TabNameEnum
+        {
+            /// <summary>
+            /// tabPage1:秘書からの連絡
+            /// </summary>
+            BusinessMessage = 1,
+            /// <summary>
+            /// tabPage2:社内掲示板
+            /// </summary>
+            MessageBoard,
+            /// <summary>
+            /// tabPage3:承認一覧
+            /// </summary>
+            DocumentApproval,
+            /// <summary>
+            /// tabPage4:工事案件
+            /// </summary>
+            SalesInProjects,
+            /// <summary>
+            /// tabPage5:入札案件
+            /// </summary>
+            Tenders,
+            /// <summary>
+            /// tabPage6:予算取り案件
+            /// </summary>
+            BudgetUpProjects,
+            /// <summary>
+            /// tabPage7:受注工事
+            /// </summary>
+            ConstructionProjects,
+            /// <summary>
+            /// tabPage8:増減工事
+            /// </summary>
+            FluctuationProjects,
+            /// <summary>
+            /// tabPage9:非受注工事
+            /// </summary>
+            NonOrders,
+            /// <summary>
+            /// tabPage10:完了工事
+            /// </summary>
+            CompletionOfConstruction,
+            /// <summary>
+            /// tabPage11:行動一覧
+            /// </summary>
+            ActionSchedule,
+            /// <summary>
+            /// tabPage12:人員配置
+            /// </summary>
+            StaffAssignment,
+            /// <summary>
+            /// tabPage13:売上グラフ
+            /// </summary>
+            SalesGraph,
+            /// <summary>
+            ///  tabPage14:受注管理
+            /// </summary>
+            OrderMenu,
+            /// <summary>
+            ///  tabPage15:施工管理
+            /// </summary>
+            ConstructionMenu,
+            /// <summary>
+            /// tabPage16:総務管理
+            /// </summary>
+            Affairs,
+            /// <summary>
+            /// tabPage17:各種提出書類
+            /// </summary>
+            DocumentsToBeBubmitted,
+            /// <summary>
+            /// tabPage18:BOSSマスタ
+            /// </summary>
+            MentenanceMenu,
+        }
+        #endregion
+
         #region メニュータブと位置を関連付けるEnum
         /// <summary>
         /// メニュータブと位置を関連付けるEnum
@@ -170,11 +151,11 @@
             /// </summary>
             BudgetUpProjects,
             /// <summary>
-            /// 7:受注案件
+            /// 7:受注工事
             /// </summary>
             ConstructionProjects,
             /// <summary>
-            /// 8:増減工事案件
+            /// 8:増減工事
             /// </summary>
             FluctuationProjects,
             /// <summary>
@@ -206,37 +187,17 @@
             /// </summary>
             ConstructionMenu,
             /// <summary>
-            /// 16:資材管理
+            /// 16:総務管理
             /// </summary>
-            Materials,
-            /// <summary>
-            /// 17:請求管理
-            /// </summary>
-            BillingMenu,
-            /// <summary>
-            /// 18:総務管理
-            /// </summary>
             Affairs,
             /// <summary>
-            /// 19:各種提出書類
+            /// 17:各種提出書類
             /// </summary>
             DocumentsToBeBubmitted,
             /// <summary>
-            /// 20:BOSSマスタ
+            /// 18:BOSSマスタ
             /// </summary>
             MentenanceMenu,
-            /// <summary>
-            /// 21:管理者マスタ
-            /// </summary>
-            MentenanceMenu1,
-            /// <summary>
-            /// 22:所属長マスタ
-            /// </summary>
-            MentenanceMenu2,
-            /// <summary>
-            /// 23:担当者マスタ
-            /// </summary>
-            MentenanceMenu3,
         }
         #endregion
 
@@ -262,12 +223,7 @@
                                                                                     {"tabPage15", 15},
                                                                                     {"tabPage16", 16},
                                                                                     {"tabPage17", 17},
-                                                                                    {"tabPage18", 18},
-                                                                                    {"tabPage19", 19},
-                                                                                    {"tabPage20", 20},
-                                                                                    {"tabPage21", 21},
-                                                                                    {"tabPage22", 22},
-                                                                                    {"tabPage23", 23}};
+                                                                                    {"tabPage18", 18}};
         #endregion
 
         #region メッセージグリッドセル定義
@@ -353,11 +309,6 @@
         private static string[] s_VehiicleReservationFixed = new string[] { "　午　前　", "　午　後　" };
 
         /// <summary>
-        /// 曜日文字
-        /// </summary>
-        private static string[] s_DayOfTheWeek = new string[] { "日", "月", "火", "水", "木", "金", "土" };
-
-        /// <summary>
         /// 行動予定固定文字
         /// </summary>
         private static string[] s_ActionSchduleFixed = new string[] { "　予　定　", "　実　績　" };
@@ -409,14 +360,15 @@
         private static int s_StaffAssignDaysLine = 1;
         #endregion
 
-        #region 書類承認グリッドセルカウント
+        #region 承認グリッドセルカウント
         /// <summary>
-        /// 書類承認グリッドセルカウント
+        /// 承認グリッドセルカウント
         /// </summary>
         private enum DocumentApprovalGridCount
         {
             ConstructionCode = 0,
             ApprovalCode,
+            OrderNo,
             DisplayNo,
             ConstructionName,
             ApprovalName,
@@ -429,10 +381,223 @@
             ApprovalPerson4,
         }
         #endregion
+
+        #region マスタメンテボタン配列
+        /// <summary>
+        /// マスタメンテボタン配列
+        /// </summary>
+        private const int s_MentenanceRowHeight = 44;
         #endregion
 
+        #region 旧セキュリティメンテメニュー関連
+        /// <summary>
+        /// 旧セキュリティカラー表示
+        /// </summary>
+        Color[] OldMentenanceColor = new Color[] { Color.White, Color.Blue, Color.FromArgb(255, 128, 128), Color.FromArgb(255, 255, 128), Color.FromArgb(128, 255, 255) };
+
+        private static int[,] DspMentenance1 = new int[,] { { 1, 1, 1, 1 }, { 1, 1, 1, 1 }, { 1, 1, 1, 1 }, { 1, 1, 1, 1 }, { 1, 1, 1, 1 }, { 1, 1, 1, 1 }, { 1, 1, 1, 1 }, { 1, 1, 1, 1 }, };
+        private static int[,] DspMentenance2 = new int[,] { { 0, 0, 0, 1 }, { 0, 1, 1, 0 }, { 1, 0, 1, 0 }, { 1, 1, 1, 0 }, { 1, 1, 1, 1 }, { 0, 1, 0, 1 }, { 0, 1, 0, 0 }, { 0, 0, 0, 0 }, };
+        private static int[,] DspMentenance3 = new int[,] { { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 1, 0, 1, 0 }, { 1, 1, 1, 0 }, { 0, 1, 1, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, };
+        private static int[,] DspMentenance4 = new int[,] { { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 1, 0, 1, 0 }, { 1, 1, 1, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, };
+        #endregion
+
+        #region 受注管理ボタン名前固定部
+        /// <summary>
+        /// 受注管理ボタン名前固定部
+        /// </summary>
+        private const string s_btnOrder = "btnOrder";
+        #endregion
+
+        #region 受注管理メニューボタン配置
+        /// <summary>
+        /// 受注管理メニューボタン配置
+        /// </summary>
+        private static int[,] OrderMenuButton = new int[,] {
+                                                            {(int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo,
+                                                                0,
+                                                                0
+                                                            },
+                                                            {(int)ClsExcute.ProcessExecuteNo.EstimateInput,
+                                                                (int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList,
+                                                                (int)ClsExcute.ProcessExecuteNo.EstimatePrint
+                                                            },
+                                                            {(int)ClsExcute.ProcessExecuteNo.EstimateBudget,
+                                                                (int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList,
+                                                                0
+                                                            },
+        };
+        #endregion
+
+        #region 施工管理ボタン名前固定部
+        /// <summary>
+        /// 施工管理ボタン名前固定部
+        /// </summary>
+        private const string s_btnConstrction = "btnConstruction";
+        #endregion
+
+        #region 施工管理メニューボタン配置
+        /// <summary>
+        /// 施工管理メニューボタン配置
+        /// </summary>
+        private static int[,] ConstructionMenuButton = new int[,] {
+                                                                    {(int)ClsExcute.ProcessExecuteNo.ConstructionLedgerList,                   
+                                                                        (int)ClsExcute.ProcessExecuteNo.DRList,
+                                                                        0,
+                                                                        (int)ClsExcute.ProcessExecuteNo.TAndPCosts,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {(int)ClsExcute.ProcessExecuteNo.ConstructionBudget,
+                                                                        (int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {(int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry,
+                                                                        (int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList,
+                                                                        (int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {(int)ClsExcute.ProcessExecuteNo.RequestSummaryList,
+                                                                        (int)ClsExcute.ProcessExecuteNo.RequestSummaryList,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    },
+                                                                    {0,
+                                                                        0,
+                                                                        0,
+                                                                        0,
+                                                                        0
+                                                                    }
+        };
+        #endregion
+
+        #region マスタメンテナンスメニューボタン配置
+        /// <summary>
+        /// マスタメンテナンスメニューボタン配置
+        /// </summary>
+        private static int[,] MentenanceMenuButton = new int[,] {
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.System,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.Security,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.ApprovalRoute,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.TermMaster
+                                                                },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.Department,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.PersonInCharge,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.AlwaysEmployment,
+                                                                    0
+                                                                },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.Orderers,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.ConstructionType,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.Suppliers,
+                                                                    0
+                                                                },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.SubContractor,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.SubContractorItem,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.SubContractorJobCategory,
+                                                                    0
+                                                                },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.Component,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.ConstructionItem,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.ConstructionWork,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.ComponentLink
+                                                                },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.BusinessType,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.OrderDivision,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.ConstructionExpenses,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.Unit
+                                                                },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.Calender,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.VehicleMaster,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.MaterialKind,
+                                                                    (int)ClsExcute.MaintenanceExecuteNo.MaterialItem
+                                                                },
+                                                                { (int)ClsExcute.MaintenanceExecuteNo.SaleSalesGraphData,
+                                                                    0,
+                                                                    0,
+                                                                    0
+                                                                },
+        };
+        #endregion
+
+        #region 初期時システム更新ステータス
+        /// <summary>
+        /// 初期時システム更新ステータス
+        /// </summary>
+        private enum SystemUpdate
+        {
+            /// <summary>
+            /// 更新無通常起動
+            /// </summary>
+            ExecNormal = 0,
+            /// <summary>
+            /// 更新処理起動
+            /// </summary>
+            ExecUpdate,
+            /// <summary>
+            /// 異常時終了
+            /// </summary>
+            Abort,
+        }
+        #endregion
+
+        #endregion
+
         #region 変数
         /// <summary>
+        /// 起動チェックパラメータ（true:更新チェックあり、false:更新チェック無し）
+        /// </summary>
+        private bool m_KidouCheck = true;
+        /// <summary>
         /// ログイン時終了フラグ
         /// </summary>
         private bool m_LoginEndFlg = false;
@@ -489,7 +654,7 @@
         /// <summary>
         /// 人員配置月・初期フラグ
         /// </summary>
-        private bool m_bStaffAssignInitFlg = true;
+        //private bool m_bStaffAssignInitFlg = true;
         
         /// <summary>
         /// ソートカラム位置
@@ -527,6 +692,10 @@
         private int[,] m_CellSize;
         #endregion
 
+        /// <summary>
+        /// マスタメンテボタン配列
+        /// </summary>
+        private List<Button> m_MentenanceButton = new List<Button>();
         #endregion
 
         #region コンストラクタ
@@ -533,8 +702,16 @@
         /// <summary>
         /// コンストラクタ
         /// </summary>
-        public FrmMenu()
+        public FrmMenu(string sKidouParam)
         {
+            if (CommonDefine.s_KIDOU_PARAM != sKidouParam)
+            {
+                m_KidouCheck = true;
+            }
+            else
+            {
+                m_KidouCheck = false;
+            }
             InitializeComponent();
             logger.Info("Start Process Management System");
         }
@@ -619,9 +796,9 @@
         }
         #endregion
 
-        #region フォームロード初期表示
+        #region フォームロード
         /// <summary>
-        /// フォームロード初期表示
+        /// フォームロード
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
@@ -635,6 +812,17 @@
                 // エラーログファイル削除
                 ClsCleanUp.CleanLogFile();
 
+                // 初期時システム更新確認処理
+                if(m_KidouCheck)
+                {
+                    if (SystemUpdate.ExecNormal != InitUpdateProc())
+                    {
+                        m_LoginEndFlg = true;
+                        this.Close();
+                        return;
+                    }
+                }
+
                 // タブコントロールをオーナードローへ変更
                 tabMenu.DrawMode = TabDrawMode.OwnerDrawFixed;
 
@@ -668,6 +856,87 @@
         }
         #endregion
 
+        #region 初期時システム更新確認
+        /// <summary>
+        /// 初期時システム更新確認
+        /// </summary>
+        /// <returns></returns>
+        private SystemUpdate InitUpdateProc()
+        {
+            IOSystemExecute SysExecDB = new IOSystemExecute();
+            try
+            {
+                // 本環境のみコピープロセス実行
+                if (!CommonMotions.ProductionExecution) return SystemUpdate.ExecNormal;
+
+                // システムのバージョンをチェックする
+                // キーを取得する
+                int PCode = CommonDefine.ExePrimaryCode.First(x => x.Value.Equals("システムバージョン")).Key;
+                
+                // バージョン読込
+                string strSQL = SysExecDB.CreatePrimarykeyString(PCode);
+                SystemExecute recordRec = new SystemExecute();
+                if (!SysExecDB.SelectAction(strSQL, ref recordRec))
+                {   // レコード無時はエラー
+                    logger.ErrorFormat("バージョンチェックデータ読込みエラー：{0}", CommonMotions.GetMethodName());
+                    return SystemUpdate.Abort;
+                }
+
+                // コピー・環境の更新確認
+                if (recordRec.UpDateCopyVersion > CommonVersion.s_UpDateCopyVersion)
+                {
+                    // コピー機能の更新
+                    ClsUpDate.UpdateAndEnvFileCopy();
+
+                    // 本体更新が無い場合は再起動
+                    if (recordRec.SystemVersion == CommonVersion.s_SystemVersion)
+                    {
+                        m_LoginEndFlg = true;
+                        Application.Restart();
+                        return SystemUpdate.ExecUpdate;
+                    }
+                }
+
+                // 本体更新の確認
+                if (recordRec.SystemVersion > CommonVersion.s_SystemVersion)
+                {
+                    // 本体・環境更新を起動する
+                    string ExecProc = System.Environment.CurrentDirectory + "\\" + CommonDefine.s_UPDATECOPY_NAME;
+                    if (File.Exists(ExecProc))
+                    {
+                        m_LoginEndFlg = true;
+                        Process p = Process.Start(ExecProc);
+                        return SystemUpdate.ExecUpdate;
+                    }
+                }
+
+                return SystemUpdate.ExecNormal;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return SystemUpdate.Abort;
+            }
+            finally
+            {
+                SysExecDB.close(); SysExecDB = null;
+            }
+        }
+        #endregion
+
+        #region 初期画面表示時アクション
+        /// <summary>
+        /// 初期画面表示時アクション
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void FrmMenu_Shown(object sender, EventArgs e)
+        {
+            // 未承認データ確認
+            CheckApprovalData();
+        }
+        #endregion
+
         #region 画面サイズ変更
         /// <summary>
         /// 画面サイズ変更
@@ -729,7 +998,7 @@
             int Tabcount = MenuTabName[wrkname];
             switch (Tabcount)
             {
-                case (int)FrmMenuTabNameEnum.MentenanceMenu:
+                case (int)TabNameEnum.MentenanceMenu:
                     pnlMaster01.Focus();
                     break;
             }
@@ -751,8 +1020,8 @@
 
                 DataGridViewRow wrkRow = dgv.CurrentRow;
 
-                int iGridCnt = (int)FrmMenuTabNameEnum.MessageBoard;
-                if (dgv.Name.Equals(dgvBusinessMessage.Name)) iGridCnt = (int)FrmMenuTabNameEnum.BusinessMessage;
+                int iGridCnt = (int)TabNameEnum.MessageBoard;
+                if (dgv.Name.Equals(dgvBusinessMessage.Name)) iGridCnt = (int)TabNameEnum.BusinessMessage;
 
                 // メッセージ作成
                 if (!MessageCreate(iGridCnt, true)) return;
@@ -784,12 +1053,12 @@
         private void btnMessageEntry_Click(object sender, EventArgs e)
         {
             // 新規メッセージ作成
-            MessageCreate((int)FrmMenuTabNameEnum.MessageBoard);
+            MessageCreate((int)TabNameEnum.MessageBoard);
 
             // 表示行退避
             int iIndex = dgvMessageBoard.FirstDisplayedScrollingRowIndex;
             // 掲示板再表示
-            DispMessageBoard((int)FrmMenuTabNameEnum.MessageBoard);
+            DispMessageBoard((int)TabNameEnum.MessageBoard);
             // 表示行復元
             dgvMessageBoard.FirstDisplayedScrollingRowIndex = iIndex;
         }
@@ -867,7 +1136,7 @@
                 int iConstructionCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)MenuGridCount.ConstructionCode].Value);
 
                 // 起動資格の確認
-                bExecFlg = ClsSecurityPermission.ConstructionDataAccessPermission(iConstructionCode);
+                bExecFlg = ClsSecurityPermission.PersonDataAccess(iConstructionCode);
 
                 // 総務部所属者は工事基本情報の全データを対象にできるただし参照のみ
                 if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision) bExecFlg = true;
@@ -923,29 +1192,29 @@
                 int Tabcount = MenuTabName[wrkname];
                 switch (Tabcount)
                 {
-                    case (int)FrmMenuTabNameEnum.Tenders:
+                    case (int)TabNameEnum.Tenders:
                         // 入札案件一覧情報表示
-                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmMenuTabNameEnum.Tenders);
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)TabNameEnum.Tenders);
                         break;
-                    case (int)FrmMenuTabNameEnum.BudgetUpProjects:
+                    case (int)TabNameEnum.BudgetUpProjects:
                         // 予算取り案件一覧情報表示
-                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmMenuTabNameEnum.BudgetUpProjects);
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)TabNameEnum.BudgetUpProjects);
                         break;
-                    case (int)FrmMenuTabNameEnum.SalesInProjects:
+                    case (int)TabNameEnum.SalesInProjects:
                         // 工事案件一覧情報表示
-                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmMenuTabNameEnum.SalesInProjects);
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)TabNameEnum.SalesInProjects);
                         break;
-                    case (int)FrmMenuTabNameEnum.ConstructionProjects:
+                    case (int)TabNameEnum.ConstructionProjects:
                         // 受注状況一覧表示
-                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmMenuTabNameEnum.ConstructionProjects);
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)TabNameEnum.ConstructionProjects);
                         break;
-                    case (int)FrmMenuTabNameEnum.NonOrders:
+                    case (int)TabNameEnum.NonOrders:
                         // 非受注一覧
-                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmMenuTabNameEnum.NonOrders);
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)TabNameEnum.NonOrders);
                         break;
-                    case (int)FrmMenuTabNameEnum.CompletionOfConstruction:
+                    case (int)TabNameEnum.CompletionOfConstruction:
                         // 完了工事一覧
-                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmMenuTabNameEnum.CompletionOfConstruction);
+                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)TabNameEnum.CompletionOfConstruction);
                         break;
                     default:
                         break;
@@ -970,6 +1239,7 @@
         #endregion
 
         #region 行動予定系イベントメソッド
+        #region 行動予定一覧一覧グリッドクリック時処理
         /// <summary>
         /// 行動予定一覧一覧グリッドクリック時処理
         /// </summary>
@@ -993,6 +1263,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region 行動予定一覧表示時の描画
         /// <summary>
         /// 行動予定一覧表示時の描画
         /// </summary>
@@ -1042,6 +1315,9 @@
             //if (dgvActionSchedule[e.ColumnIndex, 2].Style.BackColor == Color.White) return;
             //dgvActionSchedule[e.ColumnIndex, e.RowIndex].Style.BackColor = dgvActionSchedule[e.ColumnIndex, 2].Style.BackColor;
         }
+        #endregion
+
+        #region 行動予定入力ボタン押下
         /// <summary>
         /// 行動予定入力ボタン押下
         /// </summary>
@@ -1061,15 +1337,29 @@
 
                 // 入力対象者セット
                 int PersonCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)ActionSchduleGridCount.PersonCode].Value);
+                // 入力者部署セット
+                int DepCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)ActionSchduleGridCount.DepartmentCode].Value);
                 string EmployeeClass = CommonMotions.cnvString(dgv.CurrentRow.Cells[(int)ActionSchduleGridCount.DepartmentCode].Value);
+                
                 bool bPatmission = false;
                 // 行毎に書き込みの権限を判定する
                 if (PersonCode == CommonDefine.s_CompanyActionCode)
-                {   // 会社行事は所属長以上は書き込める
-                    if (CommonMotions.LoginUserData.SecurityManagement != CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key) bPatmission = true;
-                    // 所属長以上でなくても総務部は書き込める
-                    if (CommonMotions.LoginUserData.DepartmentCode == CommonDefine.s_GeneralAffairsDevision) bPatmission = true;
-
+                {   // 会社行事
+                    // 新セキュリティ対応
+                    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)CommonDefine.GeneralAffairs.GeneralDep) bPatmission = true;
+                    }
                 }
                 else if (PersonCode == CommonDefine.s_DivisionActionCode)
                 {   // 部署行事は全員が書き込める
@@ -1079,9 +1369,57 @@
                 {   // 部署コードが常雇の場合は全員が書込み対象
                     bPatmission = true;
                 }
+                else if (PersonCode == CommonMotions.LoginUserData.PersonCode)
+                {   // 自分のデータは書き込める
+                    bPatmission = true;
+                }
                 else
-                {   // それ以外は書き込み権限があれば書き込める
-                    if (ClsSecurityPermission.ActionSchdulePermission(PersonCode)) bPatmission = true;
+                {   // ----- それ以外は書き込み権限があれば書き込める
+                    // 新セキュリティ対応
+                    if (CommonMotions.LoginUserData.SecCode == 0)
+                    {
+                        if (ClsSecurityPermission.ActionSchdulePermission(PersonCode)) bPatmission = true;
+                    }
+                    else
+                    {
+                        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[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.LoginUserDepartment)
+                            {
+                                if (DepCode == RefDepRec.DepartmentCode)
+                                {
+                                    // 書込み者が自分より上位者では無い場合は読み込める
+                                    if (CommonMotions.LoginUserSecurity.SecRank <= CurRank)
+                                    {
+                                        bPatmission = true;
+                                        break;
+                                    }
+                                }
+                            }
+                        }
+                    }
                 }
                 if (!bPatmission)
                 {
@@ -1122,6 +1460,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region 車両予約入力ボタン押下
         /// <summary>
         /// 車両予約入力ボタン押下
         /// </summary>
@@ -1159,7 +1500,7 @@
                     iMounth = CommonMotions.cnvInt(dgv[i, 0].Value);
                     if (iMounth != 0) break;
                 }
-                if (iMounth == 0) iMounth = (DateTime.Now.Month - 1);
+                if (iMounth == 0) iMounth = DateTime.Now.Month;
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iMounth);
 
                 // 処理実行
@@ -1173,6 +1514,9 @@
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
         }
+        #endregion
+
+        #region 行動予定表示前週ボタン押下
         /// <summary>
         /// 行動予定表示前週ボタン押下
         /// </summary>
@@ -1182,6 +1526,9 @@
         {
 
         }
+        #endregion
+
+        #region 行動予定表示次週ボタン押下
         /// <summary>
         /// 行動予定表示次週ボタン押下
         /// </summary>
@@ -1192,6 +1539,7 @@
 
         }
         #endregion
+        #endregion
 
         #region 人員配置イベントメソッド
         #region 人員配置グリッドクリック
@@ -1212,7 +1560,7 @@
                 // 工事番号取得
                 int iConstructionCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)StaffAssignmentGridCount.ConstructionCode].Value);
 
-                if ((bExecFlg = ClsSecurityPermission.ConstructionDataAccessPermission(iConstructionCode)))
+                if ((bExecFlg = ClsSecurityPermission.PersonDataAccess(iConstructionCode)))
                 {
                     // 自画面非表示
                     if (CommonMotions.ProductionExecution) this.Visible = false;
@@ -1531,14 +1879,15 @@
         /// <param name="e"></param>
         private void dgvStaffAssignment_Scroll(object sender, ScrollEventArgs e)
         {
-            // 水平スクロールの設定無は処理しない
-            if (m_StaffAssignVScroll == null) return;
-            // 表示中のスクロールは処理しない
-            if (m_bStaffAssignInitFlg) return;
-            // 垂直スクロールは処理しない
-            if (e.ScrollOrientation == ScrollOrientation.VerticalScroll) return;
+            dgvStaffAssignment.Invalidate();
+            //// 水平スクロールの設定無は処理しない
+            //if (m_StaffAssignVScroll == null) return;
+            //// 表示中のスクロールは処理しない
+            //if (m_bStaffAssignInitFlg) return;
+            //// 垂直スクロールは処理しない
+            //if (e.ScrollOrientation == ScrollOrientation.VerticalScroll) return;
 
-            if (!timer_StaffAssign.Enabled) timer_StaffAssign.Start();
+            //if (!timer_StaffAssign.Enabled) timer_StaffAssign.Start();
             //Console.WriteLine(string.Format("位置：{0}", m_StaffAssignVScroll.Value));
         }
         #endregion
@@ -1628,9 +1977,11 @@
                 int iConstructionCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DocumentApprovalGridCount.ConstructionCode].Value);
                 // 承認機能番号取得
                 int iApprovalCode = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DocumentApprovalGridCount.ApprovalCode].Value);
+                // 受付番号取得
+                int iOrderNo = CommonMotions.cnvInt(dgv.CurrentRow.Cells[(int)DocumentApprovalGridCount.OrderNo].Value);
 
                 // 起動資格の確認
-                if ((bExecFlg = ClsSecurityPermission.ConstructionDataAccessPermission(iConstructionCode, false)))
+                if ((bExecFlg = ClsSecurityPermission.PersonDataAccess(iConstructionCode, false)))
                 {
                     // 自画面非表示
                     if (CommonMotions.ProductionExecution) this.Visible = false;
@@ -1641,6 +1992,8 @@
                     ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iConstructionCode);
                     // 選択承認機能番号セット
                     ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iApprovalCode);
+                    // 受付番号セット
+                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(iOrderNo);
 
                     // 処理実行
                     ClsExcute.ProcesscExecute();
@@ -1671,6 +2024,7 @@
         /// <param name="e"></param>
         private void btnOrder_Click(object sender, EventArgs e)
         {
+            int NowPoint = -1;
             try
             {
                 // 自画面非表示
@@ -1678,113 +2032,94 @@
 
                 // 参照オブジェクトをボタンに変換
                 System.Windows.Forms.Button btnKey = (System.Windows.Forms.Button)sender;
-
-                
-                //---- 1列目
-                if (btnKey.Name == "btnOrder00")
+                int ButtonCol = tblLayoutOrder.GetColumn(btnKey);                           // 列取得（Ｘ）
+                int ButtonRow = tblLayoutOrder.GetRow(btnKey);                              // 行取得（Ｙ）
+                switch (ButtonRow)
                 {
-                    // ----- 起動プロセス設定
-                    // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+                    case 0:
+                        switch (ButtonCol)
+                        {
+                            case 0:
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                    //　工事基本情報入力
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
-                }
-                else if (btnKey.Name == "btnOrder01")
-                {
-                    // ----- 起動プロセス設定
-                    // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+                                //　工事基本情報入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
+                                break;
+                        }
+                        break;
+                    case 2:
+                        switch (ButtonCol)
+                        {
+                            case 0:
+                                // ----- 起動プロセス設定
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                    //　積算見積入力
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.EstimateInput);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
-                }
-                else if (btnKey.Name == "btnOrder02")
-                {
-                    // ----- 起動プロセス設定
-                    // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+                                //　積算見積入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.EstimateInput);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                break;
+                            case 2:
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
 
-                    //　積算予算入力
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.EstimateBudget);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
-                }
-                else if (btnKey.Name == "btnOrder03")
-                {
-                }
-                else if (btnKey.Name == "btnOrder04")
-                {
-                }
-                else if (btnKey.Name == "btnOrder05")
-                {
-                }
-                //---- 2列目
-                else if (btnKey.Name == "btnOrder06")
-                {
-                }
-                else if (btnKey.Name == "btnOrder07")
-                {
-                    // ----- 起動プロセス設定
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
+                                // 承認一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                //　積算見積書承認
+                                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算見積書承認")).Key;
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
+                                break;
+                            case 4:
+                                // ----- 起動プロセス設定
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                    // 承認一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    //　積算見積書承認
-                    int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算見積書承認")).Key;
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
-                }
-                else if (btnKey.Name == "btnOrder08")
-                {
-                    // ----- 起動プロセス設定
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
+                                //　積算見積印刷
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.EstimatePrint);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                break;
+                        }
+                        break;
+                    case 4:
+                        switch (ButtonCol)
+                        {
+                            case 0:
+                                // ----- 起動プロセス設定
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                    // 承認一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    //　積算予算書承認
-                    int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算予算書承認")).Key;
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
+                                //　積算予算入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.EstimateBudget);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                break;
+                            case 2:
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
+
+                                // 承認一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                //　積算予算書承認
+                                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("積算予算書承認")).Key;
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
+                                break;
+                        }
+                        break;
+                    case 6:
+                        switch (ButtonCol)
+                        {
+                            case 0:
+                                // 契約結合
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.OrderJoin);
+                                break;
+                            case 2:
+                                // 見積分割
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionSplit);
+                                break;
+                        }
+                        break;
                 }
-                else if (btnKey.Name == "btnOrder09")
-                {
-                }
-                else if (btnKey.Name == "btnOrder09")
-                {
-                }
-                else if (btnKey.Name == "btnOrder10")
-                {
-                }
-                else if (btnKey.Name == "btnOrder11")
-                {
-                }
-                //---- 3列目
-                else if (btnKey.Name == "btnOrder12")
-                {
-                }
-                else if (btnKey.Name == "btnOrder13")
-                {
-                    // ----- 起動プロセス設定
-                    // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+                if (NowPoint < 0) return;
 
-                    //　積算見積印刷
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.EstimatePrint);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
-                }
-                else if (btnKey.Name == "btnOrder14")
-                {
-                }
-                else if (btnKey.Name == "btnOrder15")
-                {
-                }
-                else if (btnKey.Name == "btnOrder16")
-                {
-                }
-                else if (btnKey.Name == "btnOrder17")
-                {
-                    FrmPriceOfBudget frm = new FrmPriceOfBudget();
-                    frm.ShowDialog();
-                    frm.Dispose(); frm = null;
-                }
                 // 処理実行
                 ClsExcute.ProcesscExecute();
             }
@@ -1795,7 +2130,7 @@
             finally
             {
                 // 再表示
-                DisplayDataLoad();
+                if (NowPoint > -1) DisplayDataLoad();
                 // 自画面表示
                 if (CommonMotions.ProductionExecution) this.Visible = true;
             }
@@ -1810,6 +2145,7 @@
         /// <param name="e"></param>
         private void btnConstruction_Click(object sender, EventArgs e)
         {
+            int NowPoint = -1;
             try
             {
                 // 自画面非表示
@@ -1817,216 +2153,403 @@
 
                 // 参照オブジェクトをボタンに変換
                 System.Windows.Forms.Button btnKey = (System.Windows.Forms.Button)sender;
-
-                //---- 1列目
-                if (btnKey.Name == "btnConstruction00")
+                int ButtonCol = tblLayoutConstruction.GetColumn(btnKey);                    // 列取得（Ｘ）
+                int ButtonRow = tblLayoutConstruction.GetRow(btnKey);                       // 行取得（Ｙ）
+                switch (ButtonRow)
                 {
-                    // ----- 起動プロセス設定
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+                    case 1:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 工事詳細台帳
+                                // 新セキュリティデータ対応済みかを確認する
+                                if (CommonMotions.LoginUserData.SecCode == 0)
+                                {
+                                    // システム管理者・最高責任者
+                                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement ||
+                                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                                    {
+                                        // 部署別台帳まとめ一覧
+                                        NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DepartmentExpenssList);
+                                    }
+                                    else
+                                    {   // 統括責任者・所属長・一般ユーザー
+                                        // ----- 起動プロセス設定
+                                        // 工事詳細台帳一覧
+                                        NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionLedgerList);
 
-                    // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    // 工事施工予算入力
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionBudget);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
-                }
-                else if (btnKey.Name == "btnConstruction01")
-                {   // システム管理者・最高責任者
-                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement ||
-                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
-                    {
-                        // 部署別台帳まとめ一覧
-                        int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DepartmentExpenssList);
-                    }
-                    else
-                    {   // 統括責任者・所属長・一般ユーザー
-                        // ----- 起動プロセス設定
-                        // 工事詳細台帳一覧
-                        int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionLedgerList);
+                                        // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                        // 工事詳細台帳入力
+                                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionLedger);
+                                        ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                    }
+                                }
+                                else
+                                {
+                                    // 起動権限確認
+                                    int editflg = (int)CommonDefine.ProcessDataEdit.Reference;
+                                    if (ClsSecurityPermission.GetExecutePermission((int)ClsExcute.ProcessExecuteNo.DepartmentExpenssList, ref editflg))
+                                    {
+                                        // 部署別台帳まとめ一覧
+                                        NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DepartmentExpenssList);
+                                    }
+                                    else
+                                    {
+                                        // 工事詳細台帳一覧
+                                        NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionLedgerList);
 
-                        // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                        // 工事詳細台帳入力
-                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionLedger);
-                        ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
-                    }
-                }
-                else if (btnKey.Name == "btnConstruction02")
-                {
-                    // ----- 起動プロセス設定
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DRList);
+                                        // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                        // 工事詳細台帳入力
+                                        ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionLedger);
+                                        ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                    }
+                                }
+                                break;
+                                #endregion
+                            case 3:
+                                #region 工事日報入力
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DRList);
 
-                    // 日報一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    // 工事日報入力
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.DRConstruction);
-                }
-                else if (btnKey.Name == "btnConstruction03")
-                {
-                }
-                else if (btnKey.Name == "btnConstruction04")
-                {
-                }
-                else if (btnKey.Name == "btnConstruction05")
-                {
-                }
-                //---- 2列目
-                else if (btnKey.Name == "btnConstruction06")
-                {
-                    // ----- 起動プロセス設定
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
+                                // 日報一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                // 工事日報入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.DRConstruction);
+                                break;
+                                #endregion
+                            case 5:
+                                #region 各工事打合わせ議事録
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DRList);
 
-                    //　工事予算書承認
-                    int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
-                }
-                else if (btnKey.Name == "btnConstruction07")
-                {
-                    //　交通費及び購入品入力
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.TAndPCosts);
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(0);    // ダミー
-                }
-                else if (btnKey.Name == "btnConstruction08")
-                {
-                }
-                else if (btnKey.Name == "btnConstruction09")
-                {
-                }
-                else if (btnKey.Name == "btnConstruction10")
-                {
-                }
-                else if (btnKey.Name == "btnConstruction11")
-                {
-                }
-                //---- 3列目
-                else if (btnKey.Name == "btnConstruction12")
-                {
-                    // ----- 起動プロセス設定
-                    // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+                                // 日報一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                // 工事日報入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.Proceedings);
+                                break;
+                                #endregion
+                            case 7:
+                                #region 交通費及び購入品入力
+                                // 交通費及び購入品入力
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.TAndPCosts);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(0);    // ダミー
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonMotions.LoginUserData.PersonCode);
+                                break;
+                                #endregion
+                            case 9:
+                                #region 出勤管理
+                                // 出勤管理
+                                //NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DRWork);
+                                //ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(0);    // ダミー
+                                //ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonMotions.LoginUserData.PersonCode);
+                                break;
+                                #endregion
+                        }
+                        break;
+                    case 3:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 行動予定入力
+                                // 行動予定入力
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.ActionSchdule);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonMotions.LoginUserData.PersonCode);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(DateTime.Now.Month);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 車両予約入力
+                                int VehicleCode =0;
+                                if (VehicleCodeSelector(ref VehicleCode))
+                                {
+                                    // 車両予約入力
+                                    NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.VehicleSchdule);
+                                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(VehicleCode);
+                                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(DateTime.Now.Month);
+                                }
+                                break;
+                                #endregion
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 5:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 資材入力（資材一覧）
+                                // 資材入力
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.MaterialList);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 資材貸出
+                                // 資材入力
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.MaterialReserveEntry);
+                                break;
+                                #endregion
+                            case 5:
+                                #region 資材返却
+                                // 資材入力
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.MaterialReturnEntry);
+                                break;
+                                #endregion
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 9:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 工事施工予算入力
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                    // 工事施工予算入力
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
-                }
-                else if (btnKey.Name == "btnConstruction13")
-                {
-                    // ----- 起動プロセス設定
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                // 工事施工予算入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionBudget);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 工事予算書承認
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
 
-                    // 承認一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    //　工事予算書承認
-                    int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
-                }
-                else if (btnKey.Name == "btnConstruction14")
-                {
-                    // ----- 起動プロセス設定
-                    // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
+                                //　工事予算書承認
+                                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("工事予算書承認")).Key;
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
+                                break;
+                                #endregion
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 11:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 注文書入力
+                                // ----- 起動プロセス設定
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                    //　積算見積印刷
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
-                }
-                else if (btnKey.Name == "btnConstruction15")
-                {
-                }
-                else if (btnKey.Name == "btnConstruction16")
-                {
-                }
-                else if (btnKey.Name == "btnConstruction17")
-                {
-                }
-                // 処理実行
-                ClsExcute.ProcesscExecute();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                // 再表示
-                DisplayDataLoad();
-                // 自画面表示
-                if (CommonMotions.ProductionExecution) this.Visible = true;
-            }
-        }
-        #endregion
+                                // 注文書入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.PurchaseOrderEntry);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 注文書承認
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ApprovalDocumentList);
 
-        #region 請求管理メニューボタン押下
-        /// <summary>
-        /// 請求管理メニューボタン押下
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void btnBilling_Click(object sender, EventArgs e)
-        {
-            try
-            {
-                // 自画面非表示
-                if (CommonMotions.ProductionExecution) this.Visible = false;
+                                // 承認一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                //　注文書承認
+                                int ApprovalCode = ClsExcute.AppovalList.First(x => x.Value.Equals("注文書承認")).Key;
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(ApprovalCode);
+                                break;
+                                #endregion
+                            case 5:
+                                #region 注文書印刷
+                                // ----- 起動プロセス設定
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                // 参照オブジェクトをボタンに変換
-                System.Windows.Forms.Button btnKey = (System.Windows.Forms.Button)sender;
+                                //　注文書印刷
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.PurchaseOrderPrint);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                break;
+                                #endregion
+                            case 7:
+                                #region 注文書発給状況一覧
+                                // 注文書発給状況一覧
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.PurchaseOrderStatus);
+                                break;
+                                #endregion
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 13:
+                        switch (ButtonCol)
+                        {
+                            case 1:                             // 工程表作成・印刷
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 15:                                    // 工事施工図承認願い
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 17:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 19:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 23:
+                        switch (ButtonCol)
+                        {
+                            case 1:                         // 請求書作成
+                                #region 請求書入力（出来高）
+                                // 請求書入力（出来高）→分割
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.RequestInput);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmConstructionDiag.SelectConstructionType.SeparateBilling);
+                                break;
+                                #endregion
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                #region 取引先入金入力
+                                // 入金確認
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.PaymentConfirmation);
+                                break;
+                                #endregion
+                        }
+                        break;
+                    case 24:                            // 未使用
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 25:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 請求書入力（完了後）
+                                // 請求書入力→一括
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.RequestInput);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)FrmConstructionDiag.SelectConstructionType.CombinedOrder);
+                                break;
+                                #endregion
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                #region 取引先入金入力
+                                // 入金確認
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.PaymentConfirmation);
+                                break;
+                                #endregion
+                        }
+                        break;
+                    case 29:                                
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 業者・職人手間請求確認（手間業者）
+                                // 業者・職人手間請求確認（手間業者）
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.RequestSummaryList);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Labor);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 業者・職人手間請求確認（通常業者）
+                                // 業者・職人手間請求確認（通常業者）
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.RequestSummaryList);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Normal);
+                                break;
+                                #endregion
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 33:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                }
+                if (NowPoint < 0) return;
 
-                //---- 1列目
-                if (btnKey.Name == "btnBilling00")
-                {
-                }
-                else if (btnKey.Name == "btnBilling01")
-                {
-                }
-                else if (btnKey.Name == "btnBilling02")
-                {
-                }
-                else if (btnKey.Name == "btnBilling03")
-                {
-                }
-                else if (btnKey.Name == "btnBilling04")
-                {
-                }
-                else if (btnKey.Name == "btnBilling05")
-                {
-                }
-                //---- 2列目
-                else if (btnKey.Name == "btnBilling06")
-                {
-                }
-                else if (btnKey.Name == "btnBilling07")
-                {
-                }
-                else if (btnKey.Name == "btnBilling08")
-                {
-                }
-                else if (btnKey.Name == "btnBilling09")
-                {
-                }
-                else if (btnKey.Name == "btnBilling10")
-                {
-                }
-                else if (btnKey.Name == "btnBilling11")
-                {
-                }
-                //---- 3列目
-                else if (btnKey.Name == "btnBilling12")
-                {
-                }
-                else if (btnKey.Name == "btnBilling13")
-                {
-                }
-                else if (btnKey.Name == "btnBilling14")
-                {
-                }
-                else if (btnKey.Name == "btnBilling15")
-                {
-                }
-                else if (btnKey.Name == "btnBilling16")
-                {
-                }
-                else if (btnKey.Name == "btnBilling17")
-                {
-                }
                 // 処理実行
                 ClsExcute.ProcesscExecute();
+                return;
             }
             catch (Exception ex)
             {
@@ -2035,7 +2558,7 @@
             finally
             {
                 // 再表示
-                DisplayDataLoad();
+                if (NowPoint > -1) DisplayDataLoad();
                 // 自画面表示
                 if (CommonMotions.ProductionExecution) this.Visible = true;
             }
@@ -2042,14 +2565,15 @@
         }
         #endregion
 
-        #region マスタメンテメニューボタン押下（Bossマスタ）
+        #region 総務管理メニューボタン押下
         /// <summary>
-        /// マスタメンテメニューボタン押下
+        /// 総務管理メニューボタン押下
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void btnMaster_Click(object sender, EventArgs e)
+        private void btnAffairs_Click(object sender, EventArgs e)
         {
+            int NowPoint = -1;
             try
             {
                 // 自画面非表示
@@ -2057,268 +2581,152 @@
 
                 // 参照オブジェクトをボタンに変換
                 System.Windows.Forms.Button btnKey = (System.Windows.Forms.Button)sender;
-
-                //---- 1列目
-                if (btnKey.Name == "btnMaster_00")
+                int ButtonCol = tblLayoutConstruction.GetColumn(btnKey);                    // 列取得（Ｘ）
+                int ButtonRow = tblLayoutConstruction.GetRow(btnKey);                       // 行取得（Ｙ）
+                switch (ButtonRow)
                 {
-                    //　管理マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.System);
-                }
-                else if (btnKey.Name == "btnMaster_01")
-                {
-                    //  工事種別マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionType);
-                }
-                else if (btnKey.Name == "btnMaster_02")
-                {
-                    //  区分マスタ（工事経費名称）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Division);
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.DivisionMasterCodeDefine.ConstructionExpenses);
-                }
-                else if (btnKey.Name == "btnMaster_03")
-                {
+                    case 1:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 行動予定入力
+                                // 行動予定入力
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.ActionSchdule);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(CommonMotions.LoginUserData.PersonCode);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(DateTime.Now.Month);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 車両予約入力
+                                int VehicleCode = 0;
+                                if (VehicleCodeSelector(ref VehicleCode))
+                                {
+                                    // 車両予約入力
+                                    NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.VehicleSchdule);
+                                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(VehicleCode);
+                                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(DateTime.Now.Month);
+                                }
+                                break;
+                                #endregion
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 3:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 7:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 工事基本情報入力
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-                }
-                else if (btnKey.Name == "btnMaster_04")
-                {
-                    //　カレンダーマスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Calender);
-                }
-                else if (btnKey.Name == "btnMaster_05")
-                {
-                    // 期限マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.TermMaster);
-                }
-                else if (btnKey.Name == "btnMaster_18")
-                {
-                }
-                else if (btnKey.Name == "btnMaster_21")
-                {
-                    // 売上グラフデータ入力
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SaleSalesGraphData);
-                }
-                else if (btnKey.Name == "btnMaster_24")
-                {
-                    // 部署別台帳まとめ一覧
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.DepartmentExpenssList);
-                }
-                //---- 2列目
-                else if (btnKey.Name == "btnMaster_06")
-                {
-                    //  部署マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Department);
-                }
-                else if (btnKey.Name == "btnMaster_07")
-                {
-                    // 担当者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.PersonInCharge);
-                }
-                else if (btnKey.Name == "btnMaster_08")
-                {
-                    // 常雇者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.AlwaysEmployment);
-                }
-                else if (btnKey.Name == "btnMaster_09")
-                {
-                    // 車両マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.VehicleMaster);
-                }
-                else if (btnKey.Name == "btnMaster_10")
-                {
-                    //  法人格マスタ
-                    ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.BusinessType);
-                }
-                else if (btnKey.Name == "btnMaster_11")
-                {
-                    //  区分マスタ（発注者区分）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Division);
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.DivisionMasterCodeDefine.OrderDivision);
-                }
-                else if (btnKey.Name == "btnMaster_19")
-                {
-                    //  発注者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Orderers);
-                }
-                else if (btnKey.Name == "btnMaster_22")
-                {
-                    //  仕入先マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Suppliers);
-                }
-                else if (btnKey.Name == "btnMaster_25")
-                {
-                    //  承認経路マスタ
-                    ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ApprovalRoute);
-                }
-                //---- 3列目
-                else if (btnKey.Name == "btnMaster_12")
-                {
-                    // 協力会社マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractor);
-                }
-                else if (btnKey.Name == "btnMaster_13")
-                {
-                    // 協力会社工種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorItem);
-                }
-                else if (btnKey.Name == "btnMaster_14")
-                {
-                    // 協力会社職種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorJobCategory);
-                }
-                else if (btnKey.Name == "btnMaster_15")
-                {
-                }
-                else if (btnKey.Name == "btnMaster_16")
-                {
-                    //  単位マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Unit);
-                }
-                else if (btnKey.Name == "btnMaster_17")
-                {
-                    //  構成マスタ（大項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Component);
-                }
-                else if (btnKey.Name == "btnMaster_20")
-                {
-                    //  構成・工種関連マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ComponentLink);
-                }
-                else if (btnKey.Name == "btnMaster_23")
-                {
-                    //  工種マスタ（中項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionItem);
-                }
-                else if (btnKey.Name == "btnMaster_26")
-                {
-                    //  作業マスタ（小項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionWork);
-                }
-                // 処理実行
-                ClsExcute.ProcesscExecute();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                // 再表示
-                DisplayDataLoad();
-                // 自画面表示
-                if (CommonMotions.ProductionExecution) this.Visible = true;
-            }
-        }
-        #endregion
+                                //　工事基本情報入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionBaseInfo);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 工事施工予算入力
+                                // ----- 起動プロセス設定
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.ConstructionList);
 
-        #region マスタメンテメニューボタン押下（管理者マスタ）
-        /// <summary>
-        /// マスタメンテメニューボタン押下
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void btnMaster1_Click(object sender, EventArgs e)
-        {
-            try
-            {
-                // 参照オブジェクトをボタンに変換
-                System.Windows.Forms.Button btnKey = (System.Windows.Forms.Button)sender;
-
-                // 自画面非表示
-                if (CommonMotions.ProductionExecution) this.Visible = false;
-
-                //---- 1列目
-                if (btnKey.Name == "btnMaster1_00")
-                {
-                    // 担当者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.PersonInCharge);
+                                // 工事一覧から表示を行うため起動プロセスはパラメータの1つ目にセットする。
+                                // 工事施工予算入力
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)ClsExcute.ProcessExecuteNo.ConstructionBudget);
+                                ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(false);
+                                break;
+                                #endregion
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 9:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
+                    case 13:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                #region 業者・職人手間請求確認（手間業者）
+                                // 業者・職人手間請求確認（手間業者）
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.RequestSummaryList);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Labor);
+                                break;
+                                #endregion
+                            case 3:
+                                #region 業者・職人手間請求確認（通常業者）
+                                // 業者・職人手間請求確認（通常業者）
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.RequestSummaryList);
+                                ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.LabourKinds.Normal);
+                                break;
+                                #endregion
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                #region 取引先入金入力
+                                // 入金確認
+                                NowPoint = ClsExcute.NextProcess((int)ClsExcute.ProcessExecuteNo.PaymentConfirmation);
+                                break;
+                                #endregion
+                        }
+                        break;
+                    case 17:
+                        switch (ButtonCol)
+                        {
+                            case 1:
+                                break;
+                            case 3:
+                                break;
+                            case 5:
+                                break;
+                            case 7:
+                                break;
+                            case 9:
+                                break;
+                        }
+                        break;
                 }
-                else if (btnKey.Name == "btnMaster1_01")
-                {
-                    // 常雇者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.AlwaysEmployment);
-                }
-                else if (btnKey.Name == "btnMaster1_02")
-                {
-                    // 車両マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.VehicleMaster);
-                }
-                else if (btnKey.Name == "btnMaster1_03")
-                {
-                    // 期限マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.TermMaster);
-                }
-                else if (btnKey.Name == "btnMaster1_04")
-                {
-                    //  構成マスタ（大項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Component);
-                }
-                else if (btnKey.Name == "btnMaster1_05")
-                {
-                    //  構成・工種関連マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ComponentLink);
-                }
-                //---- 2列目
-                else if (btnKey.Name == "btnMaster1_06")
-                {
-                    //  名称マスタ（発注者区分）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Division);
+                if (NowPoint < 0) return;
 
-                    ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add((int)CommonDefine.DivisionMasterCodeDefine.OrderDivision);
-                }
-                else if (btnKey.Name == "btnMaster1_07")
-                {
-                    //  発注者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Orderers);
-                }
-                else if (btnKey.Name == "btnMaster1_08")
-                {
-                    //  仕入先マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Suppliers);
-                }
-                else if (btnKey.Name == "btnMaster1_09")
-                {
-                }
-                else if (btnKey.Name == "btnMaster1_10")
-                {
-                    //  工種マスタ（中項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionItem);
-                }
-                else if (btnKey.Name == "btnMaster1_11")
-                {
-                    //  工種マスタ（中項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionItem);
-                }
-                //---- 3列目
-                else if (btnKey.Name == "btnMaster1_12")
-                {
-                    // 協力会社マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractor);
-                }
-                else if (btnKey.Name == "btnMaster1_13")
-                {
-                    // 協力会社工種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorItem);
-                }
-                else if (btnKey.Name == "btnMaster1_14")
-                {
-                    // 協力会社職種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorJobCategory);
-                }
-                else if (btnKey.Name == "btnMaster1_15")
-                {
-                    //  単位マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Unit);
-                }
-                else if (btnKey.Name == "btnMaster1_16")
-                {
-                    //  作業マスタ（小項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionWork);
-                }
-                else if (btnKey.Name == "btnMaster1_17")
-                {
-                }
                 // 処理実行
                 ClsExcute.ProcesscExecute();
+                return;
             }
             catch (Exception ex)
             {
@@ -2327,7 +2735,7 @@
             finally
             {
                 // 再表示
-                DisplayDataLoad();
+                if (NowPoint > -1) DisplayDataLoad();
                 // 自画面表示
                 if (CommonMotions.ProductionExecution) this.Visible = true;
             }
@@ -2334,198 +2742,25 @@
         }
         #endregion
 
-        #region マスタメンテメニューボタン押下（所属長）
+        #region マスタメンテメニューボタン押下
         /// <summary>
         /// マスタメンテメニューボタン押下
         /// </summary>
         /// <param name="sender"></param>
         /// <param name="e"></param>
-        private void btnMaster2_Click(object sender, EventArgs e)
+        private void btnMaster_Click(object sender, EventArgs e)
         {
             try
             {
-                // 参照オブジェクトをボタンに変換
-                System.Windows.Forms.Button btnKey = (System.Windows.Forms.Button)sender;
-
                 // 自画面非表示
                 if (CommonMotions.ProductionExecution) this.Visible = false;
 
-                //---- 1列目
-                if (btnKey.Name == "btnMaster2_00")
-                {
-                    //  工種マスタ（中項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionItem);
-                }
-                else if (btnKey.Name == "btnMaster2_01")
-                {
-                    //  作業マスタ（小項目）
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ConstructionWork);
-                }
-                else if (btnKey.Name == "btnMaster2_02")
-                {
-                    //  単位マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Unit);
-                }
-                else if (btnKey.Name == "btnMaster2_03")
-                {
-                }
-                else if (btnKey.Name == "btnMaster2_04")
-                {
-                }
-                else if (btnKey.Name == "btnMaster2_05")
-                {
-                }
-                //---- 2列目
-                else if (btnKey.Name == "btnMaster2_06")
-                {
-                    //  発注者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Orderers);
-                }
-                else if (btnKey.Name == "btnMaster2_07")
-                {
-                    //  仕入先マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Suppliers);
-                }
-                else if (btnKey.Name == "btnMaster2_08")
-                {
-                }
-                else if (btnKey.Name == "btnMaster2_09")
-                {
-                }
-                else if (btnKey.Name == "btnMaster2_10")
-                {
-                }
-                else if (btnKey.Name == "btnMaster2_11")
-                {
-                }
-                //---- 3列目
-                else if (btnKey.Name == "btnMaster2_12")
-                {
-                    // 協力会社マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractor);
-                }
-                else if (btnKey.Name == "btnMaster2_13")
-                {
-                    // 協力会社工種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorItem);
-                }
-                else if (btnKey.Name == "btnMaster2_14")
-                {
-                    // 協力会社職種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorJobCategory);
-                }
-                else if (btnKey.Name == "btnMaster2_15")
-                {
-                }
-                else if (btnKey.Name == "btnMaster2_16")
-                {
-                }
-                else if (btnKey.Name == "btnMaster2_17")
-                {
-                }
-                // 処理実行
-                ClsExcute.ProcesscExecute();
-            }
-            catch (Exception ex)
-            {
-                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-            }
-            finally
-            {
-                // 再表示
-                DisplayDataLoad();
-                // 自画面表示
-                if (CommonMotions.ProductionExecution) this.Visible = true;
-            }
-        }
-        #endregion
-
-        #region マスタメンテメニューボタン押下（利用者マスタ）
-        /// <summary>
-        /// マスタメンテメニューボタン押下
-        /// </summary>
-        /// <param name="sender"></param>
-        /// <param name="e"></param>
-        private void btnMaster3_Click(object sender, EventArgs e)
-        {
-            try
-            {
                 // 参照オブジェクトをボタンに変換
                 System.Windows.Forms.Button btnKey = (System.Windows.Forms.Button)sender;
 
-                // 自画面非表示
-                if (CommonMotions.ProductionExecution) this.Visible = false;
+                int ProcessNo = CommonMotions.cnvInt(btnKey.Name);
+                int NowPoint = ClsExcute.NextProcess(ProcessNo);
 
-                //---- 1列目
-                if (btnKey.Name == "btnMaster3_00")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_01")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_02")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_03")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_04")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_05")
-                {
-                }
-                //---- 2列目
-                else if (btnKey.Name == "btnMaster3_06")
-                {
-                    //  発注者マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Orderers);
-                    ClsExcute.ProcControlPara[NowPoint].BoolExecParameter.Add(true);
-                }
-                else if (btnKey.Name == "btnMaster3_07")
-                {
-                    //  仕入先マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.Suppliers);
-                }
-                else if (btnKey.Name == "btnMaster3_08")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_09")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_10")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_11")
-                {
-                }
-                //---- 3列目
-                else if (btnKey.Name == "btnMaster3_12")
-                {
-                    // 協力会社マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractor);
-                }
-                else if (btnKey.Name == "btnMaster3_13")
-                {
-                    // 協力会社工種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorItem);
-                }
-                else if (btnKey.Name == "btnMaster3_14")
-                {
-                    // 協力会社職種マスタ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.SubContractorJobCategory);
-                }
-                else if (btnKey.Name == "btnMaster3_15")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_16")
-                {
-                }
-                else if (btnKey.Name == "btnMaster3_17")
-                {
-                    // テスト->ダイアログ
-                    int NowPoint = ClsExcute.NextProcess((int)ClsExcute.MaintenanceExecuteNo.ComponentLink);
-                }
                 // 処理実行
                 ClsExcute.ProcesscExecute();
             }
@@ -2603,12 +2838,12 @@
         }
         private void button1_Click(object sender, EventArgs e)
         {
-            m_tabManager.ChangeTabPageVisible((int)FrmMenuTabNameEnum.MentenanceMenu, false);
+            m_tabManager.ChangeTabPageVisible((int)TabNameEnum.MentenanceMenu, false);
         }
 
         private void button2_Click(object sender, EventArgs e)
         {
-            m_tabManager.ChangeTabPageVisible((int)FrmMenuTabNameEnum.MentenanceMenu, true);
+            m_tabManager.ChangeTabPageVisible((int)TabNameEnum.MentenanceMenu, true);
         }
         #endregion
 
@@ -2652,86 +2887,73 @@
 
             switch (iMenuIndex)
             {
-                case (int)FrmMenuTabNameEnum.BusinessMessage:
+                case (int)TabNameEnum.BusinessMessage:
                     // 秘書からの連絡
                     backBrush = new SolidBrush(Color.DarkMagenta);
                     foreBrush = Brushes.Gold;
                     break;
-                case (int)FrmMenuTabNameEnum.MessageBoard:
+                case (int)TabNameEnum.MessageBoard:
                     // 社内掲示板
                     backBrush = new SolidBrush(Color.Red);
                     foreBrush = Brushes.White;
                     break;
-                case (int)FrmMenuTabNameEnum.DocumentApproval:
+                case (int)TabNameEnum.DocumentApproval:
                     // 承認処理
                     backBrush = new SolidBrush(Color.Gold);
                     foreBrush = Brushes.Black;
                     break;
 
-                case (int)FrmMenuTabNameEnum.SalesInProjects:
+                case (int)TabNameEnum.SalesInProjects:
                     // 工事案件
-                case (int)FrmMenuTabNameEnum.Tenders:
+                case (int)TabNameEnum.Tenders:
                     // 入札案件
-                case (int)FrmMenuTabNameEnum.BudgetUpProjects:
+                case (int)TabNameEnum.BudgetUpProjects:
                     // 予算取り案件
-                case (int)FrmMenuTabNameEnum.ConstructionProjects:
+                case (int)TabNameEnum.ConstructionProjects:
                     // 受注案件
-                case (int)FrmMenuTabNameEnum.FluctuationProjects:
+                case (int)TabNameEnum.FluctuationProjects:
                     // 増減工事案件
-                case (int)FrmMenuTabNameEnum.NonOrders:
+                case (int)TabNameEnum.NonOrders:
                     // 非受注工事
-                case (int)FrmMenuTabNameEnum.CompletionOfConstruction:
+                case (int)TabNameEnum.CompletionOfConstruction:
                     // 完了工事
                     backBrush = new SolidBrush(tab.TabPages[e.Index].BackColor);
                     foreBrush = Brushes.White;
                     break;
 
-                case (int)FrmMenuTabNameEnum.ActionSchedule:
+                case (int)TabNameEnum.ActionSchedule:
                     // 行動予定
                     backBrush = new SolidBrush(Color.Yellow);
                     foreBrush = Brushes.Black;
                     break;
-                case (int)FrmMenuTabNameEnum.StaffAssignment:
+                case (int)TabNameEnum.StaffAssignment:
                     // 人員配置
                     backBrush = new SolidBrush(Color.Orange);
                     foreBrush = Brushes.Black;
                     break;
-                case (int)FrmMenuTabNameEnum.SalesGraph:
+                case (int)TabNameEnum.SalesGraph:
                     // 売上グラフ
                     backBrush = new SolidBrush(Color.DarkOrange);
                     foreBrush = Brushes.Black;
                     break;
 
-                case (int)FrmMenuTabNameEnum.OrderMenu:
+                case (int)TabNameEnum.OrderMenu:
                     // 受注管理
-                case (int)FrmMenuTabNameEnum.ConstructionMenu:
+                case (int)TabNameEnum.ConstructionMenu:
                     // 施工管理
-                case (int)FrmMenuTabNameEnum.BillingMenu:
-                    // 請求管理
-                case (int)FrmMenuTabNameEnum.Affairs:
+                case (int)TabNameEnum.Affairs:
                     // 総務管理
-                case (int)FrmMenuTabNameEnum.DocumentsToBeBubmitted:
+                case (int)TabNameEnum.DocumentsToBeBubmitted:
                     // 各種提出書類
-                case (int)FrmMenuTabNameEnum.Materials:
-                    // 資材管理
                     backBrush = new SolidBrush(tab.TabPages[e.Index].BackColor);
                     foreBrush = Brushes.Black;
                     break;
 
-                case (int)FrmMenuTabNameEnum.MentenanceMenu:
-                    // BOSSマスタ
+                case (int)TabNameEnum.MentenanceMenu:
+                    // マスタ
                     backBrush = new SolidBrush(tab.TabPages[e.Index].BackColor);
-                    foreBrush = Brushes.White;
+                    foreBrush = new SolidBrush(CommonMotions.GetComplementaryColor(tab.TabPages[e.Index].BackColor));
                     break;
-                case (int)FrmMenuTabNameEnum.MentenanceMenu1:
-                    // 管理者マスタ
-                case (int)FrmMenuTabNameEnum.MentenanceMenu2:
-                    // 所属長マスタ
-                case (int)FrmMenuTabNameEnum.MentenanceMenu3:
-                    // 担当者マスタ
-                    backBrush = new SolidBrush(tab.TabPages[e.Index].BackColor);
-                    foreBrush = Brushes.Black;
-                    break;
             }
 
             //StringFormatを作成
@@ -2796,6 +3018,5 @@
             }
         }
         #endregion
-
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.resx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.resx	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenu.resx	(revision 51)
@@ -144,6 +144,9 @@
   <metadata name="ApprovalColumn12.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="Column32.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="ApprovalColumn01.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
Index: branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/ZMenu/FrmMenuAuxiliary.cs	(revision 51)
@@ -22,6 +22,7 @@
 using ProcessManagement.Forms.DataEntry;
 using ProcessManagement.Forms.ControlsAction;
 using ProcessManagement.Forms.CustomControls;
+using ProcessManagement.Forms.SubForms;
 
 namespace ProcessManagement.Forms
 {
@@ -55,6 +56,7 @@
         {
             foreach (Control work in TopControl)
             {
+                if (!work.GetType().Equals(typeof(Button))) continue;
                 string namework = work.Name;
                 if (work.Text.Length == 0) work.Visible = false;
             }
@@ -76,36 +78,38 @@
                 int Tabcount = MenuTabName[wrkname];
                 switch (Tabcount)
                 {
-                    case (int)FrmMenuTabNameEnum.MessageBoard:
+                    case (int)TabNameEnum.BusinessMessage:
+                        ClearGridSortStatus(dgvBusinessMessage);
                         break;
-                    case (int)FrmMenuTabNameEnum.BusinessMessage:
+                    case (int)TabNameEnum.MessageBoard:
+                        ClearGridSortStatus(dgvMessageBoard);
                         break;
-                    case (int)FrmMenuTabNameEnum.Tenders:
-                        ClearGridSortStatus(dgvTenders);                                    // ソート退避エリアクリア
+                    case (int)TabNameEnum.DocumentApproval:
+                        ClearGridSortStatus(dgvApproval);
                         break;
-                    case (int)FrmMenuTabNameEnum.BudgetUpProjects:
-                        ClearGridSortStatus(dgvApproval);                           // ソート退避エリアクリア
+                    case (int)TabNameEnum.SalesInProjects:
+                        ClearGridSortStatus(dgvSalesInProjects);
                         break;
-                    case (int)FrmMenuTabNameEnum.SalesInProjects:
-                        ClearGridSortStatus(dgvSalesInProjects);                            // ソート退避エリアクリア
+                    case (int)TabNameEnum.Tenders:
+                        ClearGridSortStatus(dgvTenders);
                         break;
-                    case (int)FrmMenuTabNameEnum.ConstructionProjects:
-                        ClearGridSortStatus(dgvConstructionProjects);                       // ソート退避エリアクリア
+                    case (int)TabNameEnum.BudgetUpProjects:
+                        ClearGridSortStatus(dgvApproval);
                         break;
-                    case (int)FrmMenuTabNameEnum.NonOrders:
-                        ClearGridSortStatus(dgvNonOrders);                                  // ソート退避エリアクリア
+                    case (int)TabNameEnum.ConstructionProjects:
+                        ClearGridSortStatus(dgvConstructionProjects);
                         break;
-                    case (int)FrmMenuTabNameEnum.CompletionOfConstruction:
-                        ClearGridSortStatus(dgvCompletionOfConstruction);                   // ソート退避エリアクリア
+                    case (int)TabNameEnum.FluctuationProjects:
+                        ClearGridSortStatus(dgvFluctuationProjects);
                         break;
-                    case (int)FrmMenuTabNameEnum.ActionSchedule:
+                    case (int)TabNameEnum.NonOrders:
+                        ClearGridSortStatus(dgvNonOrders);
                         break;
-                    case (int)FrmMenuTabNameEnum.StaffAssignment:
+                    case (int)TabNameEnum.CompletionOfConstruction:
+                        ClearGridSortStatus(dgvCompletionOfConstruction);
                         break;
-                    case (int)FrmMenuTabNameEnum.SalesGraph:
+                    default:
                         break;
-                    case (int)FrmMenuTabNameEnum.DocumentApproval:
-                        break;
                 }
             }
             catch (Exception ex)
@@ -126,6 +130,9 @@
                 // 選択無は処理しない
                 if (tabMenu.SelectedTab == null) return;
 
+                // ソートクリア
+                ClearGridSort();
+
                 // データコピーボタン非表示
                 btnDataCopyE.Visible = false;
 
@@ -133,59 +140,59 @@
                 int Tabcount = MenuTabName[wrkname];
                 switch (Tabcount)
                 {
-                    case (int)FrmMenuTabNameEnum.MessageBoard:
+                    case (int)TabNameEnum.MessageBoard:
                         // 掲示板データ表示
-                        DispMessageBoard((int)FrmMenuTabNameEnum.MessageBoard);
+                        DispMessageBoard((int)TabNameEnum.MessageBoard);
                         break;
-                    case (int)FrmMenuTabNameEnum.BusinessMessage:
+                    case (int)TabNameEnum.BusinessMessage:
                         // 業務連絡掲示板表示
-                        DispMessageBoard((int)FrmMenuTabNameEnum.BusinessMessage);
+                        DispMessageBoard((int)TabNameEnum.BusinessMessage);
                         break;
-                    case (int)FrmMenuTabNameEnum.Tenders:
+                    case (int)TabNameEnum.Tenders:
                         // 入札案件一覧情報表示
                         DispTenders();
                         break;
-                    case (int)FrmMenuTabNameEnum.BudgetUpProjects:
+                    case (int)TabNameEnum.BudgetUpProjects:
                         // 予算取り案件一覧情報表示
                         DispBudgetUpProjects();
                         break;
-                    case (int)FrmMenuTabNameEnum.SalesInProjects:
+                    case (int)TabNameEnum.SalesInProjects:
                         // 工事案件一覧情報表示
                         DispSalesInProjects();
                         break;
-                    case (int)FrmMenuTabNameEnum.ConstructionProjects:
+                    case (int)TabNameEnum.ConstructionProjects:
                         // 受注状況一覧表示
                         DispConstructionProjects();
                         btnDataCopyE.Visible = true;
                         break;
-                    case (int)FrmMenuTabNameEnum.FluctuationProjects:
+                    case (int)TabNameEnum.FluctuationProjects:
                         // 増減工事状況一覧表示
                         DispFluctuationProjects();
                         break;
-                    case (int)FrmMenuTabNameEnum.NonOrders:
+                    case (int)TabNameEnum.NonOrders:
                         // 非受注一覧
                         SetInitNumUDData(numUDNonOrder);        // 営業期選択ボックス初期設定
                         DispNonOrders();
                         break;
-                    case (int)FrmMenuTabNameEnum.CompletionOfConstruction:
+                    case (int)TabNameEnum.CompletionOfConstruction:
                         // 完了工事一覧
                         SetInitNumUDData(numUDCompletion);      // 営業期選択ボックス初期設定
                         DispCompletionOfConstruction();
                         btnDataCopyE.Visible = true;
                         break;
-                    case (int)FrmMenuTabNameEnum.ActionSchedule:
+                    case (int)TabNameEnum.ActionSchedule:
                         // 行動予定一覧
                         DispActionList();
                         break;
-                    case (int)FrmMenuTabNameEnum.StaffAssignment:
+                    case (int)TabNameEnum.StaffAssignment:
                         // 人員配置一覧
                         DispStaffAssignment();
                         break;
-                    case (int)FrmMenuTabNameEnum.SalesGraph:
+                    case (int)TabNameEnum.SalesGraph:
                         // 売上グラフ
                         DispSalesGraph();
                         break;
-                    case (int)FrmMenuTabNameEnum.DocumentApproval:
+                    case (int)TabNameEnum.DocumentApproval:
                         // 書類承認
                         DispDocumentApproval();
                         break;
@@ -198,78 +205,249 @@
         }
         #endregion
 
-        #region タブページ表示制御
+        #region 旧マスタメンテナンスタブ表示制御
+        ///// <summary>
+        ///// 旧マスタメンテナンスタブ表示制御
+        ///// </summary>
+        //private void DisplayOldMenteTab()
+        //{
+        //    try
+        //    {
+        //        int SecurityCode = CommonMotions.LoginUserData.SecurityManagement;
+        //        tabMenu.TabPages[(int)MenuTabAssign.MentenanceMenu].BackColor = OldMentenanceColor[SecurityCode];
+        //        tblLayoutMaster.BackColor = OldMentenanceColor[SecurityCode];
+
+        //        tabMenu.TabPages[(int)MenuTabAssign.MentenanceMenu].Text = CommonDefine.SystemManageDiv[(SecurityCode - 1)].Value + "マスタ";
+
+        //        int[,] BtnDspFlg = null;
+        //        int Sec1 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key;
+        //        int Sec2 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key;
+        //        int Sec3 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key;
+        //        int Sec4 = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key;
+
+        //        if (CommonMotions.LoginUserData.SecurityManagement == (int)Sec1)
+        //        {
+        //            BtnDspFlg = DspMentenance1;
+        //        }
+        //        else if (CommonMotions.LoginUserData.SecurityManagement == (int)Sec2)
+        //        {
+        //            BtnDspFlg = DspMentenance2;
+        //        }
+        //        else if (CommonMotions.LoginUserData.SecurityManagement == (int)Sec3)
+        //        {
+        //            BtnDspFlg = DspMentenance3;
+        //        }
+        //        else if (CommonMotions.LoginUserData.SecurityManagement == (int)Sec4)
+        //        {
+        //            BtnDspFlg = DspMentenance4;
+        //        }
+
+        //        bool bCreateLine = false;
+        //        bool bFisrt = true;
+        //        ProcessExcute wrkRec = new ProcessExcute();
+        //        // 起動処理に設定されているかをチェックする
+        //        for (int iy = 0; iy < MentenanceMenuButton.GetLength(0); iy++)
+        //        {
+        //            bCreateLine = false;
+        //            for (int ix = 0; ix < MentenanceMenuButton.GetLength(1); ix++)
+        //            {
+        //                if (BtnDspFlg[iy, ix] == 0) continue;
+        //                // 新規時は行を作成する
+        //                if (!bCreateLine)
+        //                {
+        //                    if (!bFisrt) TableLayoutRowAdd(tblLayoutMaster);
+        //                    bFisrt = false;
+        //                }
+        //                wrkRec.ExecCode = MentenanceMenuButton[iy, ix];
+        //                // ボタンを作成する
+        //                ButtonAdd(tblLayoutMaster, (ix * 2), wrkRec, 267, 44);
+
+        //                bCreateLine = true;
+        //            }
+        //        }
+        //    }
+        //    catch (Exception ex)
+        //    {
+        //        logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+        //    }
+        //}
+        #endregion
+
+        #region マスタメンテナンスタブ表示制御
         /// <summary>
-        /// 表示画面設定
+        /// マスタメンテナンスタブ表示制御
         /// </summary>
-        private void DisplayScreenSetup()
+        private void DisplayDataMenteTab()
         {
             try
             {
+                // 行を削除して初期状態に戻す
+                for (int i = tblLayoutMaster.RowCount - 1; i >= 0; i--)
+                {
+                    TableLayoutRowRemove(tblLayoutMaster, i);
+                }
+                tblLayoutMaster.Height = s_MentenanceRowHeight;
+                m_MentenanceButton.Clear();
+
+                //// チェック配列をセットする
+                //// 旧セキュリティを使用している場合はパターンを変える
+                //if (CommonMotions.LoginUserData.SecCode == 0)
+                //{
+                //    DisplayOldMenteTab();
+                //    return;
+                //}
+
+                Color SelectColor = CommonMotions.getBackForeColor(CommonMotions.LoginUserSecurity.SelectBackColor, CommonDefine.PalceOfColor.BackColor);
+                tabMenu.TabPages[(int)MenuTabAssign.MentenanceMenu].BackColor = SelectColor;
+                tblLayoutMaster.BackColor = SelectColor;
+
+                tabMenu.TabPages[(int)MenuTabAssign.MentenanceMenu].Text = CommonMotions.LoginUserSecurity.SecName + "マスタ";
+
+                // ボタンの作成
+                bool bCreateLine = false;
+                bool bFisrt = true;
+                // 起動処理に設定されているかをチェックする
+                for (int iy = 0; iy < MentenanceMenuButton.GetLength(0); iy++)
+                {
+                    bCreateLine = false;
+                    for (int ix = 0; ix < MentenanceMenuButton.GetLength(1); ix++)
+                    {
+                        foreach (ProcessExcute wrkRec in CommonMotions.LoginUserProcExe)
+                        {
+                            // マスタメンテナンス以外は処理しない
+                            if (wrkRec.ExecCode < (int)ClsExcute.MaintenanceExecuteNo.System) continue;
+                            if (MentenanceMenuButton[iy, ix] == wrkRec.ExecCode)
+                            {
+                                // 新規時は行を作成する
+                                if (!bCreateLine)
+                                {
+                                    if (!bFisrt) TableLayoutRowAdd(tblLayoutMaster);
+                                    bFisrt = false;
+                                }
+                                // ボタンを作成する
+                                ButtonAdd(tblLayoutMaster, (ix * 2), wrkRec, 267, 44);
+
+                                bCreateLine = true;
+                                break;
+                            }
+                        }
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 受注管理タブメニュー表示制御
+        /// <summary>
+        /// 受注管理タブメニュー表示制御
+        /// </summary>
+        private void DisplayOrdersTab()
+        {
+            try
+            {
+                int None = (int)CommonDefine.SecurityRangePos.None;                 // 担当のみ
+                if (CommonMotions.LoginUserSecurity.SecRange == CommonDefine.SecurityRangeList[None].Key)
+                {
+                    btnOrder0300.Text = string.Empty;
+                    btnOrder0301.Text = string.Empty;
+                }
+
                 // 使用しないボタンを消す
                 // 受注管理
                 ButtonControlVisibleSet(tblLayoutOrder.Controls);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region 施工管理タブメニュー表示制御
+        /// <summary>
+        /// 施工管理タブメニュー表示制御
+        /// </summary>
+        private void DisplayConstructionTab()
+        {
+            try
+            {
+                // 使用しないボタンを消す
                 // 施工管理
                 ButtonControlVisibleSet(tblLayoutConstruction.Controls);
-                // 請求管理
-                ButtonControlVisibleSet(tblLayoutBilling.Controls);
-                // マスタメンテ
-                ButtonControlVisibleSet(tblLayoutMaster.Controls);
-                // マスタメンテ
-                ButtonControlVisibleSet(tblLayoutMaster1.Controls);
-                // マスタメンテ2
-                ButtonControlVisibleSet(tblLayoutMaster2.Controls);
-                // マスタメンテ3
-                ButtonControlVisibleSet(tblLayoutMaster3.Controls);
-                // 各種提出書類
-                ButtonControlVisibleSet(tableLayoutDocuments.Controls);
-                // 総務管理
-                ButtonControlVisibleSet(tableLayoutAffairs.Controls);
 
-                // メニュータブを最初の状態へ戻す
-                for (int i = 0; i < m_tabManager.PageArray.Length; i++)
-                {
-                    m_tabManager.PageArray[i].Visible = true;
-                }
+                tblLayoutConstruction.Width = pnlConstruction.Width - 20;
 
-                // システム権限によって表示メニューを変更する
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement)
+                // 一般ユーザーは出納帳入力を表示しない
+                if (CommonMotions.LoginUserSecurity.SecRange == (int)CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key)
                 {
-                    // システム管理者（すべて対象）
+                    label63.Visible = false;
+                    label64.Visible = false;
+                    btnConstruction1200.Visible = false;
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                else
                 {
-                    // 最高機密管理者（すべて対象）
-                    // 不要マスタ画面は表示しない
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu1, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu2, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu3, false);
+                    label63.Visible = true;
+                    label64.Visible = true;
+                    btnConstruction1200.Visible = true;
                 }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SupervisorAuthority].Key)
-                {
-                    // 統括機密管理者（機能制限）
-                    // 不要マスタ画面は表示しない
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu2, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu3, false);
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.SuperiorAuthority].Key)
-                {
-                    // 機密管理者（機能制限）
-                    // 不要マスタ画面は表示しない
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu1, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu3, false);
-                }
-                else if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // 一般ユーザー（機能制限）
-                    // マスタ画面は表示しない
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu1, false);
-                    m_tabManager.ChangeTabPageVisible((int)MenuTabAssign.MentenanceMenu2, false);
-                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
 
+        #region 総務管理タブメニュー表示制御
+        /// <summary>
+        /// 総務管理タブメニュー表示制御
+        /// </summary>
+        private void DisplayAffairsTab()
+        {
+            try
+            {
+                // 使用しないボタンを消す
+                // 総務管理
+                ButtonControlVisibleSet(tableLayoutAffairs.Controls);
+
+                tableLayoutAffairs.Width = pnlAffairs.Width - 20;
+
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region タブページ表示制御
+        /// <summary>
+        /// 表示画面設定
+        /// </summary>
+        private void DisplayScreenSetup()
+        {
+            try
+            {
+                // 使用しないボタンを消す
+                // 各種提出書類
+                ButtonControlVisibleSet(tableLayoutDocuments.Controls);
+
+                // 受注管理
+                DisplayOrdersTab();
+
+                // 施工管理
+                DisplayConstructionTab();
+
+                // 総務管理
+                DisplayAffairsTab();
+
+                // マスタメンテナンス
+                DisplayDataMenteTab();
+
                 // ------ ファイル情報取得
                 m_VersionInfo = CommonMotions.ProductVersionInfo;
                 // タイトルの表示
@@ -291,17 +469,145 @@
                 // デバッグ時バージョン情報表示
                 //if (!ClsCommonDefine.ProductionExecution)
                 //    DispConsoleVersionInof();
+
+                // 先頭タブへ戻る
+                tabMenu.SelectedIndex = 0;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
+        }
+        #endregion
+
+        #region テーブルレイアウトの行を削除する
+        /// <summary>
+        /// テーブルレイアウトの行を削除する
+        /// </summary>
+        /// <param name="tlp"></param>
+        /// <param name="removeRow"></param>
+        private void TableLayoutRowRemove(TableLayoutPanel tlp, int removeRow)
+        {
+            try
+            {
+                tlp.SuspendLayout();
+
+                // コントロールのセルポジションをセットする
+                foreach (Control c in tlp.Controls)
+                {
+                    TableLayoutPanelCellPosition pos = tlp.GetPositionFromControl(c);
+                    tlp.SetCellPosition(c, pos);
+                    if (tlp.RowCount <= pos.Row) tlp.RowCount = pos.Row + 1;
+                    if (tlp.ColumnCount <= pos.Column) tlp.ColumnCount = pos.Column + 1;
+                }
+
+                //削除する列にあるコントロールを削除
+                for (int x = 0; x < tlp.ColumnCount; x++)
+                {
+                    Control c = tlp.GetControlFromPosition(x, removeRow);
+                    if (c != null)
+                    {
+                        tlp.Controls.Remove(c);
+                        c.Dispose();
+                    }
+                }
+
+                //コントロールを移動
+                for (int y = removeRow + 1; y < tlp.RowCount; y++)
+                {
+                    for (int x = 0; x < tlp.ColumnCount; x++)
+                    {
+                        Control c = tlp.GetControlFromPosition(x, y);
+                        if (c != null)
+                        {
+                            tlp.SetCellPosition(c, new TableLayoutPanelCellPosition(x, y - 1));
+                        }
+                    }
+                }
+
+                if (tlp.RowCount > 1)
+                {
+                    //列を減らす
+                    tlp.RowCount--;
+                    //スタイルを削除
+                    tlp.RowStyles.RemoveAt(removeRow);
+                }
+                tlp.ResumeLayout();
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
+        #region テーブルレイアウトの行を増やす
+        /// <summary>
+        /// テーブルレイアウトの行を増やす
+        /// </summary>
+        /// <param name="tlp"></param>
+        private void TableLayoutRowAdd(TableLayoutPanel tlp)
+        {
+            tlp.SuspendLayout(); // レイアウト一時中断
+            try
+            {
+
+                tlp.RowCount++;                                                                                     // tableLayoutPanelの行を追加します
+                tlp.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, s_MentenanceRowHeight));   // 追加した行の高さを指定。
+                tlp.RowCount++;                                                                                     // tableLayoutPanelの行を追加します
+                tlp.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, s_MentenanceRowHeight));   // 追加した行の高さを指定。
+
+                // tableLayoutPanel自体にも高さを加える
+                tlp.Height += s_MentenanceRowHeight;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
             finally
             {
+                // レイアウトロジックの再開
+                tlp.ResumeLayout();
             }
         }
         #endregion
 
+        #region ボタンを追加する
+        /// <summary>
+        /// ボタンを追加する
+        /// </summary>
+        /// <param name="tlp"></param>
+        /// <param name="ColCnt"></param>
+        /// <param name="wrkRec"></param>
+        private void ButtonAdd(TableLayoutPanel tlp, int ColCnt, ProcessExcute wrkRec, int btnWidth, int btnHeight)
+        {
+            try
+            {
+                int Rowcnt = tlp.RowCount - 1;
+
+                // ボタン作成
+                Button btn = new Button();
+                btn.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
+                btn.Location = new System.Drawing.Point(ColCnt, Rowcnt);
+                btn.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
+                btn.Name = wrkRec.ExecCode.ToString();
+                btn.Size = new System.Drawing.Size(btnWidth, btnHeight);
+                btn.TabIndex = 0;
+                btn.TabStop = false;
+                btn.Text = ClsExcute.MaintenanceExecuteName[wrkRec.ExecCode];
+                btn.UseVisualStyleBackColor = true;
+                btn.Click += new System.EventHandler(this.btnMaster_Click);
+
+                tlp.Controls.Add(btn, ColCnt, Rowcnt);
+                m_MentenanceButton.Add(btn);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 画面サイズ変更時
         /// <summary>
         /// 画面サイズ変更時のセルサイズ変更
@@ -373,60 +679,54 @@
         private DialogResult LoginAction()
         {
             IOMPersonInCharge pmDB = new IOMPersonInCharge();
+            IOMSecurity secDB = new IOMSecurity();
+            IOMProcessExcute execDB = new IOMProcessExcute();
             FrmLogin frm = new FrmLogin();
             try
             {
                 DialogResult drRet = DialogResult.OK;
-                // 起動時ユーザー定義
-                PersonInChargeMaster LoginUser = new PersonInChargeMaster();
 
-                if (CommonMotions.ProductionExecution)
-                {// 実地起動
+                // ----- デバッグ起動はログイン無
+                if (!CommonMotions.ProductionExecution)
+                {
+                    InitAdministrator();
+                    return drRet;
+                }
 
-                    // ログイン画面
-                    frm.ShowDialog();
-                    // 終了状態取得
-                    drRet = frm.EndButton;
-
+                // ----- 実地起動
+                // ログイン画面
+                frm.ShowDialog();
+                // 終了状態取得
+                if ((drRet = frm.EndButton) == DialogResult.No) 
+                {
                     // ログインから終了を選ぶと終了する
-                    if (drRet == DialogResult.No)
-                    {
-                        return drRet;
-                    }
-                    // システム管理者以外でログインした場合はもう一度マスタ読込チェックを行う
-                    if (CommonMotions.LoginUserData.PersonName != CommonDefine.AdminUser)
-                    {
-                        // ログインユーザー情報取得
-                        string strSQL = pmDB.CreatePrimarykeyString(CommonMotions.LoginUserData.PersonCode);
-                        if (!pmDB.SelectAction(strSQL, ref LoginUser))
-                        {
-                            return DialogResult.No;
-                        }
-                    }
-                    else
-                    {   // sys Admin ログイン
-                        LoginUser.PersonCode = CommonDefine.AdminCode;
-                        LoginUser.PersonName = CommonDefine.AdminUser;
-                        LoginUser.PassWord = CommonDefine.AdminPass;
-                        LoginUser.MsgBackColor = String.Format("0x{0:X2}{1:X2}{2:X2}", Color.Gold.R, Color.Gold.G, Color.Gold.B);
-
-                        LoginUser.SecurityManagement = CommonDefine.AdminSecurityManagement;
-                    }
+                    return drRet;
                 }
-                else
-                {   // デバック起動
+                
+                // システム管理者としてのログイン
+                if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode)
+                {
+                    InitAdministrator();
+                    return drRet;
+                }
 
-                    LoginUser.PersonCode = CommonDefine.AdminCode;
-                    LoginUser.PersonName = CommonDefine.AdminUser;
-                    LoginUser.PassWord = CommonDefine.AdminPass;
-                    LoginUser.SecurityManagement = CommonDefine.AdminSecurityManagement;
+                // ----- ユーザーとしてのログイン
+                // セキュリティデータ取得
+                SecurityMaster secRec = new SecurityMaster();
+                string strSec = secDB.CreatePrimarykeyString(CommonMotions.LoginUserData.SecCode);
+                secDB.SelectAction(strSec, ref secRec);
+                CommonMotions.LoginUserSecurity = secRec;
+
+                // 起動データ取得
+                List<ProcessExcute> exeList = new List<ProcessExcute>();
+                string strExe = execDB.CreatePrimarykeyString(CommonMotions.LoginUserData.SecCode) + " ORDER BY EXECCODE";
+                execDB.SelectAction(strExe, ref exeList);
+                CommonMotions.LoginUserProcExe.Clear();
+                foreach (ProcessExcute wrkRec in exeList)
+                {
+                    CommonMotions.LoginUserProcExe.Add(wrkRec);
                 }
-                // ログインデータセット
-                CommonMotions.LoginUserData = LoginUser;
 
-                // 表示画面設定
-                DisplayScreenSetup();
-
                 return drRet;
             }
             catch (Exception ex)
@@ -436,15 +736,85 @@
             }
             finally
             {
-                pmDB.close();
-                pmDB = null;
+                // 表示画面設定
+                DisplayScreenSetup();
 
-                frm.Dispose();
-                frm = null;
+                // DB使用終了
+                pmDB.close(); pmDB = null;
+                secDB.close(); secDB = null;
+                execDB.close(); execDB = null;
+
+                // フォーム破棄
+                frm.Dispose(); frm = null;
             }
         }
         #endregion
 
+        #region システム管理者のログイン情報セット
+        /// <summary>
+        /// システム管理者のログイン情報セット
+        /// </summary>
+        private void InitAdministrator()
+        {
+            try
+            {
+                // ----- ログイン情報セット
+                CommonMotions.LoginUserData.PersonCode = CommonDefine.AdminCode;
+                CommonMotions.LoginUserData.PersonName = CommonDefine.AdminUser;
+                CommonMotions.LoginUserData.PassWord = CommonDefine.AdminPass;
+                CommonMotions.LoginUserData.SecCode = CommonDefine.AdminSecurityManagement;
+                CommonMotions.LoginUserData.SecurityManagement = CommonDefine.AdminSecurityManagement;
+
+                // ----- セキュリティデータセット
+                // 保護区分番号
+                CommonMotions.LoginUserSecurity.SecCode = CommonDefine.AdminSecurityManagement;
+                // 表示順
+                CommonMotions.LoginUserSecurity.DisplayOrder = 0;
+                // 保護区分名称
+                CommonMotions.LoginUserSecurity.SecName = "システム管理者";
+                // 保護区分ランク
+                CommonMotions.LoginUserSecurity.SecRank = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key;
+                // 保護区分範囲
+                CommonMotions.LoginUserSecurity.SecRange = CommonDefine.SecurityRangeList[(int)CommonDefine.SecurityRangePos.AllPath].Key;
+                // 選択背景色
+                CommonMotions.LoginUserSecurity.SelectBackColor = String.Format("0x{0:X2}{1:X2}{2:X2}", Color.White.R, Color.White.G, Color.White.B);
+
+                // ----- 起動データ取得
+                CommonMotions.LoginUserProcExe.Clear();
+                // 起動処理一覧表示
+                foreach (KeyValuePair<int, string> wrkValue in ClsExcute.ProcessExecuteName)
+                {
+                    if (wrkValue.Key == 0) continue;
+                    ProcessExcute exeRec = new ProcessExcute();
+                    // 保護区分番号
+                    exeRec.SecCode = CommonDefine.AdminSecurityManagement;
+                    // 起動処理番号
+                    exeRec.ExecCode = wrkValue.Key;
+                    // 編集フラグ
+                    exeRec.EditFlg = (int)CommonDefine.ProcessDataEdit.Edit;
+                    CommonMotions.LoginUserProcExe.Add(exeRec);
+                }
+                // マスタメンテナンス一覧表示
+                foreach (KeyValuePair<int, string> wrkValue in ClsExcute.MaintenanceExecuteName)
+                {
+                    if (wrkValue.Key == 0) continue;
+                    ProcessExcute exeRec = new ProcessExcute();
+                    // 保護区分番号
+                    exeRec.SecCode = CommonDefine.AdminSecurityManagement;
+                    // 起動処理番号
+                    exeRec.ExecCode = wrkValue.Key;
+                    // 編集フラグ
+                    exeRec.EditFlg = (int)CommonDefine.ProcessDataEdit.Edit;
+                    CommonMotions.LoginUserProcExe.Add(exeRec);
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+        }
+        #endregion
+
         #region 数字選択ボックス初期営業期セット
         /// <summary>
         /// 数字選択ボックス初期営業期セット
@@ -492,11 +862,14 @@
                 stat.Add(CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求準備")).Key);            // 9
                 stat.Add(CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求完了")).Key);           // 10
 
+                //string strSQL = "SELECT TO_CHAR(ConstructionCompletionDate,'YYYY/MM'), count(*) FROM CONSTRUCTIONBASEINFO";
                 string strSQL = "SELECT DATE_FORMAT(ConstructionCompletionDate,'%Y/%m'), count(*) FROM CONSTRUCTIONBASEINFO";
                 strSQL += CreateListSQLFluctuation();
                 strSQL += CreateListSQL(stat);
-                //strSQL += string.Format(" And DATE_FORMAT('{0}', 'yyyy/dd/mm') <= ConstructionCompletionDate", StartDate.ToShortDateString());
+                //strSQL += string.Format(" And TO_DATE('{0}', 'yyyy/dd/mm') <= ConstructionCompletionDate", StartDate.ToShortDateString());
                 strSQL += string.Format(" And CONSTRUCTIONPERIOD = {0}", numUDCompletion.Value);
+                //strSQL += " GROUP BY TO_CHAR(ConstructionCompletionDate,'YYYY/MM')";
+                //strSQL += " Order By TO_CHAR(ConstructionCompletionDate,'YYYY/MM') Desc";
                 strSQL += " GROUP BY DATE_FORMAT(ConstructionCompletionDate,'%Y/%m')";
                 strSQL += " Order By DATE_FORMAT(ConstructionCompletionDate,'%Y/%m') Desc";
                 ArrayList arList = new ArrayList();
@@ -640,56 +1013,56 @@
                 m_FormWidthSize = this.Width;
 
                 // グリッドの情報を取得する(タブ数分確保する)
-                int AllTabCount = Enum.GetNames(typeof(FrmMenuTabNameEnum)).Length;
+                int AllTabCount = Enum.GetNames(typeof(TabNameEnum)).Length;
                 m_Alldgv = new DataGridView[AllTabCount];
                 m_GridWidthSize = new int[AllTabCount];
 
-                for (int i = 0; i < AllTabCount; i++) m_Alldgv[i] = null;
-                for (int i = 0; i < AllTabCount; i++) m_GridWidthSize[i] = -1;
+                Array.Clear(m_Alldgv, 0, m_Alldgv.Length);
+                Array.Clear(m_GridWidthSize, 0, m_GridWidthSize.Length);
 
                 int TabPoint = 0;
                 // 1:秘書からの連絡
-                TabPoint = (int)FrmMenuTabNameEnum.BusinessMessage - 1;
+                TabPoint = (int)TabNameEnum.BusinessMessage - 1;
                 m_GridWidthSize[TabPoint] = dgvBusinessMessage.Width;
                 m_Alldgv[TabPoint] = dgvBusinessMessage;
                 // 2:社内掲示板
-                TabPoint = (int)FrmMenuTabNameEnum.MessageBoard - 1;
+                TabPoint = (int)TabNameEnum.MessageBoard - 1;
                 m_GridWidthSize[TabPoint] = dgvMessageBoard.Width;
                 m_Alldgv[TabPoint] = dgvMessageBoard;
                 // 3:承認一覧
-                TabPoint = (int)FrmMenuTabNameEnum.DocumentApproval - 1;
+                TabPoint = (int)TabNameEnum.DocumentApproval - 1;
                 m_GridWidthSize[TabPoint] = dgvApproval.Width;
                 m_Alldgv[TabPoint] = dgvApproval;
                 // 4:工事案件
-                TabPoint = (int)FrmMenuTabNameEnum.SalesInProjects - 1;
+                TabPoint = (int)TabNameEnum.SalesInProjects - 1;
                 m_GridWidthSize[TabPoint] = dgvSalesInProjects.Width;
                 m_Alldgv[TabPoint] = dgvSalesInProjects;
                 // 5:入札案件
-                TabPoint = (int)FrmMenuTabNameEnum.Tenders - 1;
+                TabPoint = (int)TabNameEnum.Tenders - 1;
                 m_GridWidthSize[TabPoint] = dgvTenders.Width;
                 m_Alldgv[TabPoint] = dgvTenders;
                 // 6:予算取り案件
-                TabPoint = (int)FrmMenuTabNameEnum.BudgetUpProjects - 1;
+                TabPoint = (int)TabNameEnum.BudgetUpProjects - 1;
                 m_GridWidthSize[TabPoint] = dgvBudgetUp.Width;
                 m_Alldgv[TabPoint] = dgvBudgetUp;
                 // 7:受注案件
-                TabPoint = (int)FrmMenuTabNameEnum.ConstructionProjects - 1;
+                TabPoint = (int)TabNameEnum.ConstructionProjects - 1;
                 m_GridWidthSize[TabPoint] = dgvConstructionProjects.Width;
                 m_Alldgv[TabPoint] = dgvConstructionProjects;
                 // 8:非受注工事
-                TabPoint = (int)FrmMenuTabNameEnum.NonOrders - 1;
+                TabPoint = (int)TabNameEnum.NonOrders - 1;
                 m_GridWidthSize[TabPoint] = dgvNonOrders.Width;
                 m_Alldgv[TabPoint] = dgvNonOrders;
                 // 9:完了工事
-                TabPoint = (int)FrmMenuTabNameEnum.CompletionOfConstruction - 1;
+                TabPoint = (int)TabNameEnum.CompletionOfConstruction - 1;
                 m_GridWidthSize[TabPoint] = dgvCompletionOfConstruction.Width;
                 m_Alldgv[TabPoint] = dgvCompletionOfConstruction;
                 // 10:行動予定
-                TabPoint = (int)FrmMenuTabNameEnum.ActionSchedule - 1;
+                TabPoint = (int)TabNameEnum.ActionSchedule - 1;
                 m_GridWidthSize[TabPoint] = dgvActionSchedule.Width;
                 m_Alldgv[TabPoint] = dgvActionSchedule;
                 // 11:人員配置
-                TabPoint = (int)FrmMenuTabNameEnum.StaffAssignment - 1;
+                TabPoint = (int)TabNameEnum.StaffAssignment - 1;
                 m_GridWidthSize[TabPoint] = dgvStaffAssignment.Width;
                 m_Alldgv[TabPoint] = dgvStaffAssignment;
                 // ----- 以下はグリッド無・未定
@@ -754,9 +1127,79 @@
         }
         #endregion
 
+        #region 未承認データ確認
+        /// <summary>
+        /// 未承認データ確認
+        /// </summary>
+        /// <returns></returns>
+        private void CheckApprovalData()
+        {
+            IOProcessApproval AppDB = new IOProcessApproval();
+            try
+            {
+                string strSQL = "SELECT count(*) FROM PROCESSAPPROVAL A, PERSONINCHARGEMASTER B, APPROVALMASTER C";
+                strSQL += string.Format(" WHERE (A.SEQNO = 1 AND A.APPROVALSTATUS <> {0})", (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " AND NOT EXISTS (SELECT * FROM PROCESSAPPROVAL D";
+                strSQL += " WHERE D.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND D.APPROVALCODE = A.APPROVALCODE AND D.ORDERNO = A.ORDERNO AND D.SEQNO <> 1";
+                strSQL += string.Format(" AND D.PERSONCODE = {0} AND D.APPROVALSTATUS = {1})", CommonMotions.LoginUserData.PersonCode, (int)CommonDefine.ApprovalStatus.Approval);
+                strSQL += " AND B.PERSONCODE = A.PERSONCODE";
+                strSQL += " AND (C.APPROVALCODE = A.APPROVALCODE AND C.DEPARTMENTCODE = B.DEPARTMENTCODE)";
+                strSQL += string.Format(" AND C.APPROVALPERSON = {0}", CommonMotions.LoginUserData.PersonCode);
+                ArrayList arList = new ArrayList();
+                if (!AppDB.ExecuteReader(strSQL, ref arList)) return;
+
+                object[] objRec = (object[])arList[0];
+                if (CommonMotions.cnvInt(objRec[0]) == 0) return;
+
+                // 承認タブへ移動する
+                tabMenu.SelectedIndex = (int)MenuTabAssign.DocumentApproval;
+
+                MessageBox.Show("未承認のデータがあります、確認してください。", "承認確認", MessageBoxButtons.OK, MessageBoxIcon.Information);
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+            }
+            finally
+            {
+                AppDB.close(); AppDB = null;
+            }
+        }
+        #endregion
+
+        #region 車両選択画面起動
+        /// <summary>
+        /// 車両選択画面起動
+        /// </summary>
+        /// <param name="VehicleCode"></param>
+        /// <returns></returns>
+        private bool VehicleCodeSelector(ref int VehicleCode)
+        {
+            FrmVehicleSelector frm = new FrmVehicleSelector();
+
+            try
+            {
+                frm.ShowDialog();
+                if (frm.EndButton == DialogResult.Cancel) return false;
+
+                VehicleCode = frm.VehicleCode;
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+            finally
+            {
+                frm.Dispose(); frm = null;
+            }
+        }
+        #endregion
+
         #region メニュータブ表示関連処理
         // *---------------- メニュータブ表示関連処理
-
         #region 掲示板処理関連
         #region メッセージ確認・作成
         /// <summary>
@@ -767,35 +1210,40 @@
             try
             {
                 DataGridViewRow wrkRow = dgvMessageBoard.CurrentRow;
-                if (Gridcnt == (int)FrmMenuTabNameEnum.BusinessMessage) wrkRow = dgvBusinessMessage.CurrentRow;
+                if (Gridcnt == (int)TabNameEnum.BusinessMessage) wrkRow = dgvBusinessMessage.CurrentRow;
 
                 int RecoadNo = 0;
                 int BuranchNo = 0;
                 int WriteingCode = 0;
 
-                // 行をクリックした場合はそのメッセージデータを取得する
-                if (bLineClick && !CommonMotions.chkCellBlank(wrkRow.Cells[(int)MessageGridCount.FromName].Value))
+                int NowPoint = 0;
+                int ExecProcNo = 0;
+                if (!bLineClick)
                 {
-                    // 掲示板メッセージ入力
-                    RecoadNo = CommonMotions.cnvInt(wrkRow.Cells[(int)MessageGridCount.RecordNumber].Value);
-                    BuranchNo = CommonMotions.cnvInt(wrkRow.Cells[(int)MessageGridCount.BranchNumber].Value);
-                    WriteingCode = CommonMotions.cnvInt(wrkRow.Cells[(int)MessageGridCount.Writer].Value);
+                    ExecProcNo = (int)ClsExcute.SubFormExecuteNo.MessageWriter;
+                }
+                else
+                {
+                    // 行をクリックした場合はそのメッセージデータを取得する
+                    if (!CommonMotions.chkCellBlank(wrkRow.Cells[(int)MessageGridCount.FromName].Value))
+                    {
+                        // 掲示板メッセージ入力
+                        RecoadNo = CommonMotions.cnvInt(wrkRow.Cells[(int)MessageGridCount.RecordNumber].Value);
+                        BuranchNo = CommonMotions.cnvInt(wrkRow.Cells[(int)MessageGridCount.BranchNumber].Value);
+                        WriteingCode = CommonMotions.cnvInt(wrkRow.Cells[(int)MessageGridCount.Writer].Value);
 
-                    // 担当者は返信・編集以外メッセージを見ることはできない
-                    if (WriteingCode != CommonMotions.LoginUserData.PersonCode)
-                    {
-                        // 所属長以上は全てのメッセージを見ることができる
-                        if (!ClsMessageBoradAccess.MessageAccessPermission(RecoadNo, BuranchNo)) return false;
+                        // 担当者は返信・編集以外メッセージを見ることはできない
+                        if (WriteingCode != CommonMotions.LoginUserData.PersonCode)
+                        {
+                            // 所属長以上は全てのメッセージを見ることができる
+                            if (!ClsMessageBoradAccess.MessagePermission(RecoadNo, BuranchNo)) return false;
+                        }
                     }
+                    ExecProcNo = (int)ClsExcute.SubFormExecuteNo.MessageReader;
                 }
 
-                int NowPoint = 0;
-                if (!bLineClick)
-                    // 起動プロセス設定
-                    NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.MessageWriter);
-                else
-                    // 起動プロセス設定
-                    NowPoint = ClsExcute.NextProcess((int)ClsExcute.SubFormExecuteNo.MessageReader);
+                // 起動プロセス設定
+                NowPoint = ClsExcute.NextProcess(ExecProcNo);
 
                 // パラメータセット
                 ClsExcute.ProcControlPara[NowPoint].IntExecParameter.Add(RecoadNo);
@@ -825,11 +1273,11 @@
             try
             {
                 DataGridView dgv = dgvMessageBoard;
-                if (exeflg != (int)FrmMenuTabNameEnum.MessageBoard)
+                if (exeflg != (int)TabNameEnum.MessageBoard)
                     dgv = dgvBusinessMessage;
 
                 int cnt = 0;
-                if (exeflg == (int)FrmMenuTabNameEnum.MessageBoard)
+                if (exeflg == (int)TabNameEnum.MessageBoard)
                 {
                     cnt = dgv.Rows.Add(wrkRow.RecordNumber,
                                         wrkRow.BranchNumber,
@@ -893,18 +1341,18 @@
             DataGridView dgv = dgvMessageBoard;
             try
             {
-                TabPage tabpage = tabPage7;
+                TabPage tabpage = tabPage2;
                 ProgressBar prgber = UpDateProgress;
-                if (exeflg != (int)FrmMenuTabNameEnum.MessageBoard)
+                if (exeflg != (int)TabNameEnum.MessageBoard)
                 {
                     dgv = dgvBusinessMessage;
                     prgber = BusinessProgress;
-                    tabpage = tabPage20;
+                    tabpage = tabPage1;
                 }
 
                 // 表示先のメッセージを検索する
                 string strSQL = string.Empty;
-                if (exeflg == (int)FrmMenuTabNameEnum.MessageBoard)
+                if (exeflg == (int)TabNameEnum.MessageBoard)
                 {   // 掲示板データ
                     strSQL = "SELECT A.*, B.TONAME FROM MESSAGEBOARDDATA A, MESSAGEBOARDTERGET B";
                     strSQL += " Where A.WritingDate > DATE_ADD(NOW(), INTERVAL -1 MONTH) And A.MessageFlag = 0";
@@ -914,7 +1362,7 @@
                 else
                 {   // 秘書からの連絡
                     strSQL = "SELECT A.*, B.TONAME FROM MESSAGEBOARDDATA A, MESSAGEBOARDTERGET B";
-                    strSQL += " Where A.WritingDate > (NOW() - 10) And A.MessageFlag = 1";
+                    strSQL += " Where A.WritingDate >  DATE_ADD(NOW(), INTERVAL -10 DAY) And A.MessageFlag = 1";
                     strSQL += " AND B.RECORDNUMBER = A.RECORDNUMBER AND B.BRANCHNUMBER = A.BRANCHNUMBER";
                     strSQL += " Order By A.WritingDate Desc, A.MessageTitile Asc, B.SeqNum ASC";
                 }
@@ -936,11 +1384,11 @@
                 object[] firstRec = (object[])mbdData[0];
 
                 // 掲示板データフィールド数取得
-                int ToNameCnt = Enum.GetNames(typeof(IOMessageBoardData.NameColumn)).Length;
+                int ToNameCnt = Enum.GetNames(typeof(IOMessageBoardData.ColumnCnt)).Length;
 
                 // １件目のデータ取得
-                int BreakRecordNo = CommonMotions.cnvInt(firstRec[(int)IOMessageBoardData.NameColumn.RecordNumber]);
-                int BreakBranchNo = CommonMotions.cnvInt(firstRec[(int)IOMessageBoardData.NameColumn.BranchNumber]);
+                int BreakRecordNo = CommonMotions.cnvInt(firstRec[(int)IOMessageBoardData.ColumnCnt.RecordNumber]);
+                int BreakBranchNo = CommonMotions.cnvInt(firstRec[(int)IOMessageBoardData.ColumnCnt.BranchNumber]);
                 MessageBoardData wrkRow = new MessageBoardData();
                 mbdDB.Reader2Struct(firstRec, ref wrkRow);
                 string TergetName = string.Empty;
@@ -948,8 +1396,8 @@
                 foreach (object[] DataRec in mbdData)
                 {
                     // 同じメッセージならば相手先を結合する
-                    int NowRecordNo = CommonMotions.cnvInt(DataRec[(int)IOMessageBoardData.NameColumn.RecordNumber]);
-                    int NowBranchNo = CommonMotions.cnvInt(DataRec[(int)IOMessageBoardData.NameColumn.BranchNumber]);
+                    int NowRecordNo = CommonMotions.cnvInt(DataRec[(int)IOMessageBoardData.ColumnCnt.RecordNumber]);
+                    int NowBranchNo = CommonMotions.cnvInt(DataRec[(int)IOMessageBoardData.ColumnCnt.BranchNumber]);
                     if (BreakRecordNo == NowRecordNo && BreakBranchNo == NowBranchNo)
                     {
                         if (TergetName.Length != 0) TergetName += ",";
@@ -1023,17 +1471,12 @@
             IOProcessApproval paDB = new IOProcessApproval();
             try
             {
-                string strLimitedSQL = string.Empty;
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
-                {
-                    // 一般ユーザーは自分の承認のみ表示する
-                    strLimitedSQL += string.Format(" And A.PersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
-                }
                 // ----- 工事案件毎に最大の承認を取得する
                 int iStatus = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求完了")).Key;
                 // 完了工事以外の申請中と承認後7日間のデータを対象とする
                 string strSQL = "SELECT";
                 strSQL += " A.APPROVALCODE,";
+                strSQL += " A.ORDERNO,";
                 strSQL += " A.CONSTRUCTIONCODE,";
                 strSQL += " A.PETITIONAPPROVALDATE,";
                 strSQL += " A.EntryDate,";
@@ -1050,7 +1493,7 @@
 
                  strSQL += " FROM PROCESSAPPROVAL A INNER JOIN PERSONINCHARGEMASTER C ON C.PERSONCODE = A.PERSONCODE";
                  strSQL += " LEFT JOIN APPROVALMASTER E ON E.APPROVALCODE = A.APPROVALCODE AND E.DEPARTMENTCODE = C.DEPARTMENTCODE";
-                 strSQL += " LEFT JOIN PROCESSAPPROVAL G ON G.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND G.APPROVALCODE = A.APPROVALCODE AND G.PERSONCODE = E.APPROVALPERSON AND G.SEQNO != 1";
+                 strSQL += " LEFT JOIN PROCESSAPPROVAL G ON G.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE AND G.APPROVALCODE = A.APPROVALCODE AND G.ORDERNO = A.ORDERNO AND G.PERSONCODE = E.APPROVALPERSON AND G.SEQNO != 1";
                  strSQL += " , CONSTRUCTIONBASEINFO B, CONSTRUCTIONBASEINFODETAIL D, PERSONINCHARGEMASTER F";
                 
                 strSQL += string.Format(" WHERE ((A.SEQNO = 1 AND A.ApprovalStatus != {0})", (int)CommonDefine.ApprovalStatus.Approval);
@@ -1063,10 +1506,28 @@
                 strSQL += string.Format(" AND D.DETAILNO = {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionName);
                 strSQL += " AND F.PERSONCODE = E.APPROVALPERSON";
 
+                //// 新セキュリティデータ対応済みかを確認する
+                //if (CommonMotions.LoginUserData.SecCode == 0)
+                //{
+                //    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key)
+                //    {
+                //        // 一般ユーザーは自分の承認のみ表示する
+                //        strSQL += string.Format(" And A.PersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                //    }
+                //}
+                //else
+                //{
+                //    if (CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key)
+                //    {
+                //        // 一般ユーザーは自分の承認のみ表示する
+                //        strSQL += string.Format(" And A.PersonCode = {0} ", CommonMotions.LoginUserData.PersonCode);
+                //    }
+                //}
+
                 strSQL += " ORDER BY A.APPROVALCODE DESC, A.PETITIONAPPROVALDATE DESC, A.PERSONCODE ASC, E.DISPLAYORDER DESC";
                 if (!paDB.ExecuteReader(strSQL, ref arData)) return false;
 
-                if (arData.Count == 0) return false;
+                //if (arData.Count == 0) return false;
 
                 return true;
             }
@@ -1093,6 +1554,10 @@
             /// </summary>
             ApprovalCode = 0,
             /// <summary>
+            /// 受付番号
+            /// </summary>
+            OrderNo,
+            /// <summary>
             /// 工事番号
             /// </summary>
             ConstructionCode,
@@ -1161,7 +1626,7 @@
                 ProgressDApproval.Visible = true;
                 ProgressDApproval.Minimum = 0;
                 ProgressDApproval.Maximum = arData.Count;
-                tabPage21.Update();
+                tabPage3.Update();
 
                 // 行を作成する
                 DataGridViewRow[] list = new DataGridViewRow[arData.Count];
@@ -1169,15 +1634,18 @@
                 int ino = 1;
                 int iLineCnt = 0;
                 int BreakCode = 0;
-                
+
+                if (arData.Count == 0) goto BlankLien;
                 // ため込み処理領域初期化
                 ArrayList BufferList = new ArrayList();
                 object[] objfirst = (object[])arData[0];
+                int BreakApprovalCode = CommonMotions.cnvInt(objfirst[(int)ApprovalDataList.ApprovalCode]);
                 int BreakConstructionCode = CommonMotions.cnvInt(objfirst[(int)ApprovalDataList.ConstructionCode]);
 
                 foreach (object[] objLoopRec in arData)
                 {
-                    if (BreakConstructionCode == CommonMotions.cnvInt(objLoopRec[(int)ApprovalDataList.ConstructionCode]))
+                    if (BreakApprovalCode == CommonMotions.cnvInt(objLoopRec[(int)ApprovalDataList.ApprovalCode])
+                        && BreakConstructionCode == CommonMotions.cnvInt(objLoopRec[(int)ApprovalDataList.ConstructionCode]))
                     {
                         BufferList.Add(objLoopRec);
                         continue;
@@ -1187,6 +1655,7 @@
                     DispDocumentApprovalRowProc(ino, BufferList, ref BreakCode);
 
                     // ブレイクキー更新
+                    BreakApprovalCode = CommonMotions.cnvInt(objLoopRec[(int)ApprovalDataList.ApprovalCode]);
                     BreakConstructionCode = CommonMotions.cnvInt(objLoopRec[(int)ApprovalDataList.ConstructionCode]);
                     BufferList.Clear();
                     BufferList.Add(objLoopRec);
@@ -1205,7 +1674,8 @@
                     DispDocumentApprovalRowProc(ino, BufferList, ref BreakCode);
                 }
 
-
+                BlankLien:
+                
                 dgv.ResumeLayout();
 
                 // ProgressBarの値を変更する
@@ -1214,8 +1684,8 @@
                 ProgressDApproval.Visible = false;
 
                 // 読込時データカウント取得
-                if (CommonDefine.s_MaxInitLineCount > arData.Count)
-                    dgv.RowCount += (CommonDefine.s_MaxInitLineCount - arData.Count);
+                if (CommonDefine.s_MaxInitLineCount > dgv.RowCount)
+                    dgv.RowCount += (CommonDefine.s_MaxInitLineCount - dgv.RowCount);
 
                 // データが多くなればソートできる
                 foreach (DataGridViewColumn wrkCol in dgv.Columns)
@@ -1243,79 +1713,136 @@
             try
             {
                 DataGridView dgv = dgvApproval;
+                bool bFirst = true;
+                int CurRowCnt = 0;
+                int ObjCurCount = 0;
 
+                int iConstructionCode = 0;
+                int iApprovalCode = 0;
+                int iOrderNo = 0;
+                int DepartmentCode = 0;
+                string strPerson = string.Empty;
+                string strConstrName = string.Empty;
+                DateTime ApprovalEntryDate = DateTime.MinValue;
+                DateTime ApprovalLimitDates = DateTime.MinValue;
+                
                 // 先頭レコードを取得
-                object[] objwrk = (object[])BufferList[0];
+                foreach (object[] objwrk in BufferList)
+                {
+                    // データ取得
+                    iConstructionCode = CommonMotions.cnvInt(objwrk[(int)ApprovalDataList.ConstructionCode]);       // 工事番号
+                    iApprovalCode = CommonMotions.cnvInt(objwrk[(int)ApprovalDataList.ApprovalCode]);               // 承認機能番号
+                    iOrderNo = CommonMotions.cnvInt(objwrk[(int)ApprovalDataList.OrderNo]);                         // 受付番号
+                    DepartmentCode = CommonMotions.cnvInt(objwrk[(int)ApprovalDataList.DepartmentCode]);            // 対象部署取得
+                    strPerson = CommonMotions.cnvString(objwrk[(int)ApprovalDataList.PersonName]);                  // 申請者名取得
+                    strConstrName = CommonMotions.cnvString(objwrk[(int)ApprovalDataList.ConstructionName]);
+                    // 注文書は回数を付ける
+                    if (iApprovalCode == (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval)
+                    {
+                        strConstrName += string.Format("　{0}回目", iOrderNo);
+                    }
 
-                // データ取得
-                int iConstructionCode = CommonMotions.cnvInt(objwrk[(int)ApprovalDataList.ConstructionCode]);       // 工事番号
-                int iApprovalCode = CommonMotions.cnvInt(objwrk[(int)ApprovalDataList.ApprovalCode]);               // 承認機能番号
-                DateTime ApprovalEntryDate = CommonMotions.cnvDate(objwrk[(int)ApprovalDataList.EntryDate]);        // 申請日付
-                int DepartmentCode = CommonMotions.cnvInt(objwrk[(int)ApprovalDataList.DepartmentCode]);            // 対象部署取得
-                string strPerson = CommonMotions.cnvString(objwrk[(int)ApprovalDataList.PersonName]);               // 申請者名取得
-                DateTime ApprovalLimitDates = CommonMotions.cnvDate(objwrk[(int)ApprovalDataList.ApprovalLimitDates].ToString());   // 承認希望日
+                    ApprovalEntryDate = CommonMotions.cnvDate(objwrk[(int)ApprovalDataList.EntryDate]);             // 申請日付
+                    ApprovalLimitDates = CommonMotions.cnvDate(objwrk[(int)ApprovalDataList.ApprovalLimitDates].ToString());    // 承認希望日
 
-                string strLimitDate = string.Empty;
-                if (ApprovalLimitDates != DateTime.MinValue)
-                {
-                    strLimitDate = ApprovalLimitDates.ToShortDateString();
-                }
+                    if (!bFirst)
+                    {
+                        if (iApprovalCode == (int)ClsExcute.ApprovalListNo.PurchaseOrderEntryApproval)
+                        {
+                            if (iOrderNo == CommonMotions.cnvInt(dgv.Rows[CurRowCnt].Cells[(int)DocumentApprovalGridCount.OrderNo].Value))
+                                continue;
+                        }
+                        else
+                        {
+                            break;
+                        }
+                    }
 
-                // 処理月で空行を入れる
-                if (ino == 1)
-                {
-                    BreakCode = iApprovalCode;
-                }
-                if (BreakCode != iApprovalCode)
-                {
-                    dgv.Rows.Add(1);
-                    BreakCode = iApprovalCode;
-                }
+                    string strLimitDate = string.Empty;
+                    if (ApprovalLimitDates != DateTime.MinValue)
+                    {
+                        strLimitDate = ApprovalLimitDates.ToShortDateString();
+                    }
 
-                // データセット
-                int CurRowCnt = dgv.Rows.Add(iConstructionCode,
-                                                iApprovalCode,
-                                                ino,
-                                                CommonMotions.cnvString(objwrk[(int)ApprovalDataList.ConstructionName]),
-                                                ClsExcute.AppovalList[iApprovalCode],
-                                                strPerson,
-                                                ApprovalEntryDate.ToShortDateString(),
-                                                strLimitDate);
+                    // 処理月で空行を入れる
+                    if (ino == 1)
+                    {
+                        BreakCode = iApprovalCode;
+                    }
+                    if (BreakCode != iApprovalCode)
+                    {
+                        dgv.Rows.Add(1);
+                        BreakCode = iApprovalCode;
+                    }
 
-                // 承認種別と種別名に色を付ける
-                dgv.Rows[CurRowCnt].Cells[(int)DocumentApprovalGridCount.ApprovalName].Style.BackColor = ClsExcute.ApprovalTypeColorList[iApprovalCode];
+                    // データセット
+                    CurRowCnt = dgv.Rows.Add(iConstructionCode,
+                                                    iApprovalCode,
+                                                    iOrderNo,
+                                                    ino,
+                                                    strConstrName,
+                                                    ClsExcute.AppovalList[iApprovalCode],
+                                                    strPerson,
+                                                    ApprovalEntryDate.ToShortDateString(),
+                                                    strLimitDate);
 
-                // データセット
-                for (int i = 0; i < BufferList.Count; i++)
-                {
-                    // 承認者が列カウントを超えた場合
-                    if ((dgvApproval.ColumnCount - 1) < ((int)DocumentApprovalGridCount.ApprovalPerson1 + i))
+                    // 承認種別と種別名に色を付ける
+                    dgv.Rows[CurRowCnt].Cells[(int)DocumentApprovalGridCount.ApprovalName].Style.BackColor = ClsExcute.ApprovalTypeColorList[iApprovalCode];
+                    string wrkname = tabMenu.TabPages[(int)MenuTabAssign.DocumentApproval].Name;
+                    int Tabcount = MenuTabName[wrkname] - 1;
+
+                    // データセット
+                    for (int i = 0; i < BufferList.Count; i++)
                     {
-                        // 列を作成する
-                        DataGridViewTextBoxColumn NewColumn = new DataGridViewTextBoxColumn();
-                        // 名前とヘッダーを設定する
-                        NewColumn.Name = string.Format("ApprovalPerson{0}", i);
-                        NewColumn.HeaderText = string.Format("承認者", (i + 1));
-                        // 列の幅
-                        NewColumn.Width = dgvApproval.Columns[((int)DocumentApprovalGridCount.ApprovalPerson1)].Width;
-                        // 列のアライメントセット
-                        NewColumn.DefaultCellStyle = dgvApproval.Columns[((int)DocumentApprovalGridCount.ApprovalPerson1)].DefaultCellStyle;
+                        object[] objAuthorizer = (object[])BufferList[ObjCurCount++];
 
-                        // 列を追加する
-                        dgvApproval.Columns.Add(NewColumn);
-                    }
+                        // 承認機能番号・受付番号・工事番号が違えばブレイク
+                        if ((iApprovalCode == CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.ApprovalCode]))
+                            && (iOrderNo == CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.OrderNo]))
+                            && (iConstructionCode == CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.ConstructionCode])))
+                        {
 
-                    object[] objAuthorizer = (object[])BufferList[i];
+                        }
+                        else
+                        {
+                            --ObjCurCount;
+                            break;
+                        }
 
-                    int ApprovalStatus = CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.ApprovalStatus]);
-                    DataGridViewRow CurRowPo = dgvApproval.Rows[CurRowCnt];
-                    DataGridViewCell CurCell = null;
-                    CurCell = CurRowPo.Cells[(int)DocumentApprovalGridCount.ApprovalPerson1 + i];
+                        iApprovalCode = CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.ApprovalCode]);                // 承認機能番号
+                        iOrderNo = CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.OrderNo]);                          // 受付番号
+                        iConstructionCode = CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.ConstructionCode]);        // 工事番号
 
-                    CurCell.Value = CommonMotions.cnvString(objAuthorizer[(int)ApprovalDataList.ApprovalPersonName]);
-                    CurCell.Style.BackColor = CommonDefine.ApprovalBackColorStatusColor[ApprovalStatus];
-                    CurCell.Style.ForeColor = CommonDefine.ApprovalForeColorStatusColor[ApprovalStatus];
+                        // 承認者が列カウントを超えた場合
+                        if ((dgvApproval.ColumnCount - 1) < ((int)DocumentApprovalGridCount.ApprovalPerson1 + i))
+                        {
+                            // 列を作成する
+                            DataGridViewTextBoxColumn NewColumn = new DataGridViewTextBoxColumn();
+                            // 名前とヘッダーを設定する
+                            NewColumn.Name = string.Format("ApprovalPerson{0}", i);
+                            NewColumn.HeaderText = string.Format("承認者{0}", (i + 1));
+                            // 列の幅
+                            NewColumn.Width = dgvApproval.Columns[((int)DocumentApprovalGridCount.ApprovalPerson1)].Width;
+                            int AllCellColumns = m_CellSize.GetLength(1);
+                            int CurCellBaseCnt = (int)DocumentApprovalGridCount.ApprovalPerson1;
+                            if (AllCellColumns > i) m_CellSize[Tabcount, CurCellBaseCnt + i] = dgvApproval.Columns[((int)DocumentApprovalGridCount.ApprovalPerson1)].Width;
+                            // 列のアライメントセット
+                            NewColumn.DefaultCellStyle = dgvApproval.Columns[((int)DocumentApprovalGridCount.ApprovalPerson1)].DefaultCellStyle;
 
+                            // 列を追加する
+                            dgvApproval.Columns.Add(NewColumn);
+                        }
+
+                        int ApprovalStatus = CommonMotions.cnvInt(objAuthorizer[(int)ApprovalDataList.ApprovalStatus]);
+                        DataGridViewRow CurRowPo = dgvApproval.Rows[CurRowCnt];
+                        DataGridViewCell CurCell = null;
+                        CurCell = CurRowPo.Cells[(int)DocumentApprovalGridCount.ApprovalPerson1 + i];
+
+                        CurCell.Value = CommonMotions.cnvString(objAuthorizer[(int)ApprovalDataList.ApprovalPersonName]);
+                        CurCell.Style.BackColor = CommonDefine.ApprovalBackColorStatusColor[ApprovalStatus];
+                        CurCell.Style.ForeColor = CommonDefine.ApprovalForeColorStatusColor[ApprovalStatus];
+                    }
+                    bFirst = false;
                 }
             }
             catch (Exception ex)
@@ -1533,15 +2060,14 @@
         {
             try
             {
-                string sBackColor = string.Empty;
-                string sForeColor = string.Empty;
-                string sErrMsg = string.Empty;
-                if (CommonMotions.CheckProc.ConstructionStatusCheck(wrkRec, DateTime.Now, ref sErrMsg, ref sBackColor, ref sForeColor, false)) return;
-
-                wrkRow.Cells[4].Style.BackColor = CommonMotions.getBackForeColor(sBackColor, CommonDefine.PalceOfColor.BackColor);
-                wrkRow.Cells[4].Style.ForeColor = CommonMotions.getBackForeColor(sForeColor, CommonDefine.PalceOfColor.ForeColor);
-                wrkRow.Cells[4].ToolTipText = sErrMsg;
-
+                List<TermMaster> term = new List<TermMaster>();
+                if (!CommonMotions.CheckProc.ConstructionStatusCheck(wrkRec, DateTime.Now, ref term))
+                {
+                    int DataIndex = term.Count - 1;
+                    wrkRow.Cells[4].Style.BackColor = CommonMotions.getBackForeColor(term[DataIndex].BackColor, CommonDefine.PalceOfColor.BackColor);
+                    wrkRow.Cells[4].Style.ForeColor = CommonMotions.getBackForeColor(term[DataIndex].ForeColor, CommonDefine.PalceOfColor.ForeColor);
+                    wrkRow.Cells[4].ToolTipText = term[0].SendTitle + "／" + term[DataIndex].SendMessage;
+                }
             }
             catch (Exception ex)
             {
@@ -1587,7 +2113,7 @@
                 string strSQL = "SELECT A.ConstructionCode, A.ConstructionPeriod, B.DETAILNO, B.DETAILSTRING, A.ConstructionStatusFlg,";
                 strSQL += " A.EstimatesSubmitDeadline, C.PERSONNAME, D.PERSONNAME, A.STARTDATE, A.ENDDATE, G.APPROVALCODE, IFNULL(G.APPROVALSTATUS, -1), A.*";
                 strSQL += " FROM CONSTRUCTIONBASEINFO A";
-                strSQL += " LEFT JOIN  PERSONINCHARGEMASTER D ON D.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
+                strSQL += " LEFT JOIN PERSONINCHARGEMASTER D ON D.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
                 strSQL += " LEFT JOIN (SELECT SG.CONSTRUCTIONCODE, SG.SEQNO, SG.APPROVALSTATUS, MAX(SG.APPROVALCODE) APPROVALCODE";
                 strSQL += " FROM PROCESSAPPROVAL SG GROUP BY SG.CONSTRUCTIONCODE, SG.SEQNO, SG.APPROVALSTATUS) G";
                 strSQL += " ON A.ConstructionCode = G.CONSTRUCTIONCODE AND G.SEQNO = 1";
@@ -1613,7 +2139,7 @@
                 ProgressSalesProjects.Visible = true;
                 ProgressSalesProjects.Minimum = 0;
                 ProgressSalesProjects.Maximum = arData.Count;
-                tabPage8.Update();
+                tabPage4.Update();
                 //Thread.Sleep(100);
 
                 // データ表示
@@ -1793,7 +2319,7 @@
                 ProgressTenders.Visible = true;
                 ProgressTenders.Minimum = 0;
                 ProgressTenders.Maximum = arData.Count;
-                tabPage8.Update();
+                tabPage4.Update();
                 //Thread.Sleep(100);
 
                 // データ表示
@@ -1970,7 +2496,7 @@
                 ProgressBudgetUp.Visible = true;
                 ProgressBudgetUp.Minimum = 0;
                 ProgressBudgetUp.Maximum = arData.Count;
-                tabPage8.Update();
+                tabPage4.Update();
                 //Thread.Sleep(100);
 
                 // データ表示
@@ -2188,7 +2714,7 @@
                 ProgressConstructionProjects.Visible = true;
                 ProgressConstructionProjects.Minimum = 0;
                 ProgressConstructionProjects.Maximum = arData.Count;
-                tabPage9.Update();
+                tabPage7.Update();
                 //Thread.Sleep(100);
 
                 // データ表示
@@ -2615,6 +3141,8 @@
             {
                 dgv.SuspendLayout();
                 dgv.Rows.Clear();
+                int NotOrder = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("非 受 注")).Key;
+                int BillComp = CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求完了")).Key;
                 // ----- SQL作成
                 // 増減工事の増減分を取得する
                 string strSQL1 = "(SELECT A.ConstructionCode, A.ConstructionPeriod, B.DETAILNO, B.DETAILSTRING, A.ConstructionStatusFlg,";
@@ -2631,9 +3159,14 @@
                 strSQL += " FROM PROCESSAPPROVAL SG GROUP BY SG.CONSTRUCTIONCODE, SG.SEQNO, SG.APPROVALSTATUS) G";
                 strSQL += " ON A.ConstructionCode = G.CONSTRUCTIONCODE AND G.SEQNO = 1";
                 strSQL += " , CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C";
-                
-                strSQL += CreateFluctuationProjectsSQL();
 
+                strSQL += string.Format(" WHERE A.TYINGFLG = {0}", (int)CommonDefine.BaseInfoTyingFlg.Tying);
+                //strSQL += " AND (A.BILLINGDATE = TO_DATE('0001/01/01') OR A.BILLINGDATE > ADD_MONTHS(sysdate, -1))";
+                strSQL += " AND (A.BILLINGDATE = STR_TO_DATE('0001/01/01', '%Y/%m/%d') OR A.BILLINGDATE > DATE_ADD(NOW(), INTERVAL -1 MONTH))";
+                strSQL += string.Format(" AND A.ConstructionStatusFlg <> {0} AND A.ConstructionStatusFlg < {1}", NotOrder, BillComp);
+
+                //strSQL += CreateFluctuationProjectsSQL();
+
                 strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND B.DETAILNO <= {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3);
                 strSQL += " AND C.PERSONCODE = A.SALESPERSONCODE)";
@@ -2641,8 +3174,8 @@
                 // 増減工事の親を取得する
                 strSQL += string.Format(" UNION {0}", strSQL1);
 
-                strSQL += " LEFT JOIN CONSTRUCTIONLINK H ON H.FLUCTUATIONCODE IN (SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO";
-                strSQL += CreateFluctuationProjectsSQL() + ")";
+                //strSQL += " LEFT JOIN CONSTRUCTIONLINK H ON H.FLUCTUATIONCODE IN (SELECT CONSTRUCTIONCODE FROM CONSTRUCTIONBASEINFO";
+                //strSQL += CreateFluctuationProjectsSQL() + ")";
                 strSQL += " LEFT JOIN PERSONINCHARGEMASTER D ON D.PERSONCODE = A.CONSTRUCTIONPERSONCODE";
                 strSQL += " LEFT JOIN PERSONINCHARGEMASTER E ON E.PERSONCODE = A.CONSTRSUBPERSONCODE";
                 strSQL += " LEFT JOIN PERSONINCHARGEMASTER F ON F.PERSONCODE = A.CONSTRUCTIONINSTRUCTOR";
@@ -2649,13 +3182,18 @@
                 strSQL += " LEFT JOIN (SELECT SG.CONSTRUCTIONCODE, SG.SEQNO, SG.APPROVALSTATUS, MAX(SG.APPROVALCODE) APPROVALCODE";
                 strSQL += " FROM PROCESSAPPROVAL SG GROUP BY SG.CONSTRUCTIONCODE, SG.SEQNO, SG.APPROVALSTATUS) G";
                 strSQL += " ON A.ConstructionCode = G.CONSTRUCTIONCODE AND G.SEQNO = 1,";
-                strSQL += " CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C";
+                strSQL += " CONSTRUCTIONBASEINFODETAIL B, PERSONINCHARGEMASTER C, CONSTRUCTIONLINK H, CONSTRUCTIONBASEINFO I";
 
-                strSQL += string.Format(" WHERE A.TYINGFLG = {0}", (int)CommonDefine.BaseInfoTyingFlg.Pearent);
+                strSQL += string.Format(" WHERE A.TYINGFLG = {0}", (int)CommonDefine.BaseInfoTyingFlg.Parent);
 
                 strSQL += " AND B.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
                 strSQL += string.Format(" AND B.DETAILNO <= {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3);
-                strSQL += " AND C.PERSONCODE = A.SALESPERSONCODE)";
+                strSQL += " AND C.PERSONCODE = A.SALESPERSONCODE";
+                strSQL += string.Format(" AND A.ConstructionStatusFlg <> {0}", NotOrder);
+                strSQL += " AND H.CONSTRUCTIONCODE = A.CONSTRUCTIONCODE";
+                //strSQL += " AND I.CONSTRUCTIONCODE = H.FLUCTUATIONCODE AND (I.BILLINGDATE = TO_DATE('0001/01/01') OR I.BILLINGDATE > ADD_MONTHS(sysdate, -1)) ";
+                strSQL += " AND I.CONSTRUCTIONCODE = H.FLUCTUATIONCODE AND (I.BILLINGDATE = STR_TO_DATE('0001/01/01', '%Y/%m/%d') OR I.BILLINGDATE > DATE_ADD(NOW(), INTERVAL -1 MONTH)) ";
+                strSQL += ")";
 
                 strSQL += " ORDER BY 2 Desc, 14 Desc, 15 Asc, 17 Asc, 3 ASC";
                 //strSQL += " Order By A.ConstructionPeriod Desc, A.ConstructionStatusFlg Asc, A.ConstructionCode Asc, B.DETAILNO ASC";
@@ -2669,7 +3207,7 @@
                 ProgressFluctuationProjects.Visible = true;
                 ProgressFluctuationProjects.Minimum = 0;
                 ProgressFluctuationProjects.Maximum = arData.Count;
-                tabPage9.Update();
+                tabPage7.Update();
                 //Thread.Sleep(100);
 
                 // データ表示
@@ -2979,7 +3517,8 @@
                 strSQL += string.Format(" AND B.DETAILNO <= {0}", (int)ConstructionBaseInfoDetail.DetailDataNo.ConstructionPlace3);
                 strSQL += " AND C.PERSONCODE = A.SALESPERSONCODE";
 
-                strSQL += " Order By A.ConstructionPeriod Desc, A.ConstructionCode Desc, B.DETAILNO ASC";
+                //strSQL += " Order By A.ConstructionPeriod Desc, A.ConstructionCode Desc, B.DETAILNO ASC";
+                strSQL += " Order By A.NonOrderDate Desc, A.ConstructionCode Desc, B.DETAILNO ASC";
                 ArrayList arData = new ArrayList();
 
                 // 工事基本情報取得
@@ -2989,7 +3528,7 @@
                 ProgressNonOrders.Visible = true;
                 ProgressNonOrders.Minimum = 0;
                 ProgressNonOrders.Maximum = arData.Count;
-                tabPage14.Update();
+                tabPage9.Update();
                 //Thread.Sleep(100);
 
                 // データ表示
@@ -3166,13 +3705,17 @@
                 ProgressCompletionOfConstruction.Visible = true;
                 ProgressCompletionOfConstruction.Minimum = 0;
                 ProgressCompletionOfConstruction.Maximum = arData.Count;
-                tabPage15.Update();
+                tabPage10.Update();
                 //Thread.Sleep(100);
 
                 lblCompTitle01.Visible = false;
                 lblCompTitle02.Visible = false;
+                lblCompTitle03.Visible = false;
+                lblCompTitle04.Visible = false;
                 lblCompTotal01.Visible = false;
                 lblCompTotal02.Visible = false;
+                lblCompTotal03.Visible = false;
+                lblCompTotal04.Visible = false;
 
                 dgvCompletionOfConstruction.SuspendLayout();
 
@@ -3269,19 +3812,39 @@
                 ProgressCompletionOfConstruction.Visible = false;
 
                 // 金額表示
-                long Total01 = CalcOrdersDecisionPrice((numUDCompletion.Value - 1));
-                long Total02 = CalcOrdersDecisionPrice(numUDCompletion.Value);
-                lblCompTotal01.Text = @"\" + Total01.ToString("#,0") + "-";
-                lblCompTotal02.Text = @"\" + Total02.ToString("#,0") + "-";
+                long[] Total01 = CalcOrdersDecisionPrice((numUDCompletion.Value - 1));
+                long[] Total02 = CalcOrdersDecisionPrice(numUDCompletion.Value);
+                lblCompTotal01.Text = @"\" + (Total01[0] + Total01[1]).ToString("#,0") + "-";
+                lblCompTotal02.Text = @"\" + (Total02[0] + Total02[1]).ToString("#,0") + "-";
+                lblCompTotal03.Text = @"\" + Total02[0].ToString("#,0") + "-";
+                lblCompTotal04.Text = @"\" + Total02[1].ToString("#,0") + "-";
 
                 // 最高機密管理者のみ金額が表示される
-                if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement ||
-                    CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                bool bSelFlg = false;
+                // 新セキュリティデータ対応済みかを確認する
+                if (CommonMotions.LoginUserData.SecCode == 0)
                 {
+                    if (CommonMotions.LoginUserData.SecurityManagement == CommonDefine.AdminSecurityManagement ||
+                        CommonMotions.LoginUserData.SecurityManagement == CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.PresidentAuthority].Key)
+                        bSelFlg = true;
+                }
+                else
+                {
+                    if (CommonMotions.LoginUserData.PersonCode == CommonDefine.AdminCode
+                        || CommonMotions.LoginUserSecurity.SecRank == CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.SpecialAuthority].Key)
+                        bSelFlg = true;
+                }
+
+                if (bSelFlg)
+                {
                     lblCompTitle01.Visible = true;
                     lblCompTitle02.Visible = true;
+                    lblCompTitle03.Visible = true;
+                    lblCompTitle04.Visible = true;
                     lblCompTotal01.Visible = true;
                     lblCompTotal02.Visible = true;
+                    lblCompTotal03.Visible = true;
+                    lblCompTotal04.Visible = true;
                 }
             }
             catch (Exception ex)
@@ -3323,7 +3886,7 @@
                 strSQL += CreateListSQLFluctuation();
                 strSQL += CreateListSQL(stat);
 
-                //strSQL += string.Format(" And DATE_FORMAT('{0}', 'yyyy/dd/mm') <= ConstructionCompletionDate", StartDate.ToShortDateString());
+                //strSQL += string.Format(" And TO_DATE('{0}', 'yyyy/dd/mm') <= ConstructionCompletionDate", StartDate.ToShortDateString());
                 strSQL += string.Format(" And CONSTRUCTIONPERIOD = {0}", numUDCompletion.Value);
 
                 return strSQL;
@@ -3342,16 +3905,17 @@
         /// </summary>
         /// <param name="Period"></param>
         /// <returns></returns>
-        private long CalcOrdersDecisionPrice(decimal Period)
+        private long[] CalcOrdersDecisionPrice(decimal Period)
         {
             IOConstructionBaseInfo BaseDB = new IOConstructionBaseInfo();
+            int[] Status = new int[] {  CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求準備")).Key,
+                                            CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求完了")).Key};
+            long[] lArrayRet = new long[Status.Length];
+            Array.Clear(lArrayRet, 0, lArrayRet.Length);
             try
             {
-                //int[] Status = new int[] {CommonDefine.ProjectsStatus.First(x => x.Value.Equals("施工完了")).Key,
-                int[] Status = new int[] {  CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求準備")).Key,
-                                            CommonDefine.ProjectsStatus.First(x => x.Value.Equals("請求完了")).Key};
 
-                string strSQL = "SELECT SUM(ORDERSDECISIONPRICE) FROM CONSTRUCTIONBASEINFO";
+                string strSQL = "SELECT CONSTRUCTIONSTATUSFLG, SUM(ORDERSDECISIONPRICE) FROM CONSTRUCTIONBASEINFO";
                 strSQL += string.Format(" WHERE CONSTRUCTIONPERIOD = {0}", Period);
                 strSQL += " AND CONSTRUCTIONSTATUSFLG IN (";
                 for (int i = 0; i < Status.Length; i++)
@@ -3359,19 +3923,31 @@
                     if (i != 0) strSQL += ",";
                     strSQL += string.Format(" {0}", Status[i]);
                 }
-                if (Status.Length != 0) strSQL += ")";
+                strSQL += ")";
+                strSQL += " GROUP BY CONSTRUCTIONSTATUSFLG";
+                strSQL += " ORDER BY CONSTRUCTIONSTATUSFLG";
 
                 ArrayList arryList = new ArrayList();
-                if (!BaseDB.ExecuteReader(strSQL, ref arryList)) return 0;
-                if (arryList.Count == 0) return 0;
-                object[] getObj = (object[])arryList[0];
+                if (!BaseDB.ExecuteReader(strSQL, ref arryList)) return lArrayRet;
+                if (arryList.Count == 0) return lArrayRet;
+                foreach (object[] getObj in arryList)
+                {
+                    if (CommonMotions.cnvInt(getObj[0]) == Status[0])
+                    {
+                        lArrayRet[0] = CommonMotions.cnvLong(getObj[1]);
+                    }
+                    else
+                    {
+                        lArrayRet[1] = CommonMotions.cnvLong(getObj[1]);
+                    }
+                }
 
-                return CommonMotions.cnvLong(getObj[0]);
+                return lArrayRet;
             }
             catch (Exception ex)
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
-                return 0;
+                return lArrayRet;
             }
             finally
             {
@@ -3496,7 +4072,7 @@
                 progBarSalesGraph.Visible = true;
                 progBarSalesGraph.Minimum = ino;
                 progBarSalesGraph.Maximum = sgdList.Count;
-                tabPage12.Update();
+                tabPage13.Update();
 
                 DateTime wrkUpdate = sgdList[0].UpdateDate;
                 foreach (SalesGraphData wrkRec in sgdList)
@@ -3608,8 +4184,10 @@
                 DateTime ColenderEndDate = DateTime.Now.AddDays(15);
 
                 // --------------- 会社休日データの表示(会社カレンダーは必ずあることが前提、無ければ休日が出ない)
-                string strCalender = string.Format(" Where DATE_FORMAT('{0}','%Y/%m/%d') <= Holiday", ColenderStartDate.ToShortDateString());
-                strCalender += string.Format(" And Holiday <= DATE_FORMAT('{0}','%Y/%m/%d')", ColenderEndDate.ToShortDateString());
+                //string strCalender = string.Format(" Where TO_DATE('{0}','YYYY/MM/DD') <= Holiday", ColenderStartDate.ToShortDateString());
+                string strCalender = string.Format(" Where STR_TO_DATE('{0}','%Y/%m/%d') <= Holiday", ColenderStartDate.ToShortDateString());
+                //strCalender += string.Format(" And Holiday <= TO_DATE('{0}','YYYY/MM/DD')", ColenderEndDate.ToShortDateString());
+                strCalender += string.Format(" And Holiday <= STR_TO_DATE('{0}','%Y/%m/%d')", ColenderEndDate.ToShortDateString());
                 List<HolidayCalenderMaster> hcList = new List<HolidayCalenderMaster>();
                 if (!hcDB.SelectAction(strCalender, ref hcList)) return false;
                 if (hcList.Count == 0) return false;
@@ -3630,7 +4208,7 @@
                     dgvActionSchedule.Rows[s_ActionListDayLine].Cells[ix + (int)ActionSchduleGridCount.Days1].Value = dtCurDate.Day.ToString();
                     // 曜日をセットする
                     DayOfWeek dayofweek = dtCurDate.DayOfWeek;
-                    dgvActionSchedule.Rows[s_ActionListWeekLine].Cells[ix + (int)ActionSchduleGridCount.Days1].Value = s_DayOfTheWeek[(int)dayofweek];
+                    dgvActionSchedule.Rows[s_ActionListWeekLine].Cells[ix + (int)ActionSchduleGridCount.Days1].Value = CommonDefine.DayOfTheWeekString[(int)dayofweek];
 
                     // 休日を探す
                     bool ExistDays = false;
@@ -3685,7 +4263,8 @@
 
                 // --------------- 行動予定の表示
                 List<ActionScheduleData> asdList = new List<ActionScheduleData>();
-                string strSQL = String.Format(" Where (DATE_FORMAT('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= DATE_FORMAT('{1}','%Y/%m/%d'))"
+                //string strSQL = String.Format(" Where (TO_DATE('{0}','YYYY/MM/DD') <= TargetDate AND TargetDate <= TO_DATE('{1}','YYYY/MM/DD'))"
+                string strSQL = String.Format(" Where (STR_TO_DATE('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= STR_TO_DATE('{1}','%Y/%m/%d'))"
                                         , ColenderStartDate.ToShortDateString(), ColenderEndDate.ToShortDateString());
                 strSQL += string.Format(" And PersonCode = {0}", iCode);
                 strSQL += " ORDER BY TargetDate ASC";
@@ -3749,18 +4328,18 @@
         /// <param name="DepartmentRec"></param>
         /// <param name="PersonRec"></param>
         /// <param name="ActionRec"></param>
-        private void SetActionArrayListToRecTypeA(object[] InData
+        private void SetActionArrayListToRecTypeA(IOMDepartment dmDB
+                                            , IOMPersonInCharge picDB
+                                            , IOActionScheduleData asdDB
+                                            , object[] InData
                                             , ref DepartmentMaster DepartmentRec
                                             , ref PersonInChargeMaster PersonRec
                                             , ref ActionScheduleData ActionRec)
         {
-            IOMDepartment dmDB = new IOMDepartment();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            IOActionScheduleData asdDB = new IOActionScheduleData();
             try
             {
                 int DBDepartmentCnt = Enum.GetNames(typeof(IOMDepartment.NameColumn)).Length;                 // 部署マスタフィールドカウント
-                int DBPersonCnt = Enum.GetNames(typeof(IOMPersonInCharge.NameColumn)).Length;                 // 担当者マスタフィールドカウント
+                int DBPersonCnt = Enum.GetNames(typeof(IOMPersonInCharge.ColumnCnt)).Length;                 // 担当者マスタフィールドカウント
                 int DBActionDaysCnt = Enum.GetNames(typeof(IOActionScheduleData.NameColumn)).Length;          // 担当者行動予定データフィールドカウント
 
                 dmDB.ClearStruct(ref DepartmentRec);
@@ -3789,12 +4368,6 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                dmDB.close(); dmDB = null;
-                picDB.close(); picDB = null;
-                asdDB.close(); asdDB = null;
-            }
         }
         #endregion
 
@@ -3802,18 +4375,15 @@
         /// <summary>
         /// 行動予定一覧データ構造体セット(TypeB)
         /// </summary>
-        /// <param name="InData"></param>
-        /// <param name="PersonRec"></param>
-        /// <param name="ActionRec"></param>
-        private void SetActionArrayListToRecTypeB(object[] InData
+        private void SetActionArrayListToRecTypeB(IOMPersonInCharge picDB
+                                            , IOActionScheduleData asdDB
+                                            , object[] InData
                                             , ref PersonInChargeMaster PersonRec
                                             , ref ActionScheduleData ActionRec)
         {
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
-            IOActionScheduleData asdDB = new IOActionScheduleData();
             try
             {
-                int DBPersonCnt = Enum.GetNames(typeof(IOMPersonInCharge.NameColumn)).Length;                 // 担当者マスタフィールドカウント
+                int DBPersonCnt = Enum.GetNames(typeof(IOMPersonInCharge.ColumnCnt)).Length;                 // 担当者マスタフィールドカウント
                 int DBActionDaysCnt = Enum.GetNames(typeof(IOActionScheduleData.NameColumn)).Length;          // 担当者行動予定データフィールドカウント
 
                 picDB.ClearStruct(ref PersonRec);
@@ -3833,11 +4403,6 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                picDB.close(); picDB = null;
-                asdDB.close(); asdDB = null;
-            }
         }
         #endregion
 
@@ -3855,7 +4420,6 @@
             {
                 int DspRowCnt = 0;
                 DataGridView dgv = dgvActionSchedule;
-
                 // クリアする
                 ClearActionList();
 
@@ -3899,7 +4463,8 @@
                 string strSQL = "SELECT *";
                 strSQL += " FROM DEPARTMENTMASTER A, PERSONINCHARGEMASTER B";
                 strSQL += " LEFT OUTER JOIN ACTIONSCHEDULEDATA C ON B.PERSONCODE = C.PERSONCODE";
-                strSQL += String.Format(" AND (DATE_FORMAT('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= DATE_FORMAT('{1}','%Y/%m/%d'))"
+                //strSQL += String.Format(" AND (TO_DATE('{0}','YYYY/MM/DD') <= TargetDate AND TargetDate <= TO_DATE('{1}','YYYY/MM/DD'))"
+                strSQL += String.Format(" AND (STR_TO_DATE('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= STR_TO_DATE('{1}','%Y/%m/%d'))"
                                         , ColenderStartDate.ToShortDateString(), ColenderEndDate.ToShortDateString());
                 strSQL += " Where A.ACTIONSCHEDULEFLG = 0";
                 strSQL += " AND A.DEPARTMENTCODE = B.DEPARTMENTCODE";
@@ -3917,7 +4482,7 @@
                 foreach (object[] DataRec in DataList)
                 {
                     // オブジェクト配列より構造体へセット
-                    SetActionArrayListToRecTypeA(DataRec, ref DepartmentRec, ref PersonRec, ref ActionRec);
+                    SetActionArrayListToRecTypeA(dmDB, picDB, asdDB, DataRec, ref DepartmentRec, ref PersonRec, ref ActionRec);
 
                     // 担当者が同じならば処理しない
                     if (BreakPerSonCode == PersonRec.PersonCode) continue;
@@ -3957,7 +4522,7 @@
                     // --------------- 行動予定の表示
                     List<KeyValuePair<DateTime, string>> ActionList = new List<KeyValuePair<DateTime, string>>();
                     // データ取得
-                    GetActionListTypeA(PersonRec.PersonCode, DataList, ref ActionList);
+                    GetActionListTypeA(dmDB, picDB, asdDB, PersonRec.PersonCode, DataList, ref ActionList);
 
                     foreach (KeyValuePair<DateTime, string> DayDataRec in ActionList)
                     {
@@ -4000,10 +4565,10 @@
         /// <summary>
         /// 担当者データ取得(TypeA)
         /// </summary>
-        /// <param name="PersonCode"></param>
-        /// <param name="DataList"></param>
-        /// <param name="ActionList"></param>
-        private void GetActionListTypeA(int PersonCode, ArrayList DataList, ref List<KeyValuePair<DateTime, string>> ActionList)
+        private void GetActionListTypeA(IOMDepartment dmDB
+                                            , IOMPersonInCharge picDB
+                                            , IOActionScheduleData asdDB
+                                            , int PersonCode, ArrayList DataList, ref List<KeyValuePair<DateTime, string>> ActionList)
         {
             try
             {
@@ -4014,7 +4579,7 @@
                 foreach (object[] DataRec in DataList)
                 {
                     // オブジェクト配列より構造体へセット
-                    SetActionArrayListToRecTypeA(DataRec, ref DepartmentRec, ref PersonRec, ref ActionRec);
+                    SetActionArrayListToRecTypeA(dmDB, picDB, asdDB, DataRec, ref DepartmentRec, ref PersonRec, ref ActionRec);
 
                     // 担当者が違えば処理しない
                     if (PersonCode != PersonRec.PersonCode)
@@ -4039,10 +4604,9 @@
         /// <summary>
         /// 担当者データ取得(TypeB)
         /// </summary>
-        /// <param name="PersonCode"></param>
-        /// <param name="DataList"></param>
-        /// <param name="ActionList"></param>
-        private void GetActionListTypeB(int PersonCode, ArrayList DataList, ref List<KeyValuePair<DateTime, string>> ActionList)
+        private void GetActionListTypeB(IOMPersonInCharge picDB
+                                        , IOActionScheduleData asdDB
+                                        , int PersonCode, ArrayList DataList, ref List<KeyValuePair<DateTime, string>> ActionList)
         {
             try
             {
@@ -4052,7 +4616,7 @@
                 foreach (object[] DataRec in DataList)
                 {
                     // オブジェクト配列より構造体へセット
-                    SetActionArrayListToRecTypeB(DataRec, ref PersonRec, ref ActionRec);
+                    SetActionArrayListToRecTypeB(picDB, asdDB, DataRec, ref PersonRec, ref ActionRec);
 
                     // 担当者が違えば処理しない
                     if (PersonCode != PersonRec.PersonCode)
@@ -4096,7 +4660,8 @@
                 string strSQL = "SELECT *";
                 strSQL += " FROM PERSONINCHARGEMASTER B";
                 strSQL += " LEFT OUTER JOIN ACTIONSCHEDULEDATA C ON B.PERSONCODE = C.PERSONCODE";
-                strSQL += String.Format(" AND (DATE_FORMAT('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= DATE_FORMAT('{1}','%Y/%m/%d'))"
+                //strSQL += String.Format(" AND (TO_DATE('{0}','YYYY/MM/DD') <= TargetDate AND TargetDate <= TO_DATE('{1}','YYYY/MM/DD'))"
+                strSQL += String.Format(" AND (STR_TO_DATE('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= STR_TO_DATE('{1}','%Y/%m/%d'))"
                                         , ColenderStartDate.ToShortDateString(), ColenderEndDate.ToShortDateString());
                 strSQL += string.Format(" Where B.EmployeeClassFlg = {0}", (int)CommonDefine.EmployeeClassFlg.OutSource);
                 strSQL += " AND B.DELETEFLG = 0";
@@ -4111,7 +4676,7 @@
                 foreach (object[] DataRec in DataList)
                 {
                     // オブジェクト配列より構造体へセット
-                    SetActionArrayListToRecTypeB(DataRec, ref PersonRec, ref ActionRec);
+                    SetActionArrayListToRecTypeB(picDB, asdDB, DataRec, ref PersonRec, ref ActionRec);
 
                     // 担当者が同じならば処理しない
                     if (BreakPerSonCode == PersonRec.PersonCode) continue;
@@ -4151,7 +4716,7 @@
                     // --------------- 行動予定の表示
                     List<KeyValuePair<DateTime, string>> ActionList = new List<KeyValuePair<DateTime, string>>();
                     // データ取得
-                    GetActionListTypeB(PersonRec.PersonCode, DataList, ref ActionList);
+                    GetActionListTypeB(picDB, asdDB, PersonRec.PersonCode, DataList, ref ActionList);
 
                     foreach (KeyValuePair<DateTime, string> DayDataRec in ActionList)
                     {
@@ -4190,19 +4755,19 @@
         /// <param name="VehicleRec"></param>
         /// <param name="VehicleSRec"></param>
         /// <param name="ActionRec"></param>
-        private void SetVehicleArrayListToRec(object[] InData
+        private void SetVehicleArrayListToRec(IOMVehicle vcDB
+                                            , IOVehicleScheduleData vsdDB
+                                            , IOMPersonInCharge picDB
+                                            , object[] InData
                                             , ref VehicleMaster VehicleRec
                                             , ref VehicleScheduleData VehicleSRec
                                             , ref PersonInChargeMaster PersonRec)
         {
-            IOMVehicle vcDB = new IOMVehicle();
-            IOVehicleScheduleData vsdDB = new IOVehicleScheduleData();
-            IOMPersonInCharge picDB = new IOMPersonInCharge();
             try
             {
                 int DBVehicleCnt = Enum.GetNames(typeof(IOMVehicle.NameColumn)).Length;                 // 車両マスタフィールドカウント
                 int DBVehicleSCnt = Enum.GetNames(typeof(IOVehicleScheduleData.NameColumn)).Length;     // 車両スケジュールフィールドカウント
-                int DBPersonCnt = Enum.GetNames(typeof(IOMPersonInCharge.NameColumn)).Length;           // 担当者マスタフィールドカウント
+                int DBPersonCnt = Enum.GetNames(typeof(IOMPersonInCharge.ColumnCnt)).Length;           // 担当者マスタフィールドカウント
 
                 vcDB.ClearStruct(ref VehicleRec);
                 vsdDB.ClearStruct(ref VehicleSRec);
@@ -4230,12 +4795,6 @@
             {
                 logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
             }
-            finally
-            {
-                vcDB.close(); vcDB = null;
-                vsdDB.close(); vsdDB = null;
-                picDB.close(); picDB = null;
-            }
         }
         #endregion
 
@@ -4283,10 +4842,10 @@
         /// <summary>
         /// 車両予約データ取得
         /// </summary>
-        /// <param name="PersonCode"></param>
-        /// <param name="DataList"></param>
-        /// <param name="ActionList"></param>
-        private void GetVehicleReserveList(int VehicleCode, ArrayList DataList, ref List<VehicleResurveData> ReserveList)
+        private void GetVehicleReserveList(IOMVehicle vcDB
+                                            , IOVehicleScheduleData vsdDB
+                                            , IOMPersonInCharge picDB
+                                            , int VehicleCode, ArrayList DataList, ref List<VehicleResurveData> ReserveList)
         {
             try
             {
@@ -4297,7 +4856,7 @@
                 foreach (object[] DataRec in DataList)
                 {
                     // オブジェクト配列より構造体へセット
-                    SetVehicleArrayListToRec(DataRec, ref VehicleRec, ref VehicleSRec, ref PersonRec);
+                    SetVehicleArrayListToRec(vcDB, vsdDB, picDB, DataRec, ref VehicleRec, ref VehicleSRec, ref PersonRec);
 
                     // 車両が違えば処理しない
                     if (VehicleCode != VehicleRec.VehicleCode)
@@ -4344,7 +4903,8 @@
                 // --------------- 車両の表示
                 string strSQL = "SELECT * FROM VEHICLEMASTER A";
                 strSQL += " LEFT JOIN VEHICLESCHEDULEDATA B ON A.VEHICLECODE = B.VEHICLECODE";
-                strSQL += String.Format(" AND (DATE_FORMAT('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= DATE_FORMAT('{1}','%Y/%m/%d'))"
+                //strSQL += String.Format(" AND (TO_DATE('{0}','YYYY/MM/DD') <= TargetDate AND TargetDate <= TO_DATE('{1}','YYYY/MM/DD'))"
+                strSQL += String.Format(" AND (STR_TO_DATE('{0}','%Y/%m/%d') <= TargetDate AND TargetDate <= STR_TO_DATE('{1}','%Y/%m/%d'))"
                                         , ColenderStartDate.ToShortDateString(), ColenderEndDate.ToShortDateString());
                 strSQL += " LEFT JOIN PERSONINCHARGEMASTER C ON B.PERSONCODE = C.PERSONCODE";
                 strSQL += " WHERE VehicleScheduleFlg = 0";
@@ -4366,7 +4926,7 @@
                 foreach (object[] vcData in vcList)
                 {
                     // オブジェクト配列より構造体へセット
-                    SetVehicleArrayListToRec(vcData, ref VehicleRec, ref VehicleSRec, ref PersonRec);
+                    SetVehicleArrayListToRec(vcDB, vsdDB, picDB, vcData, ref VehicleRec, ref VehicleSRec, ref PersonRec);
 
                     // 車両が同じならば処理しない
                     if (BreakCode == VehicleRec.VehicleCode) continue;
@@ -4395,7 +4955,7 @@
 
                     // --------------- 車両予約の表示
                     List<VehicleResurveData> ReserveList = new List<VehicleResurveData>();
-                    GetVehicleReserveList(VehicleRec.VehicleCode, vcList, ref ReserveList);
+                    GetVehicleReserveList(vcDB, vsdDB, picDB, VehicleRec.VehicleCode, vcList, ref ReserveList);
 
                     foreach (VehicleResurveData wrkDay in ReserveList)
                     {
@@ -4728,7 +5288,7 @@
             IOMPersonInCharge picDB = new IOMPersonInCharge();
             IOMHolidayCalender hcDB = new IOMHolidayCalender();
             dgvStaffAssignment.SuspendLayout();
-            m_bStaffAssignInitFlg = true;
+            //m_bStaffAssignInitFlg = true;
             int HDisplayCnt = -1;
             int VDisplayCnt = -1;
 
@@ -4778,8 +5338,15 @@
                 string BaseSQL = "SELECT A1, A2, MIN(A3), MAX(A4), A5, A6, A7, A8, A9, A10, A11, A12, A13 FROM";
                 BaseSQL += " (SELECT A.ConstructionCode A1,";
                 BaseSQL += " A.ConstructionPersonCode A2,";
+                //BaseSQL += " TO_CHAR(A.ConstructionPeriodStart, 'YYYY/MM/DD') A3,";
+                //BaseSQL += " TO_CHAR(A.ConstructionPeriodEnd, 'YYYY/MM/DD') A4,";
+                //BaseSQL += " TO_CHAR(A.OrderDate, 'YYYY/MM/DD') A5,";
+                //BaseSQL += " TO_CHAR(A.OrderCompletionDate, 'YYYY/MM/DD') A6,";
+                //BaseSQL += " TO_CHAR(A.BillingStartDate, 'YYYY/MM/DD') A7,";
+                //BaseSQL += " TO_CHAR(A.OrderStartingDate, 'YYYY/MM/DD') A8,";
                 BaseSQL += " DATE_FORMAT(A.ConstructionPeriodStart, '%Y/%m/%d') A3,";
                 BaseSQL += " DATE_FORMAT(A.ConstructionPeriodEnd, '%Y/%m/%d') A4,";
+                //BaseSQL += " DATE_FORMAT(A.OrderDate, 'YYYY/MM/DD') A5,";
                 BaseSQL += " DATE_FORMAT(A.OrderDate, '%Y/%m/%d') A5,";
                 BaseSQL += " DATE_FORMAT(A.OrderCompletionDate, '%Y/%m/%d') A6,";
                 BaseSQL += " DATE_FORMAT(A.BillingStartDate, '%Y/%m/%d') A7,";
@@ -4788,6 +5355,7 @@
                 BaseSQL += " C.DISPLAYORDER A10,";
                 BaseSQL += " B.DISPLAYORDER A11,";
                 BaseSQL += " A.OrderDate A12,";
+                //BaseSQL += " TO_CHAR(A.ConstructionPeriodEnd2, 'YYYY/MM/DD') A13";
                 BaseSQL += " DATE_FORMAT(A.ConstructionPeriodEnd2, '%Y/%m/%d') A13";
                 BaseSQL += " FROM ConstructionBaseInfo A, PERSONINCHARGEMASTER B, DEPARTMENTMASTER C";
 
@@ -4997,7 +5565,7 @@
                 dmDB.close(); dmDB = null;
                 picDB.close(); picDB = null;
                 hcDB.close(); hcDB = null;
-                m_bStaffAssignInitFlg = false;
+                //m_bStaffAssignInitFlg = false;
 
                 // スクロール現在値取得
                 if (HDisplayCnt != -1) dgv.FirstDisplayedScrollingColumnIndex = HDisplayCnt;
@@ -5416,7 +5984,6 @@
         }
         #endregion
         #endregion
-
         #endregion
     }
 }
Index: branches/src/ProcessManagement/ProcessManagement/KEN_ALL.CSV
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/KEN_ALL.CSV	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/KEN_ALL.CSV	(revision 51)
@@ -7715,6 +7715,7 @@
 ,,0881406,,,,�k�C��,���݌S�l����,�Ԕ�
 ,,0881403,,,,�k�C��,���݌S�l����,�A�U���b�v
 ,,0881646,,,,�k�C��,���݌S�l����,�o�ʁi���ځj
+,,0881641,,,,�k�C��,���݌S�l����,�o�ʊ��
 ,,0881648,,,,�k�C��,���݌S�l����,�o�ʖk
 ,,0881647,,,,�k�C��,���݌S�l����,�o�ʓ�
 ,,0881649,,,,�k�C��,���݌S�l����,�o�ʗΉh
@@ -13095,6 +13096,7 @@
 ,,9830865,,,,�{�錧,���s�{����,�������H
 ,,9840000,,,,�{�錧,���s��ы�,
 ,,9840032,,,,�{�錧,���s��ы�,�r��
+,,9840039,,,,�{�錧,���s��ы�,�r���
 ,,9840033,,,,�{�錧,���s��ы�,�r�l
 ,,9840034,,,,�{�錧,���s��ы�,�r�l�V
 ,,9840073,,,,�{�錧,���s��ы�,�r��
@@ -13389,6 +13391,7 @@
 ,,9860132,,,,�{�錧,�Ί��s,���D�z
 ,,9862122,,,,�{�錧,�Ί��s,�K��
 ,,9860022,,,,�{�錧,�Ί��s,����
+,,9862137,,,,�{�錧,�Ί��s,�����璬
 ,,9862351,,,,�{�錧,�Ί��s,���l
 ,,9862403,,,,�{�錧,�Ί��s,�L�Y
 ,,9860104,,,,�{�錧,�Ί��s,�M�L
@@ -14047,6 +14050,7 @@
 ,,9811237,,,,�{�錧,����s,�����k��
 ,,9811239,,,,�{�錧,����s,��������
 ,,9811251,,,,�{�錧,����s,������
+,,9811240,,,,�{�錧,����s,������
 ,,9811227,,,,�{�錧,����s,�m�����̂���
 ,,9811213,,,,�{�錧,����s,�|��
 ,,9811245,,,,�{�錧,����s,��肪�u
@@ -14102,6 +14106,7 @@
 ,,9892400,,,,�{�錧,����s,
 ,,9892431,,,,�{�錧,����s,���̌�
 ,,9892474,,,,�{�錧,����s,����
+,,9892478,,,,�{�錧,����s,�����Ж�
 ,,9892435,,,,�{�錧,����s,�����G
 ,,9892463,,,,�{�錧,����s,�r��
 ,,9892443,,,,�{�錧,����s,��ג�
@@ -14110,6 +14115,7 @@
 ,,9892423,,,,�{�錧,����s,����
 ,,9892472,,,,�{�錧,����s,����
 ,,9892455,,,,�{�錧,����s,�k���J
+,,9892420,,,,�{�錧,����s,��`��
 ,,9892422,,,,�{�錧,����s,��`��
 ,,9892445,,,,�{�錧,����s,�K��
 ,,9892447,,,,�{�錧,����s,�K����
@@ -15136,6 +15142,32 @@
 ,,9871304,,,,�{�錧,���s,���R���
 ,,9871305,,,,�{�錧,���s,���R����
 ,,9871302,,,,�{�錧,���s,���R����
+,,9813300,,,,�{�錧,�x�J�s,
+,,9813326,,,,�{�錧,�x�J�s,����
+,,9813332,,,,�{�錧,�x�J�s,���Α�
+,,9813361,,,,�{�錧,�x�J�s,�����̕�
+,,9813325,,,,�{�錧,�x�J�s,�ΐ�
+,,9813305,,,,�{�錧,�x�J�s,��m��
+,,9813322,,,,�{�錧,�x�J�s,����
+,,9813323,,,,�{�錧,�x�J�s,��T
+,,9813329,,,,�{�錧,�x�J�s,�吴��
+,,9813321,,,,�{�錧,�x�J�s,�哶
+,,9813328,,,,�{�錧,�x�J�s,�����
+,,9813327,,,,�{�錧,�x�J�s,���c
+,,9813302,,,,�{�錧,�x�J�s,�O�m��
+,,9813301,,,,�{�錧,�x�J�s,�u�˓c
+,,9813303,,,,�{�錧,�x�J�s,���q��
+,,9813351,,,,�{�錧,�x�J�s,��T�m
+,,9813312,,,,�{�錧,�x�J�s,�Ƃ��̖�
+,,9813352,,,,�{�錧,�x�J�s,�x�P�u
+,,9813311,,,,�{�錧,�x�J�s,�x�J
+,,9813341,,,,�{�錧,�x�J�s,���c
+,,9813324,,,,�{�錧,�x�J�s,�����c
+,,9813306,,,,�{�錧,�x�J�s,��m��
+,,9813331,,,,�{�錧,�x�J�s,�����z��
+,,9813362,,,,�{�錧,�x�J�s,���g��
+,,9813304,,,,�{�錧,�x�J�s,�Ђ���
+,,9813363,,,,�{�錧,�x�J�s,�m�T��
 ,,9890800,,,,�{�錧,���c�S������,
 ,,9890921,,,,�{�錧,���c�S������,�~�c�i����A�P���X�A�y���J�n�A�y���R�Q�`�T�Ԓn�j
 ,,9890821,,,,�{�錧,���c�S������,�~�c�i���̑��j
@@ -15662,6 +15694,7 @@
 ,,9892205,,,,�{�錧,�j���S�R����,����
 ,,9892111,,,,�{�錧,�j���S�R����,�⌳
 ,,9892202,,,,�{�錧,�j���S�R����,����
+,,9892208,,,,�{�錧,�j���S�R����,�΂߂̓m
 ,,9892207,,,,�{�錧,�j���S�R����,�����
 ,,9892112,,,,�{�錧,�j���S�R����,�^��
 ,,9892201,,,,�{�錧,�j���S�R����,�R��
@@ -15751,32 +15784,6 @@
 ,,9813522,,,,�{�錧,����S�勽��,�����c
 ,,9813513,,,,�{�錧,����S�勽��,����
 ,,9813511,,,,�{�錧,����S�勽��,�R��
-,,9813300,,,,�{�錧,����S�x�J��,
-,,9813326,,,,�{�錧,����S�x�J��,����
-,,9813332,,,,�{�錧,����S�x�J��,���Α�
-,,9813361,,,,�{�錧,����S�x�J��,�����̕�
-,,9813325,,,,�{�錧,����S�x�J��,�ΐ�
-,,9813305,,,,�{�錧,����S�x�J��,��m��
-,,9813322,,,,�{�錧,����S�x�J��,����
-,,9813323,,,,�{�錧,����S�x�J��,��T
-,,9813329,,,,�{�錧,����S�x�J��,�吴��
-,,9813321,,,,�{�錧,����S�x�J��,�哶
-,,9813328,,,,�{�錧,����S�x�J��,�����
-,,9813327,,,,�{�錧,����S�x�J��,���c
-,,9813302,,,,�{�錧,����S�x�J��,�O�m��
-,,9813301,,,,�{�錧,����S�x�J��,�u�˓c
-,,9813303,,,,�{�錧,����S�x�J��,���q��
-,,9813351,,,,�{�錧,����S�x�J��,��T�m
-,,9813312,,,,�{�錧,����S�x�J��,�Ƃ��̖�
-,,9813352,,,,�{�錧,����S�x�J��,�x�P�u
-,,9813311,,,,�{�錧,����S�x�J��,�x�J
-,,9813341,,,,�{�錧,����S�x�J��,���c
-,,9813324,,,,�{�錧,����S�x�J��,�����c
-,,9813306,,,,�{�錧,����S�x�J��,��m��
-,,9813331,,,,�{�錧,����S�x�J��,�����z��
-,,9813362,,,,�{�錧,����S�x�J��,���g��
-,,9813304,,,,�{�錧,����S�x�J��,�Ђ���
-,,9813363,,,,�{�錧,����S�x�J��,�m�T��
 ,,9813600,,,,�{�錧,����S��t��,
 ,,9813601,,,,�{�錧,����S��t��,��Z
 ,,9813602,,,,�{�錧,����S��t��,��t
@@ -20644,6 +20651,7 @@
 ,,9650016,,,,������,��Îᏼ�s,������
 ,,9650878,,,,������,��Îᏼ�s,����
 ,,9650044,,,,������,��Îᏼ�s,������
+,,9650848,,,,������,��Îᏼ�s,�ю��k
 ,,9650837,,,,������,��Îᏼ�s,�ђ�
 ,,9650877,,,,������,��Îᏼ�s,���h��
 ,,9650045,,,,������,��Îᏼ�s,��������
@@ -20668,6 +20676,7 @@
 ,,9650026,,,,������,��Îᏼ�s,������
 ,,9650862,,,,������,��Îᏼ�s,�{��
 ,,9650856,,,,������,��Îᏼ�s,��������
+,,9650849,,,,������,��Îᏼ�s,�����쒬
 ,,9650054,,,,������,��Îᏼ�s,���k���Γ�
 ,,9650053,,,,������,��Îᏼ�s,���k����r�v�c
 ,,9650058,,,,������,��Îᏼ�s,���k������
@@ -24771,6 +24780,7 @@
 ,,3070051,,,,��錧,����s,���{��
 ,,3070006,,,,��錧,����s,�܏�
 ,,3070011,,,,��錧,����s,���X
+,,3070008,,,,��錧,����s,���菼
 ,,3070023,,,,��錧,����s,�R��
 ,,3070038,,,,��錧,����s,���܎O��
 ,,3070054,,,,��錧,����s,��쒬
@@ -25536,6 +25546,7 @@
 ,,3004242,,,,��錧,���Ύs,������
 ,,3050012,,,,��錧,���Ύs,����
 ,,3050873,,,,��錧,���Ύs,����
+,,3002639,,,,��錧,���Ύs,����
 ,,3002634,,,,��錧,���Ύs,�������V�c
 ,,3002667,,,,��錧,���Ύs,���ʕ{
 ,,3050052,,,,��錧,���Ύs,����
@@ -25842,6 +25853,7 @@
 ,,3020109,,,,��錧,��J�s,�{��
 ,,3020127,,,,��錧,��J�s,���P�u
 ,,3020108,,,,��錧,��J�s,����
+,,3020132,,,,��錧,��J�s,�����t
 ,,3020102,,,,��錧,��J�s,���O��
 ,,3020121,,,,��錧,��J�s,�݂�����
 ,,3020124,,,,��錧,��J�s,����
@@ -30373,6 +30385,7 @@
 ,,3700712,,,,�Q�n��,�W�y�S���a��,�
 ,,3700500,,,,�Q�n��,�W�y�S���c��,
 ,,3700503,,,,�Q�n��,�W�y�S���c��,�Ԋ�
+,,3700506,,,,�Q�n��,�W�y�S���c��,�Ԋ␼
 ,,3700726,,,,�Q�n��,�W�y�S���c��,��܉�
 ,,3700725,,,,�Q�n��,�W�y�S���c��,�㒆�X
 ,,3700722,,,,�Q�n��,�W�y�S���c��,����
@@ -30384,6 +30397,7 @@
 ,,3700502,,,,�Q�n��,�W�y�S���c��,��J
 ,,3700501,,,,�Q�n��,�W�y�S���c��,����
 ,,3700504,,,,�Q�n��,�W�y�S���c��,����
+,,3700507,,,,�Q�n��,�W�y�S���c��,���ؓ�
 ,,3700500,,,,�Q�n��,�W�y�S���,
 ,,3700514,,,,�Q�n��,�W�y�S���,����
 ,,3700531,,,,�Q�n��,�W�y�S���,������
@@ -30669,6 +30683,7 @@
 ,,3360918,,,,��ʌ�,�������܎s�΋�,����
 ,,3360965,,,,��ʌ�,�������܎s�΋�,�ԋ{
 ,,3360906,,,,��ʌ�,�������܎s�΋�,�O�Y
+,,3360967,,,,��ʌ�,�������܎s�΋�,����
 ,,3360915,,,,��ʌ�,�������܎s�΋�,����
 ,,3360911,,,,��ʌ�,�������܎s�΋�,�O��
 ,,3360914,,,,��ʌ�,�������܎s�΋�,�{��
@@ -30731,6 +30746,7 @@
 ,,3390058,,,,��ʌ�,�������܎s��΋�,�{��
 ,,3390077,,,,��ʌ�,�������܎s��΋�,�n��
 ,,3390012,,,,��ʌ�,�������܎s��΋�,����
+,,3390028,,,,��ʌ�,�������܎s��΋�,������
 ,,3390032,,,,��ʌ�,�������܎s��΋�,�쉺�V��
 ,,3390062,,,,��ʌ�,�������܎s��΋�,���
 ,,3390051,,,,��ʌ�,�������܎s��΋�,�약��
@@ -32178,6 +32194,7 @@
 ,,3430851,,,,��ʌ�,�z�J�s,������
 ,,3430045,,,,��ʌ�,�z�J�s,���ԋv��
 ,,3430852,,,,��ʌ�,�z�J�s,�V�쒬
+,,3430857,,,,��ʌ�,�z�J�s,�V�z�J
 ,,3430805,,,,��ʌ�,�z�J�s,�_����
 ,,3430803,,,,��ʌ�,�z�J�s,����
 ,,3430042,,,,��ʌ�,�z�J�s,��ԑ䓌
@@ -32463,6 +32480,7 @@
 ,,3640006,,,,��ʌ�,�k�{�s,�k�{
 ,,3640021,,,,��ʌ�,�k�{�s,�k�{�h
 ,,3640027,,,,��ʌ�,�k�{�s,�h
+,,3640028,,,,��ʌ�,�k�{�s,���Ό�
 ,,3640022,,,,��ʌ�,�k�{�s,���Όˏ�
 ,,3640023,,,,��ʌ�,�k�{�s,���Όˉ�
 ,,3640034,,,,��ʌ�,�k�{�s,����
@@ -32606,6 +32624,7 @@
 ,,3490131,,,,��ʌ�,�@�c�s,����
 ,,3490115,,,,��ʌ�,�@�c�s,�@�c
 ,,3490111,,,,��ʌ�,�@�c�s,��
+,,3490105,,,,��ʌ�,�@�c�s,���m��
 ,,3490123,,,,��ʌ�,�@�c�s,�{��
 ,,3490114,,,,��ʌ�,�@�c�s,�n��
 ,,3490104,,,,��ʌ�,�@�c�s,�Β�
@@ -34258,6 +34277,7 @@
 ,,2780035,,,,��t��,��c�s,�����
 ,,2780036,,,,��t��,��c�s,����䎭����
 ,,2780051,,,,��t��,��c�s,������
+,,2700229,,,,��t��,��c�s,�Ȃ݂�
 ,,2700228,,,,��t��,��c�s,����
 ,,2700216,,,,��t��,��c�s,������
 ,,2780015,,,,��t��,��c�s,���O�P��
@@ -36333,7 +36353,7 @@
 ,,2891205,,,,��t��,�R���s,�ō�
 ,,2891312,,,,��t��,�R���s,�Č�
 ,,2891325,,,,��t��,�R���s,��
-,,2891342,,,,��t��,�R���s,����
+,,2891342,,,,��t��,�R���s,����
 ,,2891217,,,,��t��,�R���s,���z�c
 ,,2891314,,,,��t��,�R���s,�����n
 ,,2891306,,,,��t��,�R���s,����
@@ -38355,6 +38375,47 @@
 ,,1066043,,,,�����s,�`��,�Z�{�ؐ�K�[�f���^���[�i�S�R�K�j
 ,,1066044,,,,�����s,�`��,�Z�{�ؐ�K�[�f���^���[�i�S�S�K�j
 ,,1066045,,,,�����s,�`��,�Z�{�ؐ�K�[�f���^���[�i�S�T�K�j
+,,1066290,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�n�K�E�K�w�s���j
+,,1066201,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�K�j
+,,1066202,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�K�j
+,,1066203,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�K�j
+,,1066204,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�S�K�j
+,,1066205,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�T�K�j
+,,1066206,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�U�K�j
+,,1066207,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�V�K�j
+,,1066208,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�W�K�j
+,,1066209,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�X�K�j
+,,1066210,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�O�K�j
+,,1066211,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�P�K�j
+,,1066212,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�Q�K�j
+,,1066213,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�R�K�j
+,,1066214,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�S�K�j
+,,1066215,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�T�K�j
+,,1066216,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�U�K�j
+,,1066217,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�V�K�j
+,,1066218,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�W�K�j
+,,1066219,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�P�X�K�j
+,,1066220,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�O�K�j
+,,1066221,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�P�K�j
+,,1066222,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�Q�K�j
+,,1066223,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�R�K�j
+,,1066224,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�S�K�j
+,,1066225,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�T�K�j
+,,1066226,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�U�K�j
+,,1066227,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�V�K�j
+,,1066228,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�W�K�j
+,,1066229,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�Q�X�K�j
+,,1066230,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�O�K�j
+,,1066231,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�P�K�j
+,,1066232,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�Q�K�j
+,,1066233,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�R�K�j
+,,1066234,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�S�K�j
+,,1066235,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�T�K�j
+,,1066236,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�U�K�j
+,,1066237,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�V�K�j
+,,1066238,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�W�K�j
+,,1066239,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�R�X�K�j
+,,1066240,,,,�����s,�`��,�Z�{�؏Z�F�s���Y�Z�{�؃O�����h�^���[�i�S�O�K�j
 ,,1066190,,,,�����s,�`��,�Z�{�ؘZ�{�؃q���Y�X�^���[�i�n�K�E�K�w�s���j
 ,,1066101,,,,�����s,�`��,�Z�{�ؘZ�{�؃q���Y�X�^���[�i�P�K�j
 ,,1066102,,,,�����s,�`��,�Z�{�ؘZ�{�؃q���Y�X�^���[�i�Q�K�j
@@ -40358,6 +40419,7 @@
 ,,1940031,,,,�����s,���c�s,���J
 ,,1940002,,,,�����s,���c�s,�������
 ,,1940045,,,,�����s,���c�s,�쐬��
+,,1940005,,,,�����s,���c�s,�쒬�c
 ,,1950054,,,,�����s,���c�s,�O�֒�
 ,,1950055,,,,�����s,���c�s,�O�֗ΎR
 ,,1940022,,,,�����s,���c�s,�X��
@@ -41590,6 +41652,7 @@
 ,,2450000,,,,�_�ސ쌧,���l�s���,
 ,,2450001,,,,�_�ސ쌧,���l�s���,�r�̒J
 ,,2450022,,,,�_�ސ쌧,���l�s���,�a�򂪋u
+,,2450024,,,,�_�ސ쌧,���l�s���,�a�򒆉��k
 ,,2450023,,,,�_�ސ쌧,���l�s���,�a�򒆉���
 ,,2450016,,,,�_�ސ쌧,���l�s���,�a��
 ,,2450003,,,,�_�ސ쌧,���l�s���,���Ò�
@@ -42800,6 +42863,7 @@
 ,,2591101,,,,�_�ސ쌧,�ɐ����s,����
 ,,2591118,,,,�_�ސ쌧,�ɐ����s,������
 ,,2430400,,,,�_�ސ쌧,�C�V���s,
+,,2430437,,,,�_�ސ쌧,�C�V���s,��
 ,,2430423,,,,�_�ސ쌧,�C�V���s,����
 ,,2430436,,,,�_�ސ쌧,�C�V���s,�
 ,,2430411,,,,�_�ސ쌧,�C�V���s,��J
@@ -42828,6 +42892,7 @@
 ,,2430412,,,,�_�ސ쌧,�C�V���s,�l�c��
 ,,2430401,,,,�_�ސ쌧,�C�V���s,�����P�J
 ,,2430417,,,,�_�ސ쌧,�C�V���s,�{��
+,,2430438,,,,�_�ސ쌧,�C�V���s,�߂��ݒ�
 ,,2430403,,,,�_�ސ쌧,�C�V���s,�]�n
 ,,2520000,,,,�_�ސ쌧,���Ԏs,
 ,,2520024,,,,�_�ސ쌧,���Ԏs,���J
@@ -45396,7 +45461,6 @@
 ,,9498422,,,,�V����,�\�����s,�s�V�z
 ,,9480101,,,,�V����,�\�����s,��t
 ,,9480073,,,,�V����,�\�����s,��ג��i�R���ږ{�ʂ�j
-,,9480073,,,,�V����,�\�����s,��ג��i�S���ځj
 ,,9480073,,,,�V����,�\�����s,��ג��꒚��
 ,,9480073,,,,�V����,�\�����s,��ג��񒚖�
 ,,9480091,,,,�V����,�\�����s,��ג��O����
@@ -45403,6 +45467,8 @@
 ,,9480092,,,,�V����,�\�����s,��ג��O���ږk
 ,,9480073,,,,�V����,�\�����s,��ג��O���ړ�
 ,,9480093,,,,�V����,�\�����s,��ג��O���ړ�
+,,9480073,,,,�V����,�\�����s,��ג��O���ږ{�ʂ�
+,,9480073,,,,�V����,�\�����s,��ג��l����
 ,,9480073,,,,�V����,�\�����s,��ג���
 ,,9421504,,,,�V����,�\�����s,����
 ,,9498441,,,,�V����,�\�����s,���
@@ -45589,7 +45655,6 @@
 ,,9498534,,,,�V����,�\�����s,�ה�
 ,,9498426,,,,�V����,�\�����s,����
 ,,9498504,,,,�V����,�\�����s,�x�V��
-,,9480003,,,,�V����,�\�����s,�{���i�U�̂P���ځ`�U�̂R���ځj
 ,,9480003,,,,�V����,�\�����s,�{���i�V���ځj
 ,,9480083,,,,�V����,�\�����s,�{���꒚�ڏ�
 ,,9480083,,,,�V����,�\�����s,�{���꒚�ډ�
@@ -45597,6 +45662,9 @@
 ,,9480082,,,,�V����,�\�����s,�{���O����
 ,,9480082,,,,�V����,�\�����s,�{���l����
 ,,9480081,,,,�V����,�\�����s,�{���ܒ���
+,,9480003,,,,�V����,�\�����s,�{���Z�̈꒚��
+,,9480003,,,,�V����,�\�����s,�{���Z�̓񒚖�
+,,9480003,,,,�V����,�\�����s,�{���Z�̎O����
 ,,9480083,,,,�V����,�\�����s,�{�����꒚��
 ,,9480083,,,,�V����,�\�����s,�{�����꒚��
 ,,9421526,,,,�V����,�\�����s,����
@@ -51837,6 +51905,7 @@
 ,,9201335,,,,�ΐ쌧,����s,�啽��
 ,,9200013,,,,�ΐ쌧,����s,����
 ,,9201101,,,,�ΐ쌧,����s,���V�ے�
+,,9200210,,,,�ΐ쌧,����s,��͒[��
 ,,9200213,,,,�ΐ쌧,����s,��͒[��
 ,,9218056,,,,�ΐ쌧,����s,����
 ,,9201324,,,,�ΐ쌧,����s,������
@@ -56699,6 +56768,7 @@
 ,,4030009,,,,�R����,�x�m�g�c�s,�x�m��
 ,,4030016,,,,�R����,�x�m�g�c�s,���R
 ,,4030013,,,,�R����,�x�m�g�c�s,�΃P�u
+,,4030018,,,,�R����,�x�m�g�c�s,����
 ,,4020000,,,,�R����,�s���s,
 ,,4020015,,,,�R����,�s���s,�����]��
 ,,4020014,,,,�R����,�s���s,�����n��
@@ -62562,6 +62632,7 @@
 ,,4200948,,,,�É���,�É��s����,�H�R��
 ,,4200810,,,,�É���,�É��s����,��y
 ,,4200811,,,,�É���,�É��s����,��y�V�c
+,,4200968,,,,�É���,�É��s����,�����͂�
 ,,4212125,,,,�É���,�É��s����,���v�ۉ��g
 ,,4212124,,,,�É���,�É��s����,���v�ی��g
 ,,4200836,,,,�É���,�É��s����,����
@@ -62739,6 +62810,7 @@
 ,,4212104,,,,�É���,�É��s����,��c��
 ,,4200864,,,,�É���,�É��s����,���J��
 ,,4200966,,,,�É���,�É��s����,�H��
+,,4200967,,,,�É���,�É��s����,�H����
 ,,4200078,,,,�É���,�É��s����,���Ԓ�
 ,,4211215,,,,�É���,�É��s����,�H��
 ,,4211216,,,,�É���,�É��s����,�H����咬
@@ -65911,6 +65983,7 @@
 ,,4530862,,,,���m��,���É��s������,��˒�
 ,,4530861,,,,���m��,���É��s������,��˖{��
 ,,4530853,,,,���m��,���É��s������,���c��
+,,4530873,,,,���m��,���É��s������,�^�͒�
 ,,4530804,,,,���m��,���É��s������,������
 ,,4530042,,,,���m��,���É��s������,��H��
 ,,4530821,,,,���m��,���É��s������,��{��
@@ -66007,6 +66080,53 @@
 ,,4530838,,,,���m��,���É��s������,������
 ,,4530002,,,,���m��,���É��s������,���w�i�P�|�P�|�W�A�P�|�P�|�P�Q�A�P�|�P�|�P�R�A�P�|�P�|�P�S�A�P�|�R�|�S�A
 ,,4530002,,,,���m��,���É��s������,�P�|�R�|�V�j
+,,4506690,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�n�K�E�K�w�s���j
+,,4506601,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�K�j
+,,4506602,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�K�j
+,,4506603,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�K�j
+,,4506604,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�K�j
+,,4506605,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�T�K�j
+,,4506606,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�U�K�j
+,,4506607,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�V�K�j
+,,4506608,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�W�K�j
+,,4506609,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�X�K�j
+,,4506610,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�O�K�j
+,,4506611,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�P�K�j
+,,4506612,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�Q�K�j
+,,4506613,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�R�K�j
+,,4506614,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�S�K�j
+,,4506615,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�T�K�j
+,,4506616,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�U�K�j
+,,4506617,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�V�K�j
+,,4506618,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�W�K�j
+,,4506619,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�P�X�K�j
+,,4506620,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�O�K�j
+,,4506621,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�P�K�j
+,,4506622,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�Q�K�j
+,,4506623,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�R�K�j
+,,4506624,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�S�K�j
+,,4506625,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�T�K�j
+,,4506626,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�U�K�j
+,,4506627,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�V�K�j
+,,4506628,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�W�K�j
+,,4506629,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�Q�X�K�j
+,,4506630,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�O�K�j
+,,4506631,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�P�K�j
+,,4506632,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�Q�K�j
+,,4506633,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�R�K�j
+,,4506634,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�S�K�j
+,,4506635,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�T�K�j
+,,4506636,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�U�K�j
+,,4506637,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�V�K�j
+,,4506638,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�W�K�j
+,,4506639,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�R�X�K�j
+,,4506640,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�O�K�j
+,,4506641,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�P�K�j
+,,4506642,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�Q�K�j
+,,4506643,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�R�K�j
+,,4506644,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�S�K�j
+,,4506645,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�T�K�j
+,,4506646,,,,���m��,���É��s������,���w�i�q�Q�[�g�^���[�i�S�U�K�j
 ,,4506090,,,,���m��,���É��s������,���w�i�q�Z���g�����^���[�Y�i�n�K�E�K�w�s���j
 ,,4506001,,,,���m��,���É��s������,���w�i�q�Z���g�����^���[�Y�i�P�K�j
 ,,4506002,,,,���m��,���É��s������,���w�i�q�Z���g�����^���[�Y�i�Q�K�j
@@ -67040,6 +67160,7 @@
 ,,4580916,,,,���m��,���É��s�΋�,�L���������ԁi�������j
 ,,4580912,,,,���m��,���É��s�΋�,�L���������ԁi���R�j
 ,,4580911,,,,���m��,���É��s�΋�,�L���������ԁi���̑��j
+,,4580928,,,,���m��,���É��s�΋�,�L�����R
 ,,4598004,,,,���m��,���É��s�΋�,�L����
 ,,4580044,,,,���m��,���É��s�΋�,�r���
 ,,4598012,,,,���m��,���É��s�΋�,��J�R
@@ -67060,6 +67181,8 @@
 ,,4580922,,,,���m��,���É��s�΋�,�����Ԑ،�
 ,,4580921,,,,���m��,���É��s�΋�,�����Ԑ����R
 ,,4580919,,,,���m��,���É��s�΋�,�����Ԑ_��
+,,4580929,,,,���m��,���É��s�΋�,�����Ԑ�
+,,4580920,,,,���m��,���É��s�΋�,�����Ԋ��R
 ,,4580927,,,,���m��,���É��s�΋�,�����ԓ�
 ,,4580910,,,,���m��,���É��s�΋�,�����ԐX�O
 ,,4580024,,,,���m��,���É��s�΋�,����R
@@ -67778,7 +67901,7 @@
 ,,4442106,,,,���m��,����s,�^������
 ,,4440914,,,,���m��,����s,���L��
 ,,4440035,,,,���m��,����s,������
-,,4443341,,,,���m��,����s,�{����
+,,4443341,,,,���m��,����s,�{����
 ,,4443432,,,,���m��,����s,�疜����
 ,,4443448,,,,���m��,����s,�O�R��
 ,,4442134,,,,���m��,����s,�����
@@ -70408,7 +70531,7 @@
 ,,4840071,,,,���m��,���R�s,���c����
 ,,4840026,,,,���m��,���R�s,�����~
 ,,4840074,,,,���m��,���R�s,�~��
-,,4840854,,,,���m��,���R�s,���m��
+,,4840854,,,,���m��,���R�s,���V��
 ,,4840035,,,,���m��,���R�s,���R
 ,,4840902,,,,���m��,���R�s,�Ǖ�
 ,,4840903,,,,���m��,���R�s,�Ǖ���
@@ -72059,6 +72182,7 @@
 ,,4700122,,,,���m��,���i�s,�I�b��
 ,,4700103,,,,���m��,���i�s,�k�V��
 ,,4700105,,,,���m��,���i�s,�ܐF��
+,,4700118,,,,���m��,���i�s,�Ė�ؑ�
 ,,4700111,,,,���m��,���i�s,�Ė�ؒ�
 ,,4700113,,,,���m��,���i�s,�h
 ,,4700101,,,,���m��,���i�s,�O�{�ؒ�
@@ -72396,6 +72520,7 @@
 ,,4810038,,,,���m��,�k���É��s,���d
 ,,4810045,,,,���m��,�k���É��s,���V��
 ,,4810033,,,,���m��,�k���É��s,���V��
+,,4810040,,,,���m��,�k���É��s,���t�w�O
 ,,4810003,,,,���m��,�k���É��s,�\�c
 ,,4810042,,,,���m��,�k���É��s,���
 ,,4810013,,,,���m��,�k���É��s,��q
@@ -75415,7 +75540,7 @@
 ,,5190434,,,,�O�d��,�x��S�ʏ钬,�c�{��
 ,,5190412,,,,�O�d��,�x��S�ʏ钬,���y
 ,,5190437,,,,�O�d��,�x��S�ʏ钬,�ϗ�
-,,5190421,,,,�O�d��,�x��S�ʏ钬,�x��
+,,5190421,,,,�O�d��,�x��S�ʏ钬,�y��
 ,,5190426,,,,�O�d��,�x��S�ʏ钬,���p
 ,,5190404,,,,�O�d��,�x��S�ʏ钬,���X
 ,,5190432,,,,�O�d��,�x��S�ʏ钬,���
@@ -76772,6 +76897,7 @@
 ,,5203202,,,,���ꌧ,�Γ�s,������
 ,,5203231,,,,���ꌧ,�Γ�s,�j
 ,,5203203,,,,���ꌧ,�Γ�s,���}��
+,,5203255,,,,���ꌧ,�Γ�s,���}�R���
 ,,5203111,,,,���ꌧ,�Γ�s,����
 ,,5203232,,,,���ꌧ,�Γ�s,����
 ,,5203235,,,,���ꌧ,�Γ�s,�����k
@@ -85370,7 +85496,7 @@
 ,,5918005,,,,���{,��s�k��,�V�x��
 ,,5918003,,,,���{,��s�k��,�D����
 ,,5918001,,,,���{,��s�k��,��֒�
-,,5918025,,,,���{,��s�k��,���\����
+,,5918025,,,,���{,��s�k��,���]����
 ,,5918044,,,,���{,��s�k��,��������
 ,,5918012,,,,���{,��s�k��,������
 ,,5918023,,,,���{,��s�k��,���S�㒹��
@@ -85443,6 +85569,7 @@
 ,,5960042,,,,���{,�ݘa�c�s,���璬
 ,,5960073,,,,���{,�ݘa�c�s,�ݏ钬
 ,,5960016,,,,���{,�ݘa�c�s,�ݔV�Y��
+,,5960817,,,,���{,�ݘa�c�s,�݂̋u��
 ,,5960051,,,,���{,�ݘa�c�s,�ݖ쒬
 ,,5960843,,,,���{,�ݘa�c�s,�k�㒬
 ,,5960056,,,,���{,�ݘa�c�s,�k��
@@ -89452,6 +89579,7 @@
 ,,6740066,,,,���Ɍ�,���Ύs,��v�ے����c
 ,,6740053,,,,���Ɍ�,���Ύs,��v�ے����A
 ,,6740052,,,,���Ɍ�,���Ύs,��v�ے����A�V�c
+,,6740050,,,,���Ɍ�,���Ύs,��v�ے����A�R��
 ,,6740055,,,,���Ɍ�,���Ύs,��v�ے��΂��u
 ,,6740061,,,,���Ɍ�,���Ύs,��v�ے��X�c
 ,,6740063,,,,���Ɍ�,���Ύs,��v�ے�����
@@ -91968,6 +92096,7 @@
 ,,6560424,,,,���Ɍ�,�삠�킶�s,�|�񐼐�
 ,,6560427,,,,���Ɍ�,�삠�킶�s,�|�񏼓c
 ,,6560421,,,,���Ɍ�,�삠�킶�s,�|��R��
+,,6560328,,,,���Ɍ�,�삠�킶�s,���Ԃ̋�
 ,,6560518,,,,���Ɍ�,�삠�킶�s,��W����
 ,,6560517,,,,���Ɍ�,�삠�킶�s,��W���P��
 ,,6560515,,,,���Ɍ�,�삠�킶�s,��W�b����
@@ -95533,6 +95662,8 @@
 ,,6420011,,,,�a�̎R��,�C��s,���]
 ,,6420024,,,,�a�̎R��,�C��s,���
 ,,6420023,,,,�a�̎R��,�C��s,�d��
+,,6420019,,,,�a�̎R��,�C��s,�d����
+,,6420018,,,,�a�̎R��,�C��s,�d����
 ,,6420035,,,,�a�̎R��,�C��s,�␅
 ,,6490147,,,,�a�̎R��,�C��s,���Ò��}
 ,,6490145,,,,�a�̎R��,�C��s,���Ò��s��
@@ -96781,6 +96912,7 @@
 ,,6801212,,,,���挧,����s,�͌������g
 ,,6801224,,,,���挧,����s,�͌�������
 ,,6801241,,,,���挧,����s,�͌�������
+,,6801209,,,,���挧,����s,�͌������~�ʎ�
 ,,6801222,,,,���挧,����s,�͌����g�c
 ,,6801201,,,,���挧,����s,�͌����܉͌�
 ,,6801202,,,,���挧,����s,�͌����z��
@@ -103044,6 +103176,7 @@
 ,,7390024,,,,�L����,���L���s,���𒬌䉒�F
 ,,7390032,,,,�L����,���L���s,���𒬐X��
 ,,7390002,,,,�L����,���L���s,���𒬋g�s
+,,7390049,,,,�L����,���L���s,���ƎY�ƒc�n
 ,,7390263,,,,�L����,���L���s,�u�a����
 ,,7390261,,,,�L����,���L���s,�u�a����
 ,,7390266,,,,�L����,���L���s,�u�a������
@@ -104154,6 +104287,8 @@
 ,,7530036,,,,�R����,�R���s,�~������
 ,,7530033,,,,�R����,�R���s,��s��
 ,,7530242,,,,�R����,�R���s,��������s
+,,7530251,,,,�R����,�R���s,�����V
+,,7530252,,,,�R����,�R���s,�������
 ,,7530241,,,,�R����,�R���s,�����c
 ,,7530211,,,,�R����,�R���s,�������
 ,,7530231,,,,�R����,�R���s,����X��
@@ -107931,6 +108066,7 @@
 ,,7991603,,,,���Q��,�����s,���q��
 ,,7991606,,,,���Q��,�����s,���q�쉳
 ,,7991605,,,,���Q��,�����s,���q��b
+,,7991608,,,,���Q��,�����s,���q�앸
 ,,7940042,,,,���Q��,�����s,����
 ,,7940861,,,,���Q��,�����s,�܏\��
 ,,7940085,,,,���Q��,�����s,�������̋u
@@ -110588,8 +110724,8 @@
 ,,7811618,,,,���m��,���S�m���쒬,�֎R
 ,,7811626,,,,���m��,���S�m���쒬,�؈��
 ,,7811511,,,,���m��,���S�m���쒬,����
-,,7811624,,,,���m��,���S�m���쒬,�y���i�����y���j
-,,7811606,,,,���m��,���S�m���쒬,�y���i���̑��j
+,,7811606,,,,���m��,���S�m���쒬,�y���i�b�E���j
+,,7811624,,,,���m��,���S�m���쒬,�y���i���̑��j
 ,,7811752,,,,���m��,���S�m���쒬,���m�z
 ,,7811763,,,,���m��,���S�m���쒬,��
 ,,7811764,,,,���m��,���S�m���쒬,����
@@ -113735,6 +113871,7 @@
 ,,8112103,,,,������,�����S�F����,�l������
 ,,8112127,,,,������,�����S�F����,��q�x
 ,,8112126,,,,������,�����S�F����,��q�x��
+,,8112129,,,,������,�����S�F����,�_����
 ,,8112102,,,,������,�����S�F����,�Y��
 ,,8112107,,,,������,�����S�F����,�Ƃт���
 ,,8112132,,,,������,�����S�F����,���c
@@ -119112,6 +119249,7 @@
 ,,8700954,,,,�啪��,�啪�s,���S����
 ,,8700953,,,,�啪��,�啪�s,���S��
 ,,8700955,,,,�啪��,�啪�s,���S��
+,,8700961,,,,�啪��,�啪�s,���S�R�̎�
 ,,8700951,,,,�啪��,�啪�s,���S
 ,,8700941,,,,�啪��,�啪�s,���S�H�ƒc�n
 ,,8700803,,,,�啪��,�啪�s,������
@@ -119680,6 +119818,7 @@
 ,,8770112,,,,�啪��,���c�s,�V�����{��
 ,,8794121,,,,�啪��,���c�s,�V�����n��
 ,,8794203,,,,�啪��,���c�s,�V�������R
+,,8771366,,,,�啪��,���c�s,����ߑ�
 ,,8771361,,,,�啪��,���c�s,�L�c��
 ,,8771375,,,,�啪��,���c�s,�r�Ӓ�
 ,,8770061,,,,�啪��,���c�s,�Έ�
@@ -121289,7 +121428,7 @@
 ,,8892536,,,,�{�茧,����s,��c��
 ,,8870001,,,,�{�茧,����s,����
 ,,8892532,,,,�{�茧,����s,�~
-,,8892311,,,,�{�茧,����s,�ɔ��
+,,8870111,,,,�{�茧,����s,�ɔ��
 ,,8892525,,,,�{�茧,����s,����
 ,,8870014,,,,�{�茧,����s,���
 ,,8870017,,,,�{�茧,����s,�~�P�l
@@ -123377,6 +123516,7 @@
 ,,9040023,,,,���ꌧ,����s,�v�ۓc
 ,,9042145,,,,���ꌧ,����s,�q�~
 ,,9042161,,,,���ꌧ,����s,�Î�
+,,9042166,,,,���ꌧ,����s,�ÎӒÉÎR��
 ,,9040001,,,,���ꌧ,����s,�z��
 ,,9040021,,,,���ꌧ,����s,�Ӊ�
 ,,9042144,,,,���ꌧ,����s,����
Index: branches/src/ProcessManagement/ProcessManagement/ProcessManage.xlsx
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj	(revision 51)
@@ -95,10 +95,13 @@
     </Reference>
     <Reference Include="Microsoft.VisualBasic" />
     <Reference Include="Microsoft.VisualBasic.PowerPacks.Vs, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
-    <Reference Include="MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL" />
+    <Reference Include="MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>lib\MySql.Data.dll</HintPath>
+    </Reference>
     <Reference Include="System" />
-    <Reference Include="System.ComponentModel.DataAnnotations" />
     <Reference Include="System.Core" />
+    <Reference Include="System.IO.Compression.FileSystem" />
     <Reference Include="System.Windows.Forms.DataVisualization" />
     <Reference Include="System.Xml.Linq" />
     <Reference Include="System.Data" />
@@ -108,6 +111,7 @@
     <Reference Include="System.Xml" />
   </ItemGroup>
   <ItemGroup>
+    <Compile Include="Common\CommonVersion.cs" />
     <Compile Include="Common\Process\ClsCalendar.cs" />
     <Compile Include="Common\Process\ClsChangeBaseInfoData.cs" />
     <Compile Include="Common\Process\ClsCleanUp.cs" />
@@ -125,9 +129,28 @@
     <Compile Include="Common\Process\ClsExcute.cs" />
     <Compile Include="Common\CommonDefine.cs" />
     <Compile Include="Common\Office\UsedWord.cs" />
+    <Compile Include="DataModel\AttendanceData.cs" />
+    <Compile Include="DataModel\BankBusinessDayMaster.cs" />
+    <Compile Include="DataModel\BillingData.cs" />
+    <Compile Include="DataModel\BillingDataDetail.cs" />
+    <Compile Include="DataModel\BillingPaymentSummary.cs" />
+    <Compile Include="DataModel\ConstructionFieldNameDetail.cs" />
+    <Compile Include="DataModel\ConstructionFieldNameHeader.cs" />
     <Compile Include="DataModel\ConstructionLink.cs" />
+    <Compile Include="DataModel\ConstructionMaterialInfo.cs" />
+    <Compile Include="DataModel\DeadLineMaster.cs" />
+    <Compile Include="DataModel\DepositApprovalInfo.cs" />
+    <Compile Include="DataModel\DepositData.cs" />
+    <Compile Include="DataModel\DepositDataDetail.cs" />
+    <Compile Include="DataModel\MaterialInfo.cs" />
+    <Compile Include="DataModel\MaterialItemMaster.cs" />
+    <Compile Include="DataModel\MaterialKindMaster.cs" />
+    <Compile Include="DataModel\MaterialRecordInfo.cs" />
     <Compile Include="DataModel\OrdersPriceData.cs" />
-    <Compile Include="DataModel\DailyData.cs" />
+    <Compile Include="DataModel\PaymentApprovalInfo.cs" />
+    <Compile Include="DataModel\PaymentDataDetail.cs" />
+    <Compile Include="DataModel\PersonDepartmentMaster.cs" />
+    <Compile Include="DataModel\PersonSalaryMaster.cs" />
     <Compile Include="DataModel\ProceedingsDataDetail.cs" />
     <Compile Include="DataModel\ProceedingsDataAttendee.cs" />
     <Compile Include="DataModel\ProceedingsData.cs" />
@@ -148,15 +171,64 @@
     <Compile Include="DataModel\ConstructionLedger.cs" />
     <Compile Include="DataModel\CostDataOfPerson.cs" />
     <Compile Include="DataModel\DailyReportRow.cs" />
+    <Compile Include="DataModel\ProcessApprovalDetail.cs" />
+    <Compile Include="DataModel\ProcessExcuter.cs" />
+    <Compile Include="DataModel\RequestData.cs" />
+    <Compile Include="DataModel\RequestDataDetail.cs" />
+    <Compile Include="DataModel\RequestGridKeys.cs" />
+    <Compile Include="DataModel\RequestTotalData.cs" />
     <Compile Include="DataModel\SubContractorJobCategory.cs" />
     <Compile Include="DataModel\SubContractorJobILink.cs" />
     <Compile Include="DataModel\SuppliersMaster.cs" />
+    <Compile Include="DataModel\SecurityMaster.cs" />
+    <Compile Include="DB\IOAccess\IOAttendanceData.cs" />
+    <Compile Include="DB\IOAccess\IOBankBusinessDayMaster.cs" />
+    <Compile Include="DB\IOAccess\IOBillingData.cs" />
+    <Compile Include="DB\IOAccess\IOBillingDataDetail.cs" />
+    <Compile Include="DB\IOAccess\IOBillingPaymentSummary.cs" />
     <Compile Include="DB\IOAccess\IOConstructionLink.cs" />
+    <Compile Include="DB\IOAccess\IOConstructionMaterialInfo.cs" />
+    <Compile Include="DB\IOAccess\IODeadLineMaster.cs" />
+    <Compile Include="DB\IOAccess\IODepositApprovalInfo.cs" />
+    <Compile Include="DB\IOAccess\IODepositData.cs" />
+    <Compile Include="DB\IOAccess\IODepositDataDetail.cs" />
+    <Compile Include="DB\IOAccess\IOMaterialInfo.cs" />
+    <Compile Include="DB\IOAccess\IOMaterialItem.cs" />
+    <Compile Include="DB\IOAccess\IOMaterialRecordInfo.cs" />
+    <Compile Include="DB\IOAccess\IOMaterialTypes.cs" />
+    <Compile Include="DB\IOAccess\IOMPersonDepartment.cs" />
+    <Compile Include="DB\IOAccess\IOMPersonSalary.cs" />
+    <Compile Include="DB\IOAccess\IOMSecurity.cs" />
+    <Compile Include="DB\IOAccess\IOMProcessExcute.cs" />
     <Compile Include="DB\IOAccess\IOOrdersPriceData.cs" />
+    <Compile Include="DB\IOAccess\IOPaymentApprovalInfo.cs" />
+    <Compile Include="DB\IOAccess\IOPaymentDataDetail.cs" />
+    <Compile Include="DB\IOAccess\IOProcessApprovalDetail.cs" />
+    <Compile Include="DB\IOAccess\IORequestData.cs" />
+    <Compile Include="DB\IOAccess\IORequestDataDetail.cs" />
+    <Compile Include="DB\IOAccess\IORequestTotalData.cs" />
     <Compile Include="DB\MySql\MySqlProcess.cs" />
     <Compile Include="Forms\DataEntry\ConstructionBaseInfo\DataChange.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionJoin\FrmConstructionJoin.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionJoin\FrmConstructionJoin.Designer.cs">
+      <DependentUpon>FrmConstructionJoin.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionJoin\FrmConstructionJoinAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionJoin\FrmJoinSelect.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionJoin\FrmJoinSelect.designer.cs">
+      <DependentUpon>FrmJoinSelect.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionSplit\FrmConstructionSplitAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="Forms\DataEntry\DepExpenssList\FrmDepExpenssList.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -172,15 +244,45 @@
     <Compile Include="Forms\DataEntry\ConstructionLedger\FrmSelectPerson.Designer.cs">
       <DependentUpon>FrmSelectPerson.cs</DependentUpon>
     </Compile>
-    <Compile Include="Forms\DataEntry\ConstructionPersonList\FrmConstructionPersonList.cs">
+    <Compile Include="Forms\DataEntry\DRConstruction\PrintCommon.cs">
       <SubType>Form</SubType>
     </Compile>
-    <Compile Include="Forms\DataEntry\ConstructionPersonList\FrmConstructionPersonList.designer.cs">
-      <DependentUpon>FrmConstructionPersonList.cs</DependentUpon>
+    <Compile Include="Forms\DataEntry\DRConstruction\PrintFormat.cs">
+      <SubType>Form</SubType>
     </Compile>
-    <Compile Include="Forms\DataEntry\ConstructionPersonList\FrmConstructionPersonListAuxiliary.cs">
+    <Compile Include="Forms\DataEntry\Material\MaterialCountEntry\FrmMaterialCountEntry.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="Forms\DataEntry\Material\MaterialCountEntry\FrmMaterialCountEntry.designer.cs">
+      <DependentUpon>FrmMaterialCountEntry.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Material\MaterialReserveEntry\FrmMaterialReserveEntry.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Material\MaterialReserveEntry\FrmMaterialReserveEntry.designer.cs">
+      <DependentUpon>FrmMaterialReserveEntry.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Material\MaterialReserveEntry\ProcessControl.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Material\MaterialReturnEntry\FrmMaterialReturnEntry.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Material\MaterialReturnEntry\FrmMaterialReturnEntry.designer.cs">
+      <DependentUpon>FrmMaterialReturnEntry.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Material\MaterialReturnEntry\ProcessControl.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\PurchaseOrderEntry\FrmOrderEntryList.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\PurchaseOrderEntry\FrmOrderEntryList.Designer.cs">
+      <DependentUpon>FrmOrderEntryList.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\PurchaseOrderEntry\FrmOrderEntryListAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="Forms\DataEntry\PurchaseOrderEntry\PurchaseOrderInputPage.cs" />
     <Compile Include="DataModel\PurchaseOrderDetail.cs" />
     <Compile Include="DataModel\PurchaseOrder.cs" />
@@ -223,7 +325,6 @@
     <Compile Include="DB\IOAccess\IOConstructionLedgerExcute.cs" />
     <Compile Include="DB\IOAccess\IOConstructionLedgerDetail.cs" />
     <Compile Include="DB\IOAccess\IOConstructionLedger.cs" />
-    <Compile Include="DB\IOAccess\IODailyData.cs" />
     <Compile Include="DB\IOAccess\IOMSubContractorJobLink.cs" />
     <Compile Include="DB\IOAccess\IOProceedingsDataDetail.cs" />
     <Compile Include="DB\IOAccess\IOProceedingsDataAttendee.cs" />
@@ -289,29 +390,6 @@
     <Compile Include="Forms\CustomControls\TextBoxEX.cs">
       <SubType>Component</SubType>
     </Compile>
-    <Compile Include="Forms\DataEntry\DailyReportList\FrmDailyReportList.cs">
-      <SubType>Form</SubType>
-    </Compile>
-    <Compile Include="Forms\DataEntry\DailyReportList\FrmDailyReportList.designer.cs" />
-    <Compile Include="Forms\DataEntry\DailyReportList\FrmDailyReportListAuxiliary.cs">
-      <SubType>Form</SubType>
-    </Compile>
-    <Compile Include="Forms\DataEntry\DailyReport\DailyReportInputPage.cs" />
-    <Compile Include="Forms\DataEntry\DailyReport\FrmDailyReport.cs">
-      <SubType>Form</SubType>
-    </Compile>
-    <Compile Include="Forms\DataEntry\DailyReport\FrmDailyReport.designer.cs">
-      <DependentUpon>FrmDailyReport.cs</DependentUpon>
-    </Compile>
-    <Compile Include="Forms\DataEntry\DailyReport\FrmDailyReportAuxiliary.cs">
-      <SubType>Form</SubType>
-    </Compile>
-    <Compile Include="Forms\DataEntry\DailyReport\NewPage.cs">
-      <SubType>Form</SubType>
-    </Compile>
-    <Compile Include="Forms\DataEntry\DailyReport\ProcessControl.cs">
-      <SubType>Form</SubType>
-    </Compile>
     <Compile Include="Forms\DataEntry\DRConstruction\ProcessControl.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -396,6 +474,75 @@
     <Compile Include="Forms\DataEntry\DRTransport\FrmDRTransport.Designer.cs">
       <DependentUpon>FrmDRTransport.cs</DependentUpon>
     </Compile>
+    <Compile Include="Forms\DataEntry\PurchaseOrderStatus\FrmPurchaseOrderStatus.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\PurchaseOrderStatus\FrmPurchaseOrderStatus.designer.cs">
+      <DependentUpon>FrmPurchaseOrderStatus.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\PurchaseOrderStatus\FrmPurchaseOrderStatusAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmRegField.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmRegField.Designer.cs">
+      <DependentUpon>FrmRegField.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmSelectField.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmSelectField.Designer.cs">
+      <DependentUpon>FrmSelectField.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmSelectRegField.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmSelectRegField.Designer.cs">
+      <DependentUpon>FrmSelectRegField.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmSelectRequest.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\FrmSelectRequest.Designer.cs">
+      <DependentUpon>FrmSelectRequest.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestInput\FrmRequestInput.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestInput\FrmRequestInput.Designer.cs">
+      <DependentUpon>FrmRequestInput.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestInput\FrmRequestInputAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestInput\FrmRequestInputDefinitions.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestInput\ProcessControl.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestSummaryList\FrmRequestSummaryList.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestSummaryList\FrmRequestSummaryList.designer.cs">
+      <DependentUpon>FrmRequestSummaryList.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\RequestSummaryList\FrmRequestSummaryListAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\SelectPayment\FrmSelectPayment.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\SelectPayment\FrmSelectPayment.Designer.cs">
+      <DependentUpon>FrmSelectPayment.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\StatusAndDateReq.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\Request\StatusAndDateReq.Designer.cs">
+      <DependentUpon>StatusAndDateReq.cs</DependentUpon>
+    </Compile>
     <Compile Include="Forms\DataEntry\TAndPCosts\FrmSelectPaymentDay.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -411,6 +558,36 @@
     <Compile Include="Forms\DataEntry\TAndPCosts\FrmTAndPCosts.Designer.cs">
       <DependentUpon>FrmTAndPCosts.cs</DependentUpon>
     </Compile>
+    <Compile Include="Forms\Master\Material\MaterialItemsMaster\FrmMaterialItemsMaster.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\Material\MaterialItemsMaster\FrmMaterialItemsMaster.designer.cs">
+      <DependentUpon>FrmMaterialItemsMaster.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\Master\Material\MaterialTypesMaster\FrmMaterialTypesMaster.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\Material\MaterialTypesMaster\FrmMaterialTypesMaster.designer.cs">
+      <DependentUpon>FrmMaterialTypesMaster.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\Master\PersonInCharge\FrmPersonInChargeAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\Security\FrmSecurityAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\Security\FrmSecurity.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\Security\FrmSecurity.designer.cs">
+      <DependentUpon>FrmSecurity.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\Master\Security\FrmSecurityPerson.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\Master\Security\FrmSecurityPerson.Designer.cs">
+      <DependentUpon>FrmSecurityPerson.cs</DependentUpon>
+    </Compile>
     <Compile Include="Forms\Master\SubContractorJob\FrmSubContractorJobCategory.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -417,6 +594,9 @@
     <Compile Include="Forms\Master\SubContractorJob\FrmSubContractorJobCategory.designer.cs">
       <DependentUpon>FrmSubContractorJobCategory.cs</DependentUpon>
     </Compile>
+    <Compile Include="Forms\Master\SubContractor\FrmSubContractorAuxiliary.cs">
+      <SubType>Form</SubType>
+    </Compile>
     <Compile Include="Forms\Master\Suppliers\FrmSuppliers.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -423,6 +603,30 @@
     <Compile Include="Forms\Master\Suppliers\FrmSuppliers.designer.cs">
       <DependentUpon>FrmSuppliers.cs</DependentUpon>
     </Compile>
+    <Compile Include="Forms\SubForms\FrmRequestPrint.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmRequestPrint.Designer.cs">
+      <DependentUpon>FrmRequestPrint.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmVehicleSelector.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmVehicleSelector.Designer.cs">
+      <DependentUpon>FrmVehicleSelector.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmPrintConfirmation.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmPrintConfirmation.Designer.cs">
+      <DependentUpon>FrmPrintConfirmation.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmTyingConstrDiag.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmTyingConstrDiag.Designer.cs">
+      <DependentUpon>FrmTyingConstrDiag.cs</DependentUpon>
+    </Compile>
     <Compile Include="Forms\SubForms\FrmPriceOfBudget.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -435,6 +639,12 @@
     <Compile Include="Forms\SubForms\FrmNumberOfWorkers.Designer.cs">
       <DependentUpon>FrmNumberOfWorkers.cs</DependentUpon>
     </Compile>
+    <Compile Include="Forms\SubForms\FrmChangeExpenses.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\FrmChangeExpenses.Designer.cs">
+      <DependentUpon>FrmChangeExpenses.cs</DependentUpon>
+    </Compile>
     <Compile Include="Forms\SubForms\FrmValueOfOrder.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -741,10 +951,10 @@
     <Compile Include="Forms\SubForms\FrmApprovalAuthorizerList.Designer.cs">
       <DependentUpon>FrmApprovalAuthorizerList.cs</DependentUpon>
     </Compile>
-    <Compile Include="Forms\SubForms\FrmNewOrContinueCopy.cs">
+    <Compile Include="Forms\DataEntry\CopyTargetList\FrmNewOrContinueCopy.cs">
       <SubType>Form</SubType>
     </Compile>
-    <Compile Include="Forms\SubForms\FrmNewOrContinueCopy.Designer.cs">
+    <Compile Include="Forms\DataEntry\CopyTargetList\FrmNewOrContinueCopy.Designer.cs">
       <DependentUpon>FrmNewOrContinueCopy.cs</DependentUpon>
     </Compile>
     <Compile Include="Forms\SubForms\FrmStatusAndDate.cs">
@@ -777,6 +987,30 @@
     <Compile Include="Forms\SubForms\FrmActionCalendar.Designer.cs">
       <DependentUpon>FrmActionCalendar.cs</DependentUpon>
     </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionSplit\FrmConstructionSplit.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\DataEntry\ConstructionSplit\FrmConstructionSplit.Designer.cs">
+      <DependentUpon>FrmConstructionSplit.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\SubForms\Material\FrmMaterialHistory.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\Material\FrmMaterialHistory.designer.cs">
+      <DependentUpon>FrmMaterialHistory.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\SubForms\Material\FrmMaterialList.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\Material\FrmMaterialList.designer.cs">
+      <DependentUpon>FrmMaterialList.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Forms\SubForms\Material\FrmMaterialSelect.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Forms\SubForms\Material\FrmMaterialSelect.designer.cs">
+      <DependentUpon>FrmMaterialSelect.cs</DependentUpon>
+    </Compile>
     <Compile Include="Forms\ZMenu\FrmChangePassword.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -911,6 +1145,12 @@
     <EmbeddedResource Include="Forms\CustomControls\DataGridViewEX.resx">
       <DependentUpon>DataGridViewEX.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\ConstructionJoin\FrmConstructionJoin.resx">
+      <DependentUpon>FrmConstructionJoin.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\ConstructionJoin\FrmJoinSelect.resx">
+      <DependentUpon>FrmJoinSelect.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\DepExpenssList\FrmDepExpenssList.resx">
       <DependentUpon>FrmDepExpenssList.cs</DependentUpon>
     </EmbeddedResource>
@@ -917,12 +1157,6 @@
     <EmbeddedResource Include="Forms\DataEntry\ConstructionLedger\FrmSelectPerson.resx">
       <DependentUpon>FrmSelectPerson.cs</DependentUpon>
     </EmbeddedResource>
-    <EmbeddedResource Include="Forms\DataEntry\ConstructionPersonList\FrmConstructionPersonList.resx">
-      <DependentUpon>FrmConstructionPersonList.cs</DependentUpon>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Forms\DataEntry\DailyReport\FrmDailyReport.resx">
-      <DependentUpon>FrmDailyReport.cs</DependentUpon>
-    </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\DRList\FrmDRList.resx">
       <DependentUpon>FrmDRList.cs</DependentUpon>
     </EmbeddedResource>
@@ -941,6 +1175,15 @@
     <EmbeddedResource Include="Forms\DataEntry\DRWork\FrmDRWork.resx">
       <DependentUpon>FrmDRWork.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Material\MaterialCountEntry\FrmMaterialCountEntry.resx">
+      <DependentUpon>FrmMaterialCountEntry.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Material\MaterialReserveEntry\FrmMaterialReserveEntry.resx">
+      <DependentUpon>FrmMaterialReserveEntry.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Material\MaterialReturnEntry\FrmMaterialReturnEntry.resx">
+      <DependentUpon>FrmMaterialReturnEntry.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\Proceedings\FrmProceedings.resx">
       <DependentUpon>FrmProceedings.cs</DependentUpon>
     </EmbeddedResource>
@@ -947,6 +1190,36 @@
     <EmbeddedResource Include="Forms\DataEntry\DRTransport\FrmDRTransport.resx">
       <DependentUpon>FrmDRTransport.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\PurchaseOrderEntry\FrmOrderEntryList.resx">
+      <DependentUpon>FrmOrderEntryList.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\PurchaseOrderStatus\FrmPurchaseOrderStatus.resx">
+      <DependentUpon>FrmPurchaseOrderStatus.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\FrmRegField.resx">
+      <DependentUpon>FrmRegField.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\FrmSelectField.resx">
+      <DependentUpon>FrmSelectField.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\FrmSelectRegField.resx">
+      <DependentUpon>FrmSelectRegField.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\FrmSelectRequest.resx">
+      <DependentUpon>FrmSelectRequest.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\RequestInput\FrmRequestInput.resx">
+      <DependentUpon>FrmRequestInput.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\RequestSummaryList\FrmRequestSummaryList.resx">
+      <DependentUpon>FrmRequestSummaryList.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\SelectPayment\FrmSelectPayment.resx">
+      <DependentUpon>FrmSelectPayment.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\Request\StatusAndDateReq.resx">
+      <DependentUpon>StatusAndDateReq.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\TAndPCosts\FrmSelectPaymentDay.resx">
       <DependentUpon>FrmSelectPaymentDay.cs</DependentUpon>
     </EmbeddedResource>
@@ -953,6 +1226,18 @@
     <EmbeddedResource Include="Forms\DataEntry\TAndPCosts\FrmTAndPCosts.resx">
       <DependentUpon>FrmTAndPCosts.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\Master\Material\MaterialItemsMaster\FrmMaterialItemsMaster.resx">
+      <DependentUpon>FrmMaterialItemsMaster.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\Master\Material\MaterialTypesMaster\FrmMaterialTypesMaster.resx">
+      <DependentUpon>FrmMaterialTypesMaster.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\Master\Security\FrmSecurity.resx">
+      <DependentUpon>FrmSecurity.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\Master\Security\FrmSecurityPerson.resx">
+      <DependentUpon>FrmSecurityPerson.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\Master\SubContractorJob\FrmSubContractorJobCategory.resx">
       <DependentUpon>FrmSubContractorJobCategory.cs</DependentUpon>
     </EmbeddedResource>
@@ -959,6 +1244,18 @@
     <EmbeddedResource Include="Forms\Master\Suppliers\FrmSuppliers.resx">
       <DependentUpon>FrmSuppliers.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\FrmRequestPrint.resx">
+      <DependentUpon>FrmRequestPrint.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\FrmVehicleSelector.resx">
+      <DependentUpon>FrmVehicleSelector.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\FrmPrintConfirmation.resx">
+      <DependentUpon>FrmPrintConfirmation.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\FrmTyingConstrDiag.resx">
+      <DependentUpon>FrmTyingConstrDiag.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\SubForms\FrmPriceOfBudget.resx">
       <DependentUpon>FrmPriceOfBudget.cs</DependentUpon>
     </EmbeddedResource>
@@ -965,6 +1262,9 @@
     <EmbeddedResource Include="Forms\SubForms\FrmNumberOfWorkers.resx">
       <DependentUpon>FrmNumberOfWorkers.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\FrmChangeExpenses.resx">
+      <DependentUpon>FrmChangeExpenses.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\SubForms\FrmValueOfOrder.resx">
       <DependentUpon>FrmValueOfOrder.cs</DependentUpon>
     </EmbeddedResource>
@@ -1003,7 +1303,6 @@
     </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\PurchaseOrderEntry\FrmImage.resx">
       <DependentUpon>FrmImage.cs</DependentUpon>
-      <SubType>Designer</SubType>
     </EmbeddedResource>
     <EmbeddedResource Include="Forms\DataEntry\PurchaseOrderEntry\FrmPurchaseOrderEntry.resx">
       <DependentUpon>FrmPurchaseOrderEntry.cs</DependentUpon>
@@ -1062,7 +1361,7 @@
     <EmbeddedResource Include="Forms\SubForms\FrmApprovalAuthorizerList.resx">
       <DependentUpon>FrmApprovalAuthorizerList.cs</DependentUpon>
     </EmbeddedResource>
-    <EmbeddedResource Include="Forms\SubForms\FrmNewOrContinueCopy.resx">
+    <EmbeddedResource Include="Forms\DataEntry\CopyTargetList\FrmNewOrContinueCopy.resx">
       <DependentUpon>FrmNewOrContinueCopy.cs</DependentUpon>
     </EmbeddedResource>
     <EmbeddedResource Include="Forms\SubForms\FrmStatusAndDate.resx">
@@ -1080,6 +1379,18 @@
     <EmbeddedResource Include="Forms\SubForms\FrmActionCalendar.resx">
       <DependentUpon>FrmActionCalendar.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Forms\DataEntry\ConstructionSplit\FrmConstructionSplit.resx">
+      <DependentUpon>FrmConstructionSplit.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\Material\FrmMaterialHistory.resx">
+      <DependentUpon>FrmMaterialHistory.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\Material\FrmMaterialList.resx">
+      <DependentUpon>FrmMaterialList.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Forms\SubForms\Material\FrmMaterialSelect.resx">
+      <DependentUpon>FrmMaterialSelect.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Forms\ZMenu\FrmChangePassword.resx">
       <DependentUpon>FrmChangePassword.cs</DependentUpon>
     </EmbeddedResource>
@@ -1088,7 +1399,6 @@
     </EmbeddedResource>
     <EmbeddedResource Include="Forms\ZMenu\FrmLogin.resx">
       <DependentUpon>FrmLogin.cs</DependentUpon>
-      <SubType>Designer</SubType>
     </EmbeddedResource>
     <EmbeddedResource Include="Forms\Master\ComponentLink\FrmComponentLink.resx">
       <DependentUpon>FrmComponentLink.cs</DependentUpon>
@@ -1154,6 +1464,8 @@
       <DependentUpon>Resources.resx</DependentUpon>
       <DesignTime>True</DesignTime>
     </Compile>
+    <None Include="DB\Core\ABaseDBProcess.cs.bak" />
+    <None Include="DB\Core\DBCommon.cs.bak" />
     <None Include="ProcessManage001.doc">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </None>
@@ -1180,6 +1492,7 @@
     </Compile>
   </ItemGroup>
   <ItemGroup>
+    <Folder Include="Forms\SystemFrm\" />
     <Folder Include="Utility\" />
   </ItemGroup>
   <ItemGroup>
Index: branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj.user
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj.user	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/ProcessManagement.csproj.user	(revision 51)
@@ -5,4 +5,7 @@
     </ReferencePath>
     <ProjectView>ProjectFiles</ProjectView>
   </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
+    <StartArguments>/NOCHECK</StartArguments>
+  </PropertyGroup>
 </Project>
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/Program.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Program.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Program.cs	(revision 51)
@@ -29,7 +29,9 @@
         /// アプリケーションのメイン エントリ ポイントです。
         /// </summary>
         [STAThread]
-        static void Main()
+// ▼自動更新VPS対応▼
+        static void Main(string[] args)
+// ▲自動更新VPS対応▲
         {
             try
             {
@@ -40,27 +42,35 @@
                 Application.SetCompatibleTextRenderingDefault(false);
 
                 // 共通クラス初期化
-                //CommonAction.Instance.Initialize();
                 CommonMotions.Initialize();
 
-                // ファイルタイムスタンプチェック
-                if (!ClsUpDate.ProgramTimeStampCheck())
+                //// ファイルタイムスタンプチェック
+                //if (!ClsUpDate.ProgramTimeStampCheck())
+                //{
+                //    // 本環境のみコピープロセス実行
+                //    if (CommonMotions.ProductionExecution)
+                //    {
+                //        // ターゲットを起動する
+                //        string ExecProc = System.Environment.CurrentDirectory + "\\" + CommonDefine.s_UPDATECOPY_NAME;
+                //        if (File.Exists(ExecProc))
+                //        {
+                //            Application.Exit();
+                //            Process p = Process.Start(ExecProc);
+                //            return;
+                //        }
+                //    }
+                //}
+
+                // 起動パラメータ引渡
+                if (args.Length == 0 ||
+                    CommonDefine.s_KIDOU_PARAM != args[0])
                 {
-                    // 本環境のみコピープロセス実行
-                    if (CommonMotions.ProductionExecution)
-                    {
-                        // ターゲットを起動する
-                        string ExecProc = System.Environment.CurrentDirectory + "\\" + CommonDefine.s_UPDATECOPY_NAME;
-                        if (File.Exists(ExecProc))
-                        {
-                            Application.Exit();
-                            Process p = Process.Start(ExecProc);
-                            return;
-                        }
-                    }
+                    Application.Run(new FrmMenu(null));
                 }
-
-                Application.Run(new FrmMenu());
+                else
+                {
+                    Application.Run(new FrmMenu(args[0]));
+                }
             }
             catch (Exception ex)
             {
Index: branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 51)
@@ -33,6 +33,6 @@
 // 既定値にすることができます:
 // [assembly: AssemblyVersion("1.0.*")]
 [assembly: AssemblyVersion("0.0.0.0")]
-[assembly: AssemblyFileVersion("0.1.0.0")]
+[assembly: AssemblyFileVersion("0.9.9.9")]
 // Log4netを使用する
 [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"log4net.config", Watch = true)]
\ No newline at end of file
Index: branches/src/ProcessManagement/ProcessManagement/RequestSheet.xlsx
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: branches/src/ProcessManagement/ProcessManagement/RequestSheet.xlsx
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/RequestSheet.xlsx	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/RequestSheet.xlsx	(revision 51)

Property changes on: branches/src/ProcessManagement/ProcessManagement/RequestSheet.xlsx
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.dll
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.dll
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.dll	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.dll	(revision 51)

Property changes on: branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.dll
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.xml
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.xml	(nonexistent)
+++ branches/src/ProcessManagement/ProcessManagement/lib/MySql.Data.xml	(revision 51)
@@ -0,0 +1,10569 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>MySql.Data</name>
+    </assembly>
+    <members>
+        <member name="M:MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.GetPlugin(System.String,MySql.Data.MySqlClient.NativeDriver,System.Byte[])">
+            <summary>
+            This is a factory method that is used only internally.  It creates an auth plugin based on the method type
+            </summary>
+            <param name="method"></param>
+            <param name="flags"></param>
+            <param name="settings"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Authentication.MySqlNativePasswordPlugin.Get411Password(System.String,System.Byte[])">
+            <summary>
+            Returns a byte array containing the proper encryption of the 
+            given password/seed according to the new 4.1.1 authentication scheme.
+            </summary>
+            <param name="password"></param>
+            <param name="seed"></param>
+            <returns></returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Authentication.Sha256AuthenticationPlugin">
+            <summary>
+            The implementation of the sha256_password authentication plugin.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Authentication.MySqlWindowsAuthenticationPlugin">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlBulkLoader">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.Connection">
+            <summary>
+            Gets or sets the connection.
+            </summary>
+            <value>The connection.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.FieldTerminator">
+            <summary>
+            Gets or sets the field terminator.
+            </summary>
+            <value>The field terminator.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.LineTerminator">
+            <summary>
+            Gets or sets the line terminator.
+            </summary>
+            <value>The line terminator.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.TableName">
+            <summary>
+            Gets or sets the name of the table.
+            </summary>
+            <value>The name of the table.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.CharacterSet">
+            <summary>
+            Gets or sets the character set.
+            </summary>
+            <value>The character set.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.FileName">
+            <summary>
+            Gets or sets the name of the file.
+            </summary>
+            <value>The name of the file.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.Timeout">
+            <summary>
+            Gets or sets the timeout.
+            </summary>
+            <value>The timeout.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.Local">
+            <summary>
+            Gets or sets a value indicating whether the filename that is to be loaded
+            is local to the client or not
+            </summary>
+            <value><c>true</c> if local; otherwise, <c>false</c>.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.NumberOfLinesToSkip">
+            <summary>
+            Gets or sets the number of lines to skip.
+            </summary>
+            <value>The number of lines to skip.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.LinePrefix">
+            <summary>
+            Gets or sets the line prefix.
+            </summary>
+            <value>The line prefix.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.FieldQuotationCharacter">
+            <summary>
+            Gets or sets the field quotation character.
+            </summary>
+            <value>The field quotation character.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.FieldQuotationOptional">
+            <summary>
+            Gets or sets a value indicating whether [field quotation optional].
+            </summary>
+            <value>
+            	<c>true</c> if [field quotation optional]; otherwise, <c>false</c>.
+            </value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.EscapeCharacter">
+            <summary>
+            Gets or sets the escape character.
+            </summary>
+            <value>The escape character.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.ConflictOption">
+            <summary>
+            Gets or sets the conflict option.
+            </summary>
+            <value>The conflict option.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.Priority">
+            <summary>
+            Gets or sets the priority.
+            </summary>
+            <value>The priority.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.Columns">
+            <summary>
+            Gets the columns.
+            </summary>
+            <value>The columns.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlBulkLoader.Expressions">
+            <summary>
+            Gets the expressions.
+            </summary>
+            <value>The expressions.</value>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlBulkLoader.Load">
+            <summary>
+            Execute the load operation
+            </summary>
+            <returns>The number of rows inserted.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlBulkLoader.LoadAsync">
+            <summary>
+            Async version of Load
+            </summary>
+            <returns>The number of rows inserted.</returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlBulkLoaderPriority">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlBulkLoaderPriority.None">
+            <summary>
+            This is the default and indicates normal priority
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlBulkLoaderPriority.Low">
+            <summary>
+            Low priority will cause the load operation to wait until all readers of the table
+            have finished.  This only affects storage engines that use only table-level locking
+            such as MyISAM, Memory, and Merge.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlBulkLoaderPriority.Concurrent">
+            <summary>
+            Concurrent priority is only relevant for MyISAM tables and signals that if the table
+            has no free blocks in the middle that other readers can retrieve data from the table
+            while the load operation is happening.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlBulkLoaderConflictOption">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlBulkLoaderConflictOption.None">
+            <summary>
+            This is the default and indicates normal operation.  In the event of a LOCAL load, this
+            is the same as ignore.  When the data file is on the server, then a key conflict will
+            cause an error to be thrown and the rest of the data file ignored.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlBulkLoaderConflictOption.Replace">
+            <summary>
+            Replace column values when a key conflict occurs.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlBulkLoaderConflictOption.Ignore">
+            <summary>
+            Ignore any rows where the primary key conflicts.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.CharSetMap">
+            <summary>
+            Summary description for CharSetMap.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.CharSetMap.GetEncoding(MySql.Data.Common.DBVersion,System.String)">
+            <summary>
+            Returns the text encoding for a given MySQL character set name
+            </summary>
+            <param name="version">Version of the connection requesting the encoding</param>
+            <param name="CharSetName">Name of the character set to get the encoding for</param>
+            <returns>Encoding object for the given character set name</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.CharSetMap.InitializeMapping">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlCommand">
+            <summary>Represents a SQL statement to execute against a MySQL database. This class cannot be inherited.</summary><remarks>
+      <B>MySqlCommand</B> features the following methods for executing commands at a MySQL database:
+      <list type="table">
+        <listheader>
+          <term>Item</term>
+          <term>Description</term>
+        </listheader>
+        <item>
+          <term>
+            <a href="MySql.Data.MySqlClient.MySqlCommand.ExecuteReader_overloads.html">ExecuteReader</a>
+          </term>
+          <description>Executes commands that return rows.</description>
+        </item>
+        <item>
+          <term>
+            <a href="MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery.html">ExecuteNonQuery</a>
+          </term>
+          <description>Executes commands such as SQL INSERT, DELETE, and UPDATE statements.</description>
+        </item>
+        <item>
+          <term>
+            <a href="MySql.Data.MySqlClient.MySqlCommand.ExecuteScalar.html">ExecuteScalar</a>
+          </term>
+          <description>Retrieves a single value (for example, an aggregate value) from a database.</description>
+        </item>
+      </list>
+
+      You can reset the <B>CommandText</B> property and reuse the <B>MySqlCommand</B>
+      object. However, you must close the <A href="MySql.Data.MySqlClient.MySqlDataReader.html">MySqlDataReader</A>
+      before you can execute a new or previous command.
+
+      If a <A href="MySql.Data.MySqlClient.MySqlException.html">MySqlException</A> is
+      generated by the method executing a <B>MySqlCommand</B>, the <A href="MySql.Data.MySqlClient.MySqlConnection.html">MySqlConnection</A>
+      remains open.  It is the responsibility of the programmer to close the connection.
+
+      <note>
+        Using the '@' symbol for paramters is now the preferred approach although the old pattern of using
+		'?' is still supported.  Please be aware though that using '@' can cause conflicts when user variables
+		are also used.  To help with this situation please see the documentation on the 'allow user variables'
+		connection string option.  The 'old syntax' connection string option has now been deprecated.
+      </note>
+    </remarks><example>
+      The following example creates a <A href="frlrfsystemdatasqlclientsqlcommandclasstopic.htm">MySqlCommand</A> and
+      a <B>MySqlConnection</B>. The <B>MySqlConnection</B> is opened and set as the <A href="frlrfsystemdatasqlclientsqlcommandclassconnectiontopic.htm">Connection</A>
+      for the <B>MySqlCommand</B>. The example then calls <A href="frlrfsystemdatasqlclientsqlcommandclassexecutenonquerytopic.htm">ExecuteNonQuery</A>,
+      and closes the connection. To accomplish this, the <B>ExecuteNonQuery</B> is
+      passed a connection string and a query string that is a SQL INSERT
+      statement.
+      <code lang="vbnet">
+        Public Sub InsertRow(myConnectionString As String)
+        " If the connection string is null, use a default.
+        If myConnectionString = "" Then
+        myConnectionString = "Database=Test;Data Source=localhost;User Id=username;Password=pass"
+        End If
+        Dim myConnection As New MySqlConnection(myConnectionString)
+        Dim myInsertQuery As String = "INSERT INTO Orders (id, customerId, amount) Values(1001, 23, 30.66)"
+        Dim myCommand As New MySqlCommand(myInsertQuery)
+        myCommand.Connection = myConnection
+        myConnection.Open()
+        myCommand.ExecuteNonQuery()
+        myCommand.Connection.Close()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void InsertRow(string myConnectionString)
+        {
+        // If the connection string is null, use a default.
+        if(myConnectionString == "")
+        {
+        myConnectionString = "Database=Test;Data Source=localhost;User Id=username;Password=pass";
+        }
+        MySqlConnection myConnection = new MySqlConnection(myConnectionString);
+        string myInsertQuery = "INSERT INTO Orders (id, customerId, amount) Values(1001, 23, 30.66)";
+        MySqlCommand myCommand = new MySqlCommand(myInsertQuery);
+        myCommand.Connection = myConnection;
+        myConnection.Open();
+        myCommand.ExecuteNonQuery();
+        myCommand.Connection.Close();
+        }
+      </code>
+    </example> 
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.#ctor">
+            <overloads>
+      <summary>
+        Initializes a new instance of the MySqlCommand class.
+      </summary>
+      <example>
+        The following example creates a MySqlCommand and sets some of its properties.
+        <para />
+        <note>
+          This example shows how to use one of the overloaded
+          versions of the MySqlCommand constructor. For other examples that might be available,
+          see the individual overload topics.
+        </note>
+
+        <code lang="vbnet">
+          Public Sub CreateMySqlCommand()
+          Dim myConnection As New MySqlConnection _
+          ("Persist Security Info=False;database=test;server=myServer")
+          myConnection.Open()
+          Dim myTrans As MySqlTransaction = myConnection.BeginTransaction()
+          Dim mySelectQuery As String = "SELECT * FROM MyTable"
+          Dim myCommand As New MySqlCommand(mySelectQuery, myConnection, myTrans)
+          myCommand.CommandTimeout = 20
+          End Sub
+        </code>
+        <code lang="C#">
+          public void CreateMySqlCommand()
+          {
+          MySqlConnection myConnection = new MySqlConnection("Persist Security Info=False;
+          database=test;server=myServer");
+          myConnection.Open();
+          MySqlTransaction myTrans = myConnection.BeginTransaction();
+          string mySelectQuery = "SELECT * FROM myTable";
+          MySqlCommand myCommand = new MySqlCommand(mySelectQuery, myConnection,myTrans);
+          myCommand.CommandTimeout = 20;
+          }
+        </code>
+        <code lang="C++">
+          public:
+          void CreateMySqlCommand()
+          {
+          MySqlConnection* myConnection = new MySqlConnection(S"Persist Security Info=False;
+          database=test;server=myServer");
+          myConnection-&gt;Open();
+          MySqlTransaction* myTrans = myConnection-&gt;BeginTransaction();
+          String* mySelectQuery = S"SELECT * FROM myTable";
+          MySqlCommand* myCommand = new MySqlCommand(mySelectQuery, myConnection, myTrans);
+          myCommand-&gt;CommandTimeout = 20;
+          };
+        </code>
+      </example>
+    </overloads><summary>
+      Initializes a new instance of the MySqlCommand class.
+    </summary><remarks>
+      The base constructor initializes all fields to their default values. The
+      following table shows initial property values for an instance of <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />.
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandTimeout" />
+          </term>
+          <term>0</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandType" />
+          </term>
+          <term>CommandType.Text</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Connection" />
+          </term>
+          <term>Null</term>
+        </item>
+      </list>
+      <para>
+        You can change the value for any of these properties through a separate call to
+        the property.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and
+      sets some of its properties.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand()
+        Dim myCommand As New MySqlCommand()
+        myCommand.CommandType = CommandType.Text
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand()
+        {
+        MySqlCommand myCommand = new MySqlCommand();
+        myCommand.CommandType = CommandType.Text;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.#ctor(System.String)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> class with the text of the query.
+    </summary><param name="cmdText">The text of the query.</param><remarks>
+      When an instance of <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> is created,
+      the following read/write properties are set to initial values.
+
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" />
+          </term>
+          <term>
+            <i>cmdText</i>
+          </term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandTimeout" />
+          </term>
+          <term>0</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandType" />
+          </term>
+          <term>CommandType.Text</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Connection" />
+          </term>
+          <term>Null</term>
+        </item>
+      </list>
+      <para>
+        You can change the value for any of these properties through a separate call to
+        the property.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and
+      sets some of its properties.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand()
+        Dim sql as String = "SELECT * FROM mytable"
+        Dim myCommand As New MySqlCommand(sql)
+        myCommand.CommandType = CommandType.Text
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand()
+        {
+        string sql = "SELECT * FROM mytable";
+        MySqlCommand myCommand = new MySqlCommand(sql);
+        myCommand.CommandType = CommandType.Text;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.#ctor(System.String,MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> class
+      with the text of the query and a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />.
+    </summary><param name="cmdText">The text of the query.</param><param name="connection">
+      A <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> that represents the
+      connection to an instance of SQL Server.
+    </param><remarks>
+      When an instance of <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> is created,
+      the following read/write properties are set to initial values.
+
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" />
+          </term>
+          <term>
+            <i>cmdText</i>
+          </term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandTimeout" />
+          </term>
+          <term>0</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandType" />
+          </term>
+          <term>CommandType.Text</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Connection" />
+          </term>
+          <term>
+            <i>connection</i>
+          </term>
+        </item>
+      </list>
+      <para>
+        You can change the value for any of these properties through a separate call to
+        the property.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and
+      sets some of its properties.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand()
+        Dim conn as new MySqlConnection("server=myServer")
+        Dim sql as String = "SELECT * FROM mytable"
+        Dim myCommand As New MySqlCommand(sql, conn)
+        myCommand.CommandType = CommandType.Text
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand()
+        {
+        MySqlConnection conn = new MySqlConnection("server=myserver")
+        string sql = "SELECT * FROM mytable";
+        MySqlCommand myCommand = new MySqlCommand(sql, conn);
+        myCommand.CommandType = CommandType.Text;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.#ctor(System.String,MySql.Data.MySqlClient.MySqlConnection,MySql.Data.MySqlClient.MySqlTransaction)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> class
+      with the text of the query, a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />, and the
+      <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" />.
+    </summary><param name="cmdText">The text of the query.</param><param name="connection">
+      A <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> that represents the
+      connection to an instance of SQL Server.
+    </param><param name="transaction">
+      The <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" /> in which the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> executes.
+    </param><remarks>
+      When an instance of <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> is created,
+      the following read/write properties are set to initial values.
+
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" />
+          </term>
+          <term>
+            <i>cmdText</i>
+          </term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandTimeout" />
+          </term>
+          <term>0</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandType" />
+          </term>
+          <term>CommandType.Text</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Connection" />
+          </term>
+          <term>
+            <i>connection</i>
+          </term>
+        </item>
+      </list>
+      <para>
+        You can change the value for any of these properties through a separate call to
+        the property.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and
+      sets some of its properties.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand()
+        Dim conn as new MySqlConnection("server=myServer")
+        conn.Open();
+        Dim txn as MySqlTransaction = conn.BeginTransaction()
+        Dim sql as String = "SELECT * FROM mytable"
+        Dim myCommand As New MySqlCommand(sql, conn, txn)
+        myCommand.CommandType = CommandType.Text
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand()
+        {
+        MySqlConnection conn = new MySqlConnection("server=myserver")
+        conn.Open();
+        MySqlTransaction txn = conn.BeginTransaction();
+        string sql = "SELECT * FROM mytable";
+        MySqlCommand myCommand = new MySqlCommand(sql, conn, txn);
+        myCommand.CommandType = CommandType.Text;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.LastInsertedId">
+            <!-- No matching elements were found for the following include tag --><include file="docs/mysqlcommand.xml" path="docs/LastInseredId/*" />
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.CommandText">
+            <summary>
+      Gets or sets the SQL statement to execute at the data source.
+    </summary><value>
+      The SQL statement or stored procedure to execute. The default is an empty string.
+    </value><remarks>
+      <para>
+        When the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandType" /> property is set to <B>StoredProcedure</B>,
+        the <B>CommandText</B> property should be set to the name of the stored procedure.
+        The user may be required to use escape character syntax if the stored procedure name
+        contains any special characters. The command executes this stored procedure when
+        you call one of the Execute methods.  Starting with Connector/Net 5.0, having both a stored function
+        and stored procedure with the same name in the same database is not supported.  It is
+        suggested that you provide unqiue names for your stored routines.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and sets some of its properties.
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand()
+        Dim myCommand As New MySqlCommand()
+        myCommand.CommandText = "SELECT * FROM Mytable ORDER BY id"
+        myCommand.CommandType = CommandType.Text
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand()
+        {
+        MySqlCommand myCommand = new MySqlCommand();
+        myCommand.CommandText = "SELECT * FROM mytable ORDER BY id";
+        myCommand.CommandType = CommandType.Text;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.CommandTimeout">
+            <summary>
+      Gets or sets the wait time before terminating the attempt to execute a command
+      and generating an error.
+    </summary><value>
+      The time (in seconds) to wait for the command to execute. The default is 30
+      seconds.
+    </value><remarks>
+      CommandTimeout is dependent on the ability of MySQL to cancel an executing query.
+      Because of this, CommandTimeout is only supported when connected to MySQL
+      version 5.0.0 or higher.
+    </remarks>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.CommandType">
+            <summary>
+      Gets or sets a value indicating how the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" /> property is to be interpreted.
+    </summary><value>
+      One of the <see cref="T:System.Data.CommandType" /> values. The default is <B>Text</B>.
+    </value><remarks>
+      <para>
+        When you set the <B>CommandType</B> property to <B>StoredProcedure</B>, you
+        should set the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" /> property to the name of the stored
+        procedure. The command executes this stored procedure when you call one of the
+        Execute methods.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and sets some of its properties.
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand()
+        Dim myCommand As New MySqlCommand()
+        myCommand.CommandType = CommandType.Text
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand()
+        {
+        MySqlCommand myCommand = new MySqlCommand();
+        myCommand.CommandType = CommandType.Text;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.IsPrepared">
+            <!-- No matching elements were found for the following include tag --><include file="docs/mysqlcommand.xml" path="docs/IsPrepared/*" />
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.Connection">
+            <summary>
+      Gets or sets the <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> used by this instance of the
+      <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />.
+    </summary><value>
+      The connection to a data source. The default value is a null reference
+      (<B>Nothing</B> in Visual Basic).
+    </value><remarks>
+      <para>
+        If you set <B>Connection</B> while a transaction is in progress and the
+        <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Transaction" /> property is not null, an <see cref="T:System.InvalidOperationException" />
+        is generated. If the <B>Transaction</B> property is not null and the transaction
+        has already been committed or rolled back, <B>Transaction</B> is set to
+        null.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and sets some of its properties.
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand()
+        Dim mySelectQuery As String = "SELECT * FROM mytable ORDER BY id"
+        Dim myConnectString As String = "Persist Security Info=False;database=test;server=myServer"
+        Dim myCommand As New MySqlCommand(mySelectQuery)
+        myCommand.Connection = New MySqlConnection(myConnectString)
+        myCommand.CommandType = CommandType.Text
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand()
+        {
+        string mySelectQuery = "SELECT * FROM mytable ORDER BY id";
+        string myConnectString = "Persist Security Info=False;database=test;server=myServer";
+        MySqlCommand myCommand = new MySqlCommand(mySelectQuery);
+        myCommand.Connection = new MySqlConnection(myConnectString);
+        myCommand.CommandType = CommandType.Text;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.Parameters">
+            <summary>
+      Get the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection" />
+    </summary><value>
+      The parameters of the SQL statement or stored procedure. The default is
+      an empty collection.
+    </value><remarks>
+      Connector/Net does not support unnamed parameters.  Every parameter added to the collection must
+      have an associated name.
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and displays its parameters.
+      To accomplish this, the method is passed a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />, a query string
+      that is a SQL SELECT statement, and an array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter" /> objects.
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand(myConnection As MySqlConnection, _
+        mySelectQuery As String, myParamArray() As MySqlParameter)
+        Dim myCommand As New MySqlCommand(mySelectQuery, myConnection)
+        myCommand.CommandText = "SELECT id, name FROM mytable WHERE age=@age"
+        myCommand.UpdatedRowSource = UpdateRowSource.Both
+        myCommand.Parameters.Add(myParamArray)
+        Dim j As Integer
+        For j = 0 To myCommand.Parameters.Count - 1
+        myCommand.Parameters.Add(myParamArray(j))
+        Next j
+        Dim myMessage As String = ""
+        Dim i As Integer
+        For i = 0 To myCommand.Parameters.Count - 1
+        myMessage += myCommand.Parameters(i).ToString() &amp; ControlChars.Cr
+        Next i
+        Console.WriteLine(myMessage)
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand(MySqlConnection myConnection, string mySelectQuery,
+        MySqlParameter[] myParamArray)
+        {
+        MySqlCommand myCommand = new MySqlCommand(mySelectQuery, myConnection);
+        myCommand.CommandText = "SELECT id, name FROM mytable WHERE age=@age";
+        myCommand.Parameters.Add(myParamArray);
+        for (int j=0; j&lt;myParamArray.Length; j++)
+        {
+        myCommand.Parameters.Add(myParamArray[j]) ;
+        }
+        string myMessage = "";
+        for (int i = 0; i &lt; myCommand.Parameters.Count; i++)
+        {
+        myMessage += myCommand.Parameters[i].ToString() + "\n";
+        }
+        MessageBox.Show(myMessage);
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.Transaction">
+            <summary>
+      Gets or sets the <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" /> within which the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> executes.
+    </summary><value>
+      The <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" />.  The default value is a null reference (<B>Nothing</B> in Visual Basic).
+    </value><remarks>
+      You cannot set the <B>Transaction</B> property if it is already set to a
+      specific value, and the command is in the process of executing. If you set the
+      transaction property to a <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" /> object that is not connected
+      to the same <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> as the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> object,
+      an exception will be thrown the next time you attempt to execute a statement.
+    </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.Cancel">
+            <summary>
+            Attempts to cancel the execution of a currently active command
+            </summary>
+            <remarks>
+            Cancelling a currently active query only works with MySQL versions 5.0.0 and higher.
+            </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.CreateParameter">
+            <summary>
+            Creates a new instance of a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.
+            </summary>
+            <remarks>
+            This method is a strongly-typed version of <see cref="M:System.Data.IDbCommand.CreateParameter"/>.
+            </remarks>
+            <returns>A <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.</returns>
+            
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.CheckState">
+            <summary>
+            Check the connection to make sure
+            	- it is open
+            	- it is not currently being used by a reader
+            	- and we have the right version of MySQL for the requested command type
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery">
+            <summary>
+      Executes a SQL statement against the connection and returns the number of rows affected.
+    </summary><returns>Number of rows affected</returns><remarks>
+      You can use ExecuteNonQuery to perform any type of database operation,
+      however any resultsets returned will not be available.  Any output parameters
+      used in calling a stored procedure will be populated with data and can be
+      retrieved after execution is complete.
+      For UPDATE, INSERT, and DELETE statements, the return value is the number
+      of rows affected by the command.  For all other types of statements, the return
+      value is -1.
+    </remarks><example>
+      The following example creates a MySqlCommand and then
+      executes it using ExecuteNonQuery. The example is passed a string that is a
+      SQL statement (such as UPDATE, INSERT, or DELETE) and a string to use to
+      connect to the data source.
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand(myExecuteQuery As String, myConnection As MySqlConnection)
+        Dim myCommand As New MySqlCommand(myExecuteQuery, myConnection)
+        myCommand.Connection.Open()
+        myCommand.ExecuteNonQuery()
+        myConnection.Close()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand(string myExecuteQuery, MySqlConnection myConnection)
+        {
+        MySqlCommand myCommand = new MySqlCommand(myExecuteQuery, myConnection);
+        myCommand.Connection.Open();
+        myCommand.ExecuteNonQuery();
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.ResetReader">
+            <summary>
+            Reset reader to null, to avoid "There is already an open data reader"
+            on the next ExecuteReader(). Used in error handling scenarios.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.ResetSqlSelectLimit">
+            <summary>
+            Reset SQL_SELECT_LIMIT that could have been modified by CommandBehavior.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteReader">
+            <summary>
+      Sends the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" /> to the <see cref="T:MySql.Data.MySqlClient.MySqlConnection">Connection</see>
+      and builds a <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" />.
+    </summary><returns>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" /> object.
+    </returns><remarks>
+      <para>
+        When the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandType" /> property is set to <B>StoredProcedure</B>,
+        the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" /> property should be set to the name of the stored
+        procedure. The command executes this stored procedure when you call
+        <B>ExecuteReader</B>.
+      </para>
+      <para>
+        While the <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" /> is in use, the associated
+        <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> is busy serving the <B>MySqlDataReader</B>.
+        While in this state, no other operations can be performed on the
+        <B>MySqlConnection</B> other than closing it. This is the case until the
+        <see cref="M:MySql.Data.MySqlClient.MySqlDataReader.Close" /> method of the <B>MySqlDataReader</B> is called.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />, then executes it by
+      passing a string that is a SQL SELECT statement, and a string to use to connect to the
+      data source.
+      <code lang="vbnet">
+        Public Sub CreateMySqlDataReader(mySelectQuery As String, myConnection As MySqlConnection)
+        Dim myCommand As New MySqlCommand(mySelectQuery, myConnection)
+        myConnection.Open()
+        Dim myReader As MySqlDataReader
+        myReader = myCommand.ExecuteReader()
+        Try
+        While myReader.Read()
+        Console.WriteLine(myReader.GetString(0))
+        End While
+        Finally
+        myReader.Close
+        myConnection.Close
+        End Try
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlDataReader(string mySelectQuery, MySqlConnection myConnection)
+        {
+        MySqlCommand myCommand = new MySqlCommand(mySelectQuery, myConnection);
+        myConnection.Open();
+        MMySqlDataReader myReader;
+        myReader = myCommand.ExecuteReader();
+        try
+        {
+        while(myReader.Read())
+        {
+        Console.WriteLine(myReader.GetString(0));
+        }
+        }
+        finally
+        {
+        myReader.Close();
+        myConnection.Close();
+        }
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(System.Data.CommandBehavior)">
+            <summary>
+      Sends the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" /> to the <see cref="T:MySql.Data.MySqlClient.MySqlConnection">Connection</see>,
+      and builds a <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" /> using one of the <see cref="T:System.Data.CommandBehavior" /> values.
+    </summary><param name="behavior">
+      One of the <see cref="T:System.Data.CommandBehavior" /> values.
+    </param><remarks>
+      <para>
+        When the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandType" /> property is set to <B>StoredProcedure</B>,
+        the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandText" /> property should be set to the name of the stored
+        procedure. The command executes this stored procedure when you call
+        <B>ExecuteReader</B>.
+      </para>
+      <para>
+        The <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" /> supports a special mode that enables large binary
+        values to be read efficiently. For more information, see the <B>SequentialAccess</B>
+        setting for <see cref="T:System.Data.CommandBehavior" />.
+      </para>
+      <para>
+        While the <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" /> is in use, the associated
+        <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> is busy serving the <B>MySqlDataReader</B>.
+        While in this state, no other operations can be performed on the
+        <B>MySqlConnection</B> other than closing it. This is the case until the
+        <see cref="M:MySql.Data.MySqlClient.MySqlDataReader.Close" /> method of the <B>MySqlDataReader</B> is called.
+        If the <B>MySqlDataReader</B> is created with <B>CommandBehavior</B> set to
+        <B>CloseConnection</B>, closing the <B>MySqlDataReader</B> closes the connection
+        automatically.
+      </para>
+      <note>
+        When calling ExecuteReader with the SingleRow behavior, you should be aware that using a <i>limit</i>
+        clause in your SQL will cause all rows (up to the limit given) to be retrieved by the client.  The
+        <see cref="M:MySql.Data.MySqlClient.MySqlDataReader.Read" /> method will still return false after the first row but pulling all rows of data
+        into the client will have a performance impact.  If the <i>limit</i> clause is not necessary, it should
+        be avoided.
+      </note>
+    </remarks><returns>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" /> object.
+    </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteScalar">
+            <summary>
+      Executes the query, and returns the first column of the first row in the
+      result set returned by the query. Extra columns or rows are ignored.
+    </summary><returns>
+      The first column of the first row in the result set, or a null reference if the
+      result set is empty
+    </returns><remarks>
+      <para>
+        Use the <B>ExecuteScalar</B> method to retrieve a single value (for example,
+        an aggregate value) from a database. This requires less code than using the
+        <see cref="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteReader" /> method, and then performing the operations necessary
+        to generate the single value using the data returned by a <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" />
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and then
+      executes it using <B>ExecuteScalar</B>. The example is passed a string that is a
+      SQL statement that returns an aggregate result, and a string to use to
+      connect to the data source.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlCommand(myScalarQuery As String, myConnection As MySqlConnection)
+        Dim myCommand As New MySqlCommand(myScalarQuery, myConnection)
+        myCommand.Connection.Open()
+        myCommand.ExecuteScalar()
+        myConnection.Close()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlCommand(string myScalarQuery, MySqlConnection myConnection)
+        {
+        MySqlCommand myCommand = new MySqlCommand(myScalarQuery, myConnection);
+        myCommand.Connection.Open();
+        myCommand.ExecuteScalar();
+        myConnection.Close();
+        }
+      </code>
+      <code lang="C++">
+        public:
+        void CreateMySqlCommand(String* myScalarQuery, MySqlConnection* myConnection)
+        {
+        MySqlCommand* myCommand = new MySqlCommand(myScalarQuery, myConnection);
+        myCommand-&gt;Connection-&gt;Open();
+        myCommand-&gt;ExecuteScalar();
+        myConnection-&gt;Close();
+        }
+      </code>
+
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.Prepare(System.Int32)">
+            <!-- No matching elements were found for the following include tag --><include file="docs/mysqlcommand.xml" path="docs/Prepare2/*" />
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.Prepare">
+            <summary>
+      Creates a prepared version of the command on an instance of MySQL Server.
+    </summary><remarks>
+      <para>
+        Prepared statements are only supported on MySQL version 4.1 and higher.  Calling
+        prepare while connected to earlier versions of MySQL will succeed but will execute
+        the statement in the same way as unprepared.
+      </para>
+    </remarks><example>
+      The following example demonstrates the use of the <b>Prepare</b> method.
+      <code lang="VB.NET">
+        public sub PrepareExample()
+        Dim cmd as New MySqlCommand("INSERT INTO mytable VALUES (@val)", myConnection)
+        cmd.Parameters.Add( "@val", 10 )
+        cmd.Prepare()
+        cmd.ExecuteNonQuery()
+
+        cmd.Parameters(0).Value = 20
+        cmd.ExecuteNonQuery()
+        end sub
+      </code>
+      <code lang="C#">
+        private void PrepareExample()
+        {
+        MySqlCommand cmd = new MySqlCommand("INSERT INTO mytable VALUES (@val)", myConnection);
+        cmd.Parameters.Add( "@val", 10 );
+        cmd.Prepare();
+        cmd.ExecuteNonQuery();
+
+        cmd.Parameters[0].Value = 20;
+        cmd.ExecuteNonQuery();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.BeginExecuteReader">
+            <summary>
+            Initiates the asynchronous execution of the SQL statement or stored procedure 
+            that is described by this <see cref="T:MySql.Data.MySqlClient.MySqlCommand"/>, and retrieves one or more 
+            result sets from the server. 
+            </summary>
+            <returns>An <see cref="T:System.IAsyncResult"/> that can be used to poll, wait for results, 
+            or both; this value is also needed when invoking EndExecuteReader, 
+            which returns a <see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> instance that can be used to retrieve 
+            the returned rows. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.BeginExecuteReader(System.Data.CommandBehavior)">
+            <summary>
+            Initiates the asynchronous execution of the SQL statement or stored procedure 
+            that is described by this <see cref="T:MySql.Data.MySqlClient.MySqlCommand"/> using one of the 
+            <b>CommandBehavior</b> values. 
+            </summary>
+            <param name="behavior">One of the <see cref="T:System.Data.CommandBehavior"/> values, indicating 
+            options for statement execution and data retrieval.</param>
+            <returns>An <see cref="T:System.IAsyncResult"/> that can be used to poll, wait for results, 
+            or both; this value is also needed when invoking EndExecuteReader, 
+            which returns a <see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> instance that can be used to retrieve 
+            the returned rows. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.EndExecuteReader(System.IAsyncResult)">
+            <summary>
+            Finishes asynchronous execution of a SQL statement, returning the requested 
+            <see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/>.
+            </summary>
+            <param name="result">The <see cref="T:System.IAsyncResult"/> returned by the call to 
+            <see cref="M:MySql.Data.MySqlClient.MySqlCommand.BeginExecuteReader"/>.</param>
+            <returns>A <b>MySqlDataReader</b> object that can be used to retrieve the requested rows. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.BeginExecuteNonQuery(System.AsyncCallback,System.Object)">
+            <summary>
+            Initiates the asynchronous execution of the SQL statement or stored procedure 
+            that is described by this <see cref="T:MySql.Data.MySqlClient.MySqlCommand"/>. 
+            </summary>
+            <param name="callback">
+            An <see cref="T:System.AsyncCallback"/> delegate that is invoked when the command's 
+            execution has completed. Pass a null reference (<b>Nothing</b> in Visual Basic) 
+            to indicate that no callback is required.</param>
+            <param name="stateObject">A user-defined state object that is passed to the 
+            callback procedure. Retrieve this object from within the callback procedure 
+            using the <see cref="P:System.IAsyncResult.AsyncState"/> property.</param>
+            <returns>An <see cref="T:System.IAsyncResult"/> that can be used to poll or wait for results, 
+            or both; this value is also needed when invoking <see cref="M:MySql.Data.MySqlClient.MySqlCommand.EndExecuteNonQuery(System.IAsyncResult)"/>, 
+            which returns the number of affected rows. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.BeginExecuteNonQuery">
+            <summary>
+            Initiates the asynchronous execution of the SQL statement or stored procedure 
+            that is described by this <see cref="T:MySql.Data.MySqlClient.MySqlCommand"/>. 
+            </summary>
+            <returns>An <see cref="T:System.IAsyncResult"/> that can be used to poll or wait for results, 
+            or both; this value is also needed when invoking <see cref="M:MySql.Data.MySqlClient.MySqlCommand.EndExecuteNonQuery(System.IAsyncResult)"/>, 
+            which returns the number of affected rows. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.EndExecuteNonQuery(System.IAsyncResult)">
+            <summary>
+            Finishes asynchronous execution of a SQL statement. 
+            </summary>
+            <param name="asyncResult">The <see cref="T:System.IAsyncResult"/> returned by the call 
+            to <see cref="M:MySql.Data.MySqlClient.MySqlCommand.BeginExecuteNonQuery"/>.</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.AddCallStatement(System.String)">
+            <summary>
+            Verifies if a query is valid even if it has not spaces or is a stored procedure call
+            </summary>
+            <param name="query">Query to validate</param>
+            <returns>If it is necessary to add call statement</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommand.Clone">
+            <summary>
+            Creates a clone of this MySqlCommand object.  CommandText, Connection, and Transaction properties
+            are included as well as the entire parameter list.
+            </summary>
+            <returns>The cloned MySqlCommand object</returns>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.UpdatedRowSource">
+            <summary>
+            Gets or sets how command results are applied to the DataRow when used by the 
+            Update method of the DbDataAdapter. 
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommand.DesignTimeVisible">
+            <summary>
+            Gets or sets a value indicating whether the command object should be visible in a Windows Form Designer control. 
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlCommandBuilder">
+            <summary>
+      Automatically generates single-table commands used to reconcile changes made to a DataSet with the associated MySQL database. This class cannot be inherited.
+    </summary><remarks>
+      <para>
+        The <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> does not automatically generate the SQL statements required to
+        reconcile changes made to a <see cref="T:System.Data.DataSet">DataSet</see> with the associated instance of MySQL.
+        However, you can create a <B>MySqlCommandBuilder</B> object to automatically generate SQL statements for
+        single-table updates if you set the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand">SelectCommand</see> property
+        of the <B>MySqlDataAdapter</B>. Then, any additional SQL statements that you do not set are generated by the
+        <B>MySqlCommandBuilder</B>.
+      </para>
+
+      <para>
+        The <B>MySqlCommandBuilder</B> registers itself as a listener for <see cref="M:MySql.Data.MySqlClient.MySqlDataAdapter.OnRowUpdating(System.Data.Common.RowUpdatingEventArgs)">RowUpdating</see>
+        events whenever you set the <see cref="P:MySql.Data.MySqlClient.MySqlCommandBuilder.DataAdapter" /> property. You can only associate one
+        <B>MySqlDataAdapter</B> or <B>MySqlCommandBuilder</B> object with each other at one time.
+      </para>
+
+      <para>
+        To generate INSERT, UPDATE, or DELETE statements, the <B>MySqlCommandBuilder</B> uses the
+        <B>SelectCommand</B> property to retrieve a required set of metadata automatically. If you change
+        the <B>SelectCommand</B> after the metadata has is retrieved (for example, after the first update), you
+        should call the <see cref="!:RefreshSchema" /> method to update the metadata.
+      </para>
+
+      <para>
+        The <B>SelectCommand</B> must also return at least one primary key or unique
+        column. If none are present, an <I>InvalidOperation</I> exception is generated,
+        and the commands are not generated.
+      </para>
+
+      <para>
+        The <B>MySqlCommandBuilder</B> also uses the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Connection">Connection</see>,
+        <see cref="P:MySql.Data.MySqlClient.MySqlCommand.CommandTimeout">CommandTimeout</see>, and <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Transaction">Transaction</see>
+        properties referenced by the <B>SelectCommand</B>. The user should call
+        <B>RefreshSchema</B> if any of these properties are modified, or if the
+        <B>SelectCommand</B> itself is replaced. Otherwise the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.InsertCommand">InsertCommand</see>,
+        <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateCommand">UpdateCommand</see>, and
+        <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.DeleteCommand">DeleteCommand</see> properties retain
+        their previous values.
+      </para>
+
+      <para>
+        If you call <i>Dispose</i>, the <B>MySqlCommandBuilder</B> is disassociated
+        from the <B>MySqlDataAdapter</B>, and the generated commands are no longer used.
+      </para>
+
+      <note>
+        Caution must be used when using MySqlCOmmandBuilder on MySql 4.0 systems.  With MySql 4.0,
+        database/schema information is not provided to the connector for a query.  This means that
+        a query that pulls columns from two identically named tables in two or more different databases
+        will not cause an exception to be thrown but will not work correctly.  Even more dangerous
+        is the situation where your select statement references database X but is executed in
+        database Y and both databases have tables with similar layouts.  This situation can cause
+        unwanted changes or deletes.
+        This note does not apply to MySQL versions 4.1 and later.
+      </note>
+
+    </remarks><example>
+      The	following example uses the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />, along
+      <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />, to
+      select rows from a data source. The example is passed an initialized
+      <see cref="T:System.Data.DataSet" />, a connection string, a
+      query string that is a SQL SELECT statement, and a string that is the
+      name of the database table. The example then creates a <B>MySqlCommandBuilder</B>.
+
+      <code lang="vbnet">
+        Public Shared Function SelectRows(myConnection As String, mySelectQuery As String, myTableName As String) As DataSet
+        Dim myConn As New MySqlConnection(myConnection)
+        Dim myDataAdapter As New MySqlDataAdapter()
+        myDataAdapter.SelectCommand = New MySqlCommand(mySelectQuery, myConn)
+        Dim cb As SqlCommandBuilder = New MySqlCommandBuilder(myDataAdapter)
+
+        myConn.Open()
+
+        Dim ds As DataSet = New DataSet
+        myDataAdapter.Fill(ds, myTableName)
+
+        ' Code to modify data in DataSet here
+
+        ' Without the MySqlCommandBuilder this line would fail.
+        myDataAdapter.Update(ds, myTableName)
+
+        myConn.Close()
+        End Function 'SelectRows
+      </code>
+      <code lang="C#">
+        public static DataSet SelectRows(string myConnection, string mySelectQuery, string myTableName)
+        {
+        MySqlConnection myConn = new MySqlConnection(myConnection);
+        MySqlDataAdapter myDataAdapter = new MySqlDataAdapter();
+        myDataAdapter.SelectCommand = new MySqlCommand(mySelectQuery, myConn);
+        MySqlCommandBuilder cb = new MySqlCommandBuilder(myDataAdapter);
+
+        myConn.Open();
+
+        DataSet ds = new DataSet();
+        myDataAdapter.Fill(ds, myTableName);
+
+        //code to modify data in DataSet here
+
+        //Without the MySqlCommandBuilder this line would fail
+        myDataAdapter.Update(ds, myTableName);
+
+        myConn.Close();
+
+        return ds;
+        }
+
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommandBuilder.#ctor">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlCommandBuilder" /> class.
+    </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommandBuilder.#ctor(MySql.Data.MySqlClient.MySqlDataAdapter)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlCommandBuilder" /> class
+      with the associated <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> object.
+    </summary><param name="adapter">
+      The <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> to use.
+    </param><remarks>
+      <para>
+        The <see cref="T:MySql.Data.MySqlClient.MySqlCommandBuilder" /> registers itself as a listener for
+        <see cref="E:MySql.Data.MySqlClient.MySqlDataAdapter.RowUpdating" /> events that are generated by the
+        <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> specified in this property.
+      </para>
+      <para>
+        When you create a new instance <B>MySqlCommandBuilder</B>, any existing
+        <B>MySqlCommandBuilder</B> associated with this <B>MySqlDataAdapter</B>
+        is released.
+      </para>
+    </remarks>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlCommandBuilder.DataAdapter">
+            <summary>
+      Gets or sets a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> object for which SQL statements are automatically generated.
+    </summary><value>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> object.
+    </value><remarks>
+      <para>
+        The <see cref="T:MySql.Data.MySqlClient.MySqlCommandBuilder" /> registers itself as a listener for
+        <see cref="E:MySql.Data.MySqlClient.MySqlDataAdapter.RowUpdating" /> events that are generated by the
+        <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> specified in this property.
+      </para>
+      <para>
+        When you create a new instance <B>MySqlCommandBuilder</B>, any existing
+        <B>MySqlCommandBuilder</B> associated with this <B>MySqlDataAdapter</B>
+        is released.
+      </para>
+    </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommandBuilder.DeriveParameters(MySql.Data.MySqlClient.MySqlCommand)">
+            <summary>
+            Retrieves parameter information from the stored procedure specified 
+            in the MySqlCommand and populates the Parameters collection of the 
+            specified MySqlCommand object.
+            This method is not currently supported since stored procedures are 
+            not available in MySql.
+            </summary>
+            <param name="command">The MySqlCommand referencing the stored 
+            procedure from which the parameter information is to be derived. 
+            The derived parameters are added to the Parameters collection of the 
+            MySqlCommand.</param>
+            <exception cref="T:System.InvalidOperationException">The command text is not 
+            a valid stored procedure name.</exception>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommandBuilder.GetDeleteCommand">
+            <summary>
+            Gets the delete command.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommandBuilder.GetUpdateCommand">
+            <summary>
+            Gets the update command.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommandBuilder.GetInsertCommand">
+            <summary>
+            Gets the insert command.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlCommandBuilder.GetParameterName(System.String)">
+            <summary>
+            
+            </summary>
+            <param name="parameterName"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlTokenizer.ReadQuotedToken(System.Char)">
+            <summary>
+             Read a single quoted identifier from the stream
+            </summary>
+            <param name="quoteChar"></param>
+            <returns></returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.CompressedStream">
+            <summary>
+            Summary description for CompressedStream.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlConnection">
+            <summary>
+      Represents an open connection to a MySQL Server database. This class cannot be inherited.
+    </summary><remarks>
+      <para>
+        A <b>MySqlConnection</b> object represents a session to a MySQL Server
+        data source.  When you create an instance of <B>MySqlConnection</B>, all
+        properties are set to their initial values. For a list of these values, see the
+        <B>MySqlConnection</B> constructor.
+      </para>
+
+      <para>
+        If the <B>MySqlConnection</B> goes out of scope, it is not closed. Therefore,
+        you must explicitly close the connection by calling <see cref="M:MySql.Data.MySqlClient.MySqlConnection.Close" />
+        or <see cref="M:MySql.Data.MySqlClient.MySqlConnection.Dispose" />.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and
+      a <B>MySqlConnection</B>. The <B>MySqlConnection</B> is opened and set as the
+      <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Connection" /> for the <B>MySqlCommand</B>. The example then calls
+      <see cref="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery" />, and closes the connection. To accomplish this, the <B>ExecuteNonQuery</B> is
+      passed a connection string and a query string that is a SQL INSERT
+      statement.
+      <code lang="vbnet">
+        <c>
+          Public Sub InsertRow(myConnectionString As String)
+          ' If the connection string is null, use a default.
+          If myConnectionString = "" Then
+          myConnectionString = "Database=Test;Data Source=localhost;User Id=username;Password=pass"
+          End If
+          Dim myConnection As New MySqlConnection(myConnectionString)
+          Dim myInsertQuery As String = "INSERT INTO Orders (id, customerId, amount) Values(1001, 23, 30.66)"
+          Dim myCommand As New MySqlCommand(myInsertQuery)
+          myCommand.Connection = myConnection
+          myConnection.Open()
+          myCommand.ExecuteNonQuery()
+          myCommand.Connection.Close()
+          End Sub
+        </c>
+      </code>
+      <code lang="C#">
+        <c>
+          public void InsertRow(string myConnectionString)
+          {
+          // If the connection string is null, use a default.
+          if(myConnectionString == "")
+          {
+          myConnectionString = "Database=Test;Data Source=localhost;User Id=username;Password=pass";
+          }
+          MySqlConnection myConnection = new MySqlConnection(myConnectionString);
+          string myInsertQuery = "INSERT INTO Orders (id, customerId, amount) Values(1001, 23, 30.66)";
+          MySqlCommand myCommand = new MySqlCommand(myInsertQuery);
+          myCommand.Connection = myConnection;
+          myConnection.Open();
+          myCommand.ExecuteNonQuery();
+          myCommand.Connection.Close();
+          }
+        </c>
+      </code>
+    </example>
+        </member>
+        <member name="E:MySql.Data.MySqlClient.MySqlConnection.InfoMessage">
+            <summary>Occurs when MySQL returns warnings as a result of executing a command or query.</summary><remarks>
+    </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.#ctor">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> class.
+    </summary><remarks>
+      When a new instance of <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> is created, the read/write
+      properties are set to the following initial values unless they are specifically
+      set using their associated keywords in the <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString" /> property.
+      <para />
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionTimeout" />
+          </term>
+          <term>15</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.Database" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.DataSource" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ServerVersion" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+      </list>
+      <para />
+      You can change the value for these properties only by using the <B>ConnectionString</B> property.
+    </remarks><example>
+    </example><overloads>
+      <summary>
+        Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> class.
+      </summary>
+    </overloads>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.#ctor(System.String)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> class when given a string containing the connection string.
+    </summary><remarks>
+      When a new instance of <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> is created, the read/write
+      properties are set to the following initial values unless they are specifically
+      set using their associated keywords in the <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString" /> property.
+      <para />
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionTimeout" />
+          </term>
+          <term>15</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.Database" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.DataSource" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+        <item>
+          <term>
+            <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ServerVersion" />
+          </term>
+          <term>empty string ("")</term>
+        </item>
+      </list>
+      <para />
+      You can change the value for these properties only by using the <B>ConnectionString</B> property.
+    </remarks><example>
+    </example><param name="connectionString">The connection properties used to open the MySQL database. </param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.ServerThread">
+            <summary>
+            Returns the id of the server thread this connection is executing on
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.DataSource">
+            <summary>
+            Gets the name of the MySQL server to which to connect.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionTimeout">
+            <summary>
+      Gets the time to wait while trying to establish a connection before terminating the attempt and generating an error.
+    </summary><exception cref="T:System.ArgumentException">The value set is less than 0.</exception><remarks>
+      A value of 0 indicates no limit, and should be avoided in a
+      <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString" /> because an attempt to connect
+      will wait indefinitely.
+    </remarks><example>
+      The following example creates a MySqlConnection
+      and sets some of its properties in the connection string.
+      <code lang="vbnet">
+        Public Sub CreateSqlConnection()
+        Dim myConnection As New MySqlConnection()
+        myConnection.ConnectionString = "Persist Security Info=False;Username=user;Password=pass;database=test1;server=localhost;Connect Timeout=30"
+        myConnection.Open()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateSqlConnection()
+        {
+        MySqlConnection myConnection = new MySqlConnection();
+        myConnection.ConnectionString = "Persist Security Info=False;Username=user;Password=pass;database=test1;server=localhost;Connect Timeout=30";
+        myConnection.Open();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.Database">
+            <summary>Gets the name of the current database or the database to be used after a connection is opened.</summary><returns>The name of the current database or the name of the database to be used after a connection is opened. The default value is an empty string.</returns><remarks>
+      <para>
+        The <B>Database</B> property does not update dynamically.
+        If you change the current database using a SQL statement, then this property
+        may reflect the wrong value.  If you change the current database using the <see cref="M:MySql.Data.MySqlClient.MySqlConnection.ChangeDatabase(System.String)" />
+        method, this property is updated to reflect the new database.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and displays
+      some of its read-only properties.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlConnection()
+        Dim myConnString As String = _
+        "Persist Security Info=False;database=test;server=localhost;user id=joeuser;pwd=pass"
+        Dim myConnection As New MySqlConnection( myConnString )
+        myConnection.Open()
+        MessageBox.Show( "Server Version: " + myConnection.ServerVersion _
+        + ControlChars.NewLine + "Database: " + myConnection.Database )
+        myConnection.ChangeDatabase( "test2" )
+        MessageBox.Show( "ServerVersion: " + myConnection.ServerVersion _
+        + ControlChars.NewLine + "Database: " + myConnection.Database )
+        myConnection.Close()
+        End Sub
+      </code>
+
+      <code lang="C#">
+        public void CreateMySqlConnection()
+        {
+        string myConnString =
+        "Persist Security Info=False;database=test;server=localhost;user id=joeuser;pwd=pass";
+        MySqlConnection myConnection = new MySqlConnection( myConnString );
+        myConnection.Open();
+        MessageBox.Show( "Server Version: " + myConnection.ServerVersion
+        + "\nDatabase: " + myConnection.Database );
+        myConnection.ChangeDatabase( "test2" );
+        MessageBox.Show( "ServerVersion: " + myConnection.ServerVersion
+        + "\nDatabase: " + myConnection.Database );
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.UseCompression">
+            <summary>
+            Indicates if this connection should use compression when communicating with the server.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.State">
+            <summary>Gets the current state of the connection.</summary><returns>
+      A bitwise combination of the <see cref="T:System.Data.ConnectionState" /> values. The default is <B>Closed</B>.
+    </returns><remarks>
+      The allowed state changes are:
+      <list type="bullet">
+        <item>
+          From <B>Closed</B> to <B>Open</B>, using the <B>Open</B> method of the connection object.
+        </item>
+        <item>
+          From <B>Open</B> to <B>Closed</B>, using either the <B>Close</B> method or the <B>Dispose</B> method of the connection object.
+        </item>
+      </list>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />, opens it,
+      displays some of its properties, then closes the connection.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlConnection(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion _
+        + ControlChars.Cr + "State: " + myConnection.State.ToString())
+        myConnection.Close()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlConnection(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion +
+        "\nState: " + myConnection.State.ToString());
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.ServerVersion">
+            <summary>Gets a string containing the version of the MySQL server to which the client is connected.</summary><returns>The version of the instance of MySQL.</returns><exception cref="T:System.InvalidOperationException">The connection is closed.</exception><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />, opens it,
+      displays some of its properties, then closes the connection.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlConnection(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion _
+        + ControlChars.Cr + "State: " + myConnection.State.ToString())
+        myConnection.Close()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlConnection(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion +
+        "\nState: " + myConnection.State.ToString());
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString">
+            <summary>
+      Gets or sets the string used to connect to a MySQL Server database.
+    </summary><remarks>
+      <para>
+        The <B>ConnectionString</B> returned may not be exactly like what was originally
+        set but will be indentical in terms of keyword/value pairs.  Security information
+        will not be included unless the Persist Security Info value is set to true.
+      </para>
+      <para>
+        You can use the <B>ConnectionString</B> property to connect to a database.
+        The following example illustrates a typical connection string.
+      </para>
+      <c>"Persist Security Info=False;database=MyDB;server=MySqlServer;user id=myUser;Password=myPass"</c>
+      <para>
+        The <B>ConnectionString</B> property can be set only when the connection is
+        closed. Many of the connection string values have corresponding read-only
+        properties. When the connection string is set, all of these properties are
+        updated, except when an error is detected. In this case, none of the properties
+        are updated. <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> properties return only those settings contained in the
+        <B>ConnectionString</B>.
+      </para>
+      <para>
+        To connect to a local machine, specify "localhost" for the server. If you do not
+        specify a server, localhost is assumed.
+      </para>
+      <para>
+        Resetting the <B>ConnectionString</B> on a closed connection resets all
+        connection string values (and related properties) including the password. For
+        example, if you set a connection string that includes "Database= MyDb", and
+        then reset the connection string to "Data Source=myserver;User Id=myUser;Password=myPass",
+        the <see cref="P:MySql.Data.MySqlClient.MySqlConnection.Database" /> property is no longer set to MyDb.
+      </para>
+      <para>
+        The connection string is parsed immediately after being set. If errors in
+        syntax are found when parsing, a runtime exception, such as <see cref="T:System.ArgumentException" />,
+        is generated. Other errors can be found only when an attempt is made to open the
+        connection.
+      </para>
+      <para>
+        The basic format of a connection string consists of a series of keyword/value
+        pairs separated by semicolons. The equal sign (=) connects each keyword and its
+        value. To include values that contain a semicolon, single-quote character, or
+        double-quote character, the value must be enclosed in double quotes. If the
+        value contains both a semicolon and a double-quote character, the value can be
+        enclosed in single quotes. The single quote is also useful if the value begins
+        with a double-quote character. Conversely, the double quote can be used if the
+        value begins with a single quote. If the value contains both single-quote and
+        double-quote characters, the quote character used to enclose the value must be
+        doubled each time it occurs within the value.
+      </para>
+      <para>
+        To include preceding or trailing spaces in the string value, the value must
+        be enclosed in either single quotes or double quotes. Any leading or trailing
+        spaces around integer, Boolean, or enumerated values are ignored, even if
+        enclosed in quotes. However, spaces within a string literal keyword or value are
+        preserved. Using .NET Framework version 1.1, single or double quotes may be used
+        within a connection string without using delimiters (for example, Data Source=
+        my'Server or Data Source= my"Server), unless a quote character is the first or
+        last character in the value.
+      </para>
+      <para>
+        To include an equal sign (=) in a keyword or value, it must be preceded by
+        another equal sign. For example, in the hypothetical connection string
+      </para>
+      <c>"key==word=value"</c>
+      <para />
+      <para>the keyword is "key=word" and the value is "value".</para>
+      <para>
+        If a specific keyword in a keyword= value pair occurs multiple times in a
+        connection string, the last occurrence listed is used in the value set.
+      </para>
+      <para>Keywords are not case sensitive.</para>
+      <para>
+        The following table lists the valid names for keyword values within the
+        <B>ConnectionString</B>.
+      </para>
+
+      <div class="tablediv">
+        <table class="dtTABLE" cellspacing="0">
+          <tr valign="top">
+            <th width="33%">Name</th>
+            <th width="33%">Default</th>
+            <th width="33%">Description</th>
+          </tr>
+          <tr>
+            <td>
+              Connect Timeout<para>  -or-  </para>Connection Timeout
+            </td>
+            <td>15</td>
+            <td>
+              The length of time (in seconds) to wait for a connection to the server before
+              terminating the attempt and generating an error.
+            </td>
+          </tr>
+          <tr>
+            <td>
+              Host<para>  -or-  </para>Server<para>  -or-  </para>Data Source<para>  -or-  </para>
+              DataSource<para>  -or-  </para>Address<para>  -or-  </para>Addr<para>  -or-  </para>
+              Network Address
+            </td>
+            <td>localhost</td>
+            <td>
+              <para>
+                The name or network address of the instance of MySQL to which to connect.  Multiple hosts can be
+                specified separated by &amp;.  This can be useful where multiple MySQL servers are configured for replication
+                and you are not concerned about the precise server you are connecting to.  No attempt is made by the provider to
+                synchronize writes to the database so care should be taken when using this option.
+              </para>
+              <para>
+                In Unix environment with Mono, this can be a fully qualified path to MySQL socket filename. With this configuration, the Unix socket will be used instead of TCP/IP socket.
+                Currently only a single socket name can be given so accessing MySQL in a replicated environment using Unix sockets is not currently supported.
+              </para>
+            </td>
+          </tr>
+          <tr>
+            <td>Port</td>
+            <td>3306</td>
+            <td>
+              The port MySQL is using to listen for connections.  This value is ignored if the connection protocol 
+              is anything but socket.
+            </td>
+          </tr>
+          <tr>
+            <td>Protocol</td>
+            <td>socket</td>
+            <td>
+              Specifies the type of connection to make to the server.<para>Values can be:</para>
+              socket or tcp for a socket connection<br />
+              pipe for a named pipe connection<br />
+              unix for a Unix socket connection<br />
+              memory to use MySQL shared memory
+            </td>
+          </tr>
+          <tr>
+            <td>
+              CharSet<para>  -or  </para>Character Set
+            </td>
+            <td />
+            <td>
+              Specifies the character set that should be used to encode all queries sent to the server.
+              Resultsets are still returned in the character set of the data returned.
+            </td>
+          </tr>
+          <tr>
+            <td>Logging</td>
+            <td>false</td>
+            <td>When true, various pieces of information is output to any configured TraceListeners.</td>
+          </tr>
+          <tr>
+            <td>Allow Batch</td>
+            <td>true</td>
+            <td>
+              When true, multiple SQL statements can be sent with one command execution.<br /><br />
+              -Note-<br />
+              Starting with MySQL 4.1.1, batch statements should be separated by the server-defined seperator character.<br />
+              Commands sent to earlier versions of MySQL should be seperated with ';'.
+            </td>
+          </tr>
+          <tr>
+            <td>Encrypt</td>
+            <td>false</td>
+            <td>
+              When <B>true</B>, SSL/TLS encryption is used for all data sent between the
+              client and server if the server has a certificate installed. Recognized values
+              are <B>true</B>, <B>false</B>, <B>yes</B>, and <B>no</B>.
+            </td>
+          </tr>
+          <tr>
+            <td>
+              Initial Catalog<para>  -or-  </para>Database
+            </td>
+            <td>mysql</td>
+            <td>The name of the database to use intially</td>
+          </tr>
+          <tr>
+            <td>
+              Password<para>  -or-  </para>pwd
+            </td>
+            <td />
+            <td>The password for the MySQL account being used.</td>
+          </tr>
+          <tr>
+            <td>Persist Security Info</td>
+            <td>false</td>
+            <td>
+              When set to <B>false</B> or <B>no</B> (strongly recommended), security-sensitive
+              information, such as the password, is not returned as part of the connection if
+              the connection is open or has ever been in an open state. Resetting the
+              connection string resets all connection string values including the password.
+              Recognized values are <B>true</B>, <B>false</B>, <B>yes</B>, and <B>no</B>.
+            </td>
+          </tr>
+          <tr>
+            <td>
+              User Id<para>  -or-  </para>Username<para>  -or-  </para>Uid<para>  -or-  </para>User name
+            </td>
+            <td />
+            <td>The MySQL login account being used.</td>
+          </tr>
+          <tr>
+            <td>Shared Memory Name</td>
+            <td>MYSQL</td>
+            <td>The name of the shared memory object to use for communication if the connection protocol is set to memory.</td>
+          </tr>
+          <tr>
+            <td>Allow Zero Datetime</td>
+            <td>false</td>
+            <td>
+              True to have MySqlDataReader.GetValue() return a MySqlDateTime for date or datetime columns that have illegal values.
+              False will cause a DateTime object to be returned for legal values and an exception will be thrown for illegal values.
+            </td>
+          </tr>
+          <tr>
+            <td>Convert Zero Datetime</td>
+            <td>false</td>
+            <td>
+              True to have MySqlDataReader.GetValue() and MySqlDataReader.GetDateTime()
+              return DateTime.MinValue for date or datetime columns that have illegal values.
+            </td>
+          </tr>
+          <tr>
+            <td>
+              Pipe Name<para>  -or-  </para>Pipe
+            </td>
+            <td>mysql</td>
+            <td>
+              When set to the name of a named pipe, the <B>MySqlConnection</B> will attempt to connect to MySQL
+              on that named pipe.<br /><br />This settings only applies to the Windows platform.
+            </td>
+          </tr>
+          <tr>
+            <td>
+              Use Performance Monitor<para>  -or-  </para>UsePerformanceMonitor
+            </td>
+            <td>false</td>
+            <td>
+              Posts performance data that can be tracked using perfmon
+            </td>
+          </tr>
+          <tr>
+            <td>
+              Procedure Cache Size
+            </td>
+            <td>25</td>
+            <td>
+              How many stored procedure definitions can be held in the cache
+            </td>
+          </tr>
+          <tr>
+            <td>
+              Ignore Prepare
+            </td>
+            <td>true</td>
+            <td>
+              Instructs the provider to ignore any attempts to prepare commands.  This option
+              was added to allow a user to disable prepared statements in an entire application
+              without modifying the code.  A user might want to do this if errors or bugs are
+              encountered with MySQL prepared statements.
+            </td>
+          </tr>
+          <tr>
+            <td>Use Procedure Bodies</td>
+            <td>true</td>
+            <td>
+              Instructs the provider to attempt to call the procedure without first resolving the metadata.  This
+              is useful in situations where the calling user does not have access to the mysql.proc table.  To
+              use this mode, the parameters for the procedure must be added to the command in the same order
+              as they appear in the procedure definition and their types must be explicitly set.
+            </td>
+          </tr>
+          <tr>
+            <td>Auto Enlist</td>
+            <td>true</td>
+            <td>
+              Indicates whether the connection should automatically enlist in the current transaction,
+              if there is one.
+            </td>
+          </tr>
+          <tr>
+            <td>Respect Binary Flags</td>
+            <td>true</td>
+            <td>
+              Indicates whether the connection should respect all binary flags sent to the client
+              as part of column metadata.  False will cause the connector to behave like
+              Connector/Net 5.0 and earlier.
+            </td>
+          </tr>
+          <tr>
+            <td>BlobAsUTF8IncludePattern</td>
+            <td>null</td>
+            <td>
+              Pattern that should be used to indicate which blob columns should be treated as UTF-8.
+            </td>
+          </tr>
+          <tr>
+            <td>BlobAsUTF8ExcludePattern</td>
+            <td>null</td>
+            <td>
+              Pattern that should be used to indicate which blob columns should not be treated as UTF-8.
+            </td>
+          </tr>
+          <tr>
+            <td>Default Command Timeout</td>
+            <td>30</td>
+            <td>
+              The default timeout that new MySqlCommand objects will use unless changed.
+            </td>
+          </tr>
+          <tr>
+            <td>Allow User Variables</td>
+            <td>false</td>
+            <td>
+              Should the provider expect user variables in the SQL.
+            </td>
+          </tr>
+          <tr>
+            <td>Interactive -or- Interactive Session</td>
+            <td>false</td>
+            <td>
+              Should this session be considered interactive?
+            </td>
+          </tr>
+          <tr>
+            <td>Functions Return String</td>
+            <td>false</td>
+            <td>
+              Set this option to true to force the return value of SQL functions to be string.
+            </td>
+          </tr>
+          <tr>
+            <td>Use Affected Rows</td>
+            <td>false</td>
+            <td>
+              Set this option to true to cause the affected rows reported to reflect only the 
+              rows that are actually changed.  By default, the number of rows that are matched 
+              is returned.
+            </td>
+          </tr>
+        </table>
+      </div>
+      <para>
+        The following table lists the valid names for connection pooling values within
+        the <B>ConnectionString</B>. For more information about connection pooling, see
+        Connection Pooling for the MySql Data Provider.
+      </para>
+      <div class="tablediv">
+        <table class="dtTABLE" cellspacing="0">
+          <tr valign="top">
+            <th width="33%">Name</th>
+            <th width="33%">Default</th>
+            <th width="33%">Description</th>
+          </tr>
+          <tr>
+            <td>Connection Lifetime</td>
+            <td>0</td>
+            <td>
+              When a connection is returned to the pool, its creation time is compared with
+              the current time, and the connection is destroyed if that time span (in seconds)
+              exceeds the value specified by <B>Connection Lifetime</B>. This is useful in
+              clustered configurations to force load balancing between a running server and a
+              server just brought online.
+              <para>
+                A value of zero (0) causes pooled connections to have the maximum connection
+                timeout.
+              </para>
+            </td>
+          </tr>
+          <tr>
+            <td>Max Pool Size</td>
+            <td>100</td>
+            <td>The maximum number of connections allowed in the pool.</td>
+          </tr>
+          <tr>
+            <td>Min Pool Size</td>
+            <td>0</td>
+            <td>The minimum number of connections allowed in the pool.</td>
+          </tr>
+          <tr>
+            <td>Pooling</td>
+            <td>true</td>
+            <td>
+              When <B>true</B>, the <B>MySqlConnection</B> object is drawn from the appropriate
+              pool, or if necessary, is created and added to the appropriate pool. Recognized
+              values are <B>true</B>, <B>false</B>, <B>yes</B>, and <B>no</B>.
+            </td>
+          </tr>
+          <tr>
+            <td>Connection Reset</td>
+            <td>false</td>
+            <td>
+              Specifies whether the database connection should be reset when being
+              drawn from the pool.  Leaving this as <b>false</b> will yeild much faster
+              connection opens but the user should understand the side effects
+              of doing this such as temporary tables and user variables from the previous
+              session not being cleared out.
+            </td>
+          </tr>
+          <tr>
+            <td>Cache Server Properties</td>
+            <td>false</td>
+            <td>
+              Specifies whether the server variables are cached between pooled connections.
+              On systems where the variables change infrequently and there are lots of
+              connection attempts, this can speed up things dramatically.
+            </td>
+          </tr>
+        </table>
+      </div>
+      <para>
+        When setting keyword or connection pooling values that require a Boolean
+        value, you can use 'yes' instead of 'true', and 'no' instead of 'false'.
+      </para>
+      <para>
+        <B>Note</B>  The MySql Data Provider uses the native socket protocol to
+        communicate with MySQL.  Therefore, it does not support the use of an ODBC data source name (DSN) when
+        connecting to MySQL because it does not add an ODBC layer.
+      </para>
+      <para>
+        <B>CAUTION</B>  In this release, the application should use caution when constructing a
+        connection string based on user input (for example when retrieving user ID and password information from a
+        dialog box, and appending it to the connection string). The application should
+        ensure that a user cannot embed extra connection string parameters in these
+        values (for example, entering a password as "validpassword;database=somedb" in
+        an attempt to attach to a different database).
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and sets some of its properties
+      <code lang="vbnet">
+        Public Sub CreateConnection()
+        Dim myConnection As New MySqlConnection()
+        myConnection.ConnectionString = "Persist Security Info=False;database=myDB;server=myHost;Connect Timeout=30;user id=myUser; pwd=myPass"
+        myConnection.Open()
+        End Sub 'CreateConnection
+      </code>
+      <code lang="C#">
+        public void CreateConnection()
+        {
+        MySqlConnection myConnection = new MySqlConnection();
+        myConnection.ConnectionString = "Persist Security Info=False;database=myDB;server=myHost;Connect Timeout=30;user id=myUser; pwd=myPass";
+        myConnection.Open();
+        }
+      </code>
+    </example><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> in Unix environment with Mono installed. MySQL socket filename used in this example is "/var/lib/mysql/mysql.sock". The actual filename depends on your MySQL configuration.
+      <code lang="vbnet">
+        Public Sub CreateConnection()
+        Dim myConnection As New MySqlConnection()
+        myConnection.ConnectionString = "database=myDB;server=/var/lib/mysql/mysql.sock;user id=myUser; pwd=myPass"
+        myConnection.Open()
+        End Sub 'CreateConnection
+      </code>
+      <code lang="C#">
+        public void CreateConnection()
+        {
+        MySqlConnection myConnection = new MySqlConnection();
+        myConnection.ConnectionString = "database=myDB;server=/var/lib/mysql/mysql.sock;user id=myUser; pwd=myPass";
+        myConnection.Open();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.EnlistTransaction(System.Transactions.Transaction)">
+            <summary>
+            Enlists in the specified transaction. 
+            </summary>
+            <param name="transaction">
+            A reference to an existing <see cref="T:System.Transactions.Transaction"/> in which to enlist.
+            </param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction">
+            <summary>Begins a database transaction.</summary><returns>An object representing the new transaction.</returns><exception cref="T:System.InvalidOperationException">Parallel transactions are not supported.</exception><remarks>
+      <para>This command is equivalent to the MySQL BEGIN TRANSACTION command.</para>
+      <para>
+        You must explicitly commit or roll back the transaction using the <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Commit" /> or
+        <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Rollback" /> method.
+        <note>
+          If you do not specify an isolation level, the default isolation level is used. To specify an isolation
+          level with the <see cref="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction" /> method, use the overload that takes the <I>iso</I> parameter.  Also
+          note that any attempt to begin a transaction while a transaction is in progress will throw an exception on MySQL 4.1 and higher.
+          On MySQL 4.0, an exception will not be thrown because servers 4.0 and earlier did not report their transacation status.
+        </note>
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and a
+      <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" />.  It also demonstrates how to use the <B>BeginTransaction</B>, a
+      <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Commit" />, and <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Rollback" /> methods.
+      <code lang="vbnet">
+        Public Sub RunTransaction(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+
+        Dim myCommand As MySqlCommand = myConnection.CreateCommand()
+        Dim myTrans As MySqlTransaction
+
+        ' Start a local transaction
+        myTrans = myConnection.BeginTransaction()
+        ' Must assign both transaction object and connection
+        ' to Command object for a pending local transaction
+        myCommand.Connection = myConnection
+        myCommand.Transaction = myTrans
+
+        Try
+        myCommand.CommandText = "Insert into Test (id, desc) VALUES (100, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myCommand.CommandText = "Insert into Test (id, desc) VALUES (101, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myTrans.Commit()
+        Console.WriteLine("Both records are written to database.")
+        Catch e As Exception
+        Try
+        myTrans.Rollback()
+        Catch ex As MySqlException
+        If Not myTrans.Connection Is Nothing Then
+        Console.WriteLine("An exception of type " + ex.GetType().ToString() + _
+        " was encountered while attempting to roll back the transaction.")
+        End If
+        End Try
+
+        Console.WriteLine("An exception of type " + e.GetType().ToString() + _
+        "was encountered while inserting the data.")
+        Console.WriteLine("Neither record was written to database.")
+        Finally
+        myConnection.Close()
+        End Try
+        End Sub
+      </code>
+      <code lang="C#">
+        public void RunTransaction(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+
+        MySqlCommand myCommand = myConnection.CreateCommand();
+        MySqlTransaction myTrans;
+
+        // Start a local transaction
+        myTrans = myConnection.BeginTransaction();
+        // Must assign both transaction object and connection
+        // to Command object for a pending local transaction
+        myCommand.Connection = myConnection;
+        myCommand.Transaction = myTrans;
+
+        try
+        {
+        myCommand.CommandText = "insert into Test (id, desc) VALUES (100, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myCommand.CommandText = "insert into Test (id, desc) VALUES (101, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myTrans.Commit();
+        Console.WriteLine("Both records are written to database.");
+        }
+        catch(Exception e)
+        {
+        try
+        {
+        myTrans.Rollback();
+        }
+        catch (SqlException ex)
+        {
+        if (myTrans.Connection != null)
+        {
+        Console.WriteLine("An exception of type " + ex.GetType() +
+        " was encountered while attempting to roll back the transaction.");
+        }
+        }
+
+        Console.WriteLine("An exception of type " + e.GetType() +
+        " was encountered while inserting the data.");
+        Console.WriteLine("Neither record was written to database.");
+        }
+        finally
+        {
+        myConnection.Close();
+        }
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction(System.Data.IsolationLevel)">
+            <summary>Begins a database transaction with the specified isolation level.</summary><param name="iso">The isolation level under which the transaction should run. </param><returns>An object representing the new transaction.</returns><exception cref="T:System.InvalidOperationException">Parallel exceptions are not supported.</exception><remarks>
+      <para>This command is equivalent to the MySQL BEGIN TRANSACTION command.</para>
+      <para>
+        You must explicitly commit or roll back the transaction using the <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Commit" /> or
+        <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Rollback" /> method.
+        <note>
+          If you do not specify an isolation level, the default isolation level is used. To specify an isolation
+          level with the <see cref="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction" /> method, use the overload that takes the <I>iso</I> parameter.
+          Also note that any attempt to begin a transaction while a transaction is in progress will throw an exception on MySQL 4.1 and higher.
+          On MySQL 4.0, an exception will not be thrown because servers 4.0 and earlier did not report their transacation status.
+        </note>
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and a
+      <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" />.  It also demonstrates how to use the <B>BeginTransaction</B>, a
+      <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Commit" />, and <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Rollback" /> methods.
+      <code lang="vbnet">
+        Public Sub RunTransaction(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+
+        Dim myCommand As MySqlCommand = myConnection.CreateCommand()
+        Dim myTrans As MySqlTransaction
+
+        ' Start a local transaction
+        myTrans = myConnection.BeginTransaction()
+        ' Must assign both transaction object and connection
+        ' to Command object for a pending local transaction
+        myCommand.Connection = myConnection
+        myCommand.Transaction = myTrans
+
+        Try
+        myCommand.CommandText = "Insert into Test (id, desc) VALUES (100, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myCommand.CommandText = "Insert into Test (id, desc) VALUES (101, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myTrans.Commit()
+        Console.WriteLine("Both records are written to database.")
+        Catch e As Exception
+        Try
+        myTrans.Rollback()
+        Catch ex As MySqlException
+        If Not myTrans.Connection Is Nothing Then
+        Console.WriteLine("An exception of type " + ex.GetType().ToString() + _
+        " was encountered while attempting to roll back the transaction.")
+        End If
+        End Try
+
+        Console.WriteLine("An exception of type " + e.GetType().ToString() + _
+        "was encountered while inserting the data.")
+        Console.WriteLine("Neither record was written to database.")
+        Finally
+        myConnection.Close()
+        End Try
+        End Sub
+      </code>
+      <code lang="C#">
+        public void RunTransaction(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+
+        MySqlCommand myCommand = myConnection.CreateCommand();
+        MySqlTransaction myTrans;
+
+        // Start a local transaction
+        myTrans = myConnection.BeginTransaction();
+        // Must assign both transaction object and connection
+        // to Command object for a pending local transaction
+        myCommand.Connection = myConnection;
+        myCommand.Transaction = myTrans;
+
+        try
+        {
+        myCommand.CommandText = "insert into Test (id, desc) VALUES (100, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myCommand.CommandText = "insert into Test (id, desc) VALUES (101, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myTrans.Commit();
+        Console.WriteLine("Both records are written to database.");
+        }
+        catch(Exception e)
+        {
+        try
+        {
+        myTrans.Rollback();
+        }
+        catch (SqlException ex)
+        {
+        if (myTrans.Connection != null)
+        {
+        Console.WriteLine("An exception of type " + ex.GetType() +
+        " was encountered while attempting to roll back the transaction.");
+        }
+        }
+
+        Console.WriteLine("An exception of type " + e.GetType() +
+        " was encountered while inserting the data.");
+        Console.WriteLine("Neither record was written to database.");
+        }
+        finally
+        {
+        myConnection.Close();
+        }
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.ChangeDatabase(System.String)">
+            <summary>Changes the current database for an open MySqlConnection.</summary><param name="databaseName">The name of the database to use.</param><remarks>
+      <para>
+        The value supplied in the <I>database</I> parameter must be a valid database
+        name. The <I>database</I> parameter cannot contain a null value, an empty
+        string, or a string with only blank characters.
+      </para>
+
+      <para>
+        When you are using connection pooling against MySQL, and you close
+        the connection, it is returned to the connection pool. The next time the
+        connection is retrieved from the pool, the reset connection request
+        executes before the user performs any operations.
+      </para>
+    </remarks><exception cref="T:System.ArgumentException">The database name is not valid.</exception><exception cref="T:System.InvalidOperationException">The connection is not open.</exception><exception cref="T:MySql.Data.MySqlClient.MySqlException">Cannot change the database.</exception><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and displays
+      some of its read-only properties.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlConnection()
+        Dim myConnString As String = _
+        "Persist Security Info=False;database=test;server=localhost;user id=joeuser;pwd=pass"
+        Dim myConnection As New MySqlConnection( myConnString )
+        myConnection.Open()
+        MessageBox.Show( "Server Version: " + myConnection.ServerVersion _
+        + ControlChars.NewLine + "Database: " + myConnection.Database )
+        myConnection.ChangeDatabase( "test2" )
+        MessageBox.Show( "ServerVersion: " + myConnection.ServerVersion _
+        + ControlChars.NewLine + "Database: " + myConnection.Database )
+        myConnection.Close()
+        End Sub
+      </code>
+
+      <code lang="C#">
+        public void CreateMySqlConnection()
+        {
+        string myConnString =
+        "Persist Security Info=False;database=test;server=localhost;user id=joeuser;pwd=pass";
+        MySqlConnection myConnection = new MySqlConnection( myConnString );
+        myConnection.Open();
+        MessageBox.Show( "Server Version: " + myConnection.ServerVersion
+        + "\nDatabase: " + myConnection.Database );
+        myConnection.ChangeDatabase( "test2" );
+        MessageBox.Show( "ServerVersion: " + myConnection.ServerVersion
+        + "\nDatabase: " + myConnection.Database );
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.Ping">
+            <summary>
+            Ping
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.Open">
+            <summary>Opens a database connection with the property settings specified by the ConnectionString.</summary><exception cref="T:System.InvalidOperationException">Cannot open a connection without specifying a data source or server.</exception><exception cref="T:MySql.Data.MySqlClient.MySqlException">A connection-level error occurred while opening the connection.</exception><remarks>
+      <para>
+        The <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> draws an open connection from the connection pool if one is available.
+        Otherwise, it establishes a new connection to an instance of MySQL.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />, opens it,
+      displays some of its properties, then closes the connection.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlConnection(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion _
+        + ControlChars.Cr + "State: " + myConnection.State.ToString())
+        myConnection.Close()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlConnection(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion +
+        "\nState: " + myConnection.State.ToString());
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.CreateCommand">
+            <summary>
+      Creates and returns a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> object associated with the <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />.
+    </summary><returns>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> object.
+    </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.Clone">
+            <summary>
+            Creates a new MySqlConnection object with the exact same ConnectionString value
+            </summary>
+            <returns>A cloned MySqlConnection object</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.Close">
+            <summary>Closes the connection to the database. This is the preferred method of closing any open connection.</summary><remarks>
+      <para>
+        The <B>Close</B> method rolls back any pending transactions. It then releases
+        the connection to the connection pool, or closes the connection if connection
+        pooling is disabled.
+      </para>
+      <para>
+        An application can call <B>Close</B> more than one time. No exception is
+        generated.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />, opens it,
+      displays some of its properties, then closes the connection.
+
+      <code lang="vbnet">
+        Public Sub CreateMySqlConnection(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion _
+        + ControlChars.Cr + "State: " + myConnection.State.ToString())
+        myConnection.Close()
+        End Sub
+      </code>
+      <code lang="C#">
+        public void CreateMySqlConnection(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+        MessageBox.Show("ServerVersion: " + myConnection.ServerVersion +
+        "\nState: " + myConnection.State.ToString());
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.SetCommandTimeout(System.Int32)">
+            <summary>
+            Sets query timeout. If timeout has been set prior and not
+            yet cleared ClearCommandTimeout(), it has no effect.
+            </summary>
+            <param name="value">timeout in seconds</param>
+            <returns>true if </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.ClearCommandTimeout">
+            <summary>
+            Clears query timeout, allowing next SetCommandTimeout() to succeed.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.ClearPool(MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>Empties the connection pool associated with the specified connection.</summary><param name="connection">
+      The <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> associated with the pool to be cleared.
+    </param><remarks>
+      <para>
+        ClearPool clears the connection pool that is associated with the connection.
+        If additional connections associated with connection are in use at the time of the call,
+        they are marked appropriately and are discarded (instead of being returned to the pool)
+        when Close is called on them.
+      </para>
+    </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.ClearAllPools">
+            <summary>Clears all connection pools.</summary><remarks>
+      <para>
+        ClearAllPools essentially performs a <see cref="M:MySql.Data.MySqlClient.MySqlConnection.ClearPool(MySql.Data.MySqlClient.MySqlConnection)" /> on all current connection
+        pools.
+      </para>
+    </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransactionAsync">
+            <summary>
+            Async version of BeginTransaction
+            </summary>
+            <returns>An object representing the new transaction.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransactionAsync(System.Data.IsolationLevel)">
+            <summary>
+            Async version of BeginTransaction
+            </summary>
+            <param name="iso">The isolation level under which the transaction should run. </param>
+            <returns>An object representing the new transaction.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.ChangeDataBaseAsync(System.String,System.Threading.CancellationToken)">
+            <summary>
+            Async version of ChangeDataBase
+            </summary>
+            <param name="databaseName">The name of the database to use.</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.CloseAsync">
+            <summary>
+            Async version of Close
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.ClearPoolAsync(MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>
+            Async version of ClearPool
+            </summary>
+            <param name="connection">The connection associated with the pool to be cleared.</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.ClearAllPoolsAsync">
+            <summary>
+            Async version of ClearAllPools
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.GetSchemaCollectionAsync(System.String,System.String[])">
+            <summary>
+            Async version of GetSchemaCollection
+            </summary>
+            <param name="collectionName">Name of the collection</param>
+            <param name="restrictionValues">Values to restrict</param>
+            <returns>A schema collection</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.GetSchema">
+            <summary>
+            Returns schema information for the data source of this <see cref="T:System.Data.Common.DbConnection"/>. 
+            </summary>
+            <returns>A <see cref="T:System.Data.DataTable"/> that contains schema information. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.GetSchema(System.String)">
+            <summary>
+            Returns schema information for the data source of this 
+            <see cref="T:System.Data.Common.DbConnection"/> using the specified string for the schema name. 
+            </summary>
+            <param name="collectionName">Specifies the name of the schema to return. </param>
+            <returns>A <see cref="T:System.Data.DataTable"/> that contains schema information. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlConnection.GetSchema(System.String,System.String[])">
+            <summary>
+            Returns schema information for the data source of this <see cref="T:System.Data.Common.DbConnection"/>
+            using the specified string for the schema name and the specified string array 
+            for the restriction values. 
+            </summary>
+            <param name="collectionName">Specifies the name of the schema to return.</param>
+            <param name="restrictionValues">Specifies a set of restriction values for the requested schema.</param>
+            <returns>A <see cref="T:System.Data.DataTable"/> that contains schema information.</returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlInfoMessageEventHandler">
+            <summary>
+            Represents the method that will handle the <see cref="E:MySql.Data.MySqlClient.MySqlConnection.InfoMessage"/> event of a 
+            <see cref="T:MySql.Data.MySqlClient.MySqlConnection"/>.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlInfoMessageEventArgs">
+            <summary>
+            Provides data for the InfoMessage event. This class cannot be inherited.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlInfoMessageEventArgs.errors">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.CommandTimer">
+            <summary>
+            IDisposable wrapper around SetCommandTimeout and ClearCommandTimeout
+            functionality
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Crypt">
+            <summary>
+            Summary description for Crypt.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Crypt.XorScramble(System.Byte[],System.Int32,System.Byte[],System.Int32,System.Byte[],System.Int32)">
+            <summary>
+            Simple XOR scramble
+            </summary>
+            <param name="from">Source array</param>
+            <param name="fromIndex">Index inside source array</param>
+            <param name="to">Destination array</param>
+            <param name="toIndex">Index inside destination array</param>
+            <param name="password">Password used to xor the bits</param>
+            <param name="length">Number of bytes to scramble</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Crypt.Get411Password(System.String,System.String)">
+            <summary>
+            Returns a byte array containing the proper encryption of the 
+            given password/seed according to the new 4.1.1 authentication scheme.
+            </summary>
+            <param name="password"></param>
+            <param name="seed"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Crypt.EncryptPassword(System.String,System.String,System.Boolean)">
+            <summary>
+            Encrypts a password using the MySql encryption scheme
+            </summary>
+            <param name="password">The password to encrypt</param>
+            <param name="seed">The encryption seed the server gave us</param>
+            <param name="new_ver">Indicates if we should use the old or new encryption scheme</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Crypt.Hash(System.String)">
+            <summary>
+            Hashes a password using the algorithm from Monty's code.
+            The first element in the return is the result of the "old" hash.
+            The second element is the rest of the "new" hash.
+            </summary>
+            <param name="P">Password to be hashed</param>
+            <returns>Two element array containing the hashed values</returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlDataAdapter">
+            <summary>
+      Represents a set of data commands and a database connection that are used to fill a dataset and update a MySQL database. This class cannot be inherited.
+    </summary><remarks>
+      <para>
+        The <B>MySQLDataAdapter</B>, serves as a bridge between a <see cref="T:System.Data.DataSet" />
+        and MySQL for retrieving and saving data. The <B>MySQLDataAdapter</B> provides this
+        bridge by mapping <see cref="M:System.Data.Common.DbDataAdapter.Fill(System.Data.DataSet)" />, which changes the data in the
+        <B>DataSet</B> to match the data in the data source, and <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)" />,
+        which changes the data in the data source to match the data in the <B>DataSet</B>,
+        using the appropriate SQL statements against the data source.
+      </para>
+      <para>
+        When the <B>MySQLDataAdapter</B> fills a <B>DataSet</B>, it will create the necessary
+        tables and columns for the returned data if they do not already exist. However, primary
+        key information will not be included in the implicitly created schema unless the
+        <see cref="T:System.Data.MissingSchemaAction" /> property is set to <see cref="F:System.Data.MissingSchemaAction.AddWithKey" />.
+        You may also have the <B>MySQLDataAdapter</B> create the schema of the <B>DataSet</B>,
+        including primary key information, before filling it with data using <see cref="M:System.Data.Common.DbDataAdapter.FillSchema(System.Data.DataTable,System.Data.SchemaType)" />.
+      </para>
+      <para>
+        <B>MySQLDataAdapter</B> is used in conjunction with <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />
+        and <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> to increase performance when connecting to a MySQL database.
+      </para>
+      <para>
+        The <B>MySQLDataAdapter</B> also includes the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" />,
+        <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.InsertCommand" />, <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.DeleteCommand" />,
+        <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateCommand" />, and <see cref="P:System.Data.Common.DataAdapter.TableMappings" />
+        properties to facilitate the loading and updating of data.
+      </para>
+      <para>
+        When an instance of <B>MySQLDataAdapter</B> is created, the read/write properties
+        are set to initial values. For a list of these values, see the <B>MySQLDataAdapter</B>
+        constructor.
+      </para>
+      <note>
+        Please be aware that the <see cref="T:System.Data.DataColumn" /> class allows only
+        Int16, Int32, and Int64 to have the AutoIncrement property set.
+        If you plan to use autoincremement columns with MySQL, you should consider
+        using signed integer columns.
+      </note>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> and a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />.
+      The <B>MySqlConnection</B> is opened and set as the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.Connection" /> for the
+      <B>MySqlCommand</B>. The example then calls <see cref="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery" />, and closes
+      the connection. To accomplish this, the <B>ExecuteNonQuery</B> is
+      passed a connection string and a query string that is a SQL INSERT
+      statement.
+      <code lang="vbnet">
+        Public Function SelectRows(dataSet As DataSet, connection As String, query As String) As DataSet
+        Dim conn As New MySqlConnection(connection)
+        Dim adapter As New MySqlDataAdapter()
+        adapter.SelectCommand = new MySqlCommand(query, conn)
+        adapter.Fill(dataset)
+        Return dataset
+        End Function
+      </code>
+      <code lang="C#">
+        public DataSet SelectRows(DataSet dataset,string connection,string query)
+        {
+        MySqlConnection conn = new MySqlConnection(connection);
+        MySqlDataAdapter adapter = new MySqlDataAdapter();
+        adapter.SelectCommand = new MySqlCommand(query, conn);
+        adapter.Fill(dataset);
+        return dataset;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="E:MySql.Data.MySqlClient.MySqlDataAdapter.RowUpdating">
+            <summary>
+            Occurs during Update before a command is executed against the data source. The attempt to update is made, so the event fires.
+            </summary>
+        </member>
+        <member name="E:MySql.Data.MySqlClient.MySqlDataAdapter.RowUpdated">
+            <summary>
+            Occurs during Update after a command is executed against the data source. The attempt to update is made, so the event fires.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.#ctor">
+            <overloads /><summary>
+      Initializes a new instance of the MySqlDataAdapter class.
+    </summary><remarks>
+      <para>
+        When an instance of <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> is created,
+        the following read/write properties are set to the following initial
+        values.
+      </para>
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingMappingAction" />
+          </term>
+          <term>
+            <B>MissingMappingAction.Passthrough</B>
+          </term>
+        </item>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingSchemaAction" />
+          </term>
+          <term>
+            <B>MissingSchemaAction.Add</B>
+          </term>
+        </item>
+      </list>
+      <para>
+        You can change the value of any of these properties through a separate call
+        to the property.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets some of
+      its properties.
+      <code lang="vbnet">
+        Public Sub CreateSqlDataAdapter()
+        Dim conn As MySqlConnection = New MySqlConnection("Data Source=localhost;" &amp; _
+        "database=test")
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey
+
+        da.SelectCommand = New MySqlCommand("SELECT id, name FROM mytable", conn)
+        da.InsertCommand = New MySqlCommand("INSERT INTO mytable (id, name) " &amp; _
+        "VALUES (@id, @name)", conn)
+        da.UpdateCommand = New MySqlCommand("UPDATE mytable SET id=@id, name=@name " &amp; _
+        "WHERE id=@oldId", conn)
+        da.DeleteCommand = New MySqlCommand("DELETE FROM mytable WHERE id=@id", conn)
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+        End Sub
+      </code>
+      <code lang="C#">
+        public static void CreateSqlDataAdapter()
+        {
+        MySqlConnection conn = new MySqlConnection("Data Source=localhost;database=test");
+        MySqlDataAdapter da = new MySqlDataAdapter();
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
+
+        da.SelectCommand = new MySqlCommand("SELECT id, name FROM mytable", conn);
+        da.InsertCommand = new MySqlCommand("INSERT INTO mytable (id, name) " +
+        "VALUES (@id, @name)", conn);
+        da.UpdateCommand = new MySqlCommand("UPDATE mytable SET id=@id, name=@name " +
+        "WHERE id=@oldId", conn);
+        da.DeleteCommand = new MySqlCommand("DELETE FROM mytable WHERE id=@id", conn);
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.#ctor(MySql.Data.MySqlClient.MySqlCommand)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> class with
+      the specified <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> as the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" />
+      property.
+    </summary><param name="selectCommand">
+      <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> that is a SQL SELECT statement or stored procedure and is set
+      as the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> property of the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" />.
+    </param><remarks>
+      <para>
+        When an instance of <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> is created,
+        the following read/write properties are set to the following initial
+        values.
+      </para>
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingMappingAction" />
+          </term>
+          <term>
+            <B>MissingMappingAction.Passthrough</B>
+          </term>
+        </item>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingSchemaAction" />
+          </term>
+          <term>
+            <B>MissingSchemaAction.Add</B>
+          </term>
+        </item>
+      </list>
+      <para>
+        You can change the value of any of these properties through a separate call
+        to the property.
+      </para>
+      <para>
+        When <B>SelectCommand</B> (or any of the other command properties) is assigned
+        to a previously created <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />, the <B>MySqlCommand</B> is not cloned.
+        The <B>SelectCommand</B> maintains a reference to the previously created <B>MySqlCommand</B>
+        object.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets some of
+      its properties.
+      <code lang="vbnet">
+        Public Sub CreateSqlDataAdapter()
+        Dim conn As MySqlConnection = New MySqlConnection("Data Source=localhost;" &amp; _
+        "database=test")
+        Dim cmd as new MySqlCommand("SELECT id, name FROM mytable", conn)
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter(cmd)
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey
+
+        da.InsertCommand = New MySqlCommand("INSERT INTO mytable (id, name) " &amp; _
+        "VALUES (@id, @name)", conn)
+        da.UpdateCommand = New MySqlCommand("UPDATE mytable SET id=@id, name=@name " &amp; _
+        "WHERE id=@oldId", conn)
+        da.DeleteCommand = New MySqlCommand("DELETE FROM mytable WHERE id=@id", conn)
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+        End Sub
+      </code>
+      <code lang="C#">
+        public static void CreateSqlDataAdapter()
+        {
+        MySqlConnection conn = new MySqlConnection("Data Source=localhost;database=test");
+        MySqlCommand cmd = new MySqlCommand("SELECT id, name FROM mytable", conn);
+        MySqlDataAdapter da = new MySqlDataAdapter(cmd);
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
+
+        da.InsertCommand = new MySqlCommand("INSERT INTO mytable (id, name) " +
+        "VALUES (@id, @name)", conn);
+        da.UpdateCommand = new MySqlCommand("UPDATE mytable SET id=@id, name=@name " +
+        "WHERE id=@oldId", conn);
+        da.DeleteCommand = new MySqlCommand("DELETE FROM mytable WHERE id=@id", conn);
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.#ctor(System.String,MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> class with
+      a <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> and a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> object.
+    </summary><param name="selectCommandText">
+      A <b>String</b> that is a SQL SELECT statement or stored procedure to be used by
+      the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> property of the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" />.
+    </param><param name="connection">
+      A <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> that represents the connection.
+    </param><remarks>
+      <para>
+        This implementation of the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> opens and closes a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />
+        if it is not already open. This can be useful in a an application that must call the
+        <see cref="M:System.Data.Common.DbDataAdapter.Fill(System.Data.DataSet)" /> method for two or more <B>MySqlDataAdapter</B> objects.
+        If the <B>MySqlConnection</B> is already open, you must explicitly call
+        <see cref="M:MySql.Data.MySqlClient.MySqlConnection.Close" /> or <see cref="M:MySql.Data.MySqlClient.MySqlConnection.Dispose" /> to close it.
+      </para>
+      <para>
+        When an instance of <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> is created,
+        the following read/write properties are set to the following initial
+        values.
+      </para>
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingMappingAction" />
+          </term>
+          <term>
+            <B>MissingMappingAction.Passthrough</B>
+          </term>
+        </item>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingSchemaAction" />
+          </term>
+          <term>
+            <B>MissingSchemaAction.Add</B>
+          </term>
+        </item>
+      </list>
+      <para>
+        You can change the value of any of these properties through a separate call
+        to the property.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets some of
+      its properties.
+      <code lang="vbnet">
+        Public Sub CreateSqlDataAdapter()
+        Dim conn As MySqlConnection = New MySqlConnection("Data Source=localhost;" &amp; _
+        "database=test")
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter("SELECT id, name FROM mytable", conn)
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey
+
+        da.InsertCommand = New MySqlCommand("INSERT INTO mytable (id, name) " &amp; _
+        "VALUES (@id, @name)", conn)
+        da.UpdateCommand = New MySqlCommand("UPDATE mytable SET id=@id, name=@name " &amp; _
+        "WHERE id=@oldId", conn)
+        da.DeleteCommand = New MySqlCommand("DELETE FROM mytable WHERE id=@id", conn)
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+        End Sub
+      </code>
+      <code lang="C#">
+        public static void CreateSqlDataAdapter()
+        {
+        MySqlConnection conn = new MySqlConnection("Data Source=localhost;database=test");
+        MySqlDataAdapter da = new MySqlDataAdapter("SELECT id, name FROM mytable", conn);
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
+
+        da.InsertCommand = new MySqlCommand("INSERT INTO mytable (id, name) " +
+        "VALUES (@id, @name)", conn);
+        da.UpdateCommand = new MySqlCommand("UPDATE mytable SET id=@id, name=@name " +
+        "WHERE id=@oldId", conn);
+        da.DeleteCommand = new MySqlCommand("DELETE FROM mytable WHERE id=@id", conn);
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.#ctor(System.String,System.String)">
+            <summary>
+      Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> class with
+      a <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> and a connection string.
+    </summary><param name="selectCommandText">
+      A <see cref="T:System.String" /> that is a SQL SELECT statement or stored procedure to
+      be used by the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> property of the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" />.
+    </param><param name="selectConnString">The connection string</param><remarks>
+      <para>
+        When an instance of <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> is created,
+        the following read/write properties are set to the following initial
+        values.
+      </para>
+      <list type="table">
+        <listheader>
+          <term>Properties</term>
+          <term>Initial Value</term>
+        </listheader>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingMappingAction" />
+          </term>
+          <term>
+            <B>MissingMappingAction.Passthrough</B>
+          </term>
+        </item>
+        <item>
+          <term>
+            <see cref="T:System.Data.MissingSchemaAction" />
+          </term>
+          <term>
+            <B>MissingSchemaAction.Add</B>
+          </term>
+        </item>
+      </list>
+      <para>
+        You can change the value of any of these properties through a separate call
+        to the property.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets some of
+      its properties.
+      <code lang="vbnet">
+        Public Sub CreateSqlDataAdapter()
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter("SELECT id, name FROM mytable", "Data Source=localhost;database=test")
+        Dim conn As MySqlConnection = da.SelectCommand.Connection
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey
+
+        da.InsertCommand = New MySqlCommand("INSERT INTO mytable (id, name) " &amp; _
+        "VALUES (@id, @name)", conn)
+        da.UpdateCommand = New MySqlCommand("UPDATE mytable SET id=@id, name=@name " &amp; _
+        "WHERE id=@oldId", conn)
+        da.DeleteCommand = New MySqlCommand("DELETE FROM mytable WHERE id=@id", conn)
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name")
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original
+        End Sub
+      </code>
+      <code lang="C#">
+        public static void CreateSqlDataAdapter()
+        {
+        MySqlDataAdapter da = new MySqlDataAdapter("SELECT id, name FROM mytable", "Data Source=localhost;database=test");
+        MySqlConnection conn = da.SelectCommand.Connection;
+        da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
+
+        da.InsertCommand = new MySqlCommand("INSERT INTO mytable (id, name) " +
+        "VALUES (@id, @name)", conn);
+        da.UpdateCommand = new MySqlCommand("UPDATE mytable SET id=@id, name=@name " +
+        "WHERE id=@oldId", conn);
+        da.DeleteCommand = new MySqlCommand("DELETE FROM mytable WHERE id=@id", conn);
+
+        da.InsertCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.InsertCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+
+        da.UpdateCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        da.UpdateCommand.Parameters.Add("@name", MySqlDbType.VarChar, 40, "name");
+        da.UpdateCommand.Parameters.Add("@oldId", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+
+        da.DeleteCommand.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id").SourceVersion = DataRowVersion.Original;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataAdapter.DeleteCommand">
+            <summary>
+      Gets or sets a SQL statement or stored procedure used to delete records from the data set.
+    </summary><value>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> used during <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)" /> to delete records in the
+      database that correspond to deleted rows in the <see cref="T:System.Data.DataSet" />.
+    </value><remarks>
+      <para>
+        During <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)" />, if this property is not set and primary key information
+        is present in the <see cref="T:System.Data.DataSet" />, the <B>DeleteCommand</B> can be generated
+        automatically if you set the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> property and use the
+        <see cref="T:MySql.Data.MySqlClient.MySqlCommandBuilder" />.  Then, any additional commands that you do not set are
+        generated by the <B>MySqlCommandBuilder</B>. This generation logic requires key column
+        information to be present in the <B>DataSet</B>.
+      </para>
+      <para>
+        When <B>DeleteCommand</B> is assigned to a previously created <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />,
+        the <B>MySqlCommand</B> is not cloned. The <B>DeleteCommand</B> maintains a reference
+        to the previously created <B>MySqlCommand</B> object.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets the
+      <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> and <B>DeleteCommand</B> properties. It assumes you have already
+      created a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> object.
+      <code lang="vbnet">
+        Public Shared Function CreateCustomerAdapter(conn As MySqlConnection) As MySqlDataAdapter
+
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter()
+        Dim cmd As MySqlCommand
+        Dim parm As MySqlParameter
+
+        ' Create the SelectCommand.
+        cmd = New MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn)
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15)
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15)
+
+        da.SelectCommand = cmd
+
+        ' Create the DeleteCommand.
+        cmd = New MySqlCommand("DELETE FROM mytable WHERE id=@id", conn)
+
+        parm = cmd.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id")
+        parm.SourceVersion = DataRowVersion.Original
+
+        da.DeleteCommand = cmd
+
+        Return da
+        End Function
+      </code>
+      <code lang="C#">
+        public static MySqlDataAdapter CreateCustomerAdapter(MySqlConnection conn)
+        {
+        MySqlDataAdapter da = new MySqlDataAdapter();
+        MySqlCommand cmd;
+        MySqlParameter parm;
+
+        // Create the SelectCommand.
+        cmd = new MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn);
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15);
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15);
+
+        da.SelectCommand = cmd;
+
+        // Create the DeleteCommand.
+        cmd = new MySqlCommand("DELETE FROM mytable WHERE id=@id", conn);
+
+        parm = cmd.Parameters.Add("@id", MySqlDbType.VarChar, 5, "id");
+        parm.SourceVersion = DataRowVersion.Original;
+
+        da.DeleteCommand = cmd;
+
+        return da;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataAdapter.InsertCommand">
+            <summary>
+      Gets or sets a SQL statement or stored procedure used to insert records into the data set.
+    </summary><value>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> used during <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)" /> to insert records into the
+      database that correspond to new rows in the <see cref="T:System.Data.DataSet" />.
+    </value><remarks>
+      <para>
+        During <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)" />, if this property is not set and primary key information
+        is present in the <see cref="T:System.Data.DataSet" />, the <B>InsertCommand</B> can be generated
+        automatically if you set the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> property and use the
+        <see cref="T:MySql.Data.MySqlClient.MySqlCommandBuilder" />.  Then, any additional commands that you do not set are
+        generated by the <B>MySqlCommandBuilder</B>. This generation logic requires key column
+        information to be present in the <B>DataSet</B>.
+      </para>
+      <para>
+        When <B>InsertCommand</B> is assigned to a previously created <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />,
+        the <B>MySqlCommand</B> is not cloned. The <B>InsertCommand</B> maintains a reference
+        to the previously created <B>MySqlCommand</B> object.
+      </para>
+      <note>
+        If execution of this command returns rows, these rows may be added to the <B>DataSet</B>
+        depending on how you set the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.UpdatedRowSource" /> property of the <B>MySqlCommand</B> object.
+      </note>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets the
+      <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> and <B>InsertCommand</B> properties. It assumes you have already
+      created a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> object.
+      <code lang="vbnet">
+        Public Shared Function CreateCustomerAdapter(conn As MySqlConnection) As MySqlDataAdapter
+
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter()
+        Dim cmd As MySqlCommand
+        Dim parm As MySqlParameter
+
+        ' Create the SelectCommand.
+        cmd = New MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn)
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15)
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15)
+
+        da.SelectCommand = cmd
+
+        ' Create the InsertCommand.
+        cmd = New MySqlCommand("INSERT INTO mytable (id,name) VALUES (@id, @name)", conn)
+
+        cmd.Parameters.Add( "@id", MySqlDbType.VarChar, 15, "id" )
+        cmd.Parameters.Add( "@name", MySqlDbType.VarChar, 15, "name" )
+        da.InsertCommand = cmd
+
+        Return da
+        End Function
+      </code>
+      <code lang="C#">
+        public static MySqlDataAdapter CreateCustomerAdapter(MySqlConnection conn)
+        {
+        MySqlDataAdapter da = new MySqlDataAdapter();
+        MySqlCommand cmd;
+        MySqlParameter parm;
+
+        // Create the SelectCommand.
+        cmd = new MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn);
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15);
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15);
+
+        da.SelectCommand = cmd;
+
+        // Create the InsertCommand.
+        cmd = new MySqlCommand("INSERT INTO mytable (id,name) VALUES (@id,@name)", conn);
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15, "id" );
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15, "name" );
+
+        da.InsertCommand = cmd;
+
+        return da;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand">
+            <summary>
+      Gets or sets a SQL statement or stored procedure used to select records in the data source.
+    </summary><value>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> used during <see cref="M:System.Data.Common.DbDataAdapter.Fill(System.Data.DataSet)" /> to select records from the
+      database for placement in the <see cref="T:System.Data.DataSet" />.
+    </value><remarks>
+      <para>
+        When <B>SelectCommand</B> is assigned to a previously created <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />,
+        the <B>MySqlCommand</B> is not cloned. The <B>SelectCommand</B> maintains a reference to the
+        previously created <B>MySqlCommand</B> object.
+      </para>
+      <para>
+        If the <B>SelectCommand</B> does not return any rows, no tables are added to the
+        <see cref="T:System.Data.DataSet" />, and no exception is raised.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets the
+      <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> and <B>InsertCommand</B> properties. It assumes you have already
+      created a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> object.
+      <code lang="vbnet">
+        Public Shared Function CreateCustomerAdapter(conn As MySqlConnection) As MySqlDataAdapter
+
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter()
+        Dim cmd As MySqlCommand
+        Dim parm As MySqlParameter
+
+        ' Create the SelectCommand.
+        cmd = New MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn)
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15)
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15)
+
+        da.SelectCommand = cmd
+
+        ' Create the InsertCommand.
+        cmd = New MySqlCommand("INSERT INTO mytable (id,name) VALUES (@id, @name)", conn)
+
+        cmd.Parameters.Add( "@id", MySqlDbType.VarChar, 15, "id" )
+        cmd.Parameters.Add( "@name", MySqlDbType.VarChar, 15, "name" )
+        da.InsertCommand = cmd
+
+        Return da
+        End Function
+      </code>
+      <code lang="C#">
+        public static MySqlDataAdapter CreateCustomerAdapter(MySqlConnection conn)
+        {
+        MySqlDataAdapter da = new MySqlDataAdapter();
+        MySqlCommand cmd;
+        MySqlParameter parm;
+
+        // Create the SelectCommand.
+        cmd = new MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn);
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15);
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15);
+
+        da.SelectCommand = cmd;
+
+        // Create the InsertCommand.
+        cmd = new MySqlCommand("INSERT INTO mytable (id,name) VALUES (@id,@name)", conn);
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15, "id" );
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15, "name" );
+
+        da.InsertCommand = cmd;
+
+        return da;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateCommand">
+            <summary>
+      Gets or sets a SQL statement or stored procedure used to updated records in the data source.
+    </summary><value>
+      A <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> used during <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)" /> to update records in the
+      database with data from the <see cref="T:System.Data.DataSet" />.
+    </value><remarks>
+      <para>
+        During <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)" />, if this property is not set and primary key information
+        is present in the <see cref="T:System.Data.DataSet" />, the <B>UpdateCommand</B> can be generated
+        automatically if you set the <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> property and use the
+        <see cref="T:MySql.Data.MySqlClient.MySqlCommandBuilder" />.  Then, any additional commands that you do not set are
+        generated by the <B>MySqlCommandBuilder</B>. This generation logic requires key column
+        information to be present in the <B>DataSet</B>.
+      </para>
+      <para>
+        When <B>UpdateCommand</B> is assigned to a previously created <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />,
+        the <B>MySqlCommand</B> is not cloned. The <B>UpdateCommand</B> maintains a reference
+        to the previously created <B>MySqlCommand</B> object.
+      </para>
+      <note>
+        If execution of this command returns rows, these rows may be merged with the DataSet
+        depending on how you set the <see cref="P:MySql.Data.MySqlClient.MySqlCommand.UpdatedRowSource" /> property of the <B>MySqlCommand</B> object.
+      </note>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" /> and sets the
+      <see cref="P:MySql.Data.MySqlClient.MySqlDataAdapter.SelectCommand" /> and <B>UpdateCommand</B> properties. It assumes you have already
+      created a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> object.
+      <code lang="vbnet">
+        Public Shared Function CreateCustomerAdapter(conn As MySqlConnection) As MySqlDataAdapter
+
+        Dim da As MySqlDataAdapter = New MySqlDataAdapter()
+        Dim cmd As MySqlCommand
+        Dim parm As MySqlParameter
+
+        ' Create the SelectCommand.
+        cmd = New MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn)
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15)
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15)
+
+        da.SelectCommand = cmd
+
+        ' Create the UpdateCommand.
+        cmd = New MySqlCommand("UPDATE mytable SET id=@id, name=@name WHERE id=@oldId", conn)
+
+        cmd.Parameters.Add( "@id", MySqlDbType.VarChar, 15, "id" )
+        cmd.Parameters.Add( "@name", MySqlDbType.VarChar, 15, "name" )
+
+        parm = cmd.Parameters.Add("@oldId", MySqlDbType.VarChar, 15, "id")
+        parm.SourceVersion = DataRowVersion.Original
+
+        da.UpdateCommand = cmd
+
+        Return da
+        End Function
+      </code>
+      <code lang="C#">
+        public static MySqlDataAdapter CreateCustomerAdapter(MySqlConnection conn)
+        {
+        MySqlDataAdapter da = new MySqlDataAdapter();
+        MySqlCommand cmd;
+        MySqlParameter parm;
+
+        // Create the SelectCommand.
+        cmd = new MySqlCommand("SELECT * FROM mytable WHERE id=@id AND name=@name", conn);
+
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15);
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15);
+
+        da.SelectCommand = cmd;
+
+        // Create the UpdateCommand.
+        cmd = new MySqlCommand("UPDATE mytable SET id=@id, name=@name WHERE id=@oldId", conn);
+        cmd.Parameters.Add("@id", MySqlDbType.VarChar, 15, "id" );
+        cmd.Parameters.Add("@name", MySqlDbType.VarChar, 15, "name" );
+
+        parm = cmd.Parameters.Add( "@oldId", MySqlDbType.VarChar, 15, "id" );
+        parm.SourceVersion = DataRowVersion.Original;
+
+        da.UpdateCommand = cmd;
+
+        return da;
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.OpenConnectionIfClosed(System.Data.DataRowState,System.Collections.Generic.List{MySql.Data.MySqlClient.MySqlConnection})">
+            <summary>
+            Open connection if it was closed.
+            Necessary to workaround "connection must be open and valid" error
+            with batched updates.
+            </summary>
+            <param name="state">Row state</param>
+            <param name="openedConnections"> list of opened connections 
+            If connection is opened by this function, the list is updated
+            </param>
+            <returns>true if connection was opened</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.CreateRowUpdatedEvent(System.Data.DataRow,System.Data.IDbCommand,System.Data.StatementType,System.Data.Common.DataTableMapping)">
+            <summary>
+            Overridden. See <see cref="M:System.Data.Common.DbDataAdapter.CreateRowUpdatedEvent(System.Data.DataRow,System.Data.IDbCommand,System.Data.StatementType,System.Data.Common.DataTableMapping)"/>.
+            </summary>
+            <param name="dataRow"></param>
+            <param name="command"></param>
+            <param name="statementType"></param>
+            <param name="tableMapping"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.CreateRowUpdatingEvent(System.Data.DataRow,System.Data.IDbCommand,System.Data.StatementType,System.Data.Common.DataTableMapping)">
+            <summary>
+            Overridden. See <see cref="M:System.Data.Common.DbDataAdapter.CreateRowUpdatingEvent(System.Data.DataRow,System.Data.IDbCommand,System.Data.StatementType,System.Data.Common.DataTableMapping)"/>.
+            </summary>
+            <param name="dataRow"></param>
+            <param name="command"></param>
+            <param name="statementType"></param>
+            <param name="tableMapping"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.OnRowUpdating(System.Data.Common.RowUpdatingEventArgs)">
+            <summary>
+            Overridden. Raises the RowUpdating event.
+            </summary>
+            <param name="value">A MySqlRowUpdatingEventArgs that contains the event data.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.OnRowUpdated(System.Data.Common.RowUpdatedEventArgs)">
+            <summary>
+            Overridden. Raises the RowUpdated event.
+            </summary>
+            <param name="value">A MySqlRowUpdatedEventArgs that contains the event data. </param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataSet)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataSet">Dataset to use</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataTable)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataTable">Datatable to use</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataSet,System.String)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="srcTable">Source table</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataTable,System.Data.IDataReader)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataTable">Datatable to use</param>
+            <param name="dataReader">DataReader to use</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataTable,System.Data.IDbCommand,System.Data.CommandBehavior)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataTable">DataTable to use</param>
+            <param name="command">DbCommand to use</param>
+            <param name="behavior">Command Behavior</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Int32,System.Int32,System.Data.DataTable[])">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="startRecord">Start record</param>
+            <param name="maxRecords">Max records</param>
+            <param name="dataTables">DataTable[] to use</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataSet,System.Int32,System.Int32,System.String)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="startRecord">Start record</param>
+            <param name="maxRecords">Max records</param>
+            <param name="srcTable">Source table</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataSet,System.String,System.Data.IDataReader,System.Int32,System.Int32)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="srcTable">Source table</param>
+            <param name="dataReader">DataReader to use</param>
+            <param name="startRecord">Start record</param>
+            <param name="maxRecords">Max records</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataTable[],System.Int32,System.Int32,System.Data.IDbCommand,System.Data.CommandBehavior)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataTables">DataTable[] to use</param>
+            <param name="startRecord">Start record</param>
+            <param name="maxRecords">Max records</param>
+            <param name="command">DbCommand to use</param>
+            <param name="behavior">Command Behavior</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillAsync(System.Data.DataSet,System.Int32,System.Int32,System.String,System.Data.IDbCommand,System.Data.CommandBehavior)">
+            <summary>
+            Async version of Fill
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="startRecord">Start record</param>
+            <param name="maxRecords">Max records</param>
+            <param name="srcTable">Source table</param>
+            <param name="command">DbCommand to use</param>
+            <param name="behavior">Command Behavior</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillSchemaAsync(System.Data.DataSet,System.Data.SchemaType)">
+            <summary>
+            Async version of FillSchema
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="schemaType">Schema Type</param>
+            <returns>DataTable[]</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillSchemaAsync(System.Data.DataSet,System.Data.SchemaType,System.String)">
+            <summary>
+            Async version of FillSchema
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="schemaType">Schema Type</param>
+            <param name="srcTable">Source Table</param>
+            <returns>DataTable[]</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillSchemaAsync(System.Data.DataSet,System.Data.SchemaType,System.String,System.Data.IDataReader)">
+            <summary>
+            Async version of FillSchema
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="schemaType">Schema Type</param>
+            <param name="srcTable">Source Table</param>
+            <param name="dataReader">DataReader to use</param>
+            <returns>DataTable[]</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillSchemaAsync(System.Data.DataSet,System.Data.SchemaType,System.Data.IDbCommand,System.String,System.Data.CommandBehavior)">
+            <summary>
+            Async version of FillSchema
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="schemaType">Schema Type</param>
+            <param name="command">DBCommand to use</param>
+            <param name="srcTable">Source Table</param>
+            <param name="behavior">Command Behavior</param>
+            <returns>DataTable[]</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillSchemaAsync(System.Data.DataTable,System.Data.SchemaType)">
+            <summary>
+            Async version of FillSchema
+            </summary>
+            <param name="dataTable">DataTable to use</param>
+            <param name="schemaType">Schema Type</param>
+            <returns>DataTable</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillSchemaAsync(System.Data.DataTable,System.Data.SchemaType,System.Data.IDataReader)">
+            <summary>
+            Async version of FillSchema
+            </summary>
+            <param name="dataTable">DataTable to use</param>
+            <param name="schemaType">Schema Type</param>
+            <param name="dataReader">DataReader to use</param>
+            <returns>DataTable</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.FillSchemaAsync(System.Data.DataTable,System.Data.SchemaType,System.Data.IDbCommand,System.Data.CommandBehavior)">
+            <summary>
+            Async version of FillSchema
+            </summary>
+            <param name="dataTable">DataTable to use</param>
+            <param name="schemaType">Schema Type</param>
+            <param name="command">DBCommand to use</param>
+            <param name="behavior">Command Behavior</param>
+            <returns>DataTable</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateAsync(System.Data.DataRow[])">
+            <summary>
+            Async version of Update
+            </summary>
+            <param name="dataRows">DataRow[] to use</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateAsync(System.Data.DataSet)">
+            <summary>
+            Async version of Update
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateAsync(System.Data.DataTable)">
+            <summary>
+            Async version of Update
+            </summary>
+            <param name="dataTable">DataTable to use</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateAsync(System.Data.DataRow[],System.Data.Common.DataTableMapping)">
+            <summary>
+            Async version of Update
+            </summary>
+            <param name="dataRows">DataRow[] to use</param>
+            <param name="tableMapping">Data Table Mapping</param>
+            <returns>int</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataAdapter.UpdateAsync(System.Data.DataSet,System.String)">
+            <summary>
+            Async version of Update
+            </summary>
+            <param name="dataSet">DataSet to use</param>
+            <param name="srcTable">Source Table</param>
+            <returns></returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlRowUpdatingEventHandler">
+            <summary>
+            Represents the method that will handle the <see cref="E:MySql.Data.MySqlClient.MySqlDataAdapter.RowUpdating"/> event of a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter"/>.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlRowUpdatedEventHandler">
+            <summary>
+            Represents the method that will handle the <see cref="E:MySql.Data.MySqlClient.MySqlDataAdapter.RowUpdated"/> event of a <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter"/>.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlRowUpdatingEventArgs">
+            <summary>
+            Provides data for the RowUpdating event. This class cannot be inherited.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlRowUpdatingEventArgs.#ctor(System.Data.DataRow,System.Data.IDbCommand,System.Data.StatementType,System.Data.Common.DataTableMapping)">
+            <summary>
+            Initializes a new instance of the MySqlRowUpdatingEventArgs class.
+            </summary>
+            <param name="row">The <see cref="T:System.Data.DataRow"/> to 
+            <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)"/>.</param>
+            <param name="command">The <see cref="T:System.Data.IDbCommand"/> to execute during <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)"/>.</param>
+            <param name="statementType">One of the <see cref="T:System.Data.StatementType"/> values that specifies the type of query executed.</param>
+            <param name="tableMapping">The <see cref="T:System.Data.Common.DataTableMapping"/> sent through an <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)"/>.</param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlRowUpdatingEventArgs.Command">
+            <summary>
+            Gets or sets the MySqlCommand to execute when performing the Update.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlRowUpdatedEventArgs">
+            <summary>
+            Provides data for the RowUpdated event. This class cannot be inherited.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlRowUpdatedEventArgs.#ctor(System.Data.DataRow,System.Data.IDbCommand,System.Data.StatementType,System.Data.Common.DataTableMapping)">
+            <summary>
+            Initializes a new instance of the MySqlRowUpdatedEventArgs class.
+            </summary>
+            <param name="row">The <see cref="T:System.Data.DataRow"/> sent through an <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)"/>.</param>
+            <param name="command">The <see cref="T:System.Data.IDbCommand"/> executed when <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)"/> is called.</param>
+            <param name="statementType">One of the <see cref="T:System.Data.StatementType"/> values that specifies the type of query executed.</param>
+            <param name="tableMapping">The <see cref="T:System.Data.Common.DataTableMapping"/> sent through an <see cref="M:System.Data.Common.DbDataAdapter.Update(System.Data.DataSet)"/>.</param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlRowUpdatedEventArgs.Command">
+            <summary>
+            Gets or sets the MySqlCommand executed when Update is called.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlDataReader">
+            <summary>
+      Provides a means of reading a forward-only stream of rows from a MySQL database. This class cannot be inherited.
+    </summary><remarks>
+      <para>
+        To create a <B>MySQLDataReader</B>, you must call the <see cref="M:MySql.Data.MySqlClient.MySqlCommand.ExecuteReader" />
+        method of the <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> object, rather than directly using a constructor.
+      </para>
+      <para>
+        While the <B>MySqlDataReader</B> is in use, the associated <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />
+        is busy serving the <B>MySqlDataReader</B>, and no other operations can be performed
+        on the <B>MySqlConnection</B> other than closing it. This is the case until the
+        <see cref="M:MySql.Data.MySqlClient.MySqlDataReader.Close" /> method of the <B>MySqlDataReader</B> is called.
+      </para>
+      <para>
+        <see cref="P:MySql.Data.MySqlClient.MySqlDataReader.IsClosed" /> and <see cref="P:MySql.Data.MySqlClient.MySqlDataReader.RecordsAffected" />
+        are the only properties that you can call after the <B>MySqlDataReader</B> is
+        closed. Though the <B>RecordsAffected</B> property may be accessed at any time
+        while the <B>MySqlDataReader</B> exists, always call <B>Close</B> before returning
+        the value of <B>RecordsAffected</B> to ensure an accurate return value.
+      </para>
+      <para>
+        For optimal performance, <B>MySqlDataReader</B> avoids creating
+        unnecessary objects or making unnecessary copies of data. As a result, multiple calls
+        to methods such as <see cref="M:MySql.Data.MySqlClient.MySqlDataReader.GetValue(System.Int32)" /> return a reference to the
+        same object. Use caution if you are modifying the underlying value of the objects
+        returned by methods such as <B>GetValue</B>.
+      </para>
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" />,
+      a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" />, and a <B>MySqlDataReader</B>. The example reads through
+      the data, writing it out to the console. Finally, the example closes the <B>MySqlDataReader</B>, then the
+      <B>MySqlConnection</B>.
+      <code lang="vbnet">
+        Public Sub ReadMyData(myConnString As String)
+        Dim mySelectQuery As String = "SELECT OrderID, CustomerID FROM Orders"
+        Dim myConnection As New MySqlConnection(myConnString)
+        Dim myCommand As New MySqlCommand(mySelectQuery, myConnection)
+        myConnection.Open()
+        Dim myReader As MySqlDataReader
+        myReader = myCommand.ExecuteReader()
+        ' Always call Read before accessing data.
+        While myReader.Read()
+        Console.WriteLine((myReader.GetInt32(0) &amp; ", " &amp; myReader.GetString(1)))
+        End While
+        ' always call Close when done reading.
+        myReader.Close()
+        ' Close the connection when done with it.
+        myConnection.Close()
+        End Sub 'ReadMyData
+      </code>
+      <code lang="C#">
+        public void ReadMyData(string myConnString) {
+        string mySelectQuery = "SELECT OrderID, CustomerID FROM Orders";
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        MySqlCommand myCommand = new MySqlCommand(mySelectQuery,myConnection);
+        myConnection.Open();
+        MySqlDataReader myReader;
+        myReader = myCommand.ExecuteReader();
+        // Always call Read before accessing data.
+        while (myReader.Read()) {
+        Console.WriteLine(myReader.GetInt32(0) + ", " + myReader.GetString(1));
+        }
+        // always call Close when done reading.
+        myReader.Close();
+        // Close the connection when done with it.
+        myConnection.Close();
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataReader.FieldCount">
+            <summary>
+            Gets the number of columns in the current row.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataReader.HasRows">
+            <summary>
+            Gets a value indicating whether the MySqlDataReader contains one or more rows.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataReader.IsClosed">
+            <summary>
+            Gets a value indicating whether the data reader is closed.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataReader.RecordsAffected">
+            <summary>
+            Gets the number of rows changed, inserted, or deleted by execution of the SQL statement.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataReader.Item(System.Int32)">
+            <summary>
+            Overloaded. Gets the value of a column in its native format.
+            In C#, this property is the indexer for the MySqlDataReader class.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataReader.Item(System.String)">
+            <summary>
+            Gets the value of a column in its native format.
+            [C#] In C#, this property is the indexer for the MySqlDataReader class.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.Close">
+            <summary>
+            Closes the MySqlDataReader object.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetBoolean(System.String)">
+            <summary>
+            Gets the value of the specified column as a Boolean.
+            </summary>
+            <param name="name"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetBoolean(System.Int32)">
+            <summary>
+            Gets the value of the specified column as a Boolean.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetByte(System.String)">
+            <summary>
+            Gets the value of the specified column as a byte.
+            </summary>
+            <param name="name"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetByte(System.Int32)">
+            <summary>
+            Gets the value of the specified column as a byte.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetSByte(System.String)">
+            <summary>
+            Gets the value of the specified column as a sbyte.
+            </summary>
+            <param name="name"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetSByte(System.Int32)">
+            <summary>
+            Gets the value of the specified column as a sbyte.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetBytes(System.Int32,System.Int64,System.Byte[],System.Int32,System.Int32)">
+            <summary>
+            Reads a stream of bytes from the specified column offset into the buffer an array starting at the given buffer offset.
+            </summary>
+            <param name="i">The zero-based column ordinal. </param>
+            <param name="fieldOffset">The index within the field from which to begin the read operation. </param>
+            <param name="buffer">The buffer into which to read the stream of bytes. </param>
+            <param name="bufferoffset">The index for buffer to begin the read operation. </param>
+            <param name="length">The maximum length to copy into the buffer. </param>
+            <returns>The actual number of bytes read.</returns>
+            <!-- No matching elements were found for the following include tag --><include file="docs/MySqlDataReader.xml" path="MyDocs/MyMembers[@name=&quot;GetBytes&quot;]/*" />
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetChar(System.String)">
+            <summary>
+            Gets the value of the specified column as a single character.
+            </summary>
+            <param name="name"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetChar(System.Int32)">
+            <summary>
+            Gets the value of the specified column as a single character.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetChars(System.Int32,System.Int64,System.Char[],System.Int32,System.Int32)">
+            <summary>
+            Reads a stream of characters from the specified column offset into the buffer as an array starting at the given buffer offset.
+            </summary>
+            <param name="i"></param>
+            <param name="fieldoffset"></param>
+            <param name="buffer"></param>
+            <param name="bufferoffset"></param>
+            <param name="length"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetDataTypeName(System.Int32)">
+            <summary>
+            Gets the name of the source data type.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetMySqlDateTime(System.String)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:MySql.Data.Types.MySqlDateTime" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetMySqlDateTime(System.Int32)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:MySql.Data.Types.MySqlDateTime" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetDateTime(System.String)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:System.DateTime" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+      <note>
+        <para>
+          MySql allows date columns to contain the value '0000-00-00' and datetime
+          columns to contain the value '0000-00-00 00:00:00'.  The DateTime structure cannot contain
+          or represent these values.  To read a datetime value from a column that might
+          contain zero values, use <see cref="M:MySql.Data.MySqlClient.MySqlDataReader.GetMySqlDateTime(System.Int32)" />.
+        </para>
+        <para>
+          The behavior of reading a zero datetime column using this method is defined by the
+          <i>ZeroDateTimeBehavior</i> connection string option.  For more information on this option,
+          please refer to <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString" />.
+        </para>
+      </note>
+    </remarks><param name="column">The column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetDateTime(System.Int32)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:System.DateTime" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>DateTime</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+      <note>
+        <para>
+          MySql allows date columns to contain the value '0000-00-00' and datetime
+          columns to contain the value '0000-00-00 00:00:00'.  The DateTime structure cannot contain
+          or represent these values.  To read a datetime value from a column that might
+          contain zero values, use <see cref="M:MySql.Data.MySqlClient.MySqlDataReader.GetMySqlDateTime(System.Int32)" />.
+        </para>
+        <para>
+          The behavior of reading a zero datetime column using this method is defined by the
+          <i>ZeroDateTimeBehavior</i> connection string option.  For more information on this option,
+          please refer to <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString" />.
+        </para>
+      </note>
+    </remarks><param name="i">The zero-based column ordinal.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetDecimal(System.String)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:System.Decimal" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Decimal</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The column name</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetDecimal(System.Int32)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:System.Decimal" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Decimal</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="i">The zero-based column ordinal</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetDouble(System.String)">
+            <summary>Gets the value of the specified column as a double-precision floating point number.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Double</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The column name</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetDouble(System.Int32)">
+            <summary>Gets the value of the specified column as a double-precision floating point number.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Double</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="i">The zero-based column ordinal.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetFieldType(System.Int32)">
+            <summary>
+            Gets the Type that is the data type of the object.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetFloat(System.String)">
+            <summary>
+      Gets the value of the specified column as a single-precision floating point number.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Float</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The column name</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetFloat(System.Int32)">
+            <summary>
+      Gets the value of the specified column as a single-precision floating point number.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Float</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="i">The zero-based column ordinal.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetGuid(System.String)">
+            <!-- No matching elements were found for the following include tag --><include file="docs/MySqlDataReader.xml" path="docs/GetGuidS/*" />
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetGuid(System.Int32)">
+            <!-- No matching elements were found for the following include tag --><include file="docs/MySqlDataReader.xml" path="docs/GetGuid/*" />
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetInt16(System.String)">
+            <summary>Gets the value of the specified column as a 16-bit signed integer.</summary><remarks>
+      <para>
+        No conversions are performed; threfore, the data retrieved must already be a <b>16 bit integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The column name</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetInt16(System.Int32)">
+            <summary>Gets the value of the specified column as a 16-bit signed integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>16 bit integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="i">The zero-based column ordinal.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetInt32(System.String)">
+            <summary>Gets the value of the specified column as a 32-bit signed integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>32 bit integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetInt32(System.Int32)">
+            <summary>Gets the value of the specified column as a 32-bit signed integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>32 bit integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="i">The zero-based column ordinal.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetInt64(System.String)">
+            <summary>Gets the value of the specified column as a 64-bit signed integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>64 bit integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetInt64(System.Int32)">
+            <summary>Gets the value of the specified column as a 64-bit signed integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>64 bit integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="i">The zero-based column ordinal.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetName(System.Int32)">
+            <summary>
+            Gets the name of the specified column.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetOrdinal(System.String)">
+            <summary>
+            Gets the column ordinal, given the name of the column.
+            </summary>
+            <param name="name"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetString(System.String)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:System.String" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>String</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetString(System.Int32)">
+            <summary>
+      Gets the value of the specified column as a <see cref="T:System.String" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>String</b> object.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="i">The zero-based column ordinal.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetTimeSpan(System.String)">
+            <overloads /><summary>
+      Gets the value of the specified column as a <see cref="T:System.TimeSpan" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Time</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetTimeSpan(System.Int32)">
+            <overloads /><summary>
+      Gets the value of the specified column as a <see cref="T:System.TimeSpan" /> object.
+    </summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>Time</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetValue(System.Int32)">
+            <summary>
+            Gets the value of the specified column in its native format.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetValues(System.Object[])">
+            <summary>
+            Gets all attribute columns in the collection for the current row.
+            </summary>
+            <param name="values"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetUInt16(System.String)">
+            <summary>Gets the value of the specified column as a 16-bit unsigned integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>16 bit unsigned integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetUInt16(System.Int32)">
+            <summary>Gets the value of the specified column as a 16-bit unsigned integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>16 bit unsigned integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetUInt32(System.String)">
+            <summary>Gets the value of the specified column as a 32-bit unsigned integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>32 bit unsigned integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetUInt32(System.Int32)">
+            <summary>Gets the value of the specified column as a 32-bit unsigned integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>32 bit unsigned integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetUInt64(System.String)">
+            <summary>Gets the value of the specified column as a 64-bit unsigned integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>64 bit unsigned integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetUInt64(System.Int32)">
+            <summary>Gets the value of the specified column as a 64-bit unsigned integer.</summary><remarks>
+      <para>
+        No conversions are performed; therefore, the data retrieved must already be a <b>64 bit unsigned integer</b> value.
+      </para>
+      <para>
+        Call IsDBNull to check for null values before calling this method.
+      </para>
+    </remarks><param name="column">The zero-based column ordinal or column name.</param><returns>The value of the specified column.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.IsDBNull(System.Int32)">
+            <summary>
+            Gets a value indicating whether the column contains non-existent or missing values.
+            </summary>
+            <param name="i"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.NextResult">
+            <summary>
+            Advances the data reader to the next result, when reading the results of batch SQL statements.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.Read">
+            <summary>
+            Advances the MySqlDataReader to the next record.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlDataReader.Depth">
+            <summary>
+            Gets a value indicating the depth of nesting for the current row.  This method is not 
+            supported currently and always returns 0.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetSchemaTable">
+            <summary>
+            Returns a DataTable that describes the column metadata of the MySqlDataReader.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlDataReader.GetEnumerator">
+            <summary>
+            Returns an <see cref="T:System.Collections.IEnumerator"/> that iterates through the <see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/>. 
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Driver">
+            <summary>
+            Summary description for BaseDriver.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Driver.IdleSince">
+            <summary>
+            For pooled connections, time when the driver was
+            put into idle queue
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Driver.LoadServerProperties(MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>
+            Loads the properties from the connected server into a hashtable
+            </summary>
+            <param name="connection"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Driver.LoadCharacterSets(MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>
+            Loads all the current character set names and ids for this server 
+            into the charSets hashtable
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlException">
+            <summary>
+            The exception that is thrown when MySQL returns an error. This class cannot be inherited.
+            </summary>
+            <remarks>
+      <para>
+        This class is created whenever the MySql Data Provider encounters an error generated from the server.
+      </para>
+      <para>
+        Any open connections are not automatically closed when an exception is thrown.  If
+        the client application determines that the exception is fatal, it should close any open
+        <see cref="T:MySql.Data.MySqlClient.MySqlDataReader" /> objects or <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> objects.
+      </para>
+    </remarks><example>
+      The following example generates a <B>MySqlException</B> due to a missing server,
+      and then displays the exception.
+
+      <code lang="vbnet">
+        Public Sub ShowException()
+        Dim mySelectQuery As String = "SELECT column1 FROM table1"
+        Dim myConnection As New MySqlConnection ("Data Source=localhost;Database=Sample;")
+        Dim myCommand As New MySqlCommand(mySelectQuery, myConnection)
+
+        Try
+        myCommand.Connection.Open()
+        Catch e As MySqlException
+        MessageBox.Show( e.Message )
+        End Try
+        End Sub
+      </code>
+      <code lang="C#">
+        public void ShowException()
+        {
+        string mySelectQuery = "SELECT column1 FROM table1";
+        MySqlConnection myConnection =
+        new MySqlConnection("Data Source=localhost;Database=Sample;");
+        MySqlCommand myCommand = new MySqlCommand(mySelectQuery,myConnection);
+
+        try
+        {
+        myCommand.Connection.Open();
+        }
+        catch (MySqlException e)
+        {
+        MessageBox.Show( e.Message );
+        }
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlException.Number">
+            <summary>
+            Gets a number that identifies the type of error.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlException.IsFatal">
+            <summary>
+            True if this exception was fatal and cause the closing of the connection, false otherwise.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.Server">
+            <summary>
+            Gets or sets the name of the server.
+            </summary>
+            <value>The server.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.Database">
+            <summary>
+            Gets or sets the name of the database the connection should 
+            initially connect to.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.ConnectionProtocol">
+            <summary>
+            Gets or sets the protocol that should be used for communicating
+            with MySQL.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.PipeName">
+            <summary>
+            Gets or sets the name of the named pipe that should be used
+            for communicating with MySQL.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.UseCompression">
+            <summary>
+            Gets or sets a boolean value that indicates whether this connection
+            should use compression.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.AllowBatch">
+            <summary>
+            Gets or sets a boolean value that indicates whether this connection will allow
+            commands to send multiple SQL statements in one execution.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.Logging">
+            <summary>
+            Gets or sets a boolean value that indicates whether logging is enabled.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SharedMemoryName">
+            <summary>
+            Gets or sets the base name of the shared memory objects used to 
+            communicate with MySQL when the shared memory protocol is being used.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.UseOldSyntax">
+            <summary>
+            Gets or sets a boolean value that indicates whether this connection uses
+            the old style (@) parameter markers or the new (?) style.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.Port">
+            <summary>
+            Gets or sets the port number that is used when the socket
+            protocol is being used.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.ConnectionTimeout">
+            <summary>
+            Gets or sets the connection timeout.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.DefaultCommandTimeout">
+            <summary>
+            Gets or sets the default command timeout.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.UserID">
+            <summary>
+            Gets or sets the user id that should be used to connect with.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.Password">
+            <summary>
+            Gets or sets the password that should be used to connect with.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.PersistSecurityInfo">
+            <summary>
+            Gets or sets a boolean value that indicates if the password should be persisted
+            in the connection string.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.AllowZeroDateTime">
+            <summary>
+            Gets or sets a boolean value that indicates if zero date time values are supported.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.ConvertZeroDateTime">
+            <summary>
+            Gets or sets a boolean value indicating if zero datetime values should be 
+            converted to DateTime.MinValue.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.UseUsageAdvisor">
+            <summary>
+            Gets or sets a boolean value indicating if the Usage Advisor should be enabled.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.ProcedureCacheSize">
+            <summary>
+            Gets or sets the size of the stored procedure cache.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.UsePerformanceMonitor">
+            <summary>
+            Gets or sets a boolean value indicating if the permon hooks should be enabled.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.IgnorePrepare">
+            <summary>
+            Gets or sets a boolean value indicating if calls to Prepare() should be ignored.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.ConnectionLifeTime">
+            <summary>
+            Gets or sets the lifetime of a pooled connection.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.Pooling">
+            <summary>
+            Gets or sets a boolean value indicating if connection pooling is enabled.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.MinimumPoolSize">
+            <summary>
+            Gets the minimum connection pool size.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.MaximumPoolSize">
+            <summary>
+            Gets or sets the maximum connection pool setting.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.ConnectionReset">
+            <summary>
+            Gets or sets a boolean value indicating if the connection should be reset when retrieved
+            from the pool.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.CharacterSet">
+            <summary>
+            Gets or sets the character set that should be used for sending queries to the server.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.TreatBlobsAsUTF8">
+            <summary>
+            Indicates whether the driver should treat binary blobs as UTF8
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.BlobAsUTF8IncludePattern">
+            <summary>
+            Gets or sets the pattern that matches the columns that should be treated as UTF8
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.BlobAsUTF8ExcludePattern">
+            <summary>
+            Gets or sets the pattern that matches the columns that should not be treated as UTF8
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SslMode">
+            <summary>
+            Indicates whether to use SSL connections and how to handle server certificate errors.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlParameter">
+            <summary>
+            Represents a parameter to a <see cref="T:MySql.Data.MySqlClient.MySqlCommand"/>, and optionally, its mapping to <see cref="T:System.Data.DataSet"/> columns. This class cannot be inherited.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameter.#ctor(System.String,MySql.Data.MySqlClient.MySqlDbType,System.Int32,System.String)">
+            <summary>
+            Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> class with the parameter name, the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.MySqlDbType"/>, the size, and the source column name.
+            </summary>
+            <param name="parameterName">The name of the parameter to map. </param>
+            <param name="dbType">One of the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.MySqlDbType"/> values. </param>
+            <param name="size">The length of the parameter. </param>
+            <param name="sourceColumn">The name of the source column. </param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameter.#ctor(System.String,MySql.Data.MySqlClient.MySqlDbType,System.Int32,System.Data.ParameterDirection,System.Boolean,System.Byte,System.Byte,System.String,System.Data.DataRowVersion,System.Object)">
+            <summary>
+            Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> class with the parameter name, the type of the parameter, the size of the parameter, a <see cref="T:System.Data.ParameterDirection"/>, the precision of the parameter, the scale of the parameter, the source column, a <see cref="T:System.Data.DataRowVersion"/> to use, and the value of the parameter.
+            </summary>
+            <param name="parameterName">The name of the parameter to map. </param>
+            <param name="dbType">One of the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.MySqlDbType"/> values. </param>
+            <param name="size">The length of the parameter. </param>
+            <param name="direction">One of the <see cref="T:System.Data.ParameterDirection"/> values. </param>
+            <param name="isNullable">true if the value of the field can be null, otherwise false. </param>
+            <param name="precision">The total number of digits to the left and right of the decimal point to which <see cref="P:MySql.Data.MySqlClient.MySqlParameter.Value"/> is resolved.</param>
+            <param name="scale">The total number of decimal places to which <see cref="P:MySql.Data.MySqlClient.MySqlParameter.Value"/> is resolved. </param>
+            <param name="sourceColumn">The name of the source column. </param>
+            <param name="sourceVersion">One of the <see cref="T:System.Data.DataRowVersion"/> values. </param>
+            <param name="value">An <see cref="T:System.Object"/> that is the value of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/>. </param>
+            <exception cref="T:System.ArgumentException"/>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.SourceVersion">
+            <summary>
+            Gets or sets the <see cref="T:System.Data.DataRowVersion"/> to use when loading <see cref="P:MySql.Data.MySqlClient.MySqlParameter.Value"/>.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.SourceColumn">
+            <summary>
+            Gets or sets the name of the source column that is mapped to the <see cref="T:System.Data.DataSet"/> and used for loading or returning the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.Value"/>.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameter.ResetDbType">
+            <summary>
+            Resets the <b>DbType</b> property to its original settings. 
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.SourceColumnNullMapping">
+            <summary>
+            Sets or gets a value which indicates whether the source column is nullable. 
+            This allows <see cref="T:System.Data.Common.DbCommandBuilder"/> to correctly generate Update statements 
+            for nullable columns. 
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.DbType">
+            <summary>
+            Gets or sets the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.DbType"/> of the parameter.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameter.#ctor(System.String,System.Object)">
+            <summary>
+            Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> class with the parameter name and a value of the new MySqlParameter.
+            </summary>
+            <param name="parameterName">The name of the parameter to map. </param>
+            <param name="value">An <see cref="T:System.Object"/> that is the value of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/>. </param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameter.#ctor(System.String,MySql.Data.MySqlClient.MySqlDbType)">
+            <summary>
+            Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> class with the parameter name and the data type.
+            </summary>
+            <param name="parameterName">The name of the parameter to map. </param>
+            <param name="dbType">One of the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.MySqlDbType"/> values. </param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameter.#ctor(System.String,MySql.Data.MySqlClient.MySqlDbType,System.Int32)">
+            <summary>
+            Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> class with the parameter name, the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.MySqlDbType"/>, and the size.
+            </summary>
+            <param name="parameterName">The name of the parameter to map. </param>
+            <param name="dbType">One of the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.MySqlDbType"/> values. </param>
+            <param name="size">The length of the parameter. </param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.Direction">
+            <summary>
+            Gets or sets a value indicating whether the parameter is input-only, output-only, bidirectional, or a stored procedure return value parameter.
+            As of MySql version 4.1 and earlier, input-only is the only valid choice.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.IsNullable">
+            <summary>
+            Gets or sets a value indicating whether the parameter accepts null values.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.MySqlDbType">
+            <summary>
+            Gets or sets the MySqlDbType of the parameter.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.Precision">
+            <summary>
+            Gets or sets the maximum number of digits used to represent the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.Value"/> property.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.Scale">
+            <summary>
+            Gets or sets the number of decimal places to which <see cref="P:MySql.Data.MySqlClient.MySqlParameter.Value"/> is resolved.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.Size">
+            <summary>
+            Gets or sets the maximum size, in bytes, of the data within the column.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.Value">
+            <summary>
+            Gets or sets the value of the parameter.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameter.PossibleValues">
+            <summary>
+            Returns the possible values for this parameter if this parameter is of type
+            SET or ENUM.  Returns null otherwise.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameter.ToString">
+            <summary>
+            Overridden. Gets a string containing the <see cref="P:MySql.Data.MySqlClient.MySqlParameter.ParameterName"/>.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlParameterCollection">
+            <summary>
+            Represents a collection of parameters relevant to a <see cref="T:MySql.Data.MySqlClient.MySqlCommand" /> as well as their respective mappings to columns in a <see cref="T:System.Data.DataSet" />. This class cannot be inherited.
+            </summary>
+            <remarks>
+      The number of the parameters in the collection must be equal to the number of
+      parameter placeholders within the command text, or an exception will be generated.
+    </remarks><example>
+      The following example creates multiple instances of <see cref="T:MySql.Data.MySqlClient.MySqlParameter" />
+      through the <B>MySqlParameterCollection</B> collection within the <see cref="T:MySql.Data.MySqlClient.MySqlDataAdapter" />.
+      These parameters are used to select data within the data source and place the data in
+      the <see cref="T:System.Data.DataSet" />. This code assumes that a <B>DataSet</B> and a <B>MySqlDataAdapter</B>
+      have already been created with the appropriate schema, commands, and connection.
+      <code lang="vbnet">
+        Public Sub AddParameters()
+        ' ...
+        ' create myDataSet and myDataAdapter
+        ' ...
+        myDataAdapter.SelectCommand.Parameters.Add("@CategoryName", MySqlDbType.VarChar, 80).Value = "toasters"
+        myDataAdapter.SelectCommand.Parameters.Add("@SerialNum", MySqlDbType.Long).Value = 239
+
+        myDataAdapter.Fill(myDataSet)
+        End Sub 'AddSqlParameters
+      </code>
+      <code lang="C#">
+        public void AddSqlParameters()
+        {
+        // ...
+        // create myDataSet and myDataAdapter
+        // ...
+
+        myDataAdapter.SelectCommand.Parameters.Add("@CategoryName", MySqlDbType.VarChar, 80).Value = "toasters";
+        myDataAdapter.SelectCommand.Parameters.Add("@SerialNum", MySqlDbType.Long).Value = 239;
+        myDataAdapter.Fill(myDataSet);
+
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Add(System.String,MySql.Data.MySqlClient.MySqlDbType,System.Int32,System.String)">
+            <summary>
+            Adds a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> to the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/> with the parameter name, the data type, the column length, and the source column name.
+            </summary>
+            <param name="parameterName">The name of the parameter.</param>
+            <param name="dbType">One of the <see cref="T:MySql.Data.MySqlClient.MySqlDbType"/> values. </param>
+            <param name="size">The length of the column.</param>
+            <param name="sourceColumn">The name of the source column.</param>
+            <returns>The newly added <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.AddRange(System.Array)">
+            <summary>
+            Adds an array of values to the end of the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>. 
+            </summary>
+            <param name="values"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.GetParameter(System.String)">
+            <summary>
+            Retrieve the parameter with the given name.
+            </summary>
+            <param name="parameterName"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Add(System.Object)">
+            <summary>
+            Adds the specified <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object to the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>.
+            </summary>
+            <param name="value">The <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> to add to the collection.</param>
+            <returns>The index of the new <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Contains(System.String)">
+            <summary>
+            Gets a value indicating whether a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> with the specified parameter name exists in the collection.
+            </summary>
+            <param name="parameterName">The name of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object to find.</param>
+            <returns>true if the collection contains the parameter; otherwise, false.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Contains(System.Object)">
+            <summary>
+            Gets a value indicating whether a MySqlParameter exists in the collection.
+            </summary>
+            <param name="value">The value of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object to find. </param>
+            <returns>true if the collection contains the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object; otherwise, false.</returns>
+            <overloads>Gets a value indicating whether a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> exists in the collection.</overloads>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.CopyTo(System.Array,System.Int32)">
+            <summary>
+            Copies MySqlParameter objects from the MySqlParameterCollection to the specified array.
+            </summary>
+            <param name="array"></param>
+            <param name="index"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.GetEnumerator">
+            <summary>
+            Returns an enumerator that iterates through the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>. 
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Insert(System.Int32,System.Object)">
+            <summary>
+            Inserts a MySqlParameter into the collection at the specified index.
+            </summary>
+            <param name="index"></param>
+            <param name="value"></param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameterCollection.IsFixedSize">
+            <summary>
+            Gets a value that indicates whether the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>
+            has a fixed size. 
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameterCollection.IsReadOnly">
+            <summary>
+            Gets a value that indicates whether the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>
+            is read-only. 
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameterCollection.IsSynchronized">
+            <summary>
+            Gets a value that indicates whether the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>
+            is synchronized. 
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Remove(System.Object)">
+            <summary>
+            Removes the specified MySqlParameter from the collection.
+            </summary>
+            <param name="value"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.RemoveAt(System.String)">
+            <summary>
+            Removes the specified <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> from the collection using the parameter name.
+            </summary>
+            <param name="parameterName">The name of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object to retrieve. </param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.RemoveAt(System.Int32)">
+            <summary>
+            Removes the specified <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> from the collection using a specific index.
+            </summary>
+            <param name="index">The zero-based index of the parameter. </param>
+            <overloads>Removes the specified <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> from the collection.</overloads>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameterCollection.SyncRoot">
+            <summary>
+            Gets an object that can be used to synchronize access to the 
+            <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>. 
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameterCollection.Count">
+            <summary>
+            Gets the number of MySqlParameter objects in the collection.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameterCollection.Item(System.Int32)">
+            <summary>
+            Gets the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> at the specified index.
+            </summary>
+            <overloads>Gets the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> with a specified attribute.
+            [C#] In C#, this property is the indexer for the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/> class.
+            </overloads>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlParameterCollection.Item(System.String)">
+            <summary>
+            Gets the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> with the specified name.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Add(MySql.Data.MySqlClient.MySqlParameter)">
+            <summary>
+            Adds the specified <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object to the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/>.
+            </summary>
+            <param name="value">The <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> to add to the collection.</param>
+            <returns>The newly added <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Add(System.String,System.Object)">
+            <summary>
+            Adds a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> to the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/> given the specified parameter name and value.
+            </summary>
+            <param name="parameterName">The name of the parameter.</param>
+            <param name="value">The <see cref="P:MySql.Data.MySqlClient.MySqlParameter.Value"/> of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> to add to the collection.</param>
+            <returns>The newly added <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Add(System.String,MySql.Data.MySqlClient.MySqlDbType)">
+            <summary>
+            Adds a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> to the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/> given the parameter name and the data type.
+            </summary>
+            <param name="parameterName">The name of the parameter.</param>
+            <param name="dbType">One of the <see cref="T:MySql.Data.MySqlClient.MySqlDbType"/> values. </param>
+            <returns>The newly added <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Add(System.String,MySql.Data.MySqlClient.MySqlDbType,System.Int32)">
+            <summary>
+            Adds a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> to the <see cref="T:MySql.Data.MySqlClient.MySqlParameterCollection"/> with the parameter name, the data type, and the column length.
+            </summary>
+            <param name="parameterName">The name of the parameter.</param>
+            <param name="dbType">One of the <see cref="T:MySql.Data.MySqlClient.MySqlDbType"/> values. </param>
+            <param name="size">The length of the column.</param>
+            <returns>The newly added <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.Clear">
+            <summary>
+            Removes all items from the collection.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.IndexOf(System.String)">
+            <summary>
+            Gets the location of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> in the collection with a specific parameter name.
+            </summary>
+            <param name="parameterName">The name of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object to retrieve. </param>
+            <returns>The zero-based location of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> in the collection.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.IndexOf(System.Object)">
+            <summary>
+            Gets the location of a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> in the collection.
+            </summary>
+            <param name="value">The <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> object to locate. </param>
+            <returns>The zero-based location of the <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> in the collection.</returns>
+            <overloads>Gets the location of a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> in the collection.</overloads>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlParameterCollection.AdjustHashes(System.Int32,System.Boolean)">
+            <summary>
+            This method will update all the items in the index hashes when
+            we insert a parameter somewhere in the middle
+            </summary>
+            <param name="keyIndex"></param>
+            <param name="addEntry"></param>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlTransaction">
+            <summary>
+      Represents a SQL transaction to be made in a MySQL database. This class cannot be inherited.
+    </summary><remarks>
+      The application creates a <B>MySqlTransaction</B> object by calling <see cref="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction" />
+      on the <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> object. All subsequent operations associated with the
+      transaction (for example, committing or aborting the transaction), are performed on the
+      <B>MySqlTransaction</B> object.
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and a <B>MySqlTransaction</B>.
+      It also demonstrates how to use the <see cref="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction" />,
+      <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Commit" />, and <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Rollback" /> methods.
+      <code lang="vbnet">
+        Public Sub RunTransaction(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+
+        Dim myCommand As MySqlCommand = myConnection.CreateCommand()
+        Dim myTrans As MySqlTransaction
+
+        ' Start a local transaction
+        myTrans = myConnection.BeginTransaction()
+        ' Must assign both transaction object and connection
+        ' to Command object for a pending local transaction
+        myCommand.Connection = myConnection
+        myCommand.Transaction = myTrans
+
+        Try
+        myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myTrans.Commit()
+        Console.WriteLine("Both records are written to database.")
+        Catch e As Exception
+        Try
+        myTrans.Rollback()
+        Catch ex As MySqlException
+        If Not myTrans.Connection Is Nothing Then
+        Console.WriteLine("An exception of type " &amp; ex.GetType().ToString() &amp; _
+        " was encountered while attempting to roll back the transaction.")
+        End If
+        End Try
+
+        Console.WriteLine("An exception of type " &amp; e.GetType().ToString() &amp; _
+        "was encountered while inserting the data.")
+        Console.WriteLine("Neither record was written to database.")
+        Finally
+        myConnection.Close()
+        End Try
+        End Sub 'RunTransaction
+      </code>
+      <code lang="C#">
+        public void RunTransaction(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+
+        MySqlCommand myCommand = myConnection.CreateCommand();
+        MySqlTransaction myTrans;
+
+        // Start a local transaction
+        myTrans = myConnection.BeginTransaction();
+        // Must assign both transaction object and connection
+        // to Command object for a pending local transaction
+        myCommand.Connection = myConnection;
+        myCommand.Transaction = myTrans;
+
+        try
+        {
+        myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myTrans.Commit();
+        Console.WriteLine("Both records are written to database.");
+        }
+        catch(Exception e)
+        {
+        try
+        {
+        myTrans.Rollback();
+        }
+        catch (MySqlException ex)
+        {
+        if (myTrans.Connection != null)
+        {
+        Console.WriteLine("An exception of type " + ex.GetType() +
+        " was encountered while attempting to roll back the transaction.");
+        }
+        }
+
+        Console.WriteLine("An exception of type " + e.GetType() +
+        " was encountered while inserting the data.");
+        Console.WriteLine("Neither record was written to database.");
+        }
+        finally
+        {
+        myConnection.Close();
+        }
+        }
+      </code>
+    </example>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlTransaction.Connection">
+            <summary>
+            Gets the <see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object associated with the transaction, or a null reference (Nothing in Visual Basic) if the transaction is no longer valid.
+            </summary>
+            <value>The <see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object associated with this transaction.</value>
+            <remarks>
+            A single application may have multiple database connections, each 
+            with zero or more transactions. This property enables you to 
+            determine the connection object associated with a particular 
+            transaction created by <see cref="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction"/>.
+            </remarks>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlTransaction.IsolationLevel">
+            <summary>
+            Specifies the <see cref="P:MySql.Data.MySqlClient.MySqlTransaction.IsolationLevel"/> for this transaction.
+            </summary>
+            <value>
+            The <see cref="P:MySql.Data.MySqlClient.MySqlTransaction.IsolationLevel"/> for this transaction. The default is <b>ReadCommitted</b>.
+            </value>
+            <remarks>
+            Parallel transactions are not supported. Therefore, the IsolationLevel 
+            applies to the entire transaction.
+            </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlTransaction.Commit">
+            <summary>
+      Commits the database transaction.
+    </summary><remarks>
+      The <b>Commit</b> method is equivalent to the MySQL SQL statement
+      COMMIT.
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and a
+      <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" />. It also demonstrates how to use the
+      <see cref="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction" />, <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Commit" />, and <B>Rollback</B>
+      methods.
+      <code lang="vbnet">
+        Public Sub RunSqlTransaction(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+
+        Dim myCommand As MySqlCommand = myConnection.CreateCommand()
+        Dim myTrans As MySqlTransaction
+
+        ' Start a local transaction
+        myTrans = myConnection.BeginTransaction()
+
+        ' Must assign both transaction object and connection
+        ' to Command object for a pending local transaction
+        myCommand.Connection = myConnection
+        myCommand.Transaction = myTrans
+
+        Try
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (100, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (101, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myTrans.Commit()
+        Console.WriteLine("Success.")
+        Catch e As Exception
+        Try
+        myTrans.Rollback()
+        Catch ex As MySqlException
+        If Not myTrans.Connection Is Nothing Then
+        Console.WriteLine("An exception of type " &amp; ex.GetType().ToString() &amp; _
+        " was encountered while attempting to roll back the transaction.")
+        End If
+        End Try
+
+        Console.WriteLine("An exception of type " &amp; e.GetType().ToString() &amp; _
+        "was encountered while inserting the data.")
+        Console.WriteLine("Neither record was written to database.")
+        Finally
+        myConnection.Close()
+        End Try
+        End Sub
+      </code>
+      <code lang="C#">
+        public void RunSqlTransaction(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+
+        MySqlCommand myCommand = myConnection.CreateCommand();
+        MySqlTransaction myTrans;
+
+        // Start a local transaction
+        myTrans = myConnection.BeginTransaction();
+        // Must assign both transaction object and connection
+        // to Command object for a pending local transaction
+        myCommand.Connection = myConnection;
+        myCommand.Transaction = myTrans;
+
+        try
+        {
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (100, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (101, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myTrans.Commit();
+        Console.WriteLine("Both records are written to database.");
+        }
+        catch(Exception e)
+        {
+        try
+        {
+        myTrans.Rollback();
+        }
+        catch (MySqlException ex)
+        {
+        if (myTrans.Connection != null)
+        {
+        Console.WriteLine("An exception of type " + ex.GetType() +
+        " was encountered while attempting to roll back the transaction.");
+        }
+        }
+
+        Console.WriteLine("An exception of type " + e.GetType() +
+        " was encountered while inserting the data.");
+        Console.WriteLine("Neither record was written to database.");
+        }
+        finally
+        {
+        myConnection.Close();
+        }
+        }
+      </code>
+    </example>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlTransaction.Rollback">
+            <summary>
+      Rolls back a transaction from a pending state.
+    </summary><remarks>
+      The Rollback method is equivalent to the MySQL statement ROLLBACK.
+      The transaction can only be rolled back from a pending state
+      (after BeginTransaction has been called, but before Commit is
+      called).
+    </remarks><example>
+      The following example creates a <see cref="T:MySql.Data.MySqlClient.MySqlConnection" /> and a
+      <see cref="T:MySql.Data.MySqlClient.MySqlTransaction" />. It also demonstrates how to use the
+      <see cref="M:MySql.Data.MySqlClient.MySqlConnection.BeginTransaction" />, <see cref="M:MySql.Data.MySqlClient.MySqlTransaction.Commit" />, and <B>Rollback</B>
+      methods.
+      <code lang="vbnet">
+        Public Sub RunSqlTransaction(myConnString As String)
+        Dim myConnection As New MySqlConnection(myConnString)
+        myConnection.Open()
+
+        Dim myCommand As MySqlCommand = myConnection.CreateCommand()
+        Dim myTrans As MySqlTransaction
+
+        ' Start a local transaction
+        myTrans = myConnection.BeginTransaction()
+
+        ' Must assign both transaction object and connection
+        ' to Command object for a pending local transaction
+        myCommand.Connection = myConnection
+        myCommand.Transaction = myTrans
+
+        Try
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (100, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (101, 'Description')"
+        myCommand.ExecuteNonQuery()
+        myTrans.Commit()
+        Console.WriteLine("Success.")
+        Catch e As Exception
+        Try
+        myTrans.Rollback()
+        Catch ex As MySqlException
+        If Not myTrans.Connection Is Nothing Then
+        Console.WriteLine("An exception of type " &amp; ex.GetType().ToString() &amp; _
+        " was encountered while attempting to roll back the transaction.")
+        End If
+        End Try
+
+        Console.WriteLine("An exception of type " &amp; e.GetType().ToString() &amp; _
+        "was encountered while inserting the data.")
+        Console.WriteLine("Neither record was written to database.")
+        Finally
+        myConnection.Close()
+        End Try
+        End Sub
+      </code>
+      <code lang="C#">
+        public void RunSqlTransaction(string myConnString)
+        {
+        MySqlConnection myConnection = new MySqlConnection(myConnString);
+        myConnection.Open();
+
+        MySqlCommand myCommand = myConnection.CreateCommand();
+        MySqlTransaction myTrans;
+
+        // Start a local transaction
+        myTrans = myConnection.BeginTransaction();
+        // Must assign both transaction object and connection
+        // to Command object for a pending local transaction
+        myCommand.Connection = myConnection;
+        myCommand.Transaction = myTrans;
+
+        try
+        {
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (100, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myCommand.CommandText = "Insert into mytable (id, desc) VALUES (101, 'Description')";
+        myCommand.ExecuteNonQuery();
+        myTrans.Commit();
+        Console.WriteLine("Both records are written to database.");
+        }
+        catch(Exception e)
+        {
+        try
+        {
+        myTrans.Rollback();
+        }
+        catch (MySqlException ex)
+        {
+        if (myTrans.Connection != null)
+        {
+        Console.WriteLine("An exception of type " + ex.GetType() +
+        " was encountered while attempting to roll back the transaction.");
+        }
+        }
+
+        Console.WriteLine("An exception of type " + e.GetType() +
+        " was encountered while inserting the data.");
+        Console.WriteLine("Neither record was written to database.");
+        }
+        finally
+        {
+        myConnection.Close();
+        }
+        }
+      </code>
+    </example>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlField">
+            <summary>
+            Summary description for Field.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.CustomInstaller">
+            <summary>
+            We are adding a custom installer class to our assembly so our installer
+            can make proper changes to the machine.config file.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.CustomInstaller.Install(System.Collections.IDictionary)">
+            <summary>
+            We override Install so we can add our assembly to the proper
+            machine.config files.
+            </summary>
+            <param name="stateSaver"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.CustomInstaller.Uninstall(System.Collections.IDictionary)">
+            <summary>
+            We override Uninstall so we can remove out assembly from the
+            machine.config files.
+            </summary>
+            <param name="savedState"></param>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.BaseCommandInterceptor">
+            <summary>
+            BaseCommandInterceptor is the base class that should be used for all userland 
+            command interceptors
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.CommandInterceptor">
+            <summary>
+            CommandInterceptor is the "manager" class that keeps the list of registered interceptors
+            for the given connection.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Interceptor">
+            <summary>
+            Interceptor is the base class for the "manager" classes such as ExceptionInterceptor,
+            CommandInterceptor, etc
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.BaseExceptionInterceptor">
+            <summary>
+            BaseExceptionInterceptor is the base class that should be used for all userland 
+            exception interceptors
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.StandardExceptionInterceptor">
+            <summary>
+            StandardExceptionInterceptor is the standard interceptor that simply throws the exception.
+            It is the default action.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.ExceptionInterceptor">
+            <summary>
+            ExceptionInterceptor is the "manager" class that keeps the list of registered interceptors
+            for the given connection.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.ISSchemaProvider.GetProcedures(System.String[])">
+            <summary>
+            Return schema information about procedures and functions
+            Restrictions supported are:
+            schema, name, type
+            </summary>
+            <param name="restrictions"></param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.ISSchemaProvider.GetProcedureParameters(System.String[],MySql.Data.MySqlClient.MySqlSchemaCollection)">
+            <summary>
+            Return schema information about parameters for procedures and functions
+            Restrictions supported are:
+            schema, name, type, parameter name
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.ISSchemaProvider.InitParameterRow(MySql.Data.MySqlClient.MySqlSchemaRow,MySql.Data.MySqlClient.MySqlSchemaRow)">
+            <summary>
+            Initializes a new row for the procedure parameters table.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.ISSchemaProvider.ParseDataType(MySql.Data.MySqlClient.MySqlSchemaRow,MySql.Data.MySqlClient.MySqlTokenizer)">
+            <summary>
+             Parses out the elements of a procedure parameter data type.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Memcached.BinaryClient">
+            <summary>
+            Implementation of memcached binary client protocol.
+            </summary>
+            <remarks>According to http://code.google.com/p/memcached/wiki/BinaryProtocolRevamped </remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.BinaryClient.SendCommand(System.Byte,System.Byte,System.String,System.Object,System.TimeSpan,System.Boolean)">
+            <summary>
+            Sends an store command (add, replace, set).
+            </summary>
+            <param name="magic"></param>
+            <param name="opcode"></param>
+            <param name="key"></param>
+            <param name="data"></param>
+            <param name="expiration"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.BinaryClient.SendCommand(System.Byte,System.Byte,System.String,System.String@)">
+            <summary>
+            Sends a get command.
+            </summary>
+            <param name="magic"></param>
+            <param name="opcode"></param>
+            <param name="key"></param>
+            <param name="value"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.BinaryClient.SendCommand(System.Byte,System.Byte,System.String)">
+            <summary>
+            Sends a delete command.
+            </summary>
+            <param name="magic"></param>
+            <param name="opcode"></param>
+            <param name="key"></param>
+            <param name="value"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.BinaryClient.SendCommand(System.Byte,System.Byte,System.TimeSpan)">
+            <summary>
+            Sends a command without args (like flush).
+            </summary>
+            <param name="magic"></param>
+            <param name="opcode"></param>
+            <param name="key"></param>
+            <param name="value"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.BinaryClient.SendCommand(System.Byte,System.Byte,System.String,System.Int32)">
+            <summary>
+            Sends a command with amount (INCR/DECR)
+            </summary>
+            <param name="magic"></param>
+            <param name="opcode"></param>
+            <param name="key"></param>
+            <param name="value"></param>
+        </member>
+        <!-- Badly formed XML comment ignored for member "M:MySql.Data.MySqlClient.Memcached.BinaryClient.EncodeStoreCommand(System.Byte,System.Byte,System.String,System.Object,System.TimeSpan,System.Boolean)" -->
+        <member name="T:MySql.Data.MySqlClient.Memcached.MemcachedException">
+            <summary>
+            The base exception class for all Memcached exceptions.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Memcached.TextClient">
+            <summary>
+            Implementation of the Memcached text client protocol.
+            </summary>
+        </member>
+        <!-- Badly formed XML comment ignored for member "M:MySql.Data.MySqlClient.Memcached.TextClient.SendCommand(System.String,System.String,System.Object,System.TimeSpan,System.UInt64)" -->
+        <!-- Badly formed XML comment ignored for member "M:MySql.Data.MySqlClient.Memcached.TextClient.SendCommand(System.String,System.String,System.Object,System.TimeSpan)" -->
+        <member name="M:MySql.Data.MySqlClient.Memcached.TextClient.SendCommand(System.String,System.String,System.Object)">
+            <summary>
+            Send a command to memcached server.
+            </summary>
+            <param name="cmd"></param>
+            <param name="key"></param>
+            <param name="data"></param>
+            <param name="??"></param>
+            <remarks>This version is for commands that don't need flags neither expiration fields.</remarks>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.TextClient.SendCommand(System.String,System.String)">
+            <summary>
+            Sends a command to the server.
+            </summary>
+            <param name="cmd"></param>
+            <param name="key"></param>
+            <remarks>This version is for commands that only require a key</remarks>
+        </member>
+        <!-- Badly formed XML comment ignored for member "M:MySql.Data.MySqlClient.Memcached.TextClient.SendCommand(System.String,System.String,System.Int32)" -->
+        <!-- Badly formed XML comment ignored for member "M:MySql.Data.MySqlClient.Memcached.TextClient.SendCommand(System.String,System.TimeSpan)" -->
+        <member name="T:MySql.Data.MySqlClient.Memcached.Client">
+            <summary>
+            An interface of the client memcached protocol. This class is abstract for 
+            implementation of the Memcached client interface see <see cref="T:MySql.Data.MySqlClient.Memcached.TextClient"/> for the 
+            text protocol version and <see cref="T:MySql.Data.MySqlClient.Memcached.BinaryClient"/> for the binary protocol version.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.Memcached.Client.port">
+            <summary>
+            The port used by the connection.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.Memcached.Client.server">
+            <summary>
+            The server DNS or IP address used by the connection.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.Memcached.Client.stream">
+            <summary>
+            The network stream used by the connecition.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.GetInstance(System.String,System.UInt32,MySql.Data.MySqlClient.Memcached.MemcachedFlags)">
+            <summary>
+            Factory method for creating  instances of <see cref="T:MySql.Data.MySqlClient.Memcached.Client"/> that implement a connection with the requested features.
+            The connection object returned must be explicitely opened see method <see cref="M:MySql.Data.MySqlClient.Memcached.Client.Open"/>.
+            </summary>
+            <param name="server">The Memcached server DNS or IP address.</param>
+            <param name="port">The port for the Memcached server</param>
+            <param name="flags">A set of flags indicating characterestics requested.</param>
+            <returns>An instance of a client connection ready to be used.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Open">
+            <summary>
+            Opens the client connection.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Close">
+            <summary>
+            Closes the client connection.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Add(System.String,System.Object,System.TimeSpan)">
+            <summary>
+            Adds a new key/value pair with the given TimeSpan expiration.
+            </summary>
+            <param name="key">The key for identifying the entry.</param>
+            <param name="data">The data to associate with the key.</param>
+            <param name="expiration">The interval of timespan, use TimeSpan.Zero for no expiration.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Append(System.String,System.Object)">
+            <summary>
+            Appens the data to the existing data for the associated key.
+            </summary>
+            <param name="key">The key for identifying the entry.</param>
+            <param name="data">The data to append with the data associated with the key.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Cas(System.String,System.Object,System.TimeSpan,System.UInt64)">
+            <summary>
+            Executes the Check-and-set Memcached operation.
+            </summary>
+            <param name="key">The key for identifying the entry.</param>
+            <param name="data">The data to use in the CAS.</param>
+            <param name="expiration">The interval of timespan, use TimeSpan.Zero for no expiration.</param>
+            <param name="casUnique">The CAS unique value to use.</param>
+            <exception cref="T:MySql.Data.MySqlClient.Memcached.MemcachedException"></exception>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Decrement(System.String,System.Int32)">
+            <summary>
+            Decrements the value associated with a key by the given amount.
+            </summary>
+            <param name="key">The key associated with the value to decrement.</param>
+            <param name="amount">The amount to decrement the value.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Delete(System.String)">
+            <summary>
+            Removes they pair key/value given the specified key.
+            </summary>
+            <param name="key"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.FlushAll(System.TimeSpan)">
+            <summary>
+            Removes all entries from the storage, effectively invalidating the whole cache.
+            </summary>
+            <param name="delay">The interval after which the cache will be cleaned. Can be TimeSpan.Zero for immediately.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Get(System.String)">
+            <summary>
+            Get the key/value pair associated with a given key.
+            </summary>
+            <param name="key">The key for which to returm the key/value.</param>
+            <returns>The key/value associated with the key or a MemcachedException if it does not exists.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Increment(System.String,System.Int32)">
+            <summary>
+            Increments the value associated with a key by the given amount.
+            </summary>
+            <param name="key">The key associated with the value to increment.</param>
+            <param name="amount">The amount to increment the value.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Prepend(System.String,System.Object)">
+            <summary>
+            Prepends the data to the existing data for the associated key.
+            </summary>
+            <param name="key">The key for identifying the entry.</param>
+            <param name="data">The data to append with the data associated with the key.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Replace(System.String,System.Object,System.TimeSpan)">
+            <summary>
+            Replaces the value associated with the given key with another value.
+            </summary>
+            <param name="key">The key for identifying the entry.</param>
+            <param name="data">The data to replace the value associated with the key.</param>
+            <param name="expiration">The interval of timespan, use TimeSpan.Zero for no expiration.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Memcached.Client.Set(System.String,System.Object,System.TimeSpan)">
+            <summary>
+            Set the value of a given key.
+            </summary>
+            <param name="key">The key for identifying the entry.</param>
+            <param name="data">The data to associate with the given key.</param>
+            <param name="expiration">The interval of timespan, use TimeSpan.Zero for no expiration.</param>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Memcached.MemcachedFlags">
+            <summary>
+            A set of flags for requesting new instances of connections
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.Memcached.MemcachedFlags.TextProtocol">
+            <summary>
+            Requests a connection implememting the text protocol.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.Memcached.MemcachedFlags.BinaryProtocol">
+            <summary>
+            Requests a connection implementing the binary protocol.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.Memcached.MemcachedFlags.Tcp">
+            <summary>
+            Requests a TCP connection. Currently UDP is not supported.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlClientFactory">
+            <summary>
+            DBProviderFactory implementation for MysqlClient.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlClientFactory.Instance">
+            <summary>
+            Gets an instance of the <see cref="T:MySql.Data.MySqlClient.MySqlClientFactory"/>. 
+            This can be used to retrieve strongly typed data objects. 
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientFactory.CreateCommandBuilder">
+            <summary>
+            Returns a strongly typed <see cref="T:System.Data.Common.DbCommandBuilder"/> instance. 
+            </summary>
+            <returns>A new strongly typed instance of <b>DbCommandBuilder</b>.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientFactory.CreateCommand">
+            <summary>
+            Returns a strongly typed <see cref="T:System.Data.Common.DbCommand"/> instance. 
+            </summary>
+            <returns>A new strongly typed instance of <b>DbCommand</b>.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientFactory.CreateConnection">
+            <summary>
+            Returns a strongly typed <see cref="T:System.Data.Common.DbConnection"/> instance. 
+            </summary>
+            <returns>A new strongly typed instance of <b>DbConnection</b>.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientFactory.CreateDataAdapter">
+            <summary>
+            Returns a strongly typed <see cref="T:System.Data.Common.DbDataAdapter"/> instance. 
+            </summary>
+            <returns>A new strongly typed instance of <b>DbDataAdapter</b>. </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientFactory.CreateParameter">
+            <summary>
+            Returns a strongly typed <see cref="T:System.Data.Common.DbParameter"/> instance. 
+            </summary>
+            <returns>A new strongly typed instance of <b>DbParameter</b>.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientFactory.CreateConnectionStringBuilder">
+            <summary>
+            Returns a strongly typed <see cref="T:System.Data.Common.DbConnectionStringBuilder"/> instance. 
+            </summary>
+            <returns>A new strongly typed instance of <b>DbConnectionStringBuilder</b>.</returns>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlClientFactory.CanCreateDataSourceEnumerator">
+            <summary>
+            Returns true if a <b>MySqlDataSourceEnumerator</b> can be created; 
+            otherwise false. 
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlClientFactory.DbServicesType">
+            <summary>
+            Provide a simple caching layer
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientPermission.Add(System.String,System.String,System.Data.KeyRestrictionBehavior)">
+             <summary>
+             Adds a new connection string with set of restricted keywords to the MySqlClientPermission object 
+             </summary>
+            <param name="connectionString">Settings to be used for the connection</param>
+            <param name="restrictions">Keywords to define the restrictions</param>
+            <param name="behavior">KeyRestrictionBehavior to be used</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlClientPermission.Copy">
+            <summary>
+            Returns MySqlClientPermission as an IPermission
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.AuthenticationPluginConfigurationElement">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.InterceptorConfigurationElement">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.GenericConfigurationElementCollection`1">
+            <summary>
+            
+            </summary>
+            <typeparam name="T"></typeparam>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.ClientFlags">
+            <summary>
+            Summary description for ClientParam.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.DBCmd">
+            <summary>
+            DB Operations Code
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlDbType">
+            <summary>
+            Specifies MySQL specific data type of a field, property, for use in a <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/>.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Decimal">
+            <summary>
+            <see cref="F:MySql.Data.MySqlClient.MySqlDbType.Decimal"/>
+            <para>A fixed precision and scale numeric value between -1038 
+            -1 and 10 38 -1.</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Byte">
+            <summary>
+            <see cref="F:MySql.Data.MySqlClient.MySqlDbType.Byte"/><para>The signed range is -128 to 127. The unsigned 
+            range is 0 to 255.</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Int16">
+            <summary>
+            <see cref="F:MySql.Data.MySqlClient.MySqlDbType.Int16"/><para>A 16-bit signed integer. The signed range is 
+            -32768 to 32767. The unsigned range is 0 to 65535</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Int24">
+            <summary>
+            Specifies a 24 (3 byte) signed or unsigned value.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Int32">
+            <summary>
+            <see cref="F:MySql.Data.MySqlClient.MySqlDbType.Int32"/><para>A 32-bit signed integer</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Int64">
+            <summary>
+            <see cref="F:MySql.Data.MySqlClient.MySqlDbType.Int64"/><para>A 64-bit signed integer.</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Float">
+            <summary>
+            <see cref="T:System.Single"/><para>A small (single-precision) floating-point 
+            number. Allowable values are -3.402823466E+38 to -1.175494351E-38, 
+            0, and 1.175494351E-38 to 3.402823466E+38.</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Double">
+            <summary>
+            <see cref="F:MySql.Data.MySqlClient.MySqlDbType.Double"/><para>A normal-size (double-precision) 
+            floating-point number. Allowable values are -1.7976931348623157E+308 
+            to -2.2250738585072014E-308, 0, and 2.2250738585072014E-308 to 
+            1.7976931348623157E+308.</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Timestamp">
+            <summary>
+            A timestamp. The range is '1970-01-01 00:00:00' to sometime in the 
+            year 2037
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Date">
+            <summary>
+            Date The supported range is '1000-01-01' to '9999-12-31'.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Time">
+            <summary>
+            Time <para>The range is '-838:59:59' to '838:59:59'.</para>
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.DateTime">
+            <summary>
+            DateTime The supported range is '1000-01-01 00:00:00' to 
+            '9999-12-31 23:59:59'.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Datetime">
+            <summary>
+            Datetime The supported range is '1000-01-01 00:00:00' to 
+            '9999-12-31 23:59:59'.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Year">
+            <summary>
+            A year in 2- or 4-digit format (default is 4-digit). The 
+            allowable values are 1901 to 2155, 0000 in the 4-digit year 
+            format, and 1970-2069 if you use the 2-digit format (70-69).
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Newdate">
+            <summary>
+            <b>Obsolete</b>  Use Datetime or Date type
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.VarString">
+            <summary>
+            A variable-length string containing 0 to 65535 characters
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Bit">
+            <summary>
+            Bit-field data type
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.JSON">
+            <summary>
+            JSON
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.NewDecimal">
+            <summary>
+            New Decimal
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Enum">
+            <summary>
+            An enumeration. A string object that can have only one value, 
+            chosen from the list of values 'value1', 'value2', ..., NULL 
+            or the special "" error value. An ENUM can have a maximum of 
+            65535 distinct values
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Set">
+            <summary>
+            A set. A string object that can have zero or more values, each 
+            of which must be chosen from the list of values 'value1', 'value2', 
+            ... A SET can have a maximum of 64 members.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.TinyBlob">
+            <summary>
+            A binary column with a maximum length of 255 (2^8 - 1) 
+            characters
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.MediumBlob">
+            <summary>
+            A binary column with a maximum length of 16777215 (2^24 - 1) bytes.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.LongBlob">
+            <summary>
+            A binary column with a maximum length of 4294967295 or 
+            4G (2^32 - 1) bytes.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Blob">
+            <summary>
+            A binary column with a maximum length of 65535 (2^16 - 1) bytes.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.VarChar">
+            <summary>
+            A variable-length string containing 0 to 255 bytes.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.String">
+            <summary>
+            A fixed-length string.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Geometry">
+            <summary>
+            Geometric (GIS) data type.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.UByte">
+            <summary>
+            Unsigned 8-bit value.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.UInt16">
+            <summary>
+            Unsigned 16-bit value.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.UInt24">
+            <summary>
+            Unsigned 24-bit value.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.UInt32">
+            <summary>
+            Unsigned 32-bit value.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.UInt64">
+            <summary>
+            Unsigned 64-bit value.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Binary">
+            <summary>
+            Fixed length binary string.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.VarBinary">
+            <summary>
+            Variable length binary string.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.TinyText">
+            <summary>
+            A text column with a maximum length of 255 (2^8 - 1) characters.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.MediumText">
+            <summary>
+            A text column with a maximum length of 16777215 (2^24 - 1) characters.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.LongText">
+            <summary>
+            A text column with a maximum length of 4294967295 or 
+            4G (2^32 - 1) characters.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Text">
+            <summary>
+            A text column with a maximum length of 65535 (2^16 - 1) characters.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDbType.Guid">
+            <summary>
+            A guid column
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlConnectionProtocol">
+            <summary>
+            Allows the user to specify the type of connection that should
+            be used.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlConnectionProtocol.Sockets">
+            <summary>
+            TCP/IP style connection.  Works everywhere.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlConnectionProtocol.Pipe">
+            <summary>
+            Named pipe connection.  Works only on Windows systems.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlConnectionProtocol.UnixSocket">
+            <summary>
+            Unix domain socket connection.  Works only with Unix systems.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlConnectionProtocol.SharedMemory">
+            <summary>
+            Shared memory connection.  Currently works only with Windows systems.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlSslMode">
+            <summary>
+            SSL options for connection.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlSslMode.None">
+            <summary>
+            Do not use SSL.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlSslMode.Preferred">
+            <summary>
+            Use SSL, if server supports it.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlSslMode.Required">
+            <summary>
+            Always use SSL. Deny connection if server does not support SSL.
+            Do not perform server certificate validation. 
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlSslMode.VerifyCA">
+            <summary>
+            Always use SSL. Validate server SSL certificate, but different host name mismatch.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlSslMode.VerifyFull">
+            <summary>
+            Always use SSL and perform full certificate validation.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlDriverType">
+            <summary>
+            Specifies the connection types supported
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDriverType.Native">
+            <summary>
+            Use TCP/IP sockets.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDriverType.Client">
+            <summary>
+            Use client library.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlDriverType.Embedded">
+            <summary>
+            Use MySQL embedded server.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlCertificateStoreLocation.None">
+            <summary>
+            Do not use certificate store
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlCertificateStoreLocation.CurrentUser">
+            <summary>
+            Use certificate store for the current user
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlCertificateStoreLocation.LocalMachine">
+            <summary>
+            User certificate store for the machine
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlError">
+            <summary>
+            Collection of error codes that can be returned by the server
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlError.#ctor(System.String,System.Int32,System.String)">
+            <summary></summary>
+            <param name="level"></param>
+            <param name="code"></param>
+            <param name="message"></param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlError.Level">
+            <summary>
+            Error level
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlError.Code">
+            <summary>
+            Error code
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlError.Message">
+            <summary>
+            Error message
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlErrorCode">
+            <summary>
+            Provides a reference to error codes returned by MySQL.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.HashCheck">
+            <summary></summary>
+            <remarks>ER_HASHCHK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ISAMCheck">
+            <summary></summary>
+            <remarks>ER_NISAMCHK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.No">
+            <summary></summary>
+            <remarks>ER_NO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.Yes">
+            <summary></summary>
+            <remarks>ER_YES</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateFile">
+            <summary>The file couldn't be created.</summary>
+            <remarks>ER_CANT_CREATE_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateTable">
+            <summary>The table couldn't be created.</summary>
+            <remarks>ER_CANT_CREATE_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateDatabase">
+            <summary>The database couldn't be created.</summary>
+            <remarks>ER_CANT_CREATE_DB</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DatabaseCreateExists">
+            <summary>The database couldn't be created, it already exists.</summary>
+            <remarks>ER_DB_CREATE_EXISTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DatabaseDropExists">
+            <summary>The database couldn't be dropped, it doesn't exist.</summary>
+            <remarks>ER_DB_DROP_EXISTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DatabaseDropDelete">
+            <summary>The database couldn't be dropped, the file can't be deleted.</summary>
+            <remarks>ER_DB_DROP_DELETE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DatabaseDropRemoveDir">
+            <summary>The database couldn't be dropped, the directory can't be deleted.</summary>
+            <remarks>ER_DB_DROP_RMDIR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotDeleteFile">
+            <summary>The file couldn't be deleted.</summary>
+            <remarks>ER_CANT_DELETE_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotFindSystemRecord">
+            <summary>The record couldn't be read from the system table.</summary>
+            <remarks>ER_CANT_FIND_SYSTEM_REC</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotGetStatus">
+            <summary>The status couldn't be retrieved.</summary>
+            <remarks>ER_CANT_GET_STAT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotGetWorkingDirectory">
+            <summary>The working directory couldn't be retrieved.</summary>
+            <remarks>ER_CANT_GET_WD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotLock">
+            <summary>The file couldn't be locked.</summary>
+            <remarks>ER_CANT_LOCK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotOpenFile">
+            <summary>The file couldn't be opened.</summary>
+            <remarks>ER_CANT_OPEN_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileNotFound">
+            <summary>The file couldn't be found.</summary>
+            <remarks>ER_FILE_NOT_FOUND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotReadDirectory">
+            <summary>The directory couldn't be read.</summary>
+            <remarks>ER_CANT_READ_DIR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotSetWorkingDirectory">
+            <summary>The working directory couldn't be entered.</summary>
+            <remarks>ER_CANT_SET_WD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CheckRead">
+            <summary>The record changed since it was last read.</summary>
+            <remarks>ER_CHECKREAD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DiskFull">
+            <summary>The disk is full.</summary>
+            <remarks>ER_DISK_FULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateKey">
+            <summary>
+            There is already a key with the given values.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorOnClose">
+            <summary>An error occurred when closing the file.</summary>
+            <remarks>ER_ERROR_ON_CLOSE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorOnRead">
+            <summary>An error occurred when reading from the file.</summary>
+            <remarks>ER_ERROR_ON_READ</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorOnRename">
+            <summary>An error occurred when renaming then file.</summary>
+            <remarks>ER_ERROR_ON_RENAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorOnWrite">
+            <summary>An error occurred when writing to the file.</summary>
+            <remarks>ER_ERROR_ON_WRITE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileUsed">
+            <summary>The file is in use.</summary>
+            <remarks>ER_FILE_USED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileSortAborted">
+            <summary>Sorting has been aborted.</summary>
+            <remarks>ER_FILSORT_ABORT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FormNotFound">
+            <summary>The view doesn't exist.</summary>
+            <remarks>ER_FORM_NOT_FOUND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.GetErrorNumber">
+            <summary>Got the specified error from the table storage engine.</summary>
+            <remarks>ER_GET_ERRNO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IllegalHA">
+            <summary>The table storage engine doesn't support the specified option.</summary>
+            <remarks>ER_ILLEGAL_HA</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.KeyNotFound">
+            <summary>
+            The specified key was not found.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NotFormFile">
+            <summary>The file contains incorrect information.</summary>
+            <remarks>ER_NOT_FORM_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NotKeyFile">
+            <summary>The key file is incorrect for the table, it should be repaired.</summary>
+            <remarks>ER_NOT_KEYFILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OldKeyFile">
+            <summary>The key file is old for the table, it should be repaired.</summary>
+            <remarks>ER_OLD_KEYFILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OpenAsReadOnly">
+            <summary>The table is read-only</summary>
+            <remarks>ER_OPEN_AS_READONLY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OutOfMemory">
+            <summary>The server is out of memory, it should be restarted.</summary>
+            <remarks>ER_OUTOFMEMORY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OutOfSortMemory">
+            <summary>The server is out of sort-memory, the sort buffer size should be increased.</summary>
+            <remarks>ER_OUT_OF_SORTMEMORY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnexepectedEOF">
+            <summary>An unexpected EOF was found when reading from the file.</summary>
+            <remarks>ER_UNEXPECTED_EOF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ConnectionCountError">
+            <summary>Too many connections are open.</summary>
+            <remarks>ER_CON_COUNT_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OutOfResources">
+            <summary>The server is out of resources, check if MySql or some other process is using all available memory.</summary>
+            <remarks>ER_OUT_OF_RESOURCES</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnableToConnectToHost">
+            <summary>
+            Given when the connection is unable to successfully connect to host.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.HandshakeError">
+            <summary>The handshake was invalid.</summary>
+            <remarks>ER_HANDSHAKE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DatabaseAccessDenied">
+            <summary>Access was denied for the specified user using the specified database.</summary>
+            <remarks>ER_DBACCESS_DENIED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AccessDenied">
+            <summary>
+            Normally returned when an incorrect password is given
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoDatabaseSelected">
+            <summary>No database has been selected.</summary>
+            <remarks>ER_NO_DB_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownCommand">
+            <summary>The command is unknown.</summary>
+            <remarks>ER_UNKNOWN_COM_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ColumnCannotBeNull">
+            <summary>The specified column cannot be NULL.</summary>
+            <remarks>ER_BAD_NULL_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownDatabase">
+            <summary>The specified database is not known.</summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableExists">
+            <summary>The specified table already exists.</summary>
+            <remarks>ER_TABLE_EXISTS_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BadTable">
+            <summary>The specified table is unknown.</summary>
+            <remarks>ER_BAD_TABLE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonUnique">
+            <summary>The specified column is ambiguous.</summary>
+            <remarks>ER_NON_UNIQ_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ServerShutdown">
+            <summary>The server is currently being shutdown.</summary>
+            <remarks>ER_SERVER_SHUTDOWN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BadFieldError">
+            <summary>The specified columns is unknown.</summary>
+            <remarks>ER_BAD_FIELD_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongFieldWithGroup">
+            <summary>The specified column isn't in GROUP BY.</summary>
+            <remarks>ER_WRONG_FIELD_WITH_GROUP</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongGroupField">
+            <summary>The specified columns cannot be grouped on.</summary>
+            <remarks>ER_WRONG_GROUP_FIELD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongSumSelected">
+            <summary>There are sum functions and columns in the same statement.</summary>
+            <remarks>ER_WRONG_SUM_SELECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongValueCount">
+            <summary>The column count doesn't match the value count.</summary>
+            <remarks>ER_WRONG_VALUE_COUNT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooLongIdentifier">
+            <summary>The identifier name is too long.</summary>
+            <remarks>ER_TOO_LONG_IDENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateFieldName">
+            <summary>The column name is duplicated.</summary>
+            <remarks>ER_DUP_FIELDNAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateKeyName">
+            <summary>
+            Duplicate Key Name
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateKeyEntry">
+            <summary>
+            Duplicate Key Entry
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongFieldSpecifier">
+            <summary>The column specifier is incorrect.</summary>
+            <remarks>ER_WRONG_FIELD_SPEC</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ParseError">
+            <summary>An error occurred when parsing the statement.</summary>
+            <remarks>ER_PARSE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EmptyQuery">
+            <summary>The statement is empty.</summary>
+            <remarks>ER_EMPTY_QUERY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonUniqueTable">
+            <summary>The table alias isn't unique.</summary>
+            <remarks>ER_NONUNIQ_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InvalidDefault">
+            <summary>The default value is invalid for the specified field.</summary>
+            <remarks>ER_INVALID_DEFAULT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MultiplePrimaryKey">
+            <summary>The table has multiple primary keys defined.</summary>
+            <remarks>ER_MULTIPLE_PRI_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyKeys">
+            <summary>Too many keys were defined for the table.</summary>
+            <remarks>ER_TOO_MANY_KEYS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyKeysParts">
+            <summary>Too many parts to the keys were defined for the table.</summary>
+            <remarks>ER_TOO_MANY_KEY_PARTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooLongKey">
+            <summary>The specified key is too long</summary>
+            <remarks>ER_TOO_LONG_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.KeyColumnDoesNotExist">
+            <summary>The specified key column doesn't exist in the table.</summary>
+            <remarks>ER_KEY_COLUMN_DOES_NOT_EXITS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BlobUsedAsKey">
+            <summary>The BLOB column was used as a key, this can't be done.</summary>
+            <remarks>ER_BLOB_USED_AS_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigFieldLength">
+            <summary>The column length is too big for the specified column type.</summary>
+            <remarks>ER_TOO_BIG_FIELDLENGTH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongAutoKey">
+            <summary>There can only be one auto-column, and it must be defined as a PK.</summary>
+            <remarks>ER_WRONG_AUTO_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.Ready">
+            <summary>The server is ready to accept connections.</summary>
+            <remarks>ER_READY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NormalShutdown">
+            <summary></summary>
+            <remarks>ER_NORMAL_SHUTDOWN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.GotSignal">
+            <summary>The server received the specified signal and is aborting.</summary>
+            <remarks>ER_GOT_SIGNAL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ShutdownComplete">
+            <summary>The server shutdown is complete.</summary>
+            <remarks>ER_SHUTDOWN_COMPLETE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForcingClose">
+            <summary>The server is forcing close of the specified thread.</summary>
+            <remarks>ER_FORCING_CLOSE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IPSocketError">
+            <summary>An error occurred when creating the IP socket.</summary>
+            <remarks>ER_IPSOCK_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoSuchIndex">
+            <summary>The table has no index like the one used in CREATE INDEX.</summary>
+            <remarks>ER_NO_SUCH_INDEX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongFieldTerminators">
+            <summary>The field separator argument is not what is expected, check the manual.</summary>
+            <remarks>ER_WRONG_FIELD_TERMINATORS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BlobsAndNoTerminated">
+            <summary>The BLOB columns must terminated, fixed row lengths cannot be used.</summary>
+            <remarks>ER_BLOBS_AND_NO_TERMINATED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TextFileNotReadable">
+            <summary>The text file cannot be read.</summary>
+            <remarks>ER_TEXTFILE_NOT_READABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileExists">
+            <summary>The specified file already exists.</summary>
+            <remarks>ER_FILE_EXISTS_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LoadInfo">
+            <summary>Information returned by the LOAD statement.</summary>
+            <remarks>ER_LOAD_INFO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AlterInfo">
+            <summary>Information returned by an UPDATE statement.</summary>
+            <remarks>ER_ALTER_INFO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongSubKey">
+            <summary>The prefix key is incorrect.</summary>
+            <remarks>ER_WRONG_SUB_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotRemoveAllFields">
+            <summary>All columns cannot be removed from a table, use DROP TABLE instead.</summary>
+            <remarks>ER_CANT_REMOVE_ALL_FIELDS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotDropFieldOrKey">
+            <summary>Cannot DROP, check that the column or key exists.</summary>
+            <remarks>ER_CANT_DROP_FIELD_OR_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InsertInfo">
+            <summary>Information returned by an INSERT statement.</summary>
+            <remarks>ER_INSERT_INFO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UpdateTableUsed">
+            <summary>The target table cannot be specified for update in FROM clause.</summary>
+            <remarks>ER_UPDATE_TABLE_USED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoSuchThread">
+            <summary>The specified thread ID is unknown.</summary>
+            <remarks>ER_NO_SUCH_THREAD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.KillDenied">
+            <summary>The thread cannot be killed, the current user is not the owner.</summary>
+            <remarks>ER_KILL_DENIED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoTablesUsed">
+            <summary>No tables used in the statement.</summary>
+            <remarks>ER_NO_TABLES_USED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigSet">
+            <summary>Too many string have been used for the specified column and SET.</summary>
+            <remarks>ER_TOO_BIG_SET</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoUniqueLogFile">
+            <summary>A unique filename couldn't be generated.</summary>
+            <remarks>ER_NO_UNIQUE_LOGFILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableNotLockedForWrite">
+            <summary>The specified table was locked with a READ lock, and can't be updated.</summary>
+            <remarks>ER_TABLE_NOT_LOCKED_FOR_WRITE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableNotLocked">
+            <summary>The specified table was not locked with LOCK TABLES.</summary>
+            <remarks>ER_TABLE_NOT_LOCKED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BlobCannotHaveDefault">
+            <summary>BLOB and Text columns cannot have a default value.</summary>
+            <remarks>ER_BLOB_CANT_HAVE_DEFAULT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongDatabaseName">
+            <summary>The specified database name is incorrect.</summary>
+            <remarks>ER_WRONG_DB_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongTableName">
+            <summary>The specified table name is incorrect.</summary>
+            <remarks>ER_WRONG_TABLE_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigSelect">
+            <summary>The SELECT command would examine more than MAX_JOIN_SIZE rows, check the WHERE clause and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is ok.</summary>
+            <remarks>ER_TOO_BIG_SELECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownError">
+            <summary>An unknown error occurred.</summary>
+            <remarks>ER_UNKNOWN_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownProcedure">
+            <summary>The specified procedure is unknown.</summary>
+            <remarks>ER_UNKNOWN_PROCEDURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongParameterCountToProcedure">
+            <summary>The number of parameters provided for the specified procedure is incorrect.</summary>
+            <remarks>ER_WRONG_PARAMCOUNT_TO_PROCEDURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongParametersToProcedure">
+            <summary>The parameters provided for the specified procedure are incorrect.</summary>
+            <remarks>ER_WRONG_PARAMETERS_TO_PROCEDURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownTable">
+            <summary>The specified table is unknown.</summary>
+            <remarks>ER_UNKNOWN_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FieldSpecifiedTwice">
+            <summary>The specified column has been specified twice.</summary>
+            <remarks>ER_FIELD_SPECIFIED_TWICE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InvalidGroupFunctionUse">
+            <summary>The group function has been incorrectly used.</summary>
+            <remarks>ER_INVALID_GROUP_FUNC_USE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnsupportedExtenstion">
+            <summary>The specified table uses an extension that doesn't exist in this MySQL version.</summary>
+            <remarks>ER_UNSUPPORTED_EXTENSION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableMustHaveColumns">
+            <summary>The table must have at least one column.</summary>
+            <remarks>ER_TABLE_MUST_HAVE_COLUMNS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RecordFileFull">
+            <summary>The specified table is full.</summary>
+            <remarks>ER_RECORD_FILE_FULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownCharacterSet">
+            <summary>The specified character set is unknown.</summary>
+            <remarks>ER_UNKNOWN_CHARACTER_SET</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyTables">
+            <summary>Too many tables, MySQL can only use the specified number of tables in a JOIN.</summary>
+            <remarks>ER_TOO_MANY_TABLES</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyFields">
+            <summary>Too many columns</summary>
+            <remarks>ER_TOO_MANY_FIELDS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigRowSize">
+            <summary>The row size is too large, the maximum row size for the used tables (not counting BLOBS) is specified, change some columns or BLOBS.</summary>
+            <remarks>ER_TOO_BIG_ROWSIZE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StackOverrun">
+            <summary>A thread stack overrun occurred. Stack statistics are specified.</summary>
+            <remarks>ER_STACK_OVERRUN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongOuterJoin">
+            <summary>A cross dependency was found in the OUTER JOIN, examine the ON conditions.</summary>
+            <remarks>ER_WRONG_OUTER_JOIN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NullColumnInIndex">
+            <summary>The table handler doesn't support NULL in the given index, change specified column to be NOT NULL or use another handler.</summary>
+            <remarks>ER_NULL_COLUMN_IN_INDEX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotFindUDF">
+            <summary>The specified user defined function cannot be loaded.</summary>
+            <remarks>ER_CANT_FIND_UDF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotInitializeUDF">
+            <summary>The specified user defined function cannot be initialised.</summary>
+            <remarks>ER_CANT_INITIALIZE_UDF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UDFNoPaths">
+            <summary>No paths are allowed for the shared library.</summary>
+            <remarks>ER_UDF_NO_PATHS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UDFExists">
+            <summary>The specified user defined function already exists.</summary>
+            <remarks>ER_UDF_EXISTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotOpenLibrary">
+            <summary>The specified shared library cannot be opened.</summary>
+            <remarks>ER_CANT_OPEN_LIBRARY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotFindDLEntry">
+            <summary>The specified symbol cannot be found in the library.</summary>
+            <remarks>ER_CANT_FIND_DL_ENTRY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FunctionNotDefined">
+            <summary>The specified function is not defined.</summary>
+            <remarks>ER_FUNCTION_NOT_DEFINED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.HostIsBlocked">
+            <summary>The specified host is blocked because of too many connection errors, unblock with 'mysqladmin flush-hosts'.</summary>
+            <remarks>ER_HOST_IS_BLOCKED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.HostNotPrivileged">
+            <summary>
+            The given host is not allowed to connect
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AnonymousUser">
+            <summary>
+            The anonymous user is not allowed to connect
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PasswordNotAllowed">
+            <summary>
+            The given password is not allowed
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PasswordNoMatch">
+            <summary>
+            The given password does not match
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UpdateInfo">
+            <summary>Information returned by an UPDATE statement.</summary>
+            <remarks>ER_UPDATE_INFO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateThread">
+            <summary>A new thread couldn't be created.</summary>
+            <remarks>ER_CANT_CREATE_THREAD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongValueCountOnRow">
+            <summary>The column count doesn't match the value count.</summary>
+            <remarks>ER_WRONG_VALUE_COUNT_ON_ROW</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotReopenTable">
+            <summary>The specified table can't be re-opened.</summary>
+            <remarks>ER_CANT_REOPEN_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InvalidUseOfNull">
+            <summary>The NULL value has been used incorrectly.</summary>
+            <remarks>ER_INVALID_USE_OF_NULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RegExpError">
+            <summary>The regular expression contains an error.</summary>
+            <remarks>ER_REGEXP_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MixOfGroupFunctionAndFields">
+            <summary>GROUP columns (MIN(), MAX(), COUNT(), ...) cannot be mixes with no GROUP columns if there is not GROUP BY clause.</summary>
+            <remarks>ER_MIX_OF_GROUP_FUNC_AND_FIELDS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonExistingGrant">
+            <summary></summary>
+            <remarks>ER_NONEXISTING_GRANT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableAccessDenied">
+            <summary></summary>
+            <remarks>ER_TABLEACCESS_DENIED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ColumnAccessDenied">
+            <summary></summary>
+            <remarks>ER_COLUMNACCESS_DENIED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IllegalGrantForTable">
+            <summary></summary>
+            <remarks>ER_ILLEGAL_GRANT_FOR_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.GrantWrongHostOrUser">
+            <summary></summary>
+            <remarks>ER_GRANT_WRONG_HOST_OR_USER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoSuchTable">
+            <summary></summary>
+            <remarks>ER_NO_SUCH_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonExistingTableGrant">
+            <summary></summary>
+            <remarks>ER_NONEXISTING_TABLE_GRANT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NotAllowedCommand">
+            <summary></summary>
+            <remarks>ER_NOT_ALLOWED_COMMAND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SyntaxError">
+            <summary></summary>
+            <remarks>ER_SYNTAX_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DelayedCannotChangeLock">
+            <summary></summary>
+            <remarks>ER_DELAYED_CANT_CHANGE_LOCK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyDelayedThreads">
+            <summary></summary>
+            <remarks>ER_TOO_MANY_DELAYED_THREADS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AbortingConnection">
+            <summary></summary>
+            <remarks>ER_ABORTING_CONNECTION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PacketTooLarge">
+            <summary>
+            An attempt was made to send or receive a packet larger than
+            max_allowed_packet_size
+            </summary>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetReadErrorFromPipe">
+            <summary></summary>
+            <remarks>ER_NET_READ_ERROR_FROM_PIPE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetFCntlError">
+            <summary></summary>
+            <remarks>ER_NET_FCNTL_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetPacketsOutOfOrder">
+            <summary></summary>
+            <remarks>ER_NET_PACKETS_OUT_OF_ORDER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetUncompressError">
+            <summary></summary>
+            <remarks>ER_NET_UNCOMPRESS_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetReadError">
+            <summary></summary>
+            <remarks>ER_NET_READ_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetReadInterrupted">
+            <summary></summary>
+            <remarks>ER_NET_READ_INTERRUPTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetErrorOnWrite">
+            <summary></summary>
+            <remarks>ER_NET_ERROR_ON_WRITE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NetWriteInterrupted">
+            <summary></summary>
+            <remarks>ER_NET_WRITE_INTERRUPTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooLongString">
+            <summary></summary>
+            <remarks>ER_TOO_LONG_STRING</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableCannotHandleBlob">
+            <summary></summary>
+            <remarks>ER_TABLE_CANT_HANDLE_BLOB</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableCannotHandleAutoIncrement">
+            <summary></summary>
+            <remarks>ER_TABLE_CANT_HANDLE_AUTO_INCREMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DelayedInsertTableLocked">
+            <summary></summary>
+            <remarks>ER_DELAYED_INSERT_TABLE_LOCKED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongColumnName">
+            <summary></summary>
+            <remarks>ER_WRONG_COLUMN_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongKeyColumn">
+            <summary></summary>
+            <remarks>ER_WRONG_KEY_COLUMN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongMergeTable">
+            <summary></summary>
+            <remarks>ER_WRONG_MRG_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateUnique">
+            <summary></summary>
+            <remarks>ER_DUP_UNIQUE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BlobKeyWithoutLength">
+            <summary></summary>
+            <remarks>ER_BLOB_KEY_WITHOUT_LENGTH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PrimaryCannotHaveNull">
+            <summary></summary>
+            <remarks>ER_PRIMARY_CANT_HAVE_NULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyRows">
+            <summary></summary>
+            <remarks>ER_TOO_MANY_ROWS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RequiresPrimaryKey">
+            <summary></summary>
+            <remarks>ER_REQUIRES_PRIMARY_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoRAIDCompiled">
+            <summary></summary>
+            <remarks>ER_NO_RAID_COMPILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UpdateWithoutKeysInSafeMode">
+            <summary></summary>
+            <remarks>ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.KeyDoesNotExist">
+            <summary></summary>
+            <remarks>ER_KEY_DOES_NOT_EXITS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CheckNoSuchTable">
+            <summary></summary>
+            <remarks>ER_CHECK_NO_SUCH_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CheckNotImplemented">
+            <summary></summary>
+            <remarks>ER_CHECK_NOT_IMPLEMENTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotDoThisDuringATransaction">
+            <summary></summary>
+            <remarks>ER_CANT_DO_THIS_DURING_AN_TRANSACTION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorDuringCommit">
+            <summary></summary>
+            <remarks>ER_ERROR_DURING_COMMIT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorDuringRollback">
+            <summary></summary>
+            <remarks>ER_ERROR_DURING_ROLLBACK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorDuringFlushLogs">
+            <summary></summary>
+            <remarks>ER_ERROR_DURING_FLUSH_LOGS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorDuringCheckpoint">
+            <summary></summary>
+            <remarks>ER_ERROR_DURING_CHECKPOINT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NewAbortingConnection">
+            <summary></summary>
+            <remarks>ER_NEW_ABORTING_CONNECTION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DumpNotImplemented">
+            <summary></summary>
+            <remarks>ER_DUMP_NOT_IMPLEMENTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FlushMasterBinLogClosed">
+            <summary></summary>
+            <remarks>ER_FLUSH_MASTER_BINLOG_CLOSED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IndexRebuild">
+            <summary></summary>
+            <remarks>ER_INDEX_REBUILD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MasterError">
+            <summary></summary>
+            <remarks>ER_MASTER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MasterNetRead">
+            <summary></summary>
+            <remarks>ER_MASTER_NET_READ</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MasterNetWrite">
+            <summary></summary>
+            <remarks>ER_MASTER_NET_WRITE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FullTextMatchingKeyNotFound">
+            <summary></summary>
+            <remarks>ER_FT_MATCHING_KEY_NOT_FOUND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LockOrActiveTransaction">
+            <summary></summary>
+            <remarks>ER_LOCK_OR_ACTIVE_TRANSACTION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownSystemVariable">
+            <summary></summary>
+            <remarks>ER_UNKNOWN_SYSTEM_VARIABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CrashedOnUsage">
+            <summary></summary>
+            <remarks>ER_CRASHED_ON_USAGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CrashedOnRepair">
+            <summary></summary>
+            <remarks>ER_CRASHED_ON_REPAIR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningNotCompleteRollback">
+            <summary></summary>
+            <remarks>ER_WARNING_NOT_COMPLETE_ROLLBACK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TransactionCacheFull">
+            <summary></summary>
+            <remarks>ER_TRANS_CACHE_FULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveMustStop">
+            <summary></summary>
+            <remarks>ER_SLAVE_MUST_STOP</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveNotRunning">
+            <summary></summary>
+            <remarks>ER_SLAVE_NOT_RUNNING</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BadSlave">
+            <summary></summary>
+            <remarks>ER_BAD_SLAVE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MasterInfo">
+            <summary></summary>
+            <remarks>ER_MASTER_INFO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveThread">
+            <summary></summary>
+            <remarks>ER_SLAVE_THREAD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyUserConnections">
+            <summary></summary>
+            <remarks>ER_TOO_MANY_USER_CONNECTIONS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SetConstantsOnly">
+            <summary></summary>
+            <remarks>ER_SET_CONSTANTS_ONLY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LockWaitTimeout">
+            <summary></summary>
+            <remarks>ER_LOCK_WAIT_TIMEOUT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LockTableFull">
+            <summary></summary>
+            <remarks>ER_LOCK_TABLE_FULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ReadOnlyTransaction">
+            <summary></summary>
+            <remarks>ER_READ_ONLY_TRANSACTION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DropDatabaseWithReadLock">
+            <summary></summary>
+            <remarks>ER_DROP_DB_WITH_READ_LOCK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CreateDatabaseWithReadLock">
+            <summary></summary>
+            <remarks>ER_CREATE_DB_WITH_READ_LOCK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongArguments">
+            <summary></summary>
+            <remarks>ER_WRONG_ARGUMENTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoPermissionToCreateUser">
+            <summary></summary>
+            <remarks>ER_NO_PERMISSION_TO_CREATE_USER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnionTablesInDifferentDirectory">
+            <summary></summary>
+            <remarks>ER_UNION_TABLES_IN_DIFFERENT_DIR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LockDeadlock">
+            <summary></summary>
+            <remarks>ER_LOCK_DEADLOCK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableCannotHandleFullText">
+            <summary></summary>
+            <remarks>ER_TABLE_CANT_HANDLE_FT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotAddForeignConstraint">
+            <summary></summary>
+            <remarks>ER_CANNOT_ADD_FOREIGN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoReferencedRow">
+            <summary></summary>
+            <remarks>ER_NO_REFERENCED_ROW</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RowIsReferenced">
+            <summary></summary>
+            <remarks>ER_ROW_IS_REFERENCED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ConnectToMaster">
+            <summary></summary>
+            <remarks>ER_CONNECT_TO_MASTER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.QueryOnMaster">
+            <summary></summary>
+            <remarks>ER_QUERY_ON_MASTER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorWhenExecutingCommand">
+            <summary></summary>
+            <remarks>ER_ERROR_WHEN_EXECUTING_COMMAND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongUsage">
+            <summary></summary>
+            <remarks>ER_WRONG_USAGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongNumberOfColumnsInSelect">
+            <summary></summary>
+            <remarks>ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotUpdateWithReadLock">
+            <summary></summary>
+            <remarks>ER_CANT_UPDATE_WITH_READLOCK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MixingNotAllowed">
+            <summary></summary>
+            <remarks>ER_MIXING_NOT_ALLOWED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateArgument">
+            <summary></summary>
+            <remarks>ER_DUP_ARGUMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UserLimitReached">
+            <summary></summary>
+            <remarks>ER_USER_LIMIT_REACHED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SpecifiedAccessDeniedError">
+            <summary></summary>
+            <remarks>ER_SPECIFIC_ACCESS_DENIED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LocalVariableError">
+            <summary></summary>
+            <remarks>ER_LOCAL_VARIABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.GlobalVariableError">
+            <summary></summary>
+            <remarks>ER_GLOBAL_VARIABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NotDefaultError">
+            <summary></summary>
+            <remarks>ER_NO_DEFAULT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongValueForVariable">
+            <summary></summary>
+            <remarks>ER_WRONG_VALUE_FOR_VAR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongTypeForVariable">
+            <summary></summary>
+            <remarks>ER_WRONG_TYPE_FOR_VAR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.VariableCannotBeRead">
+            <summary></summary>
+            <remarks>ER_VAR_CANT_BE_READ</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotUseOptionHere">
+            <summary></summary>
+            <remarks>ER_CANT_USE_OPTION_HERE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NotSupportedYet">
+            <summary></summary>
+            <remarks>ER_NOT_SUPPORTED_YET</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MasterFatalErrorReadingBinLog">
+            <summary></summary>
+            <remarks>ER_MASTER_FATAL_ERROR_READING_BINLOG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveIgnoredTable">
+            <summary></summary>
+            <remarks>ER_SLAVE_IGNORED_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IncorrectGlobalLocalVariable">
+            <summary></summary>
+            <remarks>ER_INCORRECT_GLOBAL_LOCAL_VAR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongForeignKeyDefinition">
+            <summary></summary>
+            <remarks>ER_WRONG_FK_DEF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.KeyReferenceDoesNotMatchTableReference">
+            <summary></summary>
+            <remarks>ER_KEY_REF_DO_NOT_MATCH_TABLE_REF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OpearnColumnsError">
+            <summary></summary>
+            <remarks>ER_OPERAND_COLUMNS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SubQueryNoOneRow">
+            <summary></summary>
+            <remarks>ER_SUBQUERY_NO_1_ROW</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownStatementHandler">
+            <summary></summary>
+            <remarks>ER_UNKNOWN_STMT_HANDLER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CorruptHelpDatabase">
+            <summary></summary>
+            <remarks>ER_CORRUPT_HELP_DB</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CyclicReference">
+            <summary></summary>
+            <remarks>ER_CYCLIC_REFERENCE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AutoConvert">
+            <summary></summary>
+            <remarks>ER_AUTO_CONVERT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IllegalReference">
+            <summary></summary>
+            <remarks>ER_ILLEGAL_REFERENCE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DerivedMustHaveAlias">
+            <summary></summary>
+            <remarks>ER_DERIVED_MUST_HAVE_ALIAS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SelectReduced">
+            <summary></summary>
+            <remarks>ER_SELECT_REDUCED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableNameNotAllowedHere">
+            <summary></summary>
+            <remarks>ER_TABLENAME_NOT_ALLOWED_HERE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NotSupportedAuthMode">
+            <summary></summary>
+            <remarks>ER_NOT_SUPPORTED_AUTH_MODE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SpatialCannotHaveNull">
+            <summary></summary>
+            <remarks>ER_SPATIAL_CANT_HAVE_NULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CollationCharsetMismatch">
+            <summary></summary>
+            <remarks>ER_COLLATION_CHARSET_MISMATCH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveWasRunning">
+            <summary></summary>
+            <remarks>ER_SLAVE_WAS_RUNNING</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveWasNotRunning">
+            <summary></summary>
+            <remarks>ER_SLAVE_WAS_NOT_RUNNING</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigForUncompress">
+            <summary></summary>
+            <remarks>ER_TOO_BIG_FOR_UNCOMPRESS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ZipLibMemoryError">
+            <summary></summary>
+            <remarks>ER_ZLIB_Z_MEM_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ZipLibBufferError">
+            <summary></summary>
+            <remarks>ER_ZLIB_Z_BUF_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ZipLibDataError">
+            <summary></summary>
+            <remarks>ER_ZLIB_Z_DATA_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CutValueGroupConcat">
+            <summary></summary>
+            <remarks>ER_CUT_VALUE_GROUP_CONCAT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningTooFewRecords">
+            <summary></summary>
+            <remarks>ER_WARN_TOO_FEW_RECORDS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningTooManyRecords">
+            <summary></summary>
+            <remarks>ER_WARN_TOO_MANY_RECORDS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningNullToNotNull">
+            <summary></summary>
+            <remarks>ER_WARN_NULL_TO_NOTNULL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningDataOutOfRange">
+            <summary></summary>
+            <remarks>ER_WARN_DATA_OUT_OF_RANGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WaningDataTruncated">
+            <summary></summary>
+            <remarks>WARN_DATA_TRUNCATED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WaningUsingOtherHandler">
+            <summary></summary>
+            <remarks>ER_WARN_USING_OTHER_HANDLER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotAggregateTwoCollations">
+            <summary></summary>
+            <remarks>ER_CANT_AGGREGATE_2COLLATIONS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DropUserError">
+            <summary></summary>
+            <remarks>ER_DROP_USER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RevokeGrantsError">
+            <summary></summary>
+            <remarks>ER_REVOKE_GRANTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotAggregateThreeCollations">
+            <summary></summary>
+            <remarks>ER_CANT_AGGREGATE_3COLLATIONS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotAggregateNCollations">
+            <summary></summary>
+            <remarks>ER_CANT_AGGREGATE_NCOLLATIONS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.VariableIsNotStructure">
+            <summary></summary>
+            <remarks>ER_VARIABLE_IS_NOT_STRUCT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownCollation">
+            <summary></summary>
+            <remarks>ER_UNKNOWN_COLLATION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveIgnoreSSLParameters">
+            <summary></summary>
+            <remarks>ER_SLAVE_IGNORED_SSL_PARAMS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ServerIsInSecureAuthMode">
+            <summary></summary>
+            <remarks>ER_SERVER_IS_IN_SECURE_AUTH_MODE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WaningFieldResolved">
+            <summary></summary>
+            <remarks>ER_WARN_FIELD_RESOLVED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BadSlaveUntilCondition">
+            <summary></summary>
+            <remarks>ER_BAD_SLAVE_UNTIL_COND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MissingSkipSlave">
+            <summary></summary>
+            <remarks>ER_MISSING_SKIP_SLAVE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorUntilConditionIgnored">
+            <summary></summary>
+            <remarks>ER_UNTIL_COND_IGNORED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongNameForIndex">
+            <summary></summary>
+            <remarks>ER_WRONG_NAME_FOR_INDEX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongNameForCatalog">
+            <summary></summary>
+            <remarks>ER_WRONG_NAME_FOR_CATALOG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningQueryCacheResize">
+            <summary></summary>
+            <remarks>ER_WARN_QC_RESIZE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BadFullTextColumn">
+            <summary></summary>
+            <remarks>ER_BAD_FT_COLUMN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownKeyCache">
+            <summary></summary>
+            <remarks>ER_UNKNOWN_KEY_CACHE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningHostnameWillNotWork">
+            <summary></summary>
+            <remarks>ER_WARN_HOSTNAME_WONT_WORK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownStorageEngine">
+            <summary></summary>
+            <remarks>ER_UNKNOWN_STORAGE_ENGINE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WaningDeprecatedSyntax">
+            <summary></summary>
+            <remarks>ER_WARN_DEPRECATED_SYNTAX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonUpdateableTable">
+            <summary></summary>
+            <remarks>ER_NON_UPDATABLE_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FeatureDisabled">
+            <summary></summary>
+            <remarks>ER_FEATURE_DISABLED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OptionPreventsStatement">
+            <summary></summary>
+            <remarks>ER_OPTION_PREVENTS_STATEMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicatedValueInType">
+            <summary></summary>
+            <remarks>ER_DUPLICATED_VALUE_IN_TYPE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TruncatedWrongValue">
+            <summary></summary>
+            <remarks>ER_TRUNCATED_WRONG_VALUE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooMuchAutoTimestampColumns">
+            <summary></summary>
+            <remarks>ER_TOO_MUCH_AUTO_TIMESTAMP_COLS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InvalidOnUpdate">
+            <summary></summary>
+            <remarks>ER_INVALID_ON_UPDATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnsupportedPreparedStatement">
+            <summary></summary>
+            <remarks>ER_UNSUPPORTED_PS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.GetErroMessage">
+            <summary></summary>
+            <remarks>ER_GET_ERRMSG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.GetTemporaryErrorMessage">
+            <summary></summary>
+            <remarks>ER_GET_TEMPORARY_ERRMSG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownTimeZone">
+            <summary></summary>
+            <remarks>ER_UNKNOWN_TIME_ZONE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningInvalidTimestamp">
+            <summary></summary>
+            <remarks>ER_WARN_INVALID_TIMESTAMP</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InvalidCharacterString">
+            <summary></summary>
+            <remarks>ER_INVALID_CHARACTER_STRING</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningAllowedPacketOverflowed">
+            <summary></summary>
+            <remarks>ER_WARN_ALLOWED_PACKET_OVERFLOWED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ConflictingDeclarations">
+            <summary></summary>
+            <remarks>ER_CONFLICTING_DECLARATIONS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNoRecursiveCreate">
+            <summary></summary>
+            <remarks>ER_SP_NO_RECURSIVE_CREATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureAlreadyExists">
+            <summary></summary>
+            <remarks>ER_SP_ALREADY_EXISTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureDoesNotExist">
+            <summary></summary>
+            <remarks>ER_SP_DOES_NOT_EXIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureDropFailed">
+            <summary></summary>
+            <remarks>ER_SP_DROP_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureStoreFailed">
+            <summary></summary>
+            <remarks>ER_SP_STORE_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureLiLabelMismatch">
+            <summary></summary>
+            <remarks>ER_SP_LILABEL_MISMATCH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureLabelRedefine">
+            <summary></summary>
+            <remarks>ER_SP_LABEL_REDEFINE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureLabelMismatch">
+            <summary></summary>
+            <remarks>ER_SP_LABEL_MISMATCH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureUninitializedVariable">
+            <summary></summary>
+            <remarks>ER_SP_UNINIT_VAR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureBadSelect">
+            <summary></summary>
+            <remarks>ER_SP_BADSELECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureBadReturn">
+            <summary></summary>
+            <remarks>ER_SP_BADRETURN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureBadStatement">
+            <summary></summary>
+            <remarks>ER_SP_BADSTATEMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UpdateLogDeprecatedIgnored">
+            <summary></summary>
+            <remarks>ER_UPDATE_LOG_DEPRECATED_IGNORED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UpdateLogDeprecatedTranslated">
+            <summary></summary>
+            <remarks>ER_UPDATE_LOG_DEPRECATED_TRANSLATED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.QueryInterrupted">
+            <summary></summary>
+            <remarks>ER_QUERY_INTERRUPTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNumberOfArguments">
+            <summary></summary>
+            <remarks>ER_SP_WRONG_NO_OF_ARGS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureConditionMismatch">
+            <summary></summary>
+            <remarks>ER_SP_COND_MISMATCH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNoReturn">
+            <summary></summary>
+            <remarks>ER_SP_NORETURN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNoReturnEnd">
+            <summary></summary>
+            <remarks>ER_SP_NORETURNEND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureBadCursorQuery">
+            <summary></summary>
+            <remarks>ER_SP_BAD_CURSOR_QUERY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureBadCursorSelect">
+            <summary></summary>
+            <remarks>ER_SP_BAD_CURSOR_SELECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureCursorMismatch">
+            <summary></summary>
+            <remarks>ER_SP_CURSOR_MISMATCH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureAlreadyOpen">
+            <summary></summary>
+            <remarks>ER_SP_CURSOR_ALREADY_OPEN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureCursorNotOpen">
+            <summary></summary>
+            <remarks>ER_SP_CURSOR_NOT_OPEN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureUndeclaredVariabel">
+            <summary></summary>
+            <remarks>ER_SP_UNDECLARED_VAR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureWrongNumberOfFetchArguments">
+            <summary></summary>
+            <remarks>ER_SP_WRONG_NO_OF_FETCH_ARGS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureFetchNoData">
+            <summary></summary>
+            <remarks>ER_SP_FETCH_NO_DATA</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureDuplicateParameter">
+            <summary></summary>
+            <remarks>ER_SP_DUP_PARAM</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureDuplicateVariable">
+            <summary></summary>
+            <remarks>ER_SP_DUP_VAR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureDuplicateCondition">
+            <summary></summary>
+            <remarks>ER_SP_DUP_COND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureDuplicateCursor">
+            <summary></summary>
+            <remarks>ER_SP_DUP_CURS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureCannotAlter">
+            <summary></summary>
+            <remarks>ER_SP_CANT_ALTER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureSubSelectNYI">
+            <summary></summary>
+            <remarks>ER_SP_SUBSELECT_NYI</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StatementNotAllowedInStoredFunctionOrTrigger">
+            <summary></summary>
+            <remarks>ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureVariableConditionAfterCursorHandler">
+            <summary></summary>
+            <remarks>ER_SP_VARCOND_AFTER_CURSHNDLR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureCursorAfterHandler">
+            <summary></summary>
+            <remarks>ER_SP_CURSOR_AFTER_HANDLER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureCaseNotFound">
+            <summary></summary>
+            <remarks>ER_SP_CASE_NOT_FOUND</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileParserTooBigFile">
+            <summary></summary>
+            <remarks>ER_FPARSER_TOO_BIG_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileParserBadHeader">
+            <summary></summary>
+            <remarks>ER_FPARSER_BAD_HEADER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileParserEOFInComment">
+            <summary></summary>
+            <remarks>ER_FPARSER_EOF_IN_COMMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileParserErrorInParameter">
+            <summary></summary>
+            <remarks>ER_FPARSER_ERROR_IN_PARAMETER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileParserEOFInUnknownParameter">
+            <summary></summary>
+            <remarks>ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewNoExplain">
+            <summary></summary>
+            <remarks>ER_VIEW_NO_EXPLAIN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FrmUnknownType">
+            <summary></summary>
+            <remarks>ER_FRM_UNKNOWN_TYPE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongObject">
+            <summary></summary>
+            <remarks>ER_WRONG_OBJECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonUpdateableColumn">
+            <summary></summary>
+            <remarks>ER_NONUPDATEABLE_COLUMN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewSelectDerived">
+            <summary></summary>
+            <remarks>ER_VIEW_SELECT_DERIVED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewSelectClause">
+            <summary></summary>
+            <remarks>ER_VIEW_SELECT_CLAUSE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewSelectVariable">
+            <summary></summary>
+            <remarks>ER_VIEW_SELECT_VARIABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewSelectTempTable">
+            <summary></summary>
+            <remarks>ER_VIEW_SELECT_TMPTABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewWrongList">
+            <summary></summary>
+            <remarks>ER_VIEW_WRONG_LIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningViewMerge">
+            <summary></summary>
+            <remarks>ER_WARN_VIEW_MERGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningViewWithoutKey">
+            <summary></summary>
+            <remarks>ER_WARN_VIEW_WITHOUT_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewInvalid">
+            <summary></summary>
+            <remarks>ER_VIEW_INVALID</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNoDropStoredProcedure">
+            <summary></summary>
+            <remarks>ER_SP_NO_DROP_SP</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureGotoInHandler">
+            <summary></summary>
+            <remarks>ER_SP_GOTO_IN_HNDLR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerAlreadyExists">
+            <summary></summary>
+            <remarks>ER_TRG_ALREADY_EXISTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerDoesNotExist">
+            <summary></summary>
+            <remarks>ER_TRG_DOES_NOT_EXIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerOnViewOrTempTable">
+            <summary></summary>
+            <remarks>ER_TRG_ON_VIEW_OR_TEMP_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerCannotChangeRow">
+            <summary></summary>
+            <remarks>ER_TRG_CANT_CHANGE_ROW</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerNoSuchRowInTrigger">
+            <summary></summary>
+            <remarks>ER_TRG_NO_SUCH_ROW_IN_TRG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoDefaultForField">
+            <summary></summary>
+            <remarks>ER_NO_DEFAULT_FOR_FIELD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DivisionByZero">
+            <summary></summary>
+            <remarks>ER_DIVISION_BY_ZERO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TruncatedWrongValueForField">
+            <summary></summary>
+            <remarks>ER_TRUNCATED_WRONG_VALUE_FOR_FIELD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IllegalValueForType">
+            <summary></summary>
+            <remarks>ER_ILLEGAL_VALUE_FOR_TYPE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewNonUpdatableCheck">
+            <summary></summary>
+            <remarks>ER_VIEW_NONUPD_CHECK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewCheckFailed">
+            <summary></summary>
+            <remarks>ER_VIEW_CHECK_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PrecedureAccessDenied">
+            <summary></summary>
+            <remarks>ER_PROCACCESS_DENIED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RelayLogFail">
+            <summary></summary>
+            <remarks>ER_RELAY_LOG_FAIL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PasswordLength">
+            <summary></summary>
+            <remarks>ER_PASSWD_LENGTH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnknownTargetBinLog">
+            <summary></summary>
+            <remarks>ER_UNKNOWN_TARGET_BINLOG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IOErrorLogIndexRead">
+            <summary></summary>
+            <remarks>ER_IO_ERR_LOG_INDEX_READ</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogPurgeProhibited">
+            <summary></summary>
+            <remarks>ER_BINLOG_PURGE_PROHIBITED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FSeekFail">
+            <summary></summary>
+            <remarks>ER_FSEEK_FAIL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogPurgeFatalError">
+            <summary></summary>
+            <remarks>ER_BINLOG_PURGE_FATAL_ERR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LogInUse">
+            <summary></summary>
+            <remarks>ER_LOG_IN_USE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LogPurgeUnknownError">
+            <summary></summary>
+            <remarks>ER_LOG_PURGE_UNKNOWN_ERR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RelayLogInit">
+            <summary></summary>
+            <remarks>ER_RELAY_LOG_INIT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoBinaryLogging">
+            <summary></summary>
+            <remarks>ER_NO_BINARY_LOGGING</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ReservedSyntax">
+            <summary></summary>
+            <remarks>ER_RESERVED_SYNTAX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WSAStartupFailed">
+            <summary></summary>
+            <remarks>ER_WSAS_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DifferentGroupsProcedure">
+            <summary></summary>
+            <remarks>ER_DIFF_GROUPS_PROC</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoGroupForProcedure">
+            <summary></summary>
+            <remarks>ER_NO_GROUP_FOR_PROC</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OrderWithProcedure">
+            <summary></summary>
+            <remarks>ER_ORDER_WITH_PROC</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LoggingProhibitsChangingOf">
+            <summary></summary>
+            <remarks>ER_LOGGING_PROHIBIT_CHANGING_OF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoFileMapping">
+            <summary></summary>
+            <remarks>ER_NO_FILE_MAPPING</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongMagic">
+            <summary></summary>
+            <remarks>ER_WRONG_MAGIC</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PreparedStatementManyParameters">
+            <summary></summary>
+            <remarks>ER_PS_MANY_PARAM</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.KeyPartZero">
+            <summary></summary>
+            <remarks>ER_KEY_PART_0</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewChecksum">
+            <summary></summary>
+            <remarks>ER_VIEW_CHECKSUM</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewMultiUpdate">
+            <summary></summary>
+            <remarks>ER_VIEW_MULTIUPDATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewNoInsertFieldList">
+            <summary></summary>
+            <remarks>ER_VIEW_NO_INSERT_FIELD_LIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewDeleteMergeView">
+            <summary></summary>
+            <remarks>ER_VIEW_DELETE_MERGE_VIEW</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotUser">
+            <summary></summary>
+            <remarks>ER_CANNOT_USER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XAERNotA">
+            <summary></summary>
+            <remarks>ER_XAER_NOTA</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XAERInvalid">
+            <summary></summary>
+            <remarks>ER_XAER_INVAL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XAERRemoveFail">
+            <summary></summary>
+            <remarks>ER_XAER_RMFAIL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XAEROutside">
+            <summary></summary>
+            <remarks>ER_XAER_OUTSIDE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XAERRemoveError">
+            <summary></summary>
+            <remarks>ER_XAER_RMERR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XARBRollback">
+            <summary></summary>
+            <remarks>ER_XA_RBROLLBACK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonExistingProcedureGrant">
+            <summary></summary>
+            <remarks>ER_NONEXISTING_PROC_GRANT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ProcedureAutoGrantFail">
+            <summary></summary>
+            <remarks>ER_PROC_AUTO_GRANT_FAIL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ProcedureAutoRevokeFail">
+            <summary></summary>
+            <remarks>ER_PROC_AUTO_REVOKE_FAIL</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DataTooLong">
+            <summary></summary>
+            <remarks>ER_DATA_TOO_LONG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureSQLState">
+            <summary></summary>
+            <remarks>ER_SP_BAD_SQLSTATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StartupError">
+            <summary></summary>
+            <remarks>ER_STARTUP</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LoadFromFixedSizeRowsToVariable">
+            <summary></summary>
+            <remarks>ER_LOAD_FROM_FIXED_SIZE_ROWS_TO_VAR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateUserWithGrant">
+            <summary></summary>
+            <remarks>ER_CANT_CREATE_USER_WITH_GRANT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongValueForType">
+            <summary></summary>
+            <remarks>ER_WRONG_VALUE_FOR_TYPE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableDefinitionChanged">
+            <summary></summary>
+            <remarks>ER_TABLE_DEF_CHANGED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureDuplicateHandler">
+            <summary></summary>
+            <remarks>ER_SP_DUP_HANDLER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNotVariableArgument">
+            <summary></summary>
+            <remarks>ER_SP_NOT_VAR_ARG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNoReturnSet">
+            <summary></summary>
+            <remarks>ER_SP_NO_RETSET</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateGeometryObject">
+            <summary></summary>
+            <remarks>ER_CANT_CREATE_GEOMETRY_OBJECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FailedRoutineBreaksBinLog">
+            <summary></summary>
+            <remarks>ER_FAILED_ROUTINE_BREAK_BINLOG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogUnsafeRoutine">
+            <summary></summary>
+            <remarks>ER_BINLOG_UNSAFE_ROUTINE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogCreateRoutineNeedSuper">
+            <summary></summary>
+            <remarks>ER_BINLOG_CREATE_ROUTINE_NEED_SUPER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ExecuteStatementWithOpenCursor">
+            <summary></summary>
+            <remarks>ER_EXEC_STMT_WITH_OPEN_CURSOR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StatementHasNoOpenCursor">
+            <summary></summary>
+            <remarks>ER_STMT_HAS_NO_OPEN_CURSOR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CommitNotAllowedIfStoredFunctionOrTrigger">
+            <summary></summary>
+            <remarks>ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoDefaultForViewField">
+            <summary></summary>
+            <remarks>ER_NO_DEFAULT_FOR_VIEW_FIELD</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNoRecursion">
+            <summary></summary>
+            <remarks>ER_SP_NO_RECURSION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigScale">
+            <summary></summary>
+            <remarks>ER_TOO_BIG_SCALE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigPrecision">
+            <summary></summary>
+            <remarks>ER_TOO_BIG_PRECISION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MBiggerThanD">
+            <summary></summary>
+            <remarks>ER_M_BIGGER_THAN_D</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongLockOfSystemTable">
+            <summary></summary>
+            <remarks>ER_WRONG_LOCK_OF_SYSTEM_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ConnectToForeignDataSource">
+            <summary></summary>
+            <remarks>ER_CONNECT_TO_FOREIGN_DATA_SOURCE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.QueryOnForeignDataSource">
+            <summary></summary>
+            <remarks>ER_QUERY_ON_FOREIGN_DATA_SOURCE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForeignDataSourceDoesNotExist">
+            <summary></summary>
+            <remarks>ER_FOREIGN_DATA_SOURCE_DOESNT_EXIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForeignDataStringInvalidCannotCreate">
+            <summary></summary>
+            <remarks>ER_FOREIGN_DATA_STRING_INVALID_CANT_CREATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForeignDataStringInvalid">
+            <summary></summary>
+            <remarks>ER_FOREIGN_DATA_STRING_INVALID</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateFederatedTable">
+            <summary></summary>
+            <remarks>ER_CANT_CREATE_FEDERATED_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerInWrongSchema">
+            <summary></summary>
+            <remarks>ER_TRG_IN_WRONG_SCHEMA</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StackOverrunNeedMore">
+            <summary></summary>
+            <remarks>ER_STACK_OVERRUN_NEED_MORE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooLongBody">
+            <summary></summary>
+            <remarks>ER_TOO_LONG_BODY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningCannotDropDefaultKeyCache">
+            <summary></summary>
+            <remarks>ER_WARN_CANT_DROP_DEFAULT_KEYCACHE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooBigDisplayWidth">
+            <summary></summary>
+            <remarks>ER_TOO_BIG_DISPLAYWIDTH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XAERDuplicateID">
+            <summary></summary>
+            <remarks>ER_XAER_DUPID</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DateTimeFunctionOverflow">
+            <summary></summary>
+            <remarks>ER_DATETIME_FUNCTION_OVERFLOW</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotUpdateUsedTableInStoredFunctionOrTrigger">
+            <summary></summary>
+            <remarks>ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewPreventUpdate">
+            <summary></summary>
+            <remarks>ER_VIEW_PREVENT_UPDATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PreparedStatementNoRecursion">
+            <summary></summary>
+            <remarks>ER_PS_NO_RECURSION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureCannotSetAutoCommit">
+            <summary></summary>
+            <remarks>ER_SP_CANT_SET_AUTOCOMMIT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MalformedDefiner">
+            <summary></summary>
+            <remarks>ER_MALFORMED_DEFINER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewFrmNoUser">
+            <summary></summary>
+            <remarks>ER_VIEW_FRM_NO_USER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewOtherUser">
+            <summary></summary>
+            <remarks>ER_VIEW_OTHER_USER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoSuchUser">
+            <summary></summary>
+            <remarks>ER_NO_SUCH_USER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForbidSchemaChange">
+            <summary></summary>
+            <remarks>ER_FORBID_SCHEMA_CHANGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RowIsReferenced2">
+            <summary></summary>
+            <remarks>ER_ROW_IS_REFERENCED_2</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoReferencedRow2">
+            <summary></summary>
+            <remarks>ER_NO_REFERENCED_ROW_2</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureBadVariableShadow">
+            <summary></summary>
+            <remarks>ER_SP_BAD_VAR_SHADOW</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerNoDefiner">
+            <summary></summary>
+            <remarks>ER_TRG_NO_DEFINER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OldFileFormat">
+            <summary></summary>
+            <remarks>ER_OLD_FILE_FORMAT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureRecursionLimit">
+            <summary></summary>
+            <remarks>ER_SP_RECURSION_LIMIT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureTableCorrupt">
+            <summary></summary>
+            <remarks>ER_SP_PROC_TABLE_CORRUPT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureWrongName">
+            <summary></summary>
+            <remarks>ER_SP_WRONG_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableNeedsUpgrade">
+            <summary></summary>
+            <remarks>ER_TABLE_NEEDS_UPGRADE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredProcedureNoAggregate">
+            <summary></summary>
+            <remarks>ER_SP_NO_AGGREGATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MaxPreparedStatementCountReached">
+            <summary></summary>
+            <remarks>ER_MAX_PREPARED_STMT_COUNT_REACHED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewRecursive">
+            <summary></summary>
+            <remarks>ER_VIEW_RECURSIVE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonGroupingFieldUsed">
+            <summary></summary>
+            <remarks>ER_NON_GROUPING_FIELD_USED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableCannotHandleSpatialKeys">
+            <summary></summary>
+            <remarks>ER_TABLE_CANT_HANDLE_SPKEYS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoTriggersOnSystemSchema">
+            <summary></summary>
+            <remarks>ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RemovedSpaces">
+            <summary></summary>
+            <remarks>ER_REMOVED_SPACES</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AutoIncrementReadFailed">
+            <summary></summary>
+            <remarks>ER_AUTOINC_READ_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UserNameError">
+            <summary></summary>
+            <remarks>ER_USERNAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.HostNameError">
+            <summary></summary>
+            <remarks>ER_HOSTNAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongStringLength">
+            <summary></summary>
+            <remarks>ER_WRONG_STRING_LENGTH</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NonInsertableTable">
+            <summary></summary>
+            <remarks>ER_NON_INSERTABLE_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AdminWrongMergeTable">
+            <summary></summary>
+            <remarks>ER_ADMIN_WRONG_MRG_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooHighLevelOfNestingForSelect">
+            <summary></summary>
+            <remarks>ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NameBecomesEmpty">
+            <summary></summary>
+            <remarks>ER_NAME_BECOMES_EMPTY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AmbiguousFieldTerm">
+            <summary></summary>
+            <remarks>ER_AMBIGUOUS_FIELD_TERM</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForeignServerExists">
+            <summary></summary>
+            <remarks>ER_FOREIGN_SERVER_EXISTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForeignServerDoesNotExist">
+            <summary></summary>
+            <remarks>ER_FOREIGN_SERVER_DOESNT_EXIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.IllegalHACreateOption">
+            <summary></summary>
+            <remarks>ER_ILLEGAL_HA_CREATE_OPTION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionRequiresValues">
+            <summary></summary>
+            <remarks>ER_PARTITION_REQUIRES_VALUES_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionWrongValues">
+            <summary></summary>
+            <remarks>ER_PARTITION_WRONG_VALUES_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionMaxValue">
+            <summary></summary>
+            <remarks>ER_PARTITION_MAXVALUE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionSubPartition">
+            <summary></summary>
+            <remarks>ER_PARTITION_SUBPARTITION_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionSubPartMix">
+            <summary></summary>
+            <remarks>ER_PARTITION_SUBPART_MIX_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionWrongNoPart">
+            <summary></summary>
+            <remarks>ER_PARTITION_WRONG_NO_PART_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionWrongNoSubPart">
+            <summary></summary>
+            <remarks>ER_PARTITION_WRONG_NO_SUBPART_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongExpressionInParitionFunction">
+            <summary></summary>
+            <remarks>ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoConstantExpressionInRangeOrListError">
+            <summary></summary>
+            <remarks>ER_NO_CONST_EXPR_IN_RANGE_OR_LIST_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FieldNotFoundPartitionErrror">
+            <summary></summary>
+            <remarks>ER_FIELD_NOT_FOUND_PART_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ListOfFieldsOnlyInHash">
+            <summary></summary>
+            <remarks>ER_LIST_OF_FIELDS_ONLY_IN_HASH_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InconsistentPartitionInfo">
+            <summary></summary>
+            <remarks>ER_INCONSISTENT_PARTITION_INFO_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionFunctionNotAllowed">
+            <summary></summary>
+            <remarks>ER_PARTITION_FUNC_NOT_ALLOWED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionsMustBeDefined">
+            <summary></summary>
+            <remarks>ER_PARTITIONS_MUST_BE_DEFINED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RangeNotIncreasing">
+            <summary></summary>
+            <remarks>ER_RANGE_NOT_INCREASING_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.InconsistentTypeOfFunctions">
+            <summary></summary>
+            <remarks>ER_INCONSISTENT_TYPE_OF_FUNCTIONS_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MultipleDefinitionsConstantInListPartition">
+            <summary></summary>
+            <remarks>ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionEntryError">
+            <summary></summary>
+            <remarks>ER_PARTITION_ENTRY_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.MixHandlerError">
+            <summary></summary>
+            <remarks>ER_MIX_HANDLER_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionNotDefined">
+            <summary></summary>
+            <remarks>ER_PARTITION_NOT_DEFINED_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyPartitions">
+            <summary></summary>
+            <remarks>ER_TOO_MANY_PARTITIONS_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SubPartitionError">
+            <summary></summary>
+            <remarks>ER_SUBPARTITION_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotCreateHandlerFile">
+            <summary></summary>
+            <remarks>ER_CANT_CREATE_HANDLER_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BlobFieldInPartitionFunction">
+            <summary></summary>
+            <remarks>ER_BLOB_FIELD_IN_PART_FUNC_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UniqueKeyNeedAllFieldsInPartitioningFunction">
+            <summary></summary>
+            <remarks>ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoPartitions">
+            <summary></summary>
+            <remarks>ER_NO_PARTS_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionManagementOnNoPartitioned">
+            <summary></summary>
+            <remarks>ER_PARTITION_MGMT_ON_NONPARTITIONED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForeignKeyOnPartitioned">
+            <summary></summary>
+            <remarks>ER_FOREIGN_KEY_ON_PARTITIONED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DropPartitionNonExistent">
+            <summary></summary>
+            <remarks>ER_DROP_PARTITION_NON_EXISTENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DropLastPartition">
+            <summary></summary>
+            <remarks>ER_DROP_LAST_PARTITION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CoalesceOnlyOnHashPartition">
+            <summary></summary>
+            <remarks>ER_COALESCE_ONLY_ON_HASH_PARTITION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ReorganizeHashOnlyOnSameNumber">
+            <summary></summary>
+            <remarks>ER_REORG_HASH_ONLY_ON_SAME_NO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ReorganizeNoParameter">
+            <summary></summary>
+            <remarks>ER_REORG_NO_PARAM_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OnlyOnRangeListPartition">
+            <summary></summary>
+            <remarks>ER_ONLY_ON_RANGE_LIST_PARTITION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AddPartitionSubPartition">
+            <summary></summary>
+            <remarks>ER_ADD_PARTITION_SUBPART_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AddPartitionNoNewPartition">
+            <summary></summary>
+            <remarks>ER_ADD_PARTITION_NO_NEW_PARTITION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CoalescePartitionNoPartition">
+            <summary></summary>
+            <remarks>ER_COALESCE_PARTITION_NO_PARTITION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ReorganizePartitionNotExist">
+            <summary></summary>
+            <remarks>ER_REORG_PARTITION_NOT_EXIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SameNamePartition">
+            <summary></summary>
+            <remarks>ER_SAME_NAME_PARTITION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoBinLog">
+            <summary></summary>
+            <remarks>ER_NO_BINLOG_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ConsecutiveReorganizePartitions">
+            <summary></summary>
+            <remarks>ER_CONSECUTIVE_REORG_PARTITIONS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ReorganizeOutsideRange">
+            <summary></summary>
+            <remarks>ER_REORG_OUTSIDE_RANGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionFunctionFailure">
+            <summary></summary>
+            <remarks>ER_PARTITION_FUNCTION_FAILURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionStateError">
+            <summary></summary>
+            <remarks>ER_PART_STATE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LimitedPartitionRange">
+            <summary></summary>
+            <remarks>ER_LIMITED_PART_RANGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PluginIsNotLoaded">
+            <summary></summary>
+            <remarks>ER_PLUGIN_IS_NOT_LOADED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongValue">
+            <summary></summary>
+            <remarks>ER_WRONG_VALUE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoPartitionForGivenValue">
+            <summary></summary>
+            <remarks>ER_NO_PARTITION_FOR_GIVEN_VALUE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FileGroupOptionOnlyOnce">
+            <summary></summary>
+            <remarks>ER_FILEGROUP_OPTION_ONLY_ONCE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CreateFileGroupFailed">
+            <summary></summary>
+            <remarks>ER_CREATE_FILEGROUP_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DropFileGroupFailed">
+            <summary></summary>
+            <remarks>ER_DROP_FILEGROUP_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableSpaceAutoExtend">
+            <summary></summary>
+            <remarks>ER_TABLESPACE_AUTO_EXTEND_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongSizeNumber">
+            <summary></summary>
+            <remarks>ER_WRONG_SIZE_NUMBER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SizeOverflow">
+            <summary></summary>
+            <remarks>ER_SIZE_OVERFLOW_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.AlterFileGroupFailed">
+            <summary></summary>
+            <remarks>ER_ALTER_FILEGROUP_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogRowLogginFailed">
+            <summary></summary>
+            <remarks>ER_BINLOG_ROW_LOGGING_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogRowWrongTableDefinition">
+            <summary></summary>
+            <remarks>ER_BINLOG_ROW_WRONG_TABLE_DEF</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogRowRBRToSBR">
+            <summary></summary>
+            <remarks>ER_BINLOG_ROW_RBR_TO_SBR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventAlreadyExists">
+            <summary></summary>
+            <remarks>ER_EVENT_ALREADY_EXISTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventStoreFailed">
+            <summary></summary>
+            <remarks>ER_EVENT_STORE_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventDoesNotExist">
+            <summary></summary>
+            <remarks>ER_EVENT_DOES_NOT_EXIST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventCannotAlter">
+            <summary></summary>
+            <remarks>ER_EVENT_CANT_ALTER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventDropFailed">
+            <summary></summary>
+            <remarks>ER_EVENT_DROP_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventIntervalNotPositiveOrTooBig">
+            <summary></summary>
+            <remarks>ER_EVENT_INTERVAL_NOT_POSITIVE_OR_TOO_BIG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventEndsBeforeStarts">
+            <summary></summary>
+            <remarks>ER_EVENT_ENDS_BEFORE_STARTS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventExecTimeInThePast">
+            <summary></summary>
+            <remarks>ER_EVENT_EXEC_TIME_IN_THE_PAST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventOpenTableFailed">
+            <summary></summary>
+            <remarks>ER_EVENT_OPEN_TABLE_FAILED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventNeitherMExpresssionNorMAt">
+            <summary></summary>
+            <remarks>ER_EVENT_NEITHER_M_EXPR_NOR_M_AT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ColumnCountDoesNotMatchCorrupted">
+            <summary></summary>
+            <remarks>ER_COL_COUNT_DOESNT_MATCH_CORRUPTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotLoadFromTable">
+            <summary></summary>
+            <remarks>ER_CANNOT_LOAD_FROM_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventCannotDelete">
+            <summary></summary>
+            <remarks>ER_EVENT_CANNOT_DELETE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventCompileError">
+            <summary></summary>
+            <remarks>ER_EVENT_COMPILE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventSameName">
+            <summary></summary>
+            <remarks>ER_EVENT_SAME_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventDataTooLong">
+            <summary></summary>
+            <remarks>ER_EVENT_DATA_TOO_LONG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DropIndexForeignKey">
+            <summary></summary>
+            <remarks>ER_DROP_INDEX_FK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningDeprecatedSyntaxWithVersion">
+            <summary></summary>
+            <remarks>ER_WARN_DEPRECATED_SYNTAX_WITH_VER</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotWriteLockLogTable">
+            <summary></summary>
+            <remarks>ER_CANT_WRITE_LOCK_LOG_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotLockLogTable">
+            <summary></summary>
+            <remarks>ER_CANT_LOCK_LOG_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ForeignDuplicateKey">
+            <summary></summary>
+            <remarks>ER_FOREIGN_DUPLICATE_KEY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ColumnCountDoesNotMatchPleaseUpdate">
+            <summary></summary>
+            <remarks>ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TemoraryTablePreventSwitchOutOfRBR">
+            <summary></summary>
+            <remarks>ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredFunctionPreventsSwitchBinLogFormat">
+            <summary></summary>
+            <remarks>ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NDBCannotSwitchBinLogFormat">
+            <summary></summary>
+            <remarks>ER_NDB_CANT_SWITCH_BINLOG_FORMAT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionNoTemporary">
+            <summary></summary>
+            <remarks>ER_PARTITION_NO_TEMPORARY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionConstantDomain">
+            <summary></summary>
+            <remarks>ER_PARTITION_CONST_DOMAIN_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionFunctionIsNotAllowed">
+            <summary></summary>
+            <remarks>ER_PARTITION_FUNCTION_IS_NOT_ALLOWED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DDLLogError">
+            <summary></summary>
+            <remarks>ER_DDL_LOG_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NullInValuesLessThan">
+            <summary></summary>
+            <remarks>ER_NULL_IN_VALUES_LESS_THAN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongPartitionName">
+            <summary></summary>
+            <remarks>ER_WRONG_PARTITION_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotChangeTransactionIsolation">
+            <summary></summary>
+            <remarks>ER_CANT_CHANGE_TX_ISOLATION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateEntryAutoIncrementCase">
+            <summary></summary>
+            <remarks>ER_DUP_ENTRY_AUTOINCREMENT_CASE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventModifyQueueError">
+            <summary></summary>
+            <remarks>ER_EVENT_MODIFY_QUEUE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventSetVariableError">
+            <summary></summary>
+            <remarks>ER_EVENT_SET_VAR_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionMergeError">
+            <summary></summary>
+            <remarks>ER_PARTITION_MERGE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotActivateLog">
+            <summary></summary>
+            <remarks>ER_CANT_ACTIVATE_LOG</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RBRNotAvailable">
+            <summary></summary>
+            <remarks>ER_RBR_NOT_AVAILABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.Base64DecodeError">
+            <summary></summary>
+            <remarks>ER_BASE64_DECODE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventRecursionForbidden">
+            <summary></summary>
+            <remarks>ER_EVENT_RECURSION_FORBIDDEN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventsDatabaseError">
+            <summary></summary>
+            <remarks>ER_EVENTS_DB_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.OnlyIntegersAllowed">
+            <summary></summary>
+            <remarks>ER_ONLY_INTEGERS_ALLOWED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.UnsupportedLogEngine">
+            <summary></summary>
+            <remarks>ER_UNSUPORTED_LOG_ENGINE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BadLogStatement">
+            <summary></summary>
+            <remarks>ER_BAD_LOG_STATEMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannotRenameLogTable">
+            <summary></summary>
+            <remarks>ER_CANT_RENAME_LOG_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongParameterCountToNativeFCT">
+            <summary></summary>
+            <remarks>ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongParametersToNativeFCT">
+            <summary></summary>
+            <remarks>ER_WRONG_PARAMETERS_TO_NATIVE_FCT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WrongParametersToStoredFCT">
+            <summary></summary>
+            <remarks>ER_WRONG_PARAMETERS_TO_STORED_FCT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NativeFCTNameCollision">
+            <summary></summary>
+            <remarks>ER_NATIVE_FCT_NAME_COLLISION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DuplicateEntryWithKeyName">
+            <summary></summary>
+            <remarks>ER_DUP_ENTRY_WITH_KEY_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogPurgeEMFile">
+            <summary></summary>
+            <remarks>ER_BINLOG_PURGE_EMFILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventCannotCreateInThePast">
+            <summary></summary>
+            <remarks>ER_EVENT_CANNOT_CREATE_IN_THE_PAST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventCannotAlterInThePast">
+            <summary></summary>
+            <remarks>ER_EVENT_CANNOT_ALTER_IN_THE_PAST</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveIncident">
+            <summary></summary>
+            <remarks>ER_SLAVE_INCIDENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoPartitionForGivenValueSilent">
+            <summary></summary>
+            <remarks>ER_NO_PARTITION_FOR_GIVEN_VALUE_SILENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogUnsafeStatement">
+            <summary></summary>
+            <remarks>ER_BINLOG_UNSAFE_STATEMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveFatalError">
+            <summary></summary>
+            <remarks>ER_SLAVE_FATAL_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveRelayLogReadFailure">
+            <summary></summary>
+            <remarks>ER_SLAVE_RELAY_LOG_READ_FAILURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveRelayLogWriteFailure">
+            <summary></summary>
+            <remarks>ER_SLAVE_RELAY_LOG_WRITE_FAILURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveCreateEventFailure">
+            <summary></summary>
+            <remarks>ER_SLAVE_CREATE_EVENT_FAILURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveMasterComFailure">
+            <summary></summary>
+            <remarks>ER_SLAVE_MASTER_COM_FAILURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.BinLogLoggingImpossible">
+            <summary></summary>
+            <remarks>ER_BINLOG_LOGGING_IMPOSSIBLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewNoCreationContext">
+            <summary></summary>
+            <remarks>ER_VIEW_NO_CREATION_CTX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ViewInvalidCreationContext">
+            <summary></summary>
+            <remarks>ER_VIEW_INVALID_CREATION_CTX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.StoredRoutineInvalidCreateionContext">
+            <summary></summary>
+            <remarks>ER_SR_INVALID_CREATION_CTX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TiggerCorruptedFile">
+            <summary></summary>
+            <remarks>ER_TRG_CORRUPTED_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerNoCreationContext">
+            <summary></summary>
+            <remarks>ER_TRG_NO_CREATION_CTX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerInvalidCreationContext">
+            <summary></summary>
+            <remarks>ER_TRG_INVALID_CREATION_CTX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.EventInvalidCreationContext">
+            <summary></summary>
+            <remarks>ER_EVENT_INVALID_CREATION_CTX</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TriggerCannotOpenTable">
+            <summary></summary>
+            <remarks>ER_TRG_CANT_OPEN_TABLE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.CannoCreateSubRoutine">
+            <summary></summary>
+            <remarks>ER_CANT_CREATE_SROUTINE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveAmbiguousExecMode">
+            <summary></summary>
+            <remarks>ER_SLAVE_AMBIGOUS_EXEC_MODE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NoFormatDescriptionEventBeforeBinLogStatement">
+            <summary></summary>
+            <remarks>ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveCorruptEvent">
+            <summary></summary>
+            <remarks>ER_SLAVE_CORRUPT_EVENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LoadDataInvalidColumn">
+            <summary></summary>
+            <remarks>ER_LOAD_DATA_INVALID_COLUMN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.LogPurgeNoFile">
+            <summary></summary>
+            <remarks>ER_LOG_PURGE_NO_FILE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XARBTimeout">
+            <summary></summary>
+            <remarks>ER_XA_RBTIMEOUT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.XARBDeadlock">
+            <summary></summary>
+            <remarks>ER_XA_RBDEADLOCK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NeedRePrepare">
+            <summary></summary>
+            <remarks>ER_NEED_REPREPARE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DelayedNotSupported">
+            <summary></summary>
+            <remarks>ER_DELAYED_NOT_SUPPORTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningNoMasterInfo">
+            <summary></summary>
+            <remarks>WARN_NO_MASTER_INFO</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningOptionIgnored">
+            <summary></summary>
+            <remarks>WARN_OPTION_IGNORED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningPluginDeleteBuiltIn">
+            <summary></summary>
+            <remarks>WARN_PLUGIN_DELETE_BUILTIN</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningPluginBusy">
+            <summary></summary>
+            <remarks>WARN_PLUGIN_BUSY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.VariableIsReadonly">
+            <summary></summary>
+            <remarks>ER_VARIABLE_IS_READONLY</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningEngineTransactionRollback">
+            <summary></summary>
+            <remarks>ER_WARN_ENGINE_TRANSACTION_ROLLBACK</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveHeartbeatFailure">
+            <summary></summary>
+            <remarks>ER_SLAVE_HEARTBEAT_FAILURE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SlaveHeartbeatValueOutOfRange">
+            <summary></summary>
+            <remarks>ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.NDBReplicationSchemaError">
+            <summary></summary>
+            <remarks>ER_NDB_REPLICATION_SCHEMA_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ConflictFunctionParseError">
+            <summary></summary>
+            <remarks>ER_CONFLICT_FN_PARSE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ExcepionsWriteError">
+            <summary></summary>
+            <remarks>ER_EXCEPTIONS_WRITE_ERROR</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooLongTableComment">
+            <summary></summary>
+            <remarks>ER_TOO_LONG_TABLE_COMMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooLongFieldComment">
+            <summary></summary>
+            <remarks>ER_TOO_LONG_FIELD_COMMENT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.FunctionInExistentNameCollision">
+            <summary></summary>
+            <remarks>ER_FUNC_INEXISTENT_NAME_COLLISION</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DatabaseNameError">
+            <summary></summary>
+            <remarks>ER_DATABASE_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TableNameErrror">
+            <summary></summary>
+            <remarks>ER_TABLE_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.PartitionNameError">
+            <summary></summary>
+            <remarks>ER_PARTITION_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.SubPartitionNameError">
+            <summary></summary>
+            <remarks>ER_SUBPARTITION_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TemporaryNameError">
+            <summary></summary>
+            <remarks>ER_TEMPORARY_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.RenamedNameError">
+            <summary></summary>
+            <remarks>ER_RENAMED_NAME</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.TooManyConcurrentTransactions">
+            <summary></summary>
+            <remarks>ER_TOO_MANY_CONCURRENT_TRXS</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.WarningNonASCIISeparatorNotImplemented">
+            <summary></summary>
+            <remarks>WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DebugSyncTimeout">
+            <summary></summary>
+            <remarks>ER_DEBUG_SYNC_TIMEOUT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.DebugSyncHitLimit">
+            <summary></summary>
+            <remarks>ER_DEBUG_SYNC_HIT_LIMIT</remarks>
+        </member>
+        <member name="F:MySql.Data.MySqlClient.MySqlErrorCode.ErrorLast">
+            <summary></summary>
+            <remarks>ER_ERROR_LAST</remarks>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlHelper">
+            <summary>
+            Helper class that makes it easier to work with the provider.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteNonQuery(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Executes a single command against a MySQL database.  The <see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> is assumed to be
+            open when the method is called and remains open after the method completes.
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">SQL command to be executed</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command.</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteNonQuery(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Executes a single command against a MySQL database.  A new <see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> is created
+            using the <see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString"/> given.
+            </summary>
+            <param name="connectionString"><see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString"/> to use</param>
+            <param name="commandText">SQL command to be executed</param>
+            <param name="parms">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command.</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDataRow(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Executes a single SQL command and returns the first row of the resultset.  A new MySqlConnection object
+            is created, opened, and closed during this method.
+            </summary>
+            <param name="connectionString">Settings to be used for the connection</param>
+            <param name="commandText">Command to execute</param>
+            <param name="parms">Parameters to use for the command</param>
+            <returns>DataRow containing the first row of the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDataset(System.String,System.String)">
+            <summary>
+            Executes a single SQL command and returns the resultset in a <see cref="T:System.Data.DataSet"/>.  
+            A new MySqlConnection object is created, opened, and closed during this method.
+            </summary>
+            <param name="connectionString">Settings to be used for the connection</param>
+            <param name="commandText">Command to execute</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDataset(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Executes a single SQL command and returns the resultset in a <see cref="T:System.Data.DataSet"/>.  
+            A new MySqlConnection object is created, opened, and closed during this method.
+            </summary>
+            <param name="connectionString">Settings to be used for the connection</param>
+            <param name="commandText">Command to execute</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDataset(MySql.Data.MySqlClient.MySqlConnection,System.String)">
+            <summary>
+            Executes a single SQL command and returns the resultset in a <see cref="T:System.Data.DataSet"/>.  
+            The state of the <see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object remains unchanged after execution
+            of this method.
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command to execute</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDataset(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Executes a single SQL command and returns the resultset in a <see cref="T:System.Data.DataSet"/>.  
+            The state of the <see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object remains unchanged after execution
+            of this method.
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command to execute</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.UpdateDataSet(System.String,System.String,System.Data.DataSet,System.String)">
+            <summary>
+            Updates the given table with data from the given <see cref="T:System.Data.DataSet"/>
+            </summary>
+            <param name="connectionString">Settings to use for the update</param>
+            <param name="commandText">Command text to use for the update</param>
+            <param name="ds"><see cref="T:System.Data.DataSet"/> containing the new data to use in the update</param>
+            <param name="tablename">Tablename in the dataset to update</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReader(MySql.Data.MySqlClient.MySqlConnection,MySql.Data.MySqlClient.MySqlTransaction,System.String,MySql.Data.MySqlClient.MySqlParameter[],System.Boolean)">
+            <summary>
+            Executes a single command against a MySQL database, possibly inside an existing transaction.
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use for the command</param>
+            <param name="transaction"><see cref="T:MySql.Data.MySqlClient.MySqlTransaction"/> object to use for the command</param>
+            <param name="commandText">Command text to use</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command</param>
+            <param name="ExternalConn">True if the connection should be preserved, false if not</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReader(System.String,System.String)">
+            <summary>
+            Executes a single command against a MySQL database.
+            </summary>
+            <param name="connectionString">Settings to use for this command</param>
+            <param name="commandText">Command text to use</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReader(MySql.Data.MySqlClient.MySqlConnection,System.String)">
+            <summary>
+            Executes a single command against a MySQL database.
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use for the command</param>
+            <param name="commandText">Command text to use</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReader(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Executes a single command against a MySQL database.
+            </summary>
+            <param name="connectionString">Settings to use for this command</param>
+            <param name="commandText">Command text to use</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReader(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Executes a single command against a MySQL database.
+            </summary>
+            <param name="connection">Connection to use for the command</param>
+            <param name="commandText">Command text to use</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalar(System.String,System.String)">
+            <summary>
+            Execute a single command against a MySQL database.
+            </summary>
+            <param name="connectionString">Settings to use for the update</param>
+            <param name="commandText">Command text to use for the update</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalar(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Execute a single command against a MySQL database.
+            </summary>
+            <param name="connectionString">Settings to use for the command</param>
+            <param name="commandText">Command text to use for the command</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalar(MySql.Data.MySqlClient.MySqlConnection,System.String)">
+            <summary>
+            Execute a single command against a MySQL database.
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command text to use for the command</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalar(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Execute a single command against a MySQL database.
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command text to use for the command</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.EscapeString(System.String)">
+            <summary>
+            Escapes the string.
+            </summary>
+            <param name="value">The string to escape</param>
+            <returns>The string with all quotes escaped.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDataRowAsync(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteDataRow
+            </summary>
+            <param name="connectionString">Settings to be used for the connection</param>
+            <param name="commandText">Command to execute</param>
+            <param name="parms">Parameters to use for the command</param>
+            <returns>DataRow containing the first row of the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteNonQueryAsync(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteNonQuery
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">SQL command to be executed</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command.</param>
+            <returns>Rows affected</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteNonQueryAsync(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteNonQuery
+            </summary>
+            <param name="connectionString"><see cref="P:MySql.Data.MySqlClient.MySqlConnection.ConnectionString"/> to use</param>
+            <param name="commandText">SQL command to be executed</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command.</param>
+            <returns>Rows affected</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDatasetAsync(System.String,System.String)">
+            <summary>
+            Async version of ExecuteDataset
+            </summary>
+            <param name="connectionString">Settings to be used for the connection</param>
+            <param name="commandText">Command to execute</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDatasetAsync(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteDataset
+            </summary>
+            <param name="connectionString">Settings to be used for the connection</param>
+            <param name="commandText">Command to execute</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDatasetAsync(MySql.Data.MySqlClient.MySqlConnection,System.String)">
+            <summary>
+            Async version of ExecuteDataset
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command to execute</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteDatasetAsync(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteDataset
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command to execute</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns><see cref="T:System.Data.DataSet"/> containing the resultset</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.UpdateDataSetAsync(System.String,System.String,System.Data.DataSet,System.String)">
+            <summary>
+            Async version of UpdateDataset
+            </summary>
+            <param name="connectionString">Settings to use for the update</param>
+            <param name="commandText">Command text to use for the update</param>
+            <param name="ds"><see cref="T:System.Data.DataSet"/> containing the new data to use in the update</param>
+            <param name="tablename">Tablename in the dataset to update</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReaderAsync(MySql.Data.MySqlClient.MySqlConnection,MySql.Data.MySqlClient.MySqlTransaction,System.String,MySql.Data.MySqlClient.MySqlParameter[],System.Boolean)">
+            <summary>
+            Async version of ExecuteReader
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use for the command</param>
+            <param name="transaction"><see cref="T:MySql.Data.MySqlClient.MySqlTransaction"/> object to use for the command</param>
+            <param name="commandText">Command text to use</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command</param>
+            <param name="ExternalConn">True if the connection should be preserved, false if not</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReaderAsync(System.String,System.String)">
+            <summary>
+            Async version of ExecuteReader
+            </summary>
+            <param name="connectionString">Settings to use for this command</param>
+            <param name="commandText">Command text to use</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReaderAsync(MySql.Data.MySqlClient.MySqlConnection,System.String)">
+            <summary>
+            Async version of ExecuteReader
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use for the command</param>
+            <param name="commandText">Command text to use</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReaderAsync(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteReader
+            </summary>
+            <param name="connectionString">Settings to use for this command</param>
+            <param name="commandText">Command text to use</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteReaderAsync(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteReader
+            </summary>
+            <param name="connection">Connection to use for the command</param>
+            <param name="commandText">Command text to use</param>
+            <param name="commandParameters">Array of <see cref="T:MySql.Data.MySqlClient.MySqlParameter"/> objects to use with the command</param>
+            <returns><see cref="T:MySql.Data.MySqlClient.MySqlDataReader"/> object ready to read the results of the command</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalarAsync(System.String,System.String)">
+            <summary>
+            Async version of ExecuteScalar
+            </summary>
+            <param name="connectionString">Settings to use for the update</param>
+            <param name="commandText">Command text to use for the update</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalarAsync(System.String,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteScalar
+            </summary>
+            <param name="connectionString">Settings to use for the command</param>
+            <param name="commandText">Command text to use for the command</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalarAsync(MySql.Data.MySqlClient.MySqlConnection,System.String)">
+            <summary>
+            Async version of ExecuteScalar
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command text to use for the command</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlHelper.ExecuteScalarAsync(MySql.Data.MySqlClient.MySqlConnection,System.String,MySql.Data.MySqlClient.MySqlParameter[])">
+            <summary>
+            Async version of ExecuteScalar
+            </summary>
+            <param name="connection"><see cref="T:MySql.Data.MySqlClient.MySqlConnection"/> object to use</param>
+            <param name="commandText">Command text to use for the command</param>
+            <param name="commandParameters">Parameters to use for the command</param>
+            <returns>The first column of the first row in the result set, or a null reference if the result set is empty.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlPacket.WriteInteger(System.Int64,System.Int32)">
+            <summary>
+            WriteInteger
+            </summary>
+            <param name="v"></param>
+            <param name="numbytes"></param>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlPool">
+            <summary>
+            Summary description for MySqlPool.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlPool.HasIdleConnections">
+            <summary>
+            It is assumed that this property will only be used from inside an active
+            lock.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlPool.BeingCleared">
+            <summary>
+            Indicates whether this pool is being cleared.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlPool.GetPooledConnection">
+            <summary>
+            It is assumed that this method is only called from inside an active lock.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection">
+            <summary>
+            It is assumed that this method is only called from inside an active lock.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlPool.RemoveConnection(MySql.Data.MySqlClient.Driver)">
+            <summary>
+            Removes a connection from the in use pool.  The only situations where this method 
+            would be called are when a connection that is in use gets some type of fatal exception
+            or when the connection is being returned to the pool and it's too old to be 
+            returned.
+            </summary>
+            <param name="driver"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlPool.Clear">
+            <summary>
+            Clears this pool of all idle connections and marks this pool and being cleared
+            so all other connections are closed when they are returned.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlPool.RemoveOldIdleConnections">
+            <summary>
+            Remove expired drivers from the idle pool
+            </summary>
+            <returns></returns>
+            <remarks>
+            Closing driver is a potentially lengthy operation involving network
+            IO. Therefore we do not close expired drivers while holding 
+            idlePool.SyncRoot lock. We just remove the old drivers from the idle
+            queue and return them to the caller. The caller will need to close 
+            them (or let GC close them)
+            </remarks>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlPoolManager">
+            <summary>
+            Summary description for MySqlPoolManager.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlPoolManager.CleanIdleConnections(System.Object)">
+            <summary>
+            Remove drivers that have been idle for too long.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlTransactionScope">
+            <summary>
+            Represents a single(not nested) TransactionScope
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlScript">
+            <summary>
+            Provides a class capable of executing a SQL script containing
+            multiple SQL statements including CREATE PROCEDURE statements
+            that require changing the delimiter
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlScript.#ctor">
+            <summary>
+            Initializes a new instance of the 
+            <see cref="T:MySql.Data.MySqlClient.MySqlScript"/> class.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlScript.#ctor(MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>
+            Initializes a new instance of the 
+            <see cref="T:MySql.Data.MySqlClient.MySqlScript"/> class.
+            </summary>
+            <param name="connection">The connection.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlScript.#ctor(System.String)">
+            <summary>
+            Initializes a new instance of the 
+            <see cref="T:MySql.Data.MySqlClient.MySqlScript"/> class.
+            </summary>
+            <param name="query">The query.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlScript.#ctor(MySql.Data.MySqlClient.MySqlConnection,System.String)">
+            <summary>
+            Initializes a new instance of the 
+            <see cref="T:MySql.Data.MySqlClient.MySqlScript"/> class.
+            </summary>
+            <param name="connection">The connection.</param>
+            <param name="query">The query.</param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScript.Connection">
+            <summary>
+            Gets or sets the connection.
+            </summary>
+            <value>The connection.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScript.Query">
+            <summary>
+            Gets or sets the query.
+            </summary>
+            <value>The query.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScript.Delimiter">
+            <summary>
+            Gets or sets the delimiter.
+            </summary>
+            <value>The delimiter.</value>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlScript.Execute">
+            <summary>
+            Executes this instance.
+            </summary>
+            <returns>The number of statements executed as part of the script.</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlScript.ExecuteAsync">
+            <summary>
+            Async version of Execute
+            </summary>
+            <returns>The number of statements executed as part of the script inside.</returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlStatementExecutedEventHandler">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlScriptErrorEventHandler">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlScriptEventArgs">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScriptEventArgs.StatementText">
+            <summary>
+            Gets the statement text.
+            </summary>
+            <value>The statement text.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScriptEventArgs.Line">
+            <summary>
+            Gets the line.
+            </summary>
+            <value>The line.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScriptEventArgs.Position">
+            <summary>
+            Gets the position.
+            </summary>
+            <value>The position.</value>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlScriptErrorEventArgs">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlScriptErrorEventArgs.#ctor(System.Exception)">
+            <summary>
+            Initializes a new instance of the <see cref="T:MySql.Data.MySqlClient.MySqlScriptErrorEventArgs"/> class.
+            </summary>
+            <param name="exception">The exception.</param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScriptErrorEventArgs.Exception">
+            <summary>
+            Gets the exception.
+            </summary>
+            <value>The exception.</value>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.MySqlScriptErrorEventArgs.Ignore">
+            <summary>
+            Gets or sets a value indicating whether this <see cref="T:MySql.Data.MySqlClient.MySqlScriptErrorEventArgs"/> is ignore.
+            </summary>
+            <value><c>true</c> if ignore; otherwise, <c>false</c>.</value>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.MySqlStream">
+            <summary>
+            Summary description for MySqlStream.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlStream.ReadPacket">
+            <summary>
+            ReadPacket is called by NativeDriver to start reading the next
+            packet on the stream.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlStream.ReadFully(System.IO.Stream,System.Byte[],System.Int32,System.Int32)">
+            <summary>
+            Reads the specified number of bytes from the stream and stores them at given 
+            offset in the buffer.
+            Throws EndOfStreamException if not all bytes can be read.
+            </summary>
+            <param name="stream">Stream to read from</param>
+            <param name="buffer"> Array to store bytes read from the stream </param>
+            <param name="offset">The offset in buffer at which to begin storing the data read from the current stream. </param>
+            <param name="count">Number of bytes to read</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.MySqlStream.LoadPacket">
+            <summary>
+            LoadPacket loads up and decodes the header of the incoming packet.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.NativeDriver">
+            <summary>
+            Summary description for Driver.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.NativeDriver.SetDatabase(System.String)">
+            <summary>
+            Sets the current database for the this connection
+            </summary>
+            <param name="dbName"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.NativeDriver.GetClientCertificates">
+            <summary>
+            Retrieve client SSL certificates. Dependent on connection string 
+            settings we use either file or store based certificates.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.NativeDriver.SetConnectionFlags(MySql.Data.MySqlClient.ClientFlags)">
+            <summary>
+            Return the appropriate set of connection flags for our
+            server capabilities and our user requested options.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.NativeDriver.SendQuery(MySql.Data.MySqlClient.MySqlPacket)">
+            <summary>
+            Query is the method that is called to send all queries to the server
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.NativeDriver.SendFileToServer(System.String)">
+            <summary>
+            Sends the specified file to the server. 
+            This supports the LOAD DATA LOCAL INFILE
+            </summary>
+            <param name="filename"></param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.NativeDriver.FetchDataRow(System.Int32,System.Int32)">
+            <summary>
+            FetchDataRow is the method that the data reader calls to see if there is another 
+            row to fetch.  In the non-prepared mode, it will simply read the next data packet.
+            In the prepared mode (statementId > 0), it will 
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.NativeDriver.ResetTimeout(System.Int32)">
+            <summary>
+            Execution timeout, in milliseconds. When the accumulated time for network IO exceeds this value
+            TimeoutException is thrown. This timeout needs to be reset for every new command
+            </summary>
+            
+        </member>
+        <member name="T:MySql.Data.MySqlClient.PreparableStatement">
+            <summary>
+            Summary description for PreparedStatement.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.PreparableStatement.PrepareCommandText(System.String@)">
+            <summary>
+            Prepares CommandText for use with the Prepare method
+            </summary>
+            <returns>Command text stripped of all paramter names</returns>
+            <remarks>
+            Takes the output of TokenizeSql and creates a single string of SQL
+            that only contains '?' markers for each parameter.  It also creates
+            the parameterMap array list that includes all the paramter names in the
+            order they appeared in the SQL
+            </remarks>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.ReplicationConfigurationElement">
+            <summary>
+            Used to define a Replication configurarion element in configuration file
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.ReplicationServerGroupConfigurationElement">
+            <summary>
+            Used to define a Replication server group in configuration file
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.ReplicationServerConfigurationElement">
+            <summary>
+            Defines a Replication server in configuration file
+            </summary>
+        </member>
+        <!-- Badly formed XML comment ignored for member "T:MySql.Data.MySqlClient.Replication.ReplicationManager" -->
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationManager.Groups">
+            <summary>
+            Returns Replication Server Group List
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationManager.AddGroup(System.String,System.Int32)">
+            <summary>
+            Adds a Default Server Group to the list
+            </summary>
+            <param name="name">Group name</param>
+            <param name="retryTime">Time between reconnections for failed servers</param>
+            <returns>Replication Server Group added</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationManager.AddGroup(System.String,System.String,System.Int32)">
+            <summary>
+            Adds a Server Group to the list
+            </summary>
+            <param name="name">Group name</param>
+            <param name="groupType">ServerGroup type reference</param>
+            <param name="retryTime">Time between reconnections for failed servers</param>
+            <returns>Server Group added</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationManager.GetServer(System.String,System.Boolean)">
+            <summary>
+            Gets the next server from a replication group
+            </summary>
+            <param name="groupName">Group name</param>
+            <param name="isMaster">True if the server to return must be a master</param>
+            <returns>Replication Server defined by the Load Balancing plugin</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationManager.GetGroup(System.String)">
+            <summary>
+            Gets a Server Group by name
+            </summary>
+            <param name="groupName">Group name</param>
+            <returns>Server Group if found, otherwise throws an MySqlException</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationManager.IsReplicationGroup(System.String)">
+            <summary>
+            Validates if the replication group name exists
+            </summary>
+            <param name="groupName">Group name to validate</param>
+            <returns>True if replication group name is found, otherwise false</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationManager.GetNewConnection(System.String,System.Boolean,MySql.Data.MySqlClient.MySqlConnection)">
+            <summary>
+            Assigns a new server driver to the connection object
+            </summary>
+            <param name="groupName">Group name</param>
+            <param name="master">True if the server connection to assign must be a master</param>
+            <param name="connection">MySqlConnection object where the new driver will be assigned</param>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Replication.ReplicationRoundRobinServerGroup">
+            <summary>
+            Class that implements Round Robing Load Balancing technique
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationRoundRobinServerGroup.GetServer(System.Boolean)">
+            <summary>
+            Gets an available server based on Round Robin load balancing
+            </summary>
+            <param name="isMaster">True if the server to return must be a master</param>
+            <returns>Next available server</returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Replication.ReplicationServer">
+            <summary>
+            Represents a server in Replication environment
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationServer.Name">
+            <summary>
+            Server name
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationServer.IsMaster">
+            <summary>
+            Defines if the server is master (True) or slave
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationServer.ConnectionString">
+            <summary>
+            Connection string used to connect to the server
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationServer.IsAvailable">
+            <summary>
+            Defines if the server is available to be considered in load balancing
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Replication.ReplicationServerGroup">
+            <summary>
+            Base class used to implement load balancing features
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.#ctor(System.String,System.Int32)">
+            <param name="name">Group name</param>
+            <param name="retryTime"></param>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.Name">
+            <summary>
+            Group name
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.RetryTime">
+            <summary>
+            Retry time between connections to failed servers
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.Servers">
+            <summary>
+            Servers list in the group
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.AddServer(System.String,System.Boolean,System.String)">
+            <summary>
+            Adds a server into the group
+            </summary>
+            <param name="name">Server name</param>
+            <param name="isMaster">True if the server to add is master, False for slave server</param>
+            <param name="connectionString">Connection string used by this server</param>
+            <returns></returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.RemoveServer(System.String)">
+            <summary>
+            Removes a server from group
+            </summary>
+            <param name="name">Server name</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.GetServer(System.String)">
+            <summary>
+            Gets a server by name
+            </summary>
+            <param name="name">Server name</param>
+            <returns>Replication server</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.GetServer(System.Boolean)">
+            <summary>
+            Must be implemented. Defines the next server for a custom load balancing implementation.
+            </summary>
+            <param name="isMaster">Defines if the server to return is a master or any</param>
+            <returns>Next server based on the load balancing implementation.
+              Null if no available server is found.
+            </returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.HandleFailover(MySql.Data.MySqlClient.Replication.ReplicationServer)">
+            <summary>
+            Handles a failed connection to a server.
+            This method can be overrided to implement a custom failover handling
+            </summary>
+            <param name="server">The failed server</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Replication.ReplicationServerGroup.HandleFailover(MySql.Data.MySqlClient.Replication.ReplicationServer,System.Exception)">
+            <summary>
+            Handles a failed connection to a server.
+            </summary>
+            <param name="server">The failed server</param>
+            <param name="exception">Exception that caused the failover</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.ResultSet.GetOrdinal(System.String)">
+            <summary>
+            return the ordinal for the given column name
+            </summary>
+            <param name="name"></param>
+            <returns></returns>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.ResultSet.Item(System.Int32)">
+            <summary>
+            Retrieve the value as the given column index
+            </summary>
+            <param name="index">The column value to retrieve</param>
+            <returns>The value as the given column</returns>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.ResultSet.Close">
+            <summary>
+            Closes the current resultset, dumping any data still on the wire
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.ResultSet.LoadColumns(System.Int32)">
+            <summary>
+            Loads the column metadata for the current resultset
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.SchemaProvider.GetForeignKeysOnTable(MySql.Data.MySqlClient.MySqlSchemaCollection,MySql.Data.MySqlClient.MySqlSchemaRow,System.String,System.Boolean)">
+            <summary>
+            GetForeignKeysOnTable retrieves the foreign keys on the given table.
+            Since MySQL supports foreign keys on versions prior to 5.0, we can't  use
+            information schema.  MySQL also does not include any type of SHOW command
+            for foreign keys so we have to resort to use SHOW CREATE TABLE and parsing
+            the output.
+            </summary>
+            <param name="fkTable">The table to store the key info in.</param>
+            <param name="tableToParse">The table to get the foeign key info for.</param>
+            <param name="filterName">Only get foreign keys that match this name.</param>
+            <param name="includeColumns">Should column information be included in the table.</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.Statement.SerializeParameter(MySql.Data.MySqlClient.MySqlParameterCollection,MySql.Data.MySqlClient.MySqlPacket,System.String,System.Int32)">
+            <summary>
+            Serializes the given parameter to the given memory stream
+            </summary>
+            <remarks>
+            <para>This method is called by PrepareSqlBuffers to convert the given
+            parameter to bytes and write those bytes to the given memory stream.
+            </para>
+            </remarks>
+            <returns>True if the parameter was successfully serialized, false otherwise.</returns>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.StoredProcedure">
+            <summary>
+            Summary description for StoredProcedure.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.TimedStream">
+            <summary>
+            Stream that supports timeout of IO operations.
+            This class is used is used to support timeouts for SQL command, where a 
+            typical operation involves several network reads/writes. 
+            Timeout here is defined as the accumulated duration of all IO operations.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.TimedStream.#ctor(System.IO.Stream)">
+            <summary>
+            Construct a TimedStream
+            </summary>
+            <param name="baseStream"> Undelying stream</param>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.TimedStream.ShouldResetStreamTimeout(System.Int32,System.Int32)">
+            <summary>
+            Figure out whether it is necessary to reset timeout on stream.
+            We track the current value of timeout and try to avoid
+            changing it too often, because setting Read/WriteTimeout property
+            on network stream maybe a slow operation that involves a system call 
+            (setsockopt). Therefore, we allow a small difference, and do not 
+            reset timeout if current value is slightly greater than the requested
+            one (within 0.1 second).
+            </summary>
+        </member>
+        <member name="M:MySql.Data.MySqlClient.TimedStream.HandleException(System.Exception)">
+            <summary>
+            Common handler for IO exceptions.
+            Resets timeout to infinity if timeout exception is 
+            detected and stops the times.
+            </summary>
+            <param name="e">original exception</param>
+        </member>
+        <member name="T:MySql.Data.MySqlClient.Properties.Resources">
+            <summary>
+              A strongly-typed resource class, for looking up localized strings, etc.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ResourceManager">
+            <summary>
+              Returns the cached ResourceManager instance used by this class.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.Culture">
+            <summary>
+              Overrides the current thread's CurrentUICulture property for all
+              resource lookups using this strongly typed resource class.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.AdapterIsNull">
+            <summary>
+              Looks up a localized string similar to Improper MySqlCommandBuilder state: adapter is null.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.AdapterSelectIsNull">
+            <summary>
+              Looks up a localized string similar to Improper MySqlCommandBuilder state: adapter&apos;s SelectCommand is null.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.AttemptToAccessBeforeRead">
+            <summary>
+              Looks up a localized string similar to Invalid attempt to access a field before calling Read().
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.AuthenticationFailed">
+            <summary>
+              Looks up a localized string similar to Authentication to host &apos;{0}&apos; for user &apos;{1}&apos; using method &apos;{2}&apos; failed with message: {3}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.AuthenticationMethodNotSupported">
+            <summary>
+              Looks up a localized string similar to Authentication method &apos;{0}&apos; not supported by any of the available plugins..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.BadVersionFormat">
+            <summary>
+              Looks up a localized string similar to Version string not in acceptable format.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.BufferCannotBeNull">
+            <summary>
+              Looks up a localized string similar to  The buffer cannot be null.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.BufferNotLargeEnough">
+            <summary>
+              Looks up a localized string similar to  Buffer is not large enough.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CancelNeeds50">
+            <summary>
+              Looks up a localized string similar to Canceling an executing query requires MySQL 5.0 or higher..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CancelNotSupported">
+            <summary>
+              Looks up a localized string similar to Canceling an active query is only supported on MySQL 5.0.0 and above. .
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CanNotDeriveParametersForTextCommands">
+            <summary>
+              Looks up a localized string similar to Parameters can only be derived for commands using the StoredProcedure command type..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CBMultiTableNotSupported">
+            <summary>
+              Looks up a localized string similar to MySqlCommandBuilder does not support multi-table statements.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CBNoKeyColumn">
+            <summary>
+              Looks up a localized string similar to MySqlCommandBuilder cannot operate on tables with no unique or key columns.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ChaosNotSupported">
+            <summary>
+              Looks up a localized string similar to Chaos isolation level is not supported.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CommandTextNotInitialized">
+            <summary>
+              Looks up a localized string similar to The CommandText property has not been properly initialized..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ConnectionAlreadyOpen">
+            <summary>
+              Looks up a localized string similar to The connection is already open..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ConnectionBroken">
+            <summary>
+              Looks up a localized string similar to Connection unexpectedly terminated..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ConnectionMustBeOpen">
+            <summary>
+              Looks up a localized string similar to Connection must be valid and open.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ConnectionNotOpen">
+            <summary>
+              Looks up a localized string similar to The connection is not open..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ConnectionNotSet">
+            <summary>
+              Looks up a localized string similar to The connection property has not been set or is null..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CouldNotFindColumnName">
+            <summary>
+              Looks up a localized string similar to Could not find specified column in results: {0}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CountCannotBeNegative">
+            <summary>
+              Looks up a localized string similar to  Count cannot be negative.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.CSNoSetLength">
+            <summary>
+              Looks up a localized string similar to SetLength is not a valid operation on CompressedStream.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.DataNotInSupportedFormat">
+            <summary>
+              Looks up a localized string similar to The given value was not in a supported format..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.DataReaderOpen">
+            <summary>
+              Looks up a localized string similar to There is already an open DataReader associated with this Connection which must be closed first..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.DefaultEncodingNotFound">
+            <summary>
+              Looks up a localized string similar to The default connection encoding was not found. Please report this as a bug along with your connection string and system details..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.DistributedTxnNotSupported">
+            <summary>
+              Looks up a localized string similar to MySQL Connector/Net does not currently support distributed transactions..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ErrorCreatingSocket">
+            <summary>
+              Looks up a localized string similar to Error creating socket connection.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.FatalErrorDuringExecute">
+            <summary>
+              Looks up a localized string similar to Fatal error encountered during command execution..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.FatalErrorDuringRead">
+            <summary>
+              Looks up a localized string similar to Fatal error encountered during data read..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.FatalErrorReadingResult">
+            <summary>
+              Looks up a localized string similar to Fatal error encountered attempting to read the resultset..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.FileBasedCertificateNotSupported">
+            <summary>
+              Looks up a localized string similar to File based certificates are only supported when connecting to MySQL Server 5.1 or greater..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.FromAndLengthTooBig">
+            <summary>
+              Looks up a localized string similar to From index and length use more bytes than from contains.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.FromIndexMustBeValid">
+            <summary>
+              Looks up a localized string similar to From index must be a valid index inside the from buffer.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.GetHostEntryFailed">
+            <summary>
+              Looks up a localized string similar to Call to GetHostEntry failed after {0} while querying for hostname &apos;{1}&apos;: SocketErrorCode={2}, ErrorCode={3}, NativeErrorCode={4}..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.HardProcQuery">
+            <summary>
+              Looks up a localized string similar to Retrieving procedure metadata for {0} from server..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ImproperValueFormat">
+            <summary>
+              Looks up a localized string similar to Value has an unsupported format..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.IncorrectTransmission">
+            <summary>
+              Looks up a localized string similar to An incorrect response was received from the server..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.IndexAndLengthTooBig">
+            <summary>
+              Looks up a localized string similar to Index and length use more bytes than to has room for.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.IndexMustBeValid">
+            <summary>
+              Looks up a localized string similar to Index must be a valid position in the buffer.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.InvalidColumnOrdinal">
+            <summary>
+              Looks up a localized string similar to You have specified an invalid column ordinal..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.InvalidConnectionStringValue">
+            <summary>
+              Looks up a localized string similar to The requested value &apos;{0}&apos; is invalid for the given keyword &apos;{1}&apos;..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.InvalidMicrosecondValue">
+            <summary>
+              Looks up a localized string similar to Microsecond must be a value between 0 and 999999..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.InvalidMillisecondValue">
+            <summary>
+              Looks up a localized string similar to Millisecond must be a value between 0 and 999. For more precision use Microsecond..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.InvalidProcName">
+            <summary>
+              Looks up a localized string similar to Procedure or function &apos;{0}&apos; cannot be found in database &apos;{1}&apos;..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.InvalidValueForBoolean">
+            <summary>
+              Looks up a localized string similar to &apos;{0}&apos; is an illegal value for a boolean option..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.KeywordNoNull">
+            <summary>
+              Looks up a localized string similar to Keyword does not allow null values..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.KeywordNotSupported">
+            <summary>
+              Looks up a localized string similar to Keyword not supported..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.keywords">
+             <summary>
+               Looks up a localized string similar to ACCESSIBLE
+            ADD
+            ALL
+            ALTER
+            ANALYZE
+            AND
+            AS
+            ASC
+            ASENSITIVE
+            BEFORE
+            BEGIN
+            BETWEEN
+            BIGINT
+            BINARY
+            BLOB
+            BOTH
+            BY
+            CALL
+            CASCADE
+            CASE
+            CHANGE
+            CHAR
+            CHARACTER
+            CHECK
+            COLLATE
+            COLUMN
+            COMMIT
+            CONDITION
+            CONNECTION
+            CONSTRAINT
+            CONTINUE
+            CONVERT
+            CREATE
+            CROSS
+            CURRENT_DATE
+            CURRENT_TIME
+            CURRENT_TIMESTAMP
+            CURRENT_USER
+            CURSOR
+            DATABASE
+            DATABASES
+            DAY_HOUR
+            DAY_MICROSECOND
+            DAY_MINUTE
+            DAY_SECOND
+            DEC
+            DECIMAL
+            DECLARE
+            DEFAULT
+            DELAYED
+            DELETE
+            DESC
+            DESCRIBE
+            DETERMINISTIC
+            DISTINCT
+            DISTINCTROW
+            D [rest of string was truncated]&quot;;.
+             </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.MixedParameterNamingNotAllowed">
+            <summary>
+              Looks up a localized string similar to Mixing named and unnamed parameters is not allowed..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.MoreThanOneOPRow">
+            <summary>
+              Looks up a localized string similar to INTERNAL ERROR:  More than one output parameter row detected..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.MultipleConnectionsInTransactionNotSupported">
+            <summary>
+              Looks up a localized string similar to Multiple simultaneous connections or connections with different connection strings inside the same transaction are not currently supported..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NamedPipeNoSeek">
+            <summary>
+              Looks up a localized string similar to NamedPipeStream does not support seeking.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NamedPipeNoSetLength">
+            <summary>
+              Looks up a localized string similar to NamedPipeStream doesn&apos;t support SetLength.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NewValueShouldBeMySqlParameter">
+            <summary>
+              Looks up a localized string similar to The new value must be a MySqlParameter object..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NextResultIsClosed">
+            <summary>
+              Looks up a localized string similar to Invalid attempt to call NextResult when the reader is closed..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NoBodiesAndTypeNotSet">
+            <summary>
+              Looks up a localized string similar to When calling stored procedures and &apos;Use Procedure Bodies&apos; is false, all parameters must have their type explicitly set..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NoNestedTransactions">
+            <summary>
+              Looks up a localized string similar to Nested transactions are not supported..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NoServerSSLSupport">
+            <summary>
+              Looks up a localized string similar to The host {0} does not support SSL connections..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NoUnixSocketsOnWindows">
+            <summary>
+              Looks up a localized string similar to Unix sockets are not supported on Windows..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.NoWindowsIdentity">
+            <summary>
+              Looks up a localized string similar to Cannot retrieve Windows identity for current user. Connections that use  IntegratedSecurity cannot be  pooled. Use either &apos;ConnectionReset=true&apos; or  &apos;Pooling=false&apos; in the connection string to fix..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ObjectDisposed">
+            <summary>
+              Looks up a localized string similar to The object is not open or has been disposed..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.OffsetCannotBeNegative">
+            <summary>
+              Looks up a localized string similar to  Offset cannot be negative.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.OffsetMustBeValid">
+            <summary>
+              Looks up a localized string similar to Offset must be a valid position in buffer.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.OldPasswordsNotSupported">
+            <summary>
+              Looks up a localized string similar to Authentication with old password no longer supported, use 4.1 style passwords..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ParameterAlreadyDefined">
+            <summary>
+              Looks up a localized string similar to Parameter &apos;{0}&apos; has already been defined..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ParameterCannotBeNegative">
+            <summary>
+              Looks up a localized string similar to Parameter cannot have a negative value.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ParameterCannotBeNull">
+            <summary>
+              Looks up a localized string similar to Parameter cannot be null.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ParameterIndexNotFound">
+            <summary>
+              Looks up a localized string similar to Parameter index was not found in Parameter Collection..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ParameterIsInvalid">
+            <summary>
+              Looks up a localized string similar to Parameter is invalid..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ParameterMustBeDefined">
+            <summary>
+              Looks up a localized string similar to Parameter &apos;{0}&apos; must be defined..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ParameterNotFoundDuringPrepare">
+            <summary>
+              Looks up a localized string similar to Parameter &apos;{0}&apos; was not found during prepare..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.PasswordMustHaveLegalChars">
+            <summary>
+              Looks up a localized string similar to Password must be valid and contain length characters.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.PerfMonCategoryHelp">
+            <summary>
+              Looks up a localized string similar to This category includes a series of counters for MySQL..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.PerfMonCategoryName">
+            <summary>
+              Looks up a localized string similar to .NET Data Provider for MySQL.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.PerfMonHardProcHelp">
+            <summary>
+              Looks up a localized string similar to The number of times a procedures metadata had to be queried from the server..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.PerfMonHardProcName">
+            <summary>
+              Looks up a localized string similar to Hard Procedure Queries.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.PerfMonSoftProcHelp">
+            <summary>
+              Looks up a localized string similar to The number of times a procedures metadata was retrieved from the client-side cache..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.PerfMonSoftProcName">
+            <summary>
+              Looks up a localized string similar to Soft Procedure Queries.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ProcAndFuncSameName">
+            <summary>
+              Looks up a localized string similar to same name are not supported..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.QueryTooLarge">
+            <summary>
+              Looks up a localized string similar to Packets larger than max_allowed_packet are not allowed..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ReadFromStreamFailed">
+            <summary>
+              Looks up a localized string similar to Reading from the stream has failed..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ReadingPriorColumnUsingSeqAccess">
+            <summary>
+              Looks up a localized string similar to Invalid attempt to read a prior column using SequentialAccess.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ReplicatedConnectionsAllowOnlyReadonlyStatements">
+            <summary>
+              Looks up a localized string similar to Replicated connections allow only readonly statements..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.Replication_ConnectionAttemptFailed">
+            <summary>
+              Looks up a localized string similar to Attempt to connect to &apos;{0}&apos; server failed..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.Replication_NoAvailableServer">
+            <summary>
+              Looks up a localized string similar to No available server found..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ReplicationGroupNotFound">
+            <summary>
+              Looks up a localized string similar to Replication group &apos;{0}&apos; not found..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ReplicationServerNotFound">
+            <summary>
+              Looks up a localized string similar to Replicated server not found: &apos;{0}&apos;.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.RoutineNotFound">
+            <summary>
+              Looks up a localized string similar to Routine &apos;{0}&apos; cannot be found. Either check the spelling or make sure you have sufficient rights to execute the routine..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.RoutineRequiresReturnParameter">
+            <summary>
+              Looks up a localized string similar to Attempt to call stored function &apos;{0}&apos; without specifying a return parameter.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ServerTooOld">
+            <summary>
+              Looks up a localized string similar to Connector/Net no longer supports server versions prior to 5.0.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.SnapshotNotSupported">
+            <summary>
+              Looks up a localized string similar to Snapshot isolation level is not supported..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.SocketNoSeek">
+            <summary>
+              Looks up a localized string similar to Socket streams do not support seeking.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.SoftProcQuery">
+            <summary>
+              Looks up a localized string similar to Retrieving procedure metadata for {0} from procedure cache..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.SPNotSupported">
+            <summary>
+              Looks up a localized string similar to Stored procedures are not supported on this version of MySQL.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.StreamAlreadyClosed">
+            <summary>
+              Looks up a localized string similar to The stream has already been closed.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.StreamNoRead">
+            <summary>
+              Looks up a localized string similar to  The stream does not support reading.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.StreamNoWrite">
+            <summary>
+              Looks up a localized string similar to The stream does not support writing.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.Timeout">
+            <summary>
+              Looks up a localized string similar to Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TimeoutGettingConnection">
+            <summary>
+              Looks up a localized string similar to error connecting: Timeout expired.  The timeout period elapsed prior to obtaining a connection from the pool.  This may have occurred because all pooled connections were in use and max pool size was reached..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceCloseConnection">
+            <summary>
+              Looks up a localized string similar to {0}: Connection Closed.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceErrorMoreThanMaxValueConnections">
+            <summary>
+              Looks up a localized string similar to Unable to trace.  There are more than Int32.MaxValue connections in use..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceFetchError">
+            <summary>
+              Looks up a localized string similar to {0}: Error encountered during row fetch. Number = {1}, Message={2}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceOpenConnection">
+            <summary>
+              Looks up a localized string similar to {0}: Connection Opened: connection string = &apos;{1}&apos;.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceOpenResultError">
+            <summary>
+              Looks up a localized string similar to {0}: Error encountered attempting to open result: Number={1}, Message={2}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceQueryDone">
+            <summary>
+              Looks up a localized string similar to {0}: Query Closed.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceQueryNormalized">
+            <summary>
+              Looks up a localized string similar to {0}: Query Normalized: {2}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceQueryOpened">
+            <summary>
+              Looks up a localized string similar to {0}: Query Opened: {2}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceResult">
+            <summary>
+              Looks up a localized string similar to {0}: Resultset Opened: field(s) = {1}, affected rows = {2}, inserted id = {3}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceResultClosed">
+            <summary>
+              Looks up a localized string similar to {0}: Resultset Closed. Total rows={1}, skipped rows={2}, size (bytes)={3}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceSetDatabase">
+            <summary>
+              Looks up a localized string similar to {0}: Set Database: {1}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceStatementClosed">
+            <summary>
+              Looks up a localized string similar to {0}: Statement closed: statement id = {1}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceStatementExecuted">
+            <summary>
+              Looks up a localized string similar to {0}: Statement executed: statement id = {1}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceStatementPrepared">
+            <summary>
+              Looks up a localized string similar to {0}: Statement prepared: sql=&apos;{1}&apos;, statement id={2}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceUAWarningBadIndex">
+            <summary>
+              Looks up a localized string similar to {0}: Usage Advisor Warning: Query is using a bad index.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceUAWarningFieldConversion">
+            <summary>
+              Looks up a localized string similar to {0}: Usage Advisor Warning: The field &apos;{2}&apos; was converted to the following types: {3}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceUAWarningNoIndex">
+            <summary>
+              Looks up a localized string similar to {0}: Usage Advisor Warning: Query does not use an index.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceUAWarningSkippedColumns">
+            <summary>
+              Looks up a localized string similar to {0}: Usage Advisor Warning: The following columns were not accessed: {2}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceUAWarningSkippedRows">
+            <summary>
+              Looks up a localized string similar to {0}: Usage Advisor Warning: Skipped {2} rows. Consider a more focused query..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TraceWarning">
+            <summary>
+              Looks up a localized string similar to {0}: MySql Warning: Level={1}, Code={2}, Message={3}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TypeIsNotCommandInterceptor">
+            <summary>
+              Looks up a localized string similar to Type &apos;{0}&apos; is not derived from BaseCommandInterceptor.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.TypeIsNotExceptionInterceptor">
+            <summary>
+              Looks up a localized string similar to Type &apos;{0}&apos; is not derived from BaseExceptionInterceptor.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToConnectToHost">
+            <summary>
+              Looks up a localized string similar to Unable to connect to any of the specified MySQL hosts..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToCreateAuthPlugin">
+            <summary>
+              Looks up a localized string similar to Unable to create plugin for authentication method &apos;{0}&apos;. Please see inner exception for details..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToDeriveParameters">
+            <summary>
+              Looks up a localized string similar to Unable to derive stored routine parameters.  The &apos;Parameters&apos; information schema table is not available and access to the stored procedure body has been disabled..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToEnableQueryAnalysis">
+            <summary>
+              Looks up a localized string similar to Unable to enable query analysis.  Be sure the MySql.Data.EMTrace assembly is properly located and registered..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToEnumerateUDF">
+            <summary>
+              Looks up a localized string similar to An error occured attempting to enumerate the user-defined functions.  Do you have SELECT privileges on the mysql.func table?.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToExecuteSP">
+            <summary>
+              Looks up a localized string similar to Unable to execute stored procedure &apos;{0}&apos;..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToParseFK">
+            <summary>
+              Looks up a localized string similar to There was an error parsing the foreign key definition..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToRetrieveParameters">
+            <summary>
+              Looks up a localized string similar to Unable to retrieve stored procedure metadata for routine &apos;{0}&apos;.  Either grant  SELECT privilege to mysql.proc for this user or use &quot;check parameters=false&quot; with  your connection string..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnableToStartSecondAsyncOp">
+            <summary>
+              Looks up a localized string similar to Unable to start a second async operation while one is running..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnixSocketsNotSupported">
+            <summary>
+              Looks up a localized string similar to Unix sockets are not supported on Windows.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnknownAuthenticationMethod">
+            <summary>
+              Looks up a localized string similar to Unknown authentication method &apos;{0}&apos; was requested..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.UnknownConnectionProtocol">
+            <summary>
+              Looks up a localized string similar to Unknown connection protocol.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ValueNotCorrectType">
+            <summary>
+              Looks up a localized string similar to Value &apos;{0}&apos; is not of the correct type..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.ValueNotSupportedForGuid">
+            <summary>
+              Looks up a localized string similar to The requested column value could not be treated as or conveted to a Guid..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.WinAuthNotSupportOnPlatform">
+            <summary>
+              Looks up a localized string similar to Windows authentication connections are not supported on {0}.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.WriteToStreamFailed">
+            <summary>
+              Looks up a localized string similar to Writing to the stream failed..
+            </summary>
+        </member>
+        <member name="P:MySql.Data.MySqlClient.Properties.Resources.WrongParameterName">
+            <summary>
+              Looks up a localized string similar to Parameter &apos;{0}&apos; is not found but a parameter with the name &apos;{1}&apos; is found. Parameter names must include the leading parameter marker..
+            </summary>
+        </member>
+        <member name="T:MySql.Data.Common.LowResolutionStopwatch">
+            <summary>
+            This class is modeled after .NET Stopwatch. It provides better
+            performance (no system calls).It is however less precise than
+            .NET Stopwatch, measuring in milliseconds. It is adequate to use
+            when high-precision is not required (e.g for measuring IO timeouts),
+            but not for other tasks.
+            </summary>
+        </member>
+        <member name="F:MySql.Data.Common.MyNetworkStream.MaxRetryCount">
+             <summary>
+             Wrapper around NetworkStream.
+             
+             MyNetworkStream is equivalent to NetworkStream, except 
+             1. It throws TimeoutException if read or write timeout occurs, instead 
+             of IOException, to match behavior of other streams (named pipe and 
+             shared memory). This property comes handy in TimedStream.
+            
+             2. It implements workarounds for WSAEWOULDBLOCK errors, that can start 
+             occuring after stream has times out. For a discussion about the CLR bug,
+             refer to  http://tinyurl.com/lhgpyf. This error should never occur, as
+             we're not using asynchronous operations, but apparerntly it does occur
+             directly after timeout has expired.
+             The workaround is hinted in the URL above and implemented like this:
+             For each IO operation, if it throws WSAEWOULDBLOCK, we explicitely set
+             the socket to Blocking and retry the operation once again.
+             </summary>
+        </member>
+        <member name="M:MySql.Data.Common.MyNetworkStream.SetKeepAlive(System.Net.Sockets.Socket,System.UInt32)">
+            <summary>
+            Set keepalive + timeout on socket.
+            </summary>
+            <param name="s">socket</param>
+            <param name="time">keepalive timeout, in seconds</param>
+        </member>
+        <member name="T:MySql.Data.Common.NamedPipeStream">
+            <summary>
+            Summary description for API.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.Common.Platform.#ctor">
+            <summary>
+            By creating a private ctor, we keep the compiler from creating a default ctor
+            </summary>
+        </member>
+        <member name="M:MySql.Data.Common.QueryNormalizer.ProcessMathSymbols(System.Collections.Generic.List{MySql.Data.Common.Token})">
+            <summary>
+            Mark - or + signs that are unary ops as no output
+            </summary>
+            <param name="tok"></param>
+        </member>
+        <member name="T:MySql.Data.Common.SharedMemory">
+            <summary>
+            Helper class to encapsulate shared memory functionality
+            Also cares of proper cleanup of file mapping object and cew
+            </summary>
+        </member>
+        <member name="T:MySql.Data.Common.SharedMemoryStream">
+            <summary>
+            Summary description for SharedMemoryStream.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.Common.StreamCreator">
+            <summary>
+            Summary description for StreamCreator.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.Common.DBVersion">
+            <summary>
+            Summary description for Version.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.Types.MySqlDateTime">
+            <summary>
+            
+            </summary>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlDateTime.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
+            <summary>
+            Constructs a new <b>MySqlDateTime</b> object by setting the individual time properties to
+            the given values.
+            </summary>
+            <param name="year">The year to use.</param>
+            <param name="month">The month to use.</param>
+            <param name="day">The day to use.</param>
+            <param name="hour">The hour to use.</param>
+            <param name="minute">The minute to use.</param>
+            <param name="second">The second to use.</param>
+            <param name="microsecond">The microsecond to use.</param>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlDateTime.#ctor(System.DateTime)">
+            <summary>
+            Constructs a new <b>MySqlDateTime</b> object by using values from the given <see cref="T:System.DateTime"/> object.
+            </summary>
+            <param name="dt">The <see cref="T:System.DateTime"/> object to copy.</param>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlDateTime.#ctor(MySql.Data.Types.MySqlDateTime)">
+            <summary>
+            Constructs a new <b>MySqlDateTime</b> object by copying the current value of the given object.
+            </summary>
+            <param name="mdt">The <b>MySqlDateTime</b> object to copy.</param>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlDateTime.#ctor(System.String)">
+            <summary>
+            Enables the contruction of a <b>MySqlDateTime</b> object by parsing a string.
+            </summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.IsValidDateTime">
+            <summary>
+            Indicates if this object contains a value that can be represented as a DateTime
+            </summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Year">
+            <summary>Returns the year portion of this datetime</summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Month">
+            <summary>Returns the month portion of this datetime</summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Day">
+            <summary>Returns the day portion of this datetime</summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Hour">
+            <summary>Returns the hour portion of this datetime</summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Minute">
+            <summary>Returns the minute portion of this datetime</summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Second">
+            <summary>Returns the second portion of this datetime</summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Millisecond">
+            <summary>
+            Returns the milliseconds portion of this datetime 
+            expressed as a value between 0 and 999
+            </summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Microsecond">
+            <summary>
+            Returns the microseconds portion of this datetime (6 digit precision)
+            </summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.IsNull">
+            <summary>
+            Returns true if this datetime object has a null value
+            </summary>
+        </member>
+        <member name="P:MySql.Data.Types.MySqlDateTime.Value">
+            <summary>
+            Retrieves the value of this <see cref="T:MySql.Data.Types.MySqlDateTime"/> as a DateTime object.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlDateTime.GetDateTime">
+            <summary>Returns this value as a DateTime</summary>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlDateTime.ToString">
+            <summary>Returns a MySQL specific string representation of this value</summary>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlDateTime.op_Explicit(MySql.Data.Types.MySqlDateTime)~System.DateTime">
+            <summary></summary>
+            <param name="val"></param>
+            <returns></returns>
+        </member>
+        <member name="T:MySql.Data.Types.MySqlBit">
+            <summary>
+            Summary description for MySqlUInt64.
+            </summary>
+        </member>
+        <member name="T:MySql.Data.Types.MySqlConversionException">
+            <summary>
+            Summary description for MySqlConversionException.
+            </summary>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlConversionException.#ctor(System.String)">
+            <summary>Ctor</summary>
+        </member>
+        <member name="M:MySql.Data.Types.MySqlGeometry.ToString">
+            <summary>Returns the Well-Known Text representation of this value</summary>
+            POINT({0} {1})", longitude, latitude
+            http://dev.mysql.com/doc/refman/4.1/en/gis-wkt-format.html
+        </member>
+        <member name="M:MySql.Data.Types.MySqlGeometry.Parse(System.String)">
+            <summary>
+            Get value from WKT format
+            SRID=0;POINT (x y) or POINT (x y)
+            </summary>
+            <param name="value">WKT string format</param>    
+        </member>
+        <member name="M:MySql.Data.Types.MySqlGeometry.TryParse(System.String,MySql.Data.Types.MySqlGeometry@)">
+            <summary>
+            Try to get value from WKT format
+            SRID=0;POINT (x y) or POINT (x y)
+            </summary>
+            <param name="value">WKT string format</param>    
+        </member>
+        <member name="M:zlib.SupportClass.Identity(System.Int64)">
+            <summary>
+            This method returns the literal value received
+            </summary>
+            <param name="literal">The literal to return</param>
+            <returns>The received value</returns>
+        </member>
+        <member name="M:zlib.SupportClass.Identity(System.UInt64)">
+            <summary>
+            This method returns the literal value received
+            </summary>
+            <param name="literal">The literal to return</param>
+            <returns>The received value</returns>
+        </member>
+        <member name="M:zlib.SupportClass.Identity(System.Single)">
+            <summary>
+            This method returns the literal value received
+            </summary>
+            <param name="literal">The literal to return</param>
+            <returns>The received value</returns>
+        </member>
+        <member name="M:zlib.SupportClass.Identity(System.Double)">
+            <summary>
+            This method returns the literal value received
+            </summary>
+            <param name="literal">The literal to return</param>
+            <returns>The received value</returns>
+        </member>
+        <member name="M:zlib.SupportClass.URShift(System.Int32,System.Int32)">
+            <summary>
+            Performs an unsigned bitwise right shift with the specified number
+            </summary>
+            <param name="number">Number to operate on</param>
+            <param name="bits">Ammount of bits to shift</param>
+            <returns>The resulting number from the shift operation</returns>
+        </member>
+        <member name="M:zlib.SupportClass.URShift(System.Int32,System.Int64)">
+            <summary>
+            Performs an unsigned bitwise right shift with the specified number
+            </summary>
+            <param name="number">Number to operate on</param>
+            <param name="bits">Ammount of bits to shift</param>
+            <returns>The resulting number from the shift operation</returns>
+        </member>
+        <member name="M:zlib.SupportClass.URShift(System.Int64,System.Int32)">
+            <summary>
+            Performs an unsigned bitwise right shift with the specified number
+            </summary>
+            <param name="number">Number to operate on</param>
+            <param name="bits">Ammount of bits to shift</param>
+            <returns>The resulting number from the shift operation</returns>
+        </member>
+        <member name="M:zlib.SupportClass.URShift(System.Int64,System.Int64)">
+            <summary>
+            Performs an unsigned bitwise right shift with the specified number
+            </summary>
+            <param name="number">Number to operate on</param>
+            <param name="bits">Ammount of bits to shift</param>
+            <returns>The resulting number from the shift operation</returns>
+        </member>
+        <member name="M:zlib.SupportClass.ReadInput(System.IO.Stream,System.Byte[],System.Int32,System.Int32)">
+            <summary>Reads a number of characters from the current source Stream and writes the data to the target array at the specified index.</summary>
+            <param name="sourceStream">The source Stream to read from.</param>
+            <param name="target">Contains the array of characteres read from the source Stream.</param>
+            <param name="start">The starting index of the target array.</param>
+            <param name="count">The maximum number of characters to read from the source Stream.</param>
+            <returns>The number of characters read. The number will be less than or equal to count depending on the data available in the source Stream. Returns -1 if the end of the stream is reached.</returns>
+        </member>
+        <member name="M:zlib.SupportClass.ReadInput(System.IO.TextReader,System.Byte[],System.Int32,System.Int32)">
+            <summary>Reads a number of characters from the current source TextReader and writes the data to the target array at the specified index.</summary>
+            <param name="sourceTextReader">The source TextReader to read from</param>
+            <param name="target">Contains the array of characteres read from the source TextReader.</param>
+            <param name="start">The starting index of the target array.</param>
+            <param name="count">The maximum number of characters to read from the source TextReader.</param>
+            <returns>The number of characters read. The number will be less than or equal to count depending on the data available in the source TextReader. Returns -1 if the end of the stream is reached.</returns>
+        </member>
+        <member name="M:zlib.SupportClass.ToByteArray(System.String)">
+            <summary>
+            Converts a string to an array of bytes
+            </summary>
+            <param name="sourceString">The string to be converted</param>
+            <returns>The new array of bytes</returns>
+        </member>
+        <member name="M:zlib.SupportClass.ToCharArray(System.Byte[])">
+            <summary>
+            Converts an array of bytes to an array of chars
+            </summary>
+            <param name="byteArray">The array of bytes to convert</param>
+            <returns>The new array of chars</returns>
+        </member>
+        <member name="M:zlib.SupportClass.Serialize(System.IO.Stream,System.Object)">
+            <summary>
+            Writes an object to the specified Stream
+            </summary>
+            <param name="stream">The target Stream</param>
+            <param name="objectToSend">The object to be sent</param>
+        </member>
+        <member name="M:zlib.SupportClass.Serialize(System.IO.BinaryWriter,System.Object)">
+            <summary>
+            Writes an object to the specified BinaryWriter
+            </summary>
+            <param name="binaryWriter">The target BinaryWriter</param>
+            <param name="objectToSend">The object to be sent</param>
+        </member>
+        <member name="M:zlib.SupportClass.Deserialize(System.IO.BinaryReader)">
+            <summary>
+            Deserializes an object, or an entire graph of connected objects, and returns the object intance
+            </summary>
+            <param name="binaryReader">Reader instance used to read the object</param>
+            <returns>The object instance</returns>
+        </member>
+        <member name="M:zlib.SupportClass.WriteStackTrace(System.Exception,System.IO.TextWriter)">
+            <summary>
+            Writes the exception stack trace to the received stream
+            </summary>
+            <param name="throwable">Exception to obtain information from</param>
+            <param name="stream">Output sream used to write to</param>
+        </member>
+        <member name="P:zlib.ZInputStream.TotalIn">
+            <summary> Returns the total number of bytes input so far.</summary>
+        </member>
+        <member name="P:zlib.ZInputStream.TotalOut">
+            <summary> Returns the total number of bytes output so far.</summary>
+        </member>
+        <member name="P:zlib.ZOutputStream.TotalIn">
+            <summary> Returns the total number of bytes input so far.</summary>
+        </member>
+        <member name="P:zlib.ZOutputStream.TotalOut">
+            <summary> Returns the total number of bytes output so far.</summary>
+        </member>
+    </members>
+</doc>
Index: branches/src/ProcessManagement/ProcessManagement.sln
===================================================================
--- branches/src/ProcessManagement/ProcessManagement.sln	(revision 50)
+++ branches/src/ProcessManagement/ProcessManagement.sln	(revision 51)
@@ -1,7 +1,7 @@
 ﻿
 Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
-VisualStudioVersion = 12.0.40629.0
+# Visual Studio Express 2013 for Windows Desktop
+VisualStudioVersion = 12.0.21005.1
 MinimumVisualStudioVersion = 10.0.40219.1
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProcessManagement", "ProcessManagement\ProcessManagement.csproj", "{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}"
 EndProject
@@ -17,8 +17,8 @@
 		Release|x86 = Release|x86
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}.Debug|Any CPU.ActiveCfg = Debug|x86
-		{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}.Debug|Any CPU.Build.0 = Debug|x86
+		{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
 		{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}.Debug|Mixed Platforms.Build.0 = Debug|x86
 		{BAF227D6-7D1E-4D46-AD17-B93F2C60E41B}.Debug|x64.ActiveCfg = Debug|x64
Index: branches/src/ProcessManagement/ProcessManagement.v12.suo
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
