/// <summary> 登録処理</summary> /// <param name="sender">源</param> /// <param name="e">イベント</param> private void btnToroku_Click(object sender, RoutedEventArgs e) { // 入力チェック if (!InputCheck()) { return; } //処理前現在データで履歴を作成 ((jp.co.ftf.jobcontroller.JobController.Form.JobEdit.Container)_myJob.Container).CreateHistData(); // 入力されたジョブID string newJobId = txtJobId.Text; // 入力されたジョブ名 string newJobNm = txtJobName.Text; // ジョブ管理テーブルの更新 DataRow[] drJobCon = _myJob.Container.JobControlTable.Select("job_id='" + OldJobId + "'"); if (drJobCon != null && drJobCon.Length > 0) { drJobCon[0]["job_id"] = newJobId; drJobCon[0]["job_name"] = newJobNm; } // 終了アイコン設定テーブルの更新 DataRow[] drEndIcon = _myJob.Container.IconEndTable.Select("job_id='" + OldJobId + "'"); if (drEndIcon != null && drEndIcon.Length > 0) { drEndIcon[0]["job_id"] = newJobId; if (cbJobNetStop.IsChecked == true) { drEndIcon[0]["jobnet_stop_flag"] = "1"; } else { drEndIcon[0]["jobnet_stop_flag"] = "0"; } if (CheckUtil.IsNullOrEmpty(txtEndCode.Text)) { drEndIcon[0]["jobnet_stop_code"] = "0"; } else { drEndIcon[0]["jobnet_stop_code"] = txtEndCode.Text; } } // ジョブIDが変更された場合、フロー管理テーブルを更新 if (!_oldJobId.Equals(newJobId)) { CommonUtil.UpdateFlowForJobId(_myJob.Container.FlowControlTable, _oldJobId, newJobId); } // 画面再表示 _myJob.Container.JobItems.Remove(_oldJobId); _myJob.Container.JobItems.Add(newJobId, _myJob); _myJob.JobId = newJobId; _myJob.JobName = newJobNm; _myJob.Container.SetedJobIds[_myJob.JobId] = "1"; this.Close(); }
/// <summary>登録処理</summary> private void Toroku() { // 入力チェック if (!InputCheck()) { return; } //処理前現在データで履歴を作成 ((jp.co.ftf.jobcontroller.JobController.Form.JobEdit.Container)_myJob.Container).CreateHistData(); // 入力されたジョブID string newJobId = txtJobId.Text; // 入力されたジョブ名 string newJobNm = txtJobName.Text; //added by YAMA 2014/08/15 // 実行ユーザー string newRunUser = txtRunUser.Text; // 実行ユーザーのパスワード string newRunUserPW = txtRunUserPW.Text; // ジョブ管理テーブルの更新 DataRow[] rowJobCon = _myJob.Container.JobControlTable.Select("job_id='" + _oldJobId + "'"); if (rowJobCon != null && rowJobCon.Length > 0) { rowJobCon[0]["job_id"] = newJobId; rowJobCon[0]["job_name"] = newJobNm; if (newRunUser.Equals("")) { rowJobCon[0]["run_user"] = null; rowJobCon[0]["run_user_password"] = null; } else if (newRunUserPW.Equals("")) { //added by YAMA 2014/09/26 rowJobCon[0]["run_user"] = newRunUser; rowJobCon[0]["run_user_password"] = null; } else { rowJobCon[0]["run_user"] = newRunUser; rowJobCon[0]["run_user_password"] = ConvertUtil.getPasswordFromString(newRunUserPW); } } // ジョブアイコン設定テーブルの更新 DataRow[] rowIconJob = _myJob.Container.IconJobTable.Select("job_id='" + _oldJobId + "'"); if (rowIconJob != null && rowIconJob.Length > 0) { // ジョブID rowIconJob[0]["job_id"] = newJobId; // ホストフラグ if (rbHostName.IsChecked == true) { rowIconJob[0]["host_flag"] = "0"; // ホスト名 rowIconJob[0]["host_name"] = Convert.ToString(combHostName.SelectedValue); } else { rowIconJob[0]["host_flag"] = "1"; // ホスト名 rowIconJob[0]["host_name"] = textVariableName.Text; } // 停止コマンドフラグ if (cbStop.IsChecked == false) { rowIconJob[0]["stop_flag"] = "0"; } else { rowIconJob[0]["stop_flag"] = "1"; } // コマンドタイプ rowIconJob[0]["command_type"] = "0"; // タイムアウト警告 if (!CheckUtil.IsNullOrEmpty(txtTimeOut.Text)) { rowIconJob[0]["timeout"] = txtTimeOut.Text; } else { rowIconJob[0]["timeout"] = Convert.DBNull; } // タイムアウトの場合実行内容 // 0 警告のみ // 1 job stop // 2 job skip rowIconJob[0]["timeout_run_type"] = combRunType.SelectedIndex; // ジョブ停止コード rowIconJob[0]["stop_code"] = txtStopCode.Text; //added by YAMA 2014/02/19 // 強制実行フラグ if (cbForce.IsChecked == false) { rowJobCon[0]["force_flag"] = "0"; } else { rowJobCon[0]["force_flag"] = "1"; } //added by YAMA 2014/09/24 (ジョブエラー継続) // 処理継続 if (cbContinue.IsChecked == false) { rowJobCon[0]["continue_flag"] = "0"; // アイコン停止(初期値) } else { rowJobCon[0]["continue_flag"] = "1"; // 処理継続 } } // ジョブコマンド設定テーブルの削除 DataRow[] rowScriptCmd = _myJob.Container.JobCommandTable.Select("job_id='" + _oldJobId + "'"); if (rowScriptCmd != null && rowScriptCmd.Length > 0) { for (int i = 0; i < rowScriptCmd.Length; i++) { rowScriptCmd[i].Delete(); } } // ジョブコマンド設定テーブルの登録 // 停止コマンド //added by YAMA 2014/11/12 //if (cbStop.IsChecked == true) string stopCmd = Convert.ToString(txtStopCmd.Text); if (!CheckUtil.IsNullOrEmpty(stopCmd)) { // 停止コマンドの登録 DataRow rowAdd = _myJob.Container.JobCommandTable.NewRow(); rowAdd["jobnet_id"] = _myJob.Container.JobnetId; rowAdd["job_id"] = newJobId; rowAdd["update_date"] = _myJob.Container.TmpUpdDate; rowAdd["command_cls"] = 2; rowAdd["command"] = txtStopCmd.Text; _myJob.Container.JobCommandTable.Rows.Add(rowAdd); } // スクリプト、コマンドの登録 DataRow rowScriptCmdAdd = _myJob.Container.JobCommandTable.NewRow(); rowScriptCmdAdd["jobnet_id"] = _myJob.Container.JobnetId; rowScriptCmdAdd["job_id"] = newJobId; rowScriptCmdAdd["update_date"] = _myJob.Container.TmpUpdDate; rowScriptCmdAdd["command_cls"] = 0; rowScriptCmdAdd["command"] = txtCmd.Text; _myJob.Container.JobCommandTable.Rows.Add(rowScriptCmdAdd); // ジョブ変数設定テーブルの更新 DataRow[] rows = _valueJobTable.Select("job_id='" + OldJobId + "'"); Array.ForEach <DataRow>(rows, row => _valueJobTable.Rows.Remove(row)); DataRow[] rowViews = _gridViewTable.Select("job_id='" + _oldJobId + "'"); if (rowViews != null && rowViews.Length > 0) { foreach (DataRow rowView in rowViews) { DataRow rowAdd = _valueJobTable.NewRow(); rowAdd["jobnet_id"] = rowView["jobnet_id"]; rowAdd["job_id"] = newJobId; rowAdd["update_date"] = rowView["update_date"]; rowAdd["value_name"] = rowView["value_name"]; rowAdd["value"] = rowView["value"]; _valueJobTable.Rows.Add(rowAdd); } } // ジョブコントローラ変数設定テーブルの更新 DataRow[] rowValueJobCon = _valueJobConTable.Select("job_id='" + _oldJobId + "'"); // 既存データの削除 Array.ForEach <DataRow>(rowValueJobCon, row => _valueJobConTable.Rows.Remove(row)); // 入力データの登録 foreach (CheckBox item in lstbJobCon.Items) { if (item.IsChecked == true) { // ジョブコントローラ変数名 string valueName = Convert.ToString(item.Content); valueName = valueName.Replace("__", "_"); DataRow rowAdd = _valueJobConTable.NewRow(); rowAdd["jobnet_id"] = _myJob.Container.JobnetId; rowAdd["job_id"] = newJobId; rowAdd["value_name"] = valueName; rowAdd["update_date"] = _myJob.Container.TmpUpdDate; _valueJobConTable.Rows.Add(rowAdd); } } // ジョブIDが変更された場合、フロー管理テーブルを更新 if (!_oldJobId.Equals(newJobId)) { CommonUtil.UpdateFlowForJobId(_myJob.Container.FlowControlTable, _oldJobId, newJobId); } // 画面再表示 _myJob.Container.JobItems.Remove(_oldJobId); _myJob.Container.JobItems.Add(newJobId, _myJob); _myJob.JobId = newJobId; _myJob.JobName = newJobNm; _myJob.Container.SetedJobIds[_myJob.JobId] = "1"; this.Close(); }