Index: branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 272)
+++ branches/src/ProcessManagement/ProcessManagement/Common/CommonVersion.cs	(revision 273)
@@ -14,7 +14,7 @@
         /// <summary>
         /// 本体バージョン
         /// </summary>
-        public static int s_SystemVersion = 82;
+        public static int s_SystemVersion = 84;
 
         /// <summary>
         /// コピー・環境バージョン
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmAppScrnAux.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmAppScrnAux.cs	(revision 272)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ApprovalScreen/FrmAppScrnAux.cs	(revision 273)
@@ -319,6 +319,7 @@
                 switch (m_ApprovalCode)
                 {
                     case (int)ClsExcute.ApprovalListNo.SafetyPatrol:
+                        // 安全パトロール申請
                         strSQL.AppendFormat("UPDATE sfpdata SET ORDERNO = {0}", m_OrderNo);
                         strSQL.AppendFormat(" WHERE ConstructionCode = {0}", m_ConstructionCode);
                         strSQL.AppendFormat(" AND DataCount = {0}", m_DataCount);
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 272)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs	(revision 273)
@@ -3976,6 +3976,7 @@
             IOConstructionLedgerDetail DetailDB = new IOConstructionLedgerDetail();
             IOConstructionLedgerExcute ExcuteDB = new IOConstructionLedgerExcute();
             IOPurchaseOrderDetail PDetailDB = new IOPurchaseOrderDetail();
+            IOBillingDataDetail BDetailDB = new IOBillingDataDetail();
             try
             {
                 //データチェック
@@ -3992,6 +3993,7 @@
                 DetailDB.connect(); DetailDB.beginTran();
                 ExcuteDB.connect(); ExcuteDB.beginTran();
                 PDetailDB.connect(); PDetailDB.beginTran();
+                BDetailDB.connect(); BDetailDB.beginTran();
 
                 // 詳細台帳データ
                 if (!ConstructionLedgerDataEntry(LedgerDB))
@@ -4001,11 +4003,12 @@
                 }
 
                 // 詳細台帳明細データ
-                if (!ConstructionLedgerDetailEntry(DetailDB, PDetailDB))
+                if (!ConstructionLedgerDetailEntry(DetailDB, PDetailDB, BDetailDB))
                 {
                     LedgerDB.rollback();
                     DetailDB.rollback();
                     PDetailDB.rollback();
+                    BDetailDB.rollback();
                     return false;
                 }
 
@@ -4016,6 +4019,7 @@
                     DetailDB.rollback();
                     ExcuteDB.rollback();
                     PDetailDB.rollback();
+                    BDetailDB.rollback();
                     return false;
                 }
 
@@ -4024,6 +4028,7 @@
                 DetailDB.commit();
                 ExcuteDB.commit();
                 PDetailDB.commit();
+                BDetailDB.commit();
 
                 // データ変更フラグOff
                 m_bChengeAns = false;
@@ -4040,6 +4045,8 @@
                 LedgerDB.close(); LedgerDB = null;
                 DetailDB.close(); DetailDB = null;
                 ExcuteDB.close(); ExcuteDB = null;
+                PDetailDB.close(); PDetailDB = null;
+                BDetailDB.close(); BDetailDB = null;
             }
         }
         #endregion
@@ -4269,7 +4276,9 @@
         /// <summary>
         /// 工事詳細台帳データ明細登録
         /// </summary>
-        private bool ConstructionLedgerDetailEntry(IOConstructionLedgerDetail DetailDB, IOPurchaseOrderDetail PDetailDB)
+        private bool ConstructionLedgerDetailEntry(IOConstructionLedgerDetail DetailDB,
+                                                    IOPurchaseOrderDetail PDetailDB,
+                                                    IOBillingDataDetail BDetailDB)
         {
             try
             {
@@ -4340,6 +4349,7 @@
 
                 } // iRows
 
+                // 登録
                 if (NewList.Count > 0)
                 {
                     if (!DetailDB.InsertAction(NewList, false))
@@ -4349,13 +4359,22 @@
                     }
                 }
 
+                // ----- 登録後処理
                 if (PDetailList.Count > 0)
                 {
+                    // 注文書明細データ行番号更新
                     if (!SetPurchaseOrderDetailLineCount(PDetailDB, PDetailList))
                     {
                         MessageBox.Show("注文書明細データ：更新登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
                         return false;
                     }
+
+                    // 業者請求明細データ行番号更新
+                    if (!SetBillingDataDetailLineCount(BDetailDB, PDetailList))
+                    {
+                        MessageBox.Show("業者請求明細データ：更新登録に失敗しました。", "登録エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
+                        return false;
+                    }
                 }
 
                 return true;
@@ -4608,6 +4627,48 @@
             }
         }
         #endregion
+
+        #region 業者請求明細台帳行番号更新
+        /// <summary>
+        /// 業者請求明細台帳行番号更新
+        /// </summary>
+        private bool SetBillingDataDetailLineCount(IOBillingDataDetail BDetailDB, List<KeyValuePair<int, int>> PDetailList)
+        {
+            try
+            {
+                StringBuilder strSQL = new StringBuilder();
+                List<BillingDataDetail> DataList = new List<BillingDataDetail>();
+                foreach (KeyValuePair<int, int> CurCount in PDetailList)
+                {
+                    // 行番号変化リストより更新を行う
+                    strSQL.Clear();
+                    strSQL.AppendFormat(" Where CONSTRUCTIONCODE = {0}", m_ConstructionCode);
+                    strSQL.AppendFormat(" And CONSTRUCTIONROWCNT = {0}", CurCount.Key);
+                    DataList.Clear();
+                    if (!BDetailDB.SelectAction(strSQL.ToString(), ref DataList, false)) return false;
+                    // 注文書が無い場合は処理しない
+                    if (DataList.Count == 0) continue;
+
+                    // 注文書があれば行番号を更新する
+                    strSQL.Clear();
+                    strSQL.Append("UPDATE billingdatadetail");
+                    strSQL.Append(" SET");
+                    strSQL.AppendFormat(" CONSTRUCTIONROWCNT = {0}", CurCount.Value);
+                    strSQL.Append(BDetailDB.CreatePrimarykeyString(DataList[0].CompanyCode,
+                                                                    DataList[0].TargetDate,
+                                                                    DataList[0].SeqNo,
+                                                                    DataList[0].LineCount));
+                    if (!BDetailDB.ExecuteNonQuery(strSQL.ToString(), false)) return false;
+                }
+                return true;
+            }
+            catch (System.Exception ex)
+            {
+                logger.ErrorFormat("システムエラー：{0}：{1}", CommonMotions.GetMethodName(), ex.Message);
+                return false;
+            }
+        }
+        #endregion
         // ---------- データ登録↑↑
 
         #region 画面項目のチェック
Index: branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs	(revision 272)
+++ branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/EstimateBudget/FrmEstimateBudgetAuxiliary.cs	(revision 273)
@@ -3050,6 +3050,12 @@
                 m_dispLabelControl[(int)DispControl.ConstructionTime].Text = m_ConstructionTimes.ToString("0.00");
 
                 DataGridView dgv = dgvAllDisplay;
+                int nGroupCount=0;
+                int nComponentCode=0;
+                int nSubContractorCode=0;
+                string strFirstString=string.Empty;
+                string strSecondString=string.Empty;
+                int GetData = -1;
                 foreach (DataGridViewRow wrkRow in dgv.Rows)
                 {
                     // 小計を計算する
@@ -3074,20 +3080,25 @@
 
                     // グリッドデータのグループで金額を取得する
                     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),
+                    nGroupCount = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.GroupCount].Value);
+                    nComponentCode = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.ComponentCode].Value);
+                    nSubContractorCode = CommonMotions.cnvInt(wrkRow.Cells[(int)DispGridColumn.SubContractorCode].Value);
+                    strFirstString = CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.FirstString].Value);
+                    strSecondString = CommonMotions.cnvString(wrkRow.Cells[(int)DispGridColumn.SecondString].Value);
+                    GetData = -1;
+                    GetData = GetSaveDataToNegotiationPrice(nGroupCount,
+                                                                nComponentCode,
+                                                                nSubContractorCode,
+                                                                strFirstString,
+                                                                strSecondString,
                                                                 ref Notes);
                     // 注意事項
                     wrkRow.Cells[(int)DispGridColumn.Notes].Value = Notes;
 
                     // 交渉金額復元
-                    if (GetData != -1)
-                    {
-                        wrkRow.Cells[(int)DispGridColumn.NegotiationPrice].Value = GetData.ToString("#,0");
-                    }
+                    if (GetData == -1) continue;
+
+                    wrkRow.Cells[(int)DispGridColumn.NegotiationPrice].Value = GetData.ToString("#,0");
                 }
             }
             catch (System.Exception ex)
Index: branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs
===================================================================
--- branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 272)
+++ branches/src/ProcessManagement/ProcessManagement/Properties/AssemblyInfo.cs	(revision 273)
@@ -32,7 +32,7 @@
 // すべての値を指定するか、下のように '*' を使ってビルドおよびリビジョン番号を 
 // 既定値にすることができます:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.82")]
-[assembly: AssemblyFileVersion("1.0.0.82")]
+[assembly: AssemblyVersion("1.0.0.84")]
+[assembly: AssemblyFileVersion("1.0.0.84")]
 // Log4netを使用する
 [assembly: log4net.Config.XmlConfigurator(ConfigFile = @"log4net.config", Watch = true)]
\ No newline at end of file
