0編碼實現(xiàn)列表頁行內(nèi)嵌套?jvs低代碼配置實戰(zhàn)示例
一、子列表【新增】表單默認(rèn)回顯主列表關(guān)聯(lián)字段
子列表新增表單可使用表單回顯配置,在新增表單中默認(rèn)回顯,如圖效果
1、子列表中進(jìn)入新增頁面配置
2、切換到表單設(shè)置,選擇回顯設(shè)置,進(jìn)入回顯邏輯引擎。
3、在畫布中拖入【對象變量】節(jié)點,使用對象節(jié)點在打開頁面時回顯字段數(shù)據(jù)。參數(shù)名使用表單關(guān)聯(lián)字段字段名,使用公式獲取點擊的主列表的行數(shù)據(jù)id。
二、列表關(guān)聯(lián)列表,子列表底部按鈕配置邏輯引擎
1、在主列表中增加一個類型為“列表”的行內(nèi)按鈕,點擊設(shè)計進(jìn)入子列表設(shè)置頁面。
2、彈出的頁面中可配置子列表多個設(shè)置。
選擇列表:可選擇已存在的列表,或點擊后面“ ”號進(jìn)行新列表頁創(chuàng)建;也可點擊編輯按鈕對選擇的子列表頁進(jìn)行編輯。子列表篩選條件在子列表頁開啟對應(yīng)字段查詢。
彈框標(biāo)題:可設(shè)置彈出頁面左上角顯示所點擊行數(shù)據(jù)的哪一個字段,可調(diào)整彈出頁面的寬度大小。
數(shù)據(jù)過濾:設(shè)置主列表與子列表的關(guān)聯(lián)關(guān)系。如果子列表行數(shù)據(jù)中的關(guān)聯(lián)字段為下拉組件,那此處關(guān)聯(lián)關(guān)系為【子列表關(guān)聯(lián)字段】【包含】【主列表-數(shù)據(jù)id】,比如:訂單明細(xì)表訂單-包含-訂單表數(shù)據(jù)id;如果子列表行數(shù)據(jù)中的關(guān)聯(lián)字段為單行文本組件或流水號組件,那此處關(guān)聯(lián)關(guān)系為【子列表關(guān)聯(lián)字段】【等于】【主列表字段】,比如:學(xué)生表班級ID-等于-班級表班級ID。
查詢條件:默認(rèn)的查詢條件,可設(shè)置不可編輯狀態(tài)
按鈕設(shè)置:可新增設(shè)置子列表頁底部按鈕,可配置按鈕邏輯引擎事件。設(shè)置底部按鈕后,勾選彈出頁面行數(shù)據(jù)的多選框再點擊底部按鈕,會保存多選框的選中狀態(tài)。
3、子列表行數(shù)據(jù)多選并修改處理方式:進(jìn)入按鈕邏輯引擎中,使用循環(huán)容器節(jié)點,循環(huán)容器節(jié)點中設(shè)置通過公式獲取勾選的行數(shù)據(jù)ID。此處獲取到的行數(shù)據(jù)ID是字符串?dāng)?shù)組,需要使用函數(shù)轉(zhuǎn)換為對象數(shù)組才能使用。
使用集合函數(shù)中的“ARRTOARROBJ”函數(shù),數(shù)組轉(zhuǎn)對象數(shù)組,比如:將["aaa","bbb","ccc","ddd"]轉(zhuǎn)換為對象數(shù)組,第二個參數(shù)為對象的鍵值。配置保存后,回到列表頁觸發(fā)一次底部按鈕。
回到邏輯引擎中,點擊觸發(fā)記錄回溯觸發(fā)的數(shù)據(jù)。
點擊循環(huán)容器節(jié)點中的結(jié)構(gòu)定義,然后點擊引用測試,自動解析傳入節(jié)點的數(shù)據(jù)。此處自動解析的參數(shù)名“key”為上一步函數(shù)中自己設(shè)置的參數(shù)。
點擊切換到循環(huán)畫布,在循環(huán)畫布中拖入要處理的節(jié)點,此處使用更新模型節(jié)點,循環(huán)根據(jù)對象數(shù)組更新每一行數(shù)據(jù)。
在線demo:https://frame.bctools.cn/
開源地址:https://gitee.com/software-minister/jvs