2024年6月2日 星期日

V20304B – [單筆工時匯出]鈕 – getUrlStr - 檢核及更新資料分成 2 url 執行 & 匯出xls - .submit -CHECK2INS

 目的: V20304B – [單筆工時匯出] – getUrlStr - 錯誤訊息

處理說明: 1>設定 np={} - 傳入參數值
                  2>呼叫 getUrlStr( Tmp_url, np, )
                  3>url函式 : 傳回 Str -
                      [HttpPost]

                      public dynamic CHECK_AMM_PNTMSHT()



1>*.js
cur_recs = Tmp_Grid.getView().selModel.getSelection();
//console.log("cur_recs:", cur_recs);
if (cur_recs.length == 0) {
   mywarnalert("請先選擇要匯出的系統件單號");
   return;
}

//取得目前所勾選資料,再匯出
cur_rec = cur_recs[0];
var np = {};

np["FMNO"] = cur_rec.data["FMNO"];
np["PN"] = cur_rec.data["PN"];

//STEP1: 檢核 件號.標準工時檔(AMM_PNTMSHT)是否已存在 , 若不存在,則顯示訊息後, 離開
var Tmp_url = '../../api/V20304BAPI/CHECK_AMM_PNTMSHT';
var Tmp_RtnStr = getUrlStr(Tmp_url, np, "檢核 件號.標準工時檔(AMM_PNTMSHT)是否已存在");
if (!checkRtnOK(Tmp_RtnStr)) {
     mywarnalert(Tmp_RtnStr);
    return;
}

//STEP2: 若 AMM_TLSAR & AMM_AR of FMNO 不存在, 則新增該檔案資料(AMM_TLSAR, AMM_AR)
np["TYPEAF"] = cur_rec.data["TYPEAF"]; //約別
np["RPNOAF"] = cur_rec.data["RPNOAF"];
np["MRPNOAF"] = cur_rec.data["MRPNOAF"];
Tmp_url = '../../api/V20304BAPI/INSERT_AMM_TLSAR_AMM_AR';
Tmp_RtnStr = getUrlStr(Tmp_url, np, "檢核 AMM_TLSAR,AMM_AR 若不存在則新增");
if (!checkRtnOK(Tmp_RtnStr)) {

    mywarnalert(Tmp_RtnStr);
    return;
}

//STEP3: 匯出 Excel
Ext.getCmp('s_form').submit({
//Ext.Ajax.request({
url: '../../api/V20304BAPI/XlsOut',

method: 'POST',
async: false,
standardSubmit: true, //若要傳送檔案至前端, standardSubmit必需設為 true
params: np,
});
//顯示結果訊息..


2>*.cs

// CHECK_AMM_PNTMSHT() - 檢核目前 PN 是否存在[件號標準工時檔(AMM_PNTMSHT)]

//若存在,傳回 "件號(xxxx)存在[件號標準工時檔(AMM_PNTMSHT)]
//若不存在, 則傳回"錯誤: 件號(xxxx)不存在[件號標準工時檔(AMM_PNTMSHT)] , 敬請檢核 !1"
[HttpPost]
public dynamic CHECK_AMM_PNTMSHT()
{
//取得參數值
var c = HttpContext.Current;
NameValueCollection nvc = c.Request.Form;
string Tmp_PN = nvc["PN"];
int Tmp_cnt;
string Tmp_RtnMsg = "";
string Tmp_Sql = "";
string n = funId + "_CHECK_AMM_PNTMSHT";
HttpCookie MyCookie;
DataTable Tmp_dt1 = new DataTable();
try
{
Tmp_Sql = " SELECT * "
                 + " FROM AMM_PNTMSHT "
                 + " WHERE PN=" + myfunc.AA(Tmp_PN)
                 + " AND PNSHTSTS='B' ";
Tmp_dt1 = myfunc.SqlOpen(Tmp_dt1, Tmp_Sql);
Tmp_cnt = Tmp_dt1.Rows.Count;
if (Tmp_cnt > 0){
       Tmp_RtnMsg = "件號(" + Tmp_PN + ")<br>"
                               + "存在件號維修工時主檔(AMM_PNTMSHT)<br>";
}
else
{
Tmp_RtnMsg = "錯誤: 件號(" + Tmp_PN + ")<br>"
                        + "不存在[件號維修工時主檔(AMM_PNTMSHT)]<br>"
                         +"請先到[V4080201-件號專用表單維護]子功能維護<br>"
                         +"敬請檢核 !!<br>";

}
}
catch (Exception e)
{
Tmp_RtnMsg = myfunc.Get1ORA(e.Message);
Tmp_RtnMsg = "錯誤:判斷件號是否存在<br>"
                        +"件號維修工時主檔(AMM_PNTMSHT)<br>"
                        + "失敗!!"
                        + Tmp_RtnMsg;
}
return Tmp_RtnMsg;
}

沒有留言:

張貼留言