和以往的用友產品不同,yonsuite產品開發了低代碼平台,滿足客戶的個性化開發需求。🙃 它支持頁面設計,前端函數以及后端函數的編寫,后端函數分普通函數和API函數,API函數才可以讓前端調用。然后在函數中可以通過yonSQL進行查詢數據,對就是yonSql,他是平台新的sql規則,和數據庫SQL有點小差別,但不影響。功能整體還是比較強大的。
- 平台網址:https://yonsuite.diwork.com/#/ 還有開發者平台比賽,有興趣可以參與一下,在網站沒找到文檔···
http://tinper.org/mdf/docs#/wa0ing.html
如何進行二次開發?
- 登錄系統(點擊左上角風車,找到應用構建平台進行應用構建) 無法沒有那就是沒有權限
- 創建應用
- 創建實體
實體相當於數據庫表,枚舉相當於數據字典,查詢是用作設計報表,創建實體后才能創建頁面
- 創建頁面
創建頁面要基於相應的實體創建,實體時可以選擇父實體,界面就可以繪制主子表結構頁面
- 創建函數
- 使用函數
打開頁面設計設置對應的前端函數,注意前端控件只能設置前端函數
測試應用yonSQL查詢小工具
- 前端函數
主要實現功能獲取第一個輸入框的值,是一個yonsql,傳給后台執行sql,返回結果顯示到第二個輸入框中
cb.rest.invokeFunction (參數1:后台API函數調試ID;參數2:請求參數)
function (event) { var viewModel = this; var strSql= viewModel.get('item0sj').getValue(); cb.rest.invokeFunction("78645a2796ea481092c9a7b3ebf68655", {querySql:strSql}, function(err, res) { console.log(err); console.log(res.rst); if(err!==null){ cb.utils.alert('拉取數據異常,請聯系開發'); }else{ if(res.exception===undefined){ viewModel.get('item2qd').setValue(""+JSON.stringify(res.rst)); }else{ cb.utils.alert(res.exception); } } }); }
- 后端函數
后端函數的語法也是類似javascript的語法,這里主要實現功能就是講前台傳過來的sql進行數據庫查詢接口返回給前台
let AbstractAPIHandler = require('AbstractAPIHandler');
class MyAPIHandler extends AbstractAPIHandler {
execute(request){
var sql= request.querySql;
var rst = ObjectStore.queryByYonQL(sql);
return {"rst":rst,"request":request};
}
}
exports({"entryPoint":MyAPIHandler});
- viewModel.get('item0sj'),如何查看對應控件的id
- cb.rest.invokeFunction("78645a2796ea481092c9a7b3ebf68655",如何查看后端API函數調試id
- 調試界面