/// <summary> /// 検索処理実行 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Search_Click(object sender, RoutedEventArgs e) { try { // DB接続 SqlServer clsSqlServer = new SqlServer(Com01.clsSystemInfo.SystemDatabase); clsSqlServer.Connect(); // マテリアルマスタ検索(共通) Com02.struct_m_kaisya m_kaisya = new Com02.struct_m_kaisya(); m_kaisya.kigyo_code = Com01.clsSystemInfo.ComLineArgs.kigyo_code; m_kaisya.kaisya_code = clsBindData.SearchKaisyaCode; m_kaisya.kaisya_name_ryaku = "%" + clsBindData.SearchKaisyaName_Ryaku + "%"; if (clsBindData.SearchInvalidFlg == true) { m_kaisya.invalid_flg = 1; } clsBindData.KaisyaInfo = Com02.Get_m_kaisya(clsSqlServer, m_kaisya, 100); // 画面更新 this.DataContext = clsBindData; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
/// <summary> /// 検索処理実行 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Search_Click(object sender, RoutedEventArgs e) { try { // DB接続 SqlServer clsSqlServer = new SqlServer(Com01.clsSystemInfo.SystemDatabase); clsSqlServer.Connect(); // マテリアルマスタ検索(共通) Com02.struct_m_material m_material = new Com02.struct_m_material(); m_material.kigyo_code = Com01.clsSystemInfo.ComLineArgs.kigyo_code; m_material.material_code = clsBindData.SearchMaterialCode; m_material.material_name = clsBindData.SearchMaterialName; if (clsBindData.SearchInvalidFlg == true) { m_material.invalid_flg = 1; } clsBindData.MaterialInfo = Com02.Get_m_material(clsSqlServer, m_material, 100); // 画面更新 this.DataContext = clsBindData; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void Set_ProjectInit(BindingData clsBindData) { // DB接続 SqlServer clsSqlServer = new SqlServer(Com01.clsSystemInfo.SystemDatabase); clsSqlServer.Connect(); Com02.struct_m_kbn m_kbn_UnitKbn = new Com02.struct_m_kbn(); m_kbn_UnitKbn.kigyo_code = Com01.clsSystemInfo.ComLineArgs.kigyo_code; m_kbn_UnitKbn.data_code = SystemInfo.DataCode.unit_code; // 区分マスタを取得 clsBindData.UnitKbnInfo = Com02.Get_v_kbn(clsSqlServer, m_kbn_UnitKbn); }
/// <summary> /// システム情報取得初期処理を実行 /// </summary> public void InitProc() { // コマンドライン引数取得処理を実行 GetCommandLineArgs(); // ログイン、システム共通設定情報取得処理 LoginDatabase.ServerName = SetIniInfo("DB1", "SERVER"); LoginDatabase.DatabaseName = SetIniInfo("DB1", "NAME"); LoginDatabase.User = SetIniInfo("DB1", "USER"); LoginDatabase.Pass = SetIniInfo("DB1", "PASS"); // システム設定情報取得処理 SQL_Server.SqlServer clsSqlServer = new SQL_Server.SqlServer(LoginDatabase); clsSqlServer.Connect(); Com02.Select_sys002(clsSqlServer); // システムとして使用するデータベースの接続先を設定 SystemDatabase.ServerName = SetIniInfo("DB2", "SERVER"); SystemDatabase.DatabaseName = SetIniInfo("DB2", "NAME"); SystemDatabase.User = SetIniInfo("DB2", "USER"); SystemDatabase.Pass = SetIniInfo("DB2", "PASS"); }
/// <summary> /// ログインボタンクリック /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Login_Click(object sender, RoutedEventArgs e) { string strMsg = ""; string strErrMsg = ""; Dictionary <string, SQL_Server.struct_vew001> Dic_vew001 = new Dictionary <string, SQL_Server.struct_vew001>(); try { #region 初期処理 // カーソルを待機カーソルに変更 Mouse.OverrideCursor = Cursors.Wait; SqlServer clsSqlServer = new SqlServer(Com01.clsSystemInfo.LoginDatabase); clsSqlServer.Connect(); #endregion #region ユーザ情報の取得とエラーチェック Dic_vew001 = Com02.Select_vew001(clsSqlServer, clsBindData.KigyoCode, clsBindData.UserID, clsBindData.PassWord); if (Dic_vew001.Count == 0) { // 取得件数が0件 strMsg = "ログインすることが出来ませんでした。入力内容を確認してください。"; return; } else if (Dic_vew001[clsBindData.KigyoCode].status != 0) { // 取得件数出来たがステータスが正常以外の場合 strMsg = "ログインすることが出来ませんでした。入力内容を確認し、間違いがなければ管理者へ御連絡ください。"; return; } #endregion #region メニュー画面起動 string strMenuExe = "MK0102"; // 引数を作成 SystemInfo.struct_CommandLineArgs SetComArgs = new SystemInfo.struct_CommandLineArgs(); SetComArgs.kigyo_code = clsBindData.KigyoCode; SetComArgs.user_id = clsBindData.UserID; // 実行 if (Com01.CallMenuExe(strMenuExe, SetComArgs) == false) { strMsg = "メニュー画面起動処理に失敗しました。"; return; } else { // 終了処理を実行 object obj = new object(); RoutedEventArgs rea = new RoutedEventArgs(); End_Click(obj, rea); } #endregion } catch (Exception ex) { strMsg = "例外が発生しました。"; strErrMsg = ex.Message; } finally { clsBindData.AppMessage = Com01.GetAppMessage(MethodBase.GetCurrentMethod().Name, strMsg, strErrMsg); this.DataContext = clsBindData; // カーソルを待機カーソルに変更 Mouse.OverrideCursor = Cursors.Arrow; } }
/// <summary> /// システム日時更新処理 /// </summary> /// <param name="clsSqlServer"></param> public static void Set_DateTime(SqlServer clsSqlServer) { clsSystemInfo.dtNow = Com02.Get_SYSDATE(clsSqlServer); }
/// <summary> /// マスタ登録データ設定処理 /// </summary> /// <param name="clsSqlServer"></param> /// <param name="bindingData"></param> /// <returns></returns> private Com02.struct_m_kaisya Set_EntryData(SqlServer clsSqlServer, BindingData bindingData) { // キーを条件に最新データを取得 Com02.struct_m_kaisya m_kaisya = new Com02.struct_m_kaisya(); m_kaisya.kigyo_code = Com01.clsSystemInfo.ComLineArgs.kigyo_code; m_kaisya.kaisya_code = bindingData.KaisyaCode.text; m_kaisya.invalid_flg = 1; // 削除も含めて検索 DataTable dTable = Com02.Get_m_kaisya(clsSqlServer, m_kaisya, 1); // システム日時を取得 Com01.Set_DateTime(clsSqlServer); // 更新日時をセット m_kaisya.koshin_datetime = Com01.clsSystemInfo.dtNow.ToString(); m_kaisya.koshin_user_id = Com01.clsSystemInfo.ComLineArgs.user_id; m_kaisya.koshin_program = Com01.clsSystemInfo.strExeName; // 検索結果 if (dTable == null || dTable.Rows.Count == 0) { // 新規登録日時 m_kaisya.toroku_datetime = m_kaisya.koshin_datetime; m_kaisya.toroku_user_id = m_kaisya.koshin_user_id; m_kaisya.toroku_program = m_kaisya.koshin_program; // 空の場合は規定値を m_kaisya.invalid_flg = 0; } else { DataRow dRow = dTable.Rows[0]; // 取得内容を構造体へ m_kaisya.toroku_datetime = dRow[Com02.struct_m_kaisya.idx_toroku_datetime].ToString(); m_kaisya.toroku_user_id = dRow[Com02.struct_m_kaisya.idx_toroku_user_id].ToString(); m_kaisya.toroku_program = dRow[Com02.struct_m_kaisya.idx_toroku_program].ToString(); m_kaisya.invalid_flg = int.Parse(dRow[Com02.struct_m_kaisya.idx_invalid_flg].ToString()); m_kaisya.kaisya_code = dRow[Com02.struct_m_kaisya.idx_kaisya_code].ToString(); m_kaisya.kaisya_name = dRow[Com02.struct_m_kaisya.idx_kaisya_name].ToString(); m_kaisya.kaisya_name_kana = dRow[Com02.struct_m_kaisya.idx_kaisya_name_kana].ToString(); m_kaisya.kaisya_name_ryaku = dRow[Com02.struct_m_kaisya.idx_kaisya_name_ryaku].ToString(); m_kaisya.address = dRow[Com02.struct_m_kaisya.idx_address].ToString(); m_kaisya.postal_code = dRow[Com02.struct_m_kaisya.idx_postal_code].ToString(); m_kaisya.tel_no = dRow[Com02.struct_m_kaisya.idx_tel_no].ToString(); m_kaisya.fax_no = dRow[Com02.struct_m_kaisya.idx_fax_no].ToString(); m_kaisya.mail_address = dRow[Com02.struct_m_kaisya.idx_mail_address].ToString(); } // これに対して画面内容を上書く if (bindingData.InvalidFlg.check == true) { m_kaisya.invalid_flg = 1; } else { m_kaisya.invalid_flg = 0; } m_kaisya.kaisya_code = bindingData.KaisyaCode.text; m_kaisya.kaisya_name = bindingData.KaisyaName.text; m_kaisya.kaisya_name_kana = bindingData.KaisyaName_Kana.text; m_kaisya.kaisya_name_ryaku = bindingData.KaisyaName_Ryaku.text; m_kaisya.address = bindingData.Address.text; m_kaisya.postal_code = bindingData.PostalCode_1.text + "-" + bindingData.PostalCode_2.text; m_kaisya.tel_no = bindingData.TelNo.text; m_kaisya.fax_no = bindingData.FaxNo.text; m_kaisya.mail_address = bindingData.MailAddress.text; return(m_kaisya); }
/// <summary> /// 新規登録処理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Save_Click(object sender, RoutedEventArgs e) { string strMsg; string strErrMsg; string strProcName; strMsg = ""; strErrMsg = ""; try { // DB接続 SqlServer clsSqlServer = new SqlServer(Com01.clsSystemInfo.SystemDatabase); clsSqlServer.Connect(); // 登録・更新用の構造体へ値をセットする Com02.struct_m_kaisya m_kaisya; m_kaisya = Set_EntryData(clsSqlServer, clsBindData); // 新規/更新の文言を取得 if (m_kaisya.toroku_datetime == m_kaisya.koshin_datetime) { strProcName = "新規登録"; } else { strProcName = "更新"; } // エラーチェック bool booRtn = Com02.Chk_m_kaisya(strErrMsg, clsSqlServer, m_kaisya); if (booRtn == false) { strMsg = "入力内容に誤りがあります。"; return; } // 確認 MessageBoxResult msgResult = MessageBox.Show(strProcName + "処理を行います。" + Environment.NewLine + "よろしいですか?" , "確認:" + strProcName , MessageBoxButton.YesNo); if (!(msgResult == MessageBoxResult.Yes)) { strMsg = strProcName + "処理を中止しました。"; return; } // 新規/更新を実行 int result = SystemInfo.RtnStatus.ER; if (m_kaisya.toroku_datetime == m_kaisya.koshin_datetime) { // 新規 result = Com02.Insert_m_kaisya(clsSqlServer, m_kaisya); } else { // 更新 result = Com02.Update_m_kaisya(clsSqlServer, m_kaisya); } // 戻り値から表示するメッセージを切り替える switch (result) { case SystemInfo.RtnStatus.ER: strMsg = strProcName + "処理に失敗しました。"; break; case SystemInfo.RtnStatus.NG: strMsg = strProcName + "処理に失敗しました。"; if (!(clsSqlServer.ErrCode == "0")) { strMsg += "管理者に右記コードと共に御連絡ください。[エラーコード:" + clsSqlServer.ErrCode + "]"; } break; default: // 再検索処理を行う Search_Click(BtnF01, new RoutedEventArgs()); strMsg = strProcName + "処理が完了しました。"; break; } } catch (Exception ex) { strMsg = "例外が発生しました。"; strErrMsg = ex.Message; } finally { clsBindData.AppMessage = Com01.GetAppMessage(MethodBase.GetCurrentMethod().Name, strMsg, strErrMsg); this.DataContext = clsBindData; } }
/// <summary> /// マテリアルマスタ登録データ設定処理 /// </summary> /// <param name="clsSqlServer"></param> /// <param name="bindingData"></param> /// <returns></returns> private Com02.struct_m_material Set_EntryData(SqlServer clsSqlServer, BindingData bindingData) { // キーを条件に最新データを取得 Com02.struct_m_material m_material = new Com02.struct_m_material(); m_material.kigyo_code = Com01.clsSystemInfo.ComLineArgs.kigyo_code; m_material.material_code = bindingData.MaterialCode; m_material.invalid_flg = 1; // 削除も含めて検索 DataTable dTable = Com02.Get_m_material(clsSqlServer, m_material, 1); // システム日時を取得 Com01.Set_DateTime(clsSqlServer); // 更新日時をセット m_material.koshin_datetime = Com01.clsSystemInfo.dtNow.ToString(); m_material.koshin_user_id = Com01.clsSystemInfo.ComLineArgs.user_id; m_material.koshin_program = Com01.clsSystemInfo.strExeName; // 検索結果 if (dTable == null || dTable.Rows.Count == 0) { // 新規登録日時 m_material.toroku_datetime = m_material.koshin_datetime; m_material.toroku_user_id = m_material.koshin_user_id; m_material.toroku_program = m_material.koshin_program; // 空の場合は規定値を m_material.invalid_flg = 0; } else { DataRow dRow = dTable.Rows[0]; // 取得内容を構造体へ m_material.toroku_datetime = dRow[Com02.struct_m_material.idx_toroku_datetime].ToString(); m_material.toroku_user_id = dRow[Com02.struct_m_material.idx_toroku_user_id].ToString(); m_material.toroku_program = dRow[Com02.struct_m_material.idx_toroku_program].ToString(); m_material.kigyo_code = dRow[Com02.struct_m_material.idx_kigyo_code].ToString(); m_material.material_code = dRow[Com02.struct_m_material.idx_material_code].ToString(); m_material.material_name = dRow[Com02.struct_m_material.idx_material_name].ToString(); m_material.unit_kbn = dRow[Com02.struct_m_material.idx_unit_kbn].ToString(); m_material.type_name = dRow[Com02.struct_m_material.idx_type_name].ToString(); m_material.kikaku_shiyo = dRow[Com02.struct_m_material.idx_kikaku_shiyo].ToString(); m_material.biko = dRow[Com02.struct_m_material.idx_biko].ToString(); m_material.yobi1 = dRow[Com02.struct_m_material.idx_yobi1].ToString(); m_material.yobi2 = dRow[Com02.struct_m_material.idx_yobi2].ToString(); m_material.yobi3 = dRow[Com02.struct_m_material.idx_yobi3].ToString(); m_material.yobi4 = dRow[Com02.struct_m_material.idx_yobi4].ToString(); m_material.yobi5 = dRow[Com02.struct_m_material.idx_yobi5].ToString(); m_material.invalid_flg = int.Parse(dRow[Com02.struct_m_material.idx_invalid_flg].ToString()); } // これに対して画面内容を上書く if (bindingData.InvalidFlg == true) { m_material.invalid_flg = 1; } else { m_material.invalid_flg = 0; } m_material.material_name = bindingData.MaterialName; m_material.unit_kbn = bindingData.UnitKbn; m_material.type_name = bindingData.TypeName; m_material.kikaku_shiyo = bindingData.KikakuShiyo; m_material.biko = bindingData.Biko; return(m_material); }