// 伝票名から伝票番号を取得 public string getDenpyoNo() { List <string> lstTableName = new List <string>(); lstTableName.Add("@テーブル名"); List <string> lstDataName = new List <string>(); lstDataName.Add("支払伝票"); string strRet; DBConnective dbconnective = new DBConnective(); try { // get伝票番号_PROC"を実行 strRet = dbconnective.RunSqlRe("get伝票番号_PROC", CommandType.StoredProcedure, lstDataName, lstTableName, "@番号"); } catch { throw; } finally { dbconnective.DB_Disconnect(); } return(strRet); }
///<summary> ///updMOdataKakutei ///MOデータ確定処理 ///</summary> public void updMOdataKakutei(List <string> lstStringMOKakutei) { List <string> lstTableName = new List <string>(); lstTableName.Add("@年月度"); lstTableName.Add("@商品コード"); lstTableName.Add("@ユーザー名"); DBConnective dbconnective = new DBConnective(); //トランザクション開始 dbconnective.BeginTrans(); try { //MOデータ削除_PROCを実行 dbconnective.RunSqlRe("MOデータ確定_PROC", CommandType.StoredProcedure, lstStringMOKakutei, lstTableName); //コミット dbconnective.Commit(); } catch (Exception ex) { //ロールバック開始 dbconnective.Rollback(); throw (ex); } finally { //トランザクション終了 dbconnective.DB_Disconnect(); } }
///<summary> ///updMOMasterCheck ///MOデータ商品マスタチェック_PROC実行処理 ///</summary> public void updMOMasterCheck(List <string> lstString) { List <string> lstTableName = new List <string>(); lstTableName.Add("@年月"); lstTableName.Add("@メーカーコード"); lstTableName.Add("@大分類コード"); lstTableName.Add("@中分類コード"); lstTableName.Add("@ユーザー名"); DBConnective dbconnective = new DBConnective(); //トランザクション開始 dbconnective.BeginTrans(); try { //中分類が空の場合 if (lstString[3].Trim() == "") { string strSQL = "MOデータ商品マスタチェック_PROC '" + lstString[0] + "','" + lstString[1] + "','" + lstString[2] + "', NULL" + ",'" + lstString[4] + "'"; dbconnective.RunSql(strSQL); } else { //MOデータ商品マスタチェック_PROCを実行 dbconnective.RunSqlRe("MOデータ商品マスタチェック_PROC", CommandType.StoredProcedure, lstString, lstTableName); } //コミット dbconnective.Commit(); } catch (Exception ex) { //ロールバック開始 dbconnective.Rollback(); throw (ex); } finally { //トランザクション終了 dbconnective.DB_Disconnect(); } }
///<summary> ///delMO ///削除処理 ///</summary> public void delMO(string strYM, string strShohinCd) { List <string> lstTableName = new List <string>(); lstTableName.Add("@年月度"); lstTableName.Add("@商品コード"); List <string> lstDataName = new List <string>(); lstDataName.Add(strYM); lstDataName.Add(strShohinCd); DBConnective dbconnective = new DBConnective(); //トランザクション開始 dbconnective.BeginTrans(); try { //MOデータ削除_PROCを実行 dbconnective.RunSqlRe("MOデータ削除_PROC", CommandType.StoredProcedure, lstDataName, lstTableName); //コミット dbconnective.Commit(); } catch (Exception ex) { //ロールバック開始 dbconnective.Rollback(); throw; } finally { //トランザクション終了 dbconnective.DB_Disconnect(); } }
///<summary> ///updHachukoshin ///発注更新処理 ///</summary> public void updHachukoshin(List <string> lstStringHachukoshin, List <string> lstStringMOkakuteiChubun) { List <string> lstTableName = new List <string>(); lstTableName.Add("@仕入先コード"); lstTableName.Add("@発注年月日"); lstTableName.Add("@発注番号"); lstTableName.Add("@発注者コード"); lstTableName.Add("@営業所コード"); lstTableName.Add("@担当者コード"); lstTableName.Add("@受注番号"); lstTableName.Add("@出庫番号"); lstTableName.Add("@行番号"); lstTableName.Add("@商品コード"); lstTableName.Add("@メーカーコード"); lstTableName.Add("@大分類コード"); lstTableName.Add("@中分類コード"); lstTableName.Add("@C1"); lstTableName.Add("@C2"); lstTableName.Add("@C3"); lstTableName.Add("@C4"); lstTableName.Add("@C5"); lstTableName.Add("@C6"); lstTableName.Add("@発注数量"); lstTableName.Add("@発注単価"); lstTableName.Add("@発注金額"); lstTableName.Add("@納期"); lstTableName.Add("@発注フラグ"); lstTableName.Add("@注番"); lstTableName.Add("@加工区分"); lstTableName.Add("@仕入先名称"); lstTableName.Add("@ユーザー名"); DBConnective dbconnective = new DBConnective(); //トランザクション開始 dbconnective.BeginTrans(); try { for (int intCntRow = 0; intCntRow < lstStringMOkakuteiChubun.Count; intCntRow++) { lstStringHachukoshin[12] = lstStringMOkakuteiChubun[intCntRow]; //MOデータの確定処理 dbconnective.RunSqlRe("発注更新_PROC", CommandType.StoredProcedure, lstStringHachukoshin, lstTableName); } //コミット dbconnective.Commit(); } catch (Exception ex) { //ロールバック開始 dbconnective.Rollback(); throw (ex); } finally { //トランザクション終了 dbconnective.DB_Disconnect(); } }
/////<summary> /////getViewGrid /////code入力箇所からフォーカスが外れた時 /////</summary> //public DataTable getViewGrid(string strDaibunCD) //{ // //SQLファイルのパスとファイル名を入れる用 // List<string> lstSQL = new List<string>(); // //SQLファイルのパス用(フォーマット後) // string strSQLInput = ""; // //SQLファイルのパスとファイル名を追加 // lstSQL.Add("B0250_MOnyuryoku"); // lstSQL.Add("MOnyuryoku_SELECT_GetDataGridView_NOTALL"); // //SQL実行時に取り出したデータを入れる用 // DataTable dtSetCd_B = new DataTable(); // //SQL接続 // OpenSQL opensql = new OpenSQL(); // //接続用クラスのインスタンス作成 // DBConnective dbconnective = new DBConnective(); // try // { // //SQLファイルのパス取得 // strSQLInput = opensql.setOpenSQL(lstSQL); // //パスがなければ返す // if (strSQLInput == "") // { // return (dtSetCd_B); // } // //SQLファイルと該当コードでフォーマット // strSQLInput = string.Format(strSQLInput, strDaibunCD); // //SQL接続後、該当データを取得 // dtSetCd_B = dbconnective.ReadSql(strSQLInput); // return (dtSetCd_B); // } // catch (Exception ex) // { // throw (ex); // } // finally // { // //トランザクション終了 // dbconnective.DB_Disconnect(); // } //} ///<summary> ///updMO ///MOデータ変更の処理(戻り値は現行の名残) ///</summary> public void updMO(string strYMD, string strCode, string strSijisU, decimal decSu, decimal decTanka, string strNouki, string strTorihiki, int intDenNo, string strUserID, string strHachutantoCd ) { List <string> lstTableName = new List <string>(); lstTableName.Add("@年月度"); lstTableName.Add("@商品コード"); lstTableName.Add("@MO発注指示数"); lstTableName.Add("@MO発注数"); lstTableName.Add("@MO発注単価"); lstTableName.Add("@納期"); lstTableName.Add("@取引先コード"); lstTableName.Add("@発注番号"); lstTableName.Add("@ユーザー名"); lstTableName.Add("@発注担当者コード"); List <string> lstDataName = new List <string>(); lstDataName.Add(strYMD); lstDataName.Add(strCode); lstDataName.Add(strSijisU.ToString()); lstDataName.Add(decSu.ToString()); lstDataName.Add(decTanka.ToString()); lstDataName.Add(strNouki.ToString()); lstDataName.Add(strTorihiki.ToString()); lstDataName.Add(intDenNo.ToString()); lstDataName.Add(strUserID); lstDataName.Add(strHachutantoCd); DBConnective dbconnective = new DBConnective(); //トランザクション開始 dbconnective.BeginTrans(); try { //MOデータ変更_PROCを実行 dbconnective.RunSqlRe("MOデータ変更_PROC", CommandType.StoredProcedure, lstDataName, lstTableName); //コミット dbconnective.Commit(); } catch (Exception ex) { //ロールバック開始 dbconnective.Rollback(); throw; } finally { //トランザクション終了 dbconnective.DB_Disconnect(); } return; }
///<summary> ///setMOshoki ///データの数確認とMOデータの初期更新 ///</summary> public void setMOshoki(List <string> lstString) { //SQLファイルのパスとファイル名を入れる用 List <string> lstSQL = new List <string>(); //SQLファイルのパス用(フォーマット後) string strSQLInput = ""; //SQLファイルのパスとファイル名を追加 lstSQL.Add("B0250_MOnyuryoku"); lstSQL.Add("MOnyuryoku_SELECT_GetDataCnt"); //SQL実行時に取り出したデータを入れる用 DataTable dtSetCd_B = new DataTable(); //SQL接続 OpenSQL opensql = new OpenSQL(); //接続用クラスのインスタンス作成 DBConnective dbconnective = new DBConnective(); try { //SQLファイルのパス取得 strSQLInput = opensql.setOpenSQL(lstSQL); //パスがなければ返す if (strSQLInput == "") { return; } //SQLファイルと該当コードでフォーマット strSQLInput = string.Format(strSQLInput, lstString[1], lstString[3], lstString[4], lstString[5]); //SQL接続後、該当データを取得 dtSetCd_B = dbconnective.ReadSql(strSQLInput); //既にデータがある場合 if (dtSetCd_B.Rows[0][0].ToString() == "0") { return; } List <string> lstTableName = new List <string>(); lstTableName.Add("@在庫年月日"); lstTableName.Add("@年月"); lstTableName.Add("@月数"); lstTableName.Add("@メーカーコード"); lstTableName.Add("@大分類コード"); lstTableName.Add("@中分類コード"); lstTableName.Add("@仕入先コード"); lstTableName.Add("@ユーザー名"); List <string> lstDataName = new List <string>(); lstDataName.Add(lstString[0]); lstDataName.Add(lstString[1]); lstDataName.Add(lstString[2]); lstDataName.Add(lstString[3]); lstDataName.Add(lstString[4]); lstDataName.Add(lstString[5]); lstDataName.Add(lstString[6]); lstDataName.Add(lstString[7]); //中分類が空の場合 if (lstDataName[5].Trim() == "") { string strSQL = "MOデータ初期更新_PROC '" + lstDataName[0] + "','" + lstDataName[1] + "','" + lstDataName[2] + "','" + lstDataName[3] + "','" + lstDataName[4] + "', NULL" + ",'" + lstDataName[6] + "','" + lstDataName[7] + "'"; dbconnective.RunSql(strSQL); } else { //MOデータ初期更新_PROCを実行 dbconnective.RunSqlRe("MOデータ初期更新_PROC", CommandType.StoredProcedure, lstDataName, lstTableName); } //コミット dbconnective.Commit(); } catch { //ロールバック開始 dbconnective.Rollback(); throw; } finally { //トランザクション終了 dbconnective.DB_Disconnect(); } }
///<summary> ///getNewShohinNo ///商品番号の取得 ///</summary> public string getNewShohinNo(Boolean blnKanri) { //出力する伝票番号 string strGetDenpyo = ""; //伝票番号取得用のPROC用 object objDummy = 0; object objReturnval = ""; //新規商品コードを入れる用 string strCdHEAD = ""; string strCdHEAD2 = ""; //新規伝票番号を入れる用 string strDenNo = ""; string strDenNo2 = ""; //伝票番号PROCより確保した頭文字以外の伝票番号 int intGetNo = 0; //SQLファイルのパスとファイル名を入れる用 List <string> lstSQL = new List <string>(); //SQLファイルのパス用(フォーマット後) string strSQLInput = ""; //SQL実行時に取り出したデータを入れる用 DataTable dtSetCd_B = new DataTable(); //SQL接続 OpenSQL opensql = new OpenSQL(); //商品マスターの場合 if (blnKanri == true) { //SQLファイルのパスとファイル名を追加 lstSQL.Add("M1030_Shohin"); lstSQL.Add("Shohin_CdMAX_SELECT"); //伝票番号取得用(名前) List <String> lstGetDenpyoNoName = new List <string>(); //伝票番号取得用(データ) List <string> lstSearchData = new List <string>(); lstGetDenpyoNoName.Add("@テーブル名"); //SQL用に移動 DBConnective dbconnective = new DBConnective(); try { //SQLファイルのパス取得 strSQLInput = opensql.setOpenSQL(lstSQL); //パスがなければ返す if (strSQLInput == "") { return(strGetDenpyo); } //SQL接続後、該当データを取得 dtSetCd_B = dbconnective.ReadSql(strSQLInput); //データの中身がない場合 if (dtSetCd_B.Rows[0][0].ToString() == "") { return(strGetDenpyo); } strCdHEAD = dtSetCd_B.Rows[0][0].ToString().Substring(0, 1); //頭文字によって動作を変える switch (strCdHEAD) { case "A": strCdHEAD2 = "B"; strDenNo = "商品コード2"; strDenNo2 = "商品コード3"; break; case "B": strCdHEAD2 = "C"; strDenNo = "商品コード3"; strDenNo2 = "商品コード4"; break; case "C": strCdHEAD2 = "D"; strDenNo = "商品コード4"; strDenNo2 = "商品コード5"; break; case "D": strCdHEAD2 = "E"; strDenNo = "商品コード5"; strDenNo2 = "商品コード6"; break; case "E": strCdHEAD2 = "F"; strDenNo = "商品コード6"; strDenNo2 = "商品コード7"; break; case "F": strCdHEAD2 = "G"; strDenNo = "商品コード7"; strDenNo2 = "商品コード8"; break; case "G": strCdHEAD2 = "H"; strDenNo = "商品コード8"; strDenNo2 = "商品コード9"; break; case "H": strCdHEAD2 = "I"; strDenNo = "商品コード9"; strDenNo2 = "商品コード10"; break; case "I": strCdHEAD2 = "J"; strDenNo = "商品コード10"; strDenNo2 = "商品コード11"; break; case "J": strCdHEAD2 = "K"; strDenNo = "商品コード11"; strDenNo2 = "商品コード12"; break; case "K": strCdHEAD2 = "L"; strDenNo = "商品コード12"; strDenNo2 = "商品コード13"; break; case "L": strCdHEAD2 = "M"; strDenNo = "商品コード13"; strDenNo2 = "商品コード14"; break; case "M": strCdHEAD2 = "N"; strDenNo = "商品コード14"; strDenNo2 = "商品コード15"; break; case "N": strCdHEAD2 = "O"; strDenNo = "商品コード15"; strDenNo2 = "商品コード16"; break; case "O": strCdHEAD2 = "P"; strDenNo = "商品コード16"; strDenNo2 = "商品コード17"; break; case "P": strCdHEAD2 = "Q"; strDenNo = "商品コード17"; strDenNo2 = "商品コード18"; break; case "Q": strCdHEAD2 = "R"; strDenNo = "商品コード18"; strDenNo2 = "商品コード19"; break; case "R": strCdHEAD2 = "S"; strDenNo = "商品コード19"; strDenNo2 = "商品コード20"; break; case "S": strCdHEAD2 = "T"; strDenNo = "商品コード20"; strDenNo2 = "商品コード21"; break; case "T": strCdHEAD2 = "U"; strDenNo = "商品コード21"; strDenNo2 = "商品コード22"; break; case "U": strCdHEAD2 = "V"; strDenNo = "商品コード22"; strDenNo2 = "商品コード23"; break; case "V": strCdHEAD2 = "W"; strDenNo = "商品コード23"; strDenNo2 = "商品コード24"; break; case "W": strCdHEAD2 = "X"; strDenNo = "商品コード24"; strDenNo2 = "商品コード25"; break; case "X": strCdHEAD2 = "B"; strDenNo = "商品コード25"; strDenNo2 = "商品コード26"; break; case "Y": strCdHEAD2 = "B"; strDenNo = "商品コード26"; strDenNo2 = "商品コード27"; break; case "Z": strGetDenpyo = "0"; break; } //頭文字がZの場合 if (strGetDenpyo == "0") { return(strGetDenpyo); } DataTable dt = dbconnective.ReadSql("select 最終番号 FROM 伝票番号 where テーブル名 = '" + strDenNo + "'"); if (dt == null || dt.Rows.Count == 0) { return(strGetDenpyo); } int num = int.Parse(dtSetCd_B.Rows[0][0].ToString().Substring(1)); num = int.Parse(dt.Rows[0][0].ToString()); //頭文字以降の数値が9999以上の場合 //if (int.Parse(dtSetCd_B.Rows[0][0].ToString().Substring(1)) >= 9999) if (num >= 9999) { strCdHEAD = strCdHEAD2; strDenNo = strDenNo2; } lstSearchData.Add(strDenNo); //伝票番号の最新を取得 intGetNo = int.Parse(dbconnective.RunSqlRe("get伝票番号_PROC", CommandType.StoredProcedure, lstSearchData, lstGetDenpyoNoName, "@番号")); //0パディングと頭文字を追加 strGetDenpyo = strCdHEAD + string.Format("{0:0000}", intGetNo); } catch (Exception ex) { new CommonException(ex); throw (ex); } finally { dbconnective.DB_Disconnect(); } } //商品マスタではない場合 else { //伝票番号取得用(名前) List <String> lstGetDenpyoNoName = new List <string>(); //伝票番号取得用(データ) List <string> lstSearchData = new List <string>(); lstGetDenpyoNoName.Add("@テーブル名"); //SQL用に移動 DBConnective dbconnective = new DBConnective(); try { lstSearchData.Add("仮商品コード"); //伝票番号の最新を取得 intGetNo = int.Parse(dbconnective.RunSqlRe("get伝票番号_PROC", CommandType.StoredProcedure, lstSearchData, lstGetDenpyoNoName, "@番号")); //0パディングと頭文字を追加 strGetDenpyo = string.Format("{0:00000000}", intGetNo); } catch (Exception ex) { new CommonException(ex); throw (ex); } finally { dbconnective.DB_Disconnect(); } } return(strGetDenpyo); }