目的: V20108GA:簡單子畫面- Grid – 含[V]勾選CheckBox
V20108G:簡單子畫面- Grid
V20108G:簡單子畫面- Grid
處理說明: 1>V20108GA:簡單子畫面- Grid – 含[V]勾選CheckBox - PK_LIST , ALL_LIST
Ext.define('CHK_PK_OBJ1', {
PK_LIST: [], //儲存選項's的 PK欄位值
ALL_LIST: [], //儲存選項's的 所有欄位值
});
var CHK_PK_OBJ1 = Ext.create('CHK_PK_OBJ1');
2>V20108GA:簡單子畫面- Grid - 加入[V]
var sub_Columns_V20108GA = [
{
//2023/07/14 microed , 將 V120201 改成 雅嵐版本 - 分頁勾選
header: "勾選",
dataIndex: "CHECK", width: 40, xtype: 'checkcolumn', menuDisabled: true,
//rec : 目前資料欄位值
renderer: function (value, metadata, rec, rowIndex, colIndex, store) {
var Tmp_PK = rec.get('EMPLYID');
var chkd = '';
if (rec.get('CHECK') === true) {
if (CHK_PK_OBJ1.PK_LIST.indexOf(Tmp_PK) == -1) {
CHK_PK_OBJ1.PK_LIST.push(Tmp_PK);
CHK_PK_OBJ1.ALL_LIST.push(rec.data);
}
chkd = 'checked';
rec.set('CHECK', true);
}
1>V20108GA_JSON.js
var sub_Columns_V20108GA = [
{ header: "", xtype: "rownumberer", width: 40, align: "center", sortable: false },
{
//2023/07/14 microed , 將 V120201 改成 雅嵐版本 - 分頁勾選
header: "勾選",
dataIndex: "CHECK", width: 40, xtype: 'checkcolumn', menuDisabled: true, sortable: false,
//rec : 目前資料欄位值
renderer: function (value, metadata, rec, rowIndex, colIndex, store) {
//var item = record.get('PROM_ID') + '&' + record.get('CR_NO') ;
console.log("renderer rec:", rec);
console.log("renderer rec.data:", rec.data);
var Tmp_PK = rec.get('EMPLYID');
var chkd = '';
if (rec.get('CHECK') === true) {
if (CHK_PK_OBJ1.PK_LIST.indexOf(Tmp_PK) == -1) {
CHK_PK_OBJ1.PK_LIST.push(Tmp_PK);
CHK_PK_OBJ1.ALL_LIST.push(rec.data);
}
chkd = 'checked';
rec.set('CHECK', true);
}
else if (rec.get('CHECK') === false) {
rec.set('CHECK', false);
//將本Tmp_PK ,由 Array 中移除 , 所以不會有 空字串, 空 Object
CHK_PK_OBJ1.PK_LIST = jQuery.grep(CHK_PK_OBJ1.PK_LIST, function (item) {
return item != Tmp_PK;
});
CHK_PK_OBJ1.ALL_LIST = jQuery.grep(CHK_PK_OBJ1.ALL_LIST, function (item) {
return item.EMPLYID != Tmp_PK;
});
console.log("unchecked CHK_PK_OBJ1.PK_LIST:", CHK_PK_OBJ1.PK_LIST);
console.log("unchecked CHK_PK_OBJ1.ALL_LIST:", CHK_PK_OBJ1.ALL_LIST);
}
else if (typeof rec.get('CHECK') === "undefined") { //往上或下一頁
if (CHK_PK_OBJ1.PK_LIST.indexOf(Tmp_PK) > -1) {
chkd = 'checked';
if (CHK_PK_OBJ1.PK_LIST.indexOf(Tmp_PK) == -1) {
CHK_PK_OBJ1.PK_LIST.push(Tmp_PK);
CHK_PK_OBJ1.ALL_LIST.push(rec.data);
console.log("undefined checked CHK_PK_OBJ1.PK_LIST:", CHK_PK_OBJ1.PK_LIST);
console.log("undefined checked CHK_PK_OBJ1.ALL_LIST:", CHK_PK_OBJ1.ALL_LIST);
}
rec.set('CHECK', true);
} else {
rec.set('CHECK', false);
}
}
var cbx = "<input type='checkbox' "
+ chkd + " > ";
return cbx;
},
},
{ header: "部門編號", dataIndex: "DEPID", width: 100, sortable: false, TMType: "string" },
{ header: "員工編號", dataIndex: "EMPLYID", width: 100, sortable: false, TMType: "string" },
{ header: "員工編號", dataIndex: "EMPLYNM", width: 100, sortable: false, TMType: "string" },
];
var Tmp_DataAry = [];
var isOk = true;
var np = {};
var Tmp_Str = "";
for (let i = 0; i <= CHK_PK_OBJ1.PK_LIST.length - 1; i++) {
cur_rec = CHK_PK_OBJ1.ALL_LIST[i];
Tmp_DataAry.push(cur_rec);
} // end of for (let i=0,)
// 將目前子畫面的資料(Table)轉成 JSON字串
var Tmp_DataStr = JSON.stringify(Tmp_DataAry);
var np = {};
np = {
DataStr: Tmp_DataStr,
};
var Tmp_url = '../../api/V20201GAAPI/UPDATE_AMM_SCHEDULE';
var Tmp_RtnStr = getUrlStr(Tmp_url, np, "取消待完工- AMM_SCHEDULE");
if (checkRtnOK(Tmp_RtnStr)) {
mysuccessalert(Tmp_RtnStr);
Ext.getCmp("btn_sub_Show").fireHandler();
return;
}
else
mywarnalert(Tmp_RtnStr);
2>*.cs
public dynamic UPDATE_AMM_SCHEDULE()
{
//取得參數值
var c = HttpContext.Current;
NameValueCollection nvc = c.Request.Form;
string Tmp_DataStr = nvc["DataStr"];
string Tmp_RtnMsg = "";
string n = funId + "_UPDATE_AMM_SCHEDULE";
HttpCookie MyCookie;
try
{
string Tmp_ITM;
string Tmp_AMMNO, Tmp_WC;
string Tmp_WBS, Tmp_TYPEAF;
string Tmp_PN, Tmp_PNNAME, Tmp_SERNO;
string Tmp_SDT, Tmp_PROJDT, Tmp_CSDTAF, Tmp_EDT;
string Tmp_CONTAF, Tmp_PROJID, Tmp_SAPNO, Tmp_FIXNO;
string Tmp_GONOAF, Tmp_EIAC, Tmp_ECNO, Tmp_CNDPROCCODE;
string Tmp_RT, Tmp_WET, Tmp_RESCH, Tmp_PROCWC, Tmp_SCHER;
string Tmp_DT, Tmp_STAT, Tmp_PECT, Tmp_FAVITEM;
DataTable dt_np = myfunc.JSON2dt(Tmp_DataStr);
for (var i = 0; i < dt_np.Rows.Count; i++)
{
Tmp_AMMNO = dt_np.Rows[i]["AMMNO"].ToString();
Tmp_WC = dt_np.Rows[i]["WC"].ToString();
Tmp_WBS=dt_np.Rows[i]["WBS"].ToString();
Tmp_TYPEAF = dt_np.Rows[i]["TYPEAF"].ToString();







