2026年5月27日 星期三
V1060302-實體定更定檢清單 – 編輯欄位(AMM_CHKCHG_ASN)+CaluField(AMM_CHKCHG) -[存檔]錯誤
(AMM_CHKCHG_ASN)+CaluField(AMM_CHKCHG)
--> SQL 不用 CaluField, SQL用FROM AMM_CHKCHG_ASN A ,AMM_CHKCHG B
-->[編輯][存檔]時,更新的欄位不正確(Ex: AMM_CHKCHG.PTMVAL1,PTMVAL2)
處理說明: 1>Template.SQL 必需單一Table(AMM_CHKCHG_ASN),
2026年5月26日 星期二
V1060302 –實體定更定檢清單 - Item 挑選後 – change event 沒觸發
處理說明: 1>[Item] 挑選欄位值, 挑選後未觸發 change event
//ITEM
Ext.getCmp('btn_ITEM').on("click", function () {
var win = EditPickx('ITEM', '../api/V1060302API/get_ITEMPick', ['ITEM'], ['ITEM'],
win.show();
});
--> 將 EditPickx 的 isSuspendEvent 設為 false , 不 suspend change event
2026年5月25日 星期一
V1060301- 專案定更定檢件清單 - 單檔維護(新增/修改/刪除/挎貝) - 下載匯入格式/匯入/匯出
目的: V1060301- 專案定更定檢件清單 - 單檔維護(新增/修改/刪除/挎貝) - 匯入/匯出
var S_DB = Ext.create('S_DB', {
apiName: 'V1060301'
});
1>*.js
2026年5月24日 星期日
V1060302 – 專案定更檢清單 - 分類 – Runtime 設定挑選欄位 - click - 不可用handler
目的: V1060302 – 專案定更檢清單 - 分類 – Runtime 設定挑選欄位
處理說明: 1> click 才是 event 名稱, 不可用 handler
handler 是屬性名稱,不是 event name , 所以不可用在 on('handler', function(){
//設定[編輯]畫面 - 欄位挑選(DoubleClick)設定
win.show();
});
2026年5月7日 星期四
按[F12]鈕 - Network Debug 的範例 - 當前端發出一個 Url Request 時(../API/V80E01AAPI/get_sub_TreeData1) , Debug 資料是否正確
當前端發出一個 Url Request 時(../API/V80E01AAPI/get_sub_TreeData1) ,
Debug 資料(url/Request method/傳入參數/傳回值/..)是否正確
好的,我來示範一個「Network Debug 範例」,讓你能在瀏覽器 F12 檢查 TreeStore 的請求是否真的送出到後端:
🔧 步驟
打開瀏覽器開發者工具
- 在 Chrome/Edge 按
F12或Ctrl+Shift+I。 - 切換到 Network 面板。
- 在 Chrome/Edge 按
展開節點觸發請求
- 在你的
Ext.tree.Panel裡點擊某個節點。 - 如果 TreeStore 正常設定,這時候應該會送出一個 HTTP 請求。
- 在你的
檢查請求細節
- 在 Network 面板找到對應的請求 (通常 URL 是
../api/V80E01AAPI/get_sub_TreeData1)。 - 點擊該請求,檢查:
- Request Method:是否為
POST(如果後端是[HttpPost])。 - Request Payload / Form Data:是否有帶上
cur_DEPID。 - Response:後端是否回傳 JSON,格式是否正確。
- Request Method:是否為
- 在 Network 面板找到對應的請求 (通常 URL 是
常見錯誤排查
- 如果請求沒有出現 → 代表 TreeStore 沒有觸發 Proxy,檢查
beforeload是否正確設定。 - 如果請求出現但狀態碼是
405 Method Not Allowed→ 前端用 GET,後端只允許 POST。 - 如果狀態碼是
404 Not Found→ URL 路徑不匹配。 - 如果狀態碼是
200 OK但沒有資料 → 後端查詢邏輯或回傳格式不符。
- 如果請求沒有出現 → 代表 TreeStore 沒有觸發 Proxy,檢查
範例截圖檢查重點
- Request URL:
http://localhost:xxxx/api/V80E01AAPI/get_sub_TreeData1 - Request Method:
POST - Form Data:
cur_DEPID: AIDC - Response JSON:
[ { "id":"A001", "text":"A001:部門", "leaf":false }, { "id":"E001", "text":"E001:員工", "leaf":true } ]
👉 這樣你就能快速判斷:到底是 前端沒送出,還是 後端沒接到,或是 資料格式不符。
要不要我幫你寫一個「最小可測試範例」的 TreeStore + Controller,讓你可以直接跑起來測試 Network 面板?
2026年5月6日 星期三
V80E01A - 以 Ext.Tree.Panel 的應用 - 以 資料庫欄位建位 TreeView - store.proxy
-以資料庫欄位建位 TreeView - store.proxy
type: 'ajax',url: '../api/V80E01AAPI/get_sub_TreeData1',actionMethods: { read: 'POST' }, // 改成 POSTreader: { type: 'json' },}
3> 將 Ext.tree.Panel.store 設定成 myTreeStore
var cmp_sub_TreePanel1 =
get_cmp_treepanel1("sub_TreePanel1","AIDC",10, myTreeStore);
4>Ext.tree.Panel - DoubleClick 展開節點時, 會呼叫URL
會自動呼叫 URL (store.proxy.url) 讀取下層節點
2>store.proxy 的應用
JSON介紹 - 什麼是 JSON
JSON(JavaScript Object Notation)是一種輕量級的資料交換格式,常用來在不同系統之間傳遞資料。它的設計理念是「簡單、易讀、易解析」,既能讓人類直觀理解,也能被電腦快速處理。
1>✨ JSON 的特點
純文字格式:資料以文字形式儲存,通常是
.json檔案。結構清晰:由「鍵值對」組成,類似字典或物件。
跨平台通用:不依賴特定程式語言,幾乎所有語言都能解析。
常用於網路傳輸:例如 API 回傳資料時,最常見的格式就是 JSON
{
"name": "Alice",
"age": 25,
"isStudent": true,
"skills": ["Python", "JavaScript", "SQL"],
"node": {856:"系統設計課",611292: "蔡聰進",610929:"楊清榮",} ,
}
字串:用雙引號
" "包起來數字:直接寫,不需要引號
布林值:
true或false陣列:用
[]包起來物件:用
{}包起來,裡面是鍵值對
API 資料交換:伺服器和前端之間傳遞資料。
設定檔:許多應用程式用 JSON 來儲存設定。
資料儲存:簡單的資料庫或檔案系統也會用 JSON。