這個(gè)低代碼報(bào)表開發(fā)平臺(tái),操作類似Excel,用好了不需要加班(低代碼開發(fā)平臺(tái)介紹)
現(xiàn)在低代碼開發(fā)平臺(tái)很火,能夠通過零代碼或少量代碼就可以快速創(chuàng)建應(yīng)用。
但是從實(shí)踐結(jié)果來看,完全的零代碼開發(fā)應(yīng)用是不可能的,機(jī)器替代人類智慧還需要很長的路要走。但是介于兩者之間的低代碼模式開發(fā)應(yīng)用是值得嘗試的,現(xiàn)在很多企業(yè)級(jí)應(yīng)用都是低代碼,甚至很多定制場景也不需要太多高深的代碼就能搞定。
就我從事的數(shù)據(jù)領(lǐng)域,報(bào)表開發(fā)這一項(xiàng)工作近十年來因?yàn)榈痛a平臺(tái)的出現(xiàn),有了很大的改觀。BI報(bào)表開發(fā)中一些復(fù)雜的邏輯可能只需要幾個(gè)公式或者幾句JS就能輕松搞定。從產(chǎn)品開發(fā)上來講,其本質(zhì)就是提效。一方面是對(duì)開發(fā)人員的提效,另一方面是對(duì)使用者的提效。
以往我們IT開發(fā)報(bào)表,一開始用Excel處理,后來寫PHP來開發(fā),再者用java的一些開源組件來開發(fā)。用代碼開發(fā)報(bào)表能很快的解決點(diǎn)對(duì)點(diǎn)的需求,但是作為長期工作,你要對(duì)接數(shù)據(jù)庫,還要收集數(shù)據(jù),做報(bào)表維護(hù),到后面基本就是堆人力寫代碼。
當(dāng)一項(xiàng)業(yè)務(wù)成熟之后,自然就會(huì)有將技術(shù)平民化的管理系統(tǒng)出現(xiàn),比如報(bào)表系統(tǒng)。我們?cè)诹銕啄甑臅r(shí)候就開始嘗試使用一些國外的BI報(bào)表系統(tǒng),比如水晶、BO,還嘗試了一些開源的jaspereport,birt。能減少代碼開發(fā)投入,自主開發(fā)報(bào)表。
隨著企業(yè)的發(fā)展和數(shù)據(jù)業(yè)務(wù)龐大,數(shù)據(jù)逐漸承載企業(yè)的管理業(yè)務(wù),很多需求比如實(shí)時(shí)風(fēng)險(xiǎn)監(jiān)控,各種經(jīng)營報(bào)表以及各種數(shù)據(jù)應(yīng)用(體現(xiàn)在報(bào)表和業(yè)務(wù)分析上),也逐漸有了數(shù)據(jù)、報(bào)表權(quán)限和數(shù)據(jù)填報(bào)流程。
這個(gè)時(shí)候就要從自身管理體系出發(fā),要求產(chǎn)品功能能夠符合企業(yè)的管理思想,然后逐漸開始使用符合一些流程上管理的平臺(tái)系統(tǒng)(國內(nèi)做這塊比較陳述),帆軟報(bào)表平臺(tái)FineReport。
在開發(fā)效率方面,F(xiàn)ineReport是一個(gè)通用的報(bào)表工具,報(bào)表開發(fā)、填報(bào)、可視化展示的需求基本都能滿足,涉及到一些業(yè)務(wù)的定制有接口,可以插件化的定制開發(fā)比如單點(diǎn)登錄OA。對(duì)于使用者,報(bào)表因?yàn)橛辛顺休d的平臺(tái),使用者比如業(yè)務(wù)和管理者只要登錄平臺(tái)系統(tǒng)就可以查看分析。
具體來看:
1、可視化SQL語句編輯面板
做報(bào)表要取數(shù),取數(shù)都是寫SQL,一般視復(fù)雜程度幾十到幾百行不等,更重要的是需要熟悉數(shù)據(jù)庫和表,不然你都不知道要取什么數(shù)。
FineReport低代碼的第一點(diǎn),就是有一個(gè)可視化SQL語句編輯面板,在與數(shù)據(jù)庫鏈接成功后能看到數(shù)據(jù)庫表和字段,然后拖拽數(shù)據(jù)表和字段到編輯頁面就可以生成SQL語句,避免一行一行寫,就像像一個(gè)內(nèi)置的navicat。能減少不少工作量。
2、可視化報(bào)表模板設(shè)計(jì)器
讀完庫取完數(shù)之后就是作報(bào)表。
FineReport的主面板就是表格模板設(shè)計(jì)器,表格式、功能操作、函數(shù)等都類似Excel,不同點(diǎn)在于Excel是對(duì)單個(gè)數(shù)據(jù)操作,這里是對(duì)數(shù)據(jù)字段操作,將需要的數(shù)據(jù)字段拖到表格中,再配以各種可視化的屬性設(shè)置。
設(shè)計(jì)器針對(duì)有三種報(bào)表設(shè)計(jì)模式:普通報(bào)表、聚合報(bào)表、決策報(bào)表。
普通報(bào)表模式最貼近Excel,用來做大部分報(bào)表包括基礎(chǔ)報(bào)表、中國式復(fù)雜報(bào)表,運(yùn)算上更多SHEET和跨SHEET計(jì)算,兼容EXCEL公式。
聚合報(bào)表模式用來做一些不規(guī)則的報(bào)表,像運(yùn)單表,一些保險(xiǎn)單之類的,這種報(bào)表要頻繁的合并、拆分單元格,工作極其繁瑣。
決策報(bào)表模式用來做可視化儀表板、駕駛艙、管理看板等,就像一個(gè)空白畫布,把各種可視化圖表拖拽到界面搭建儀表板。
3、參數(shù)查詢可視化設(shè)置
企業(yè)報(bào)表應(yīng)用,除了最簡單的展示類報(bào)表外,查詢報(bào)表往往用的最多,各部門各業(yè)務(wù)團(tuán)隊(duì)都要查數(shù)據(jù)查報(bào)表的需求,這就會(huì)用到查詢報(bào)表。之前代碼開發(fā)往往是賦一個(gè)參數(shù)去對(duì)應(yīng)數(shù)據(jù)表或字段,這就有個(gè)問題,參數(shù)多了不好管理,換一個(gè)人來迭代報(bào)表就要重新熟悉。
FineReport有可視化的參數(shù)設(shè)置界面,能夠零代碼定義參數(shù),綁定查詢控件,直接定義出查詢界面,使用者就通過界面輸入查詢條件,來顯示報(bào)表內(nèi)容。
控件類似Excel甚至更豐富,有文本、文本域、數(shù)字、密碼、按鈕復(fù)選框、復(fù)選框組、單選按鈕組、日期下拉框、下拉復(fù)選框、時(shí)間、多文件上傳列表、網(wǎng)頁框、下拉樹、表格樹和視圖樹等多種控件類型,支持預(yù)定義控件、自定義控件等。
4、駕駛艙可視化構(gòu)建
上文提過決策報(bào)表模式下可以做可視化儀表板、駕駛艙、管理看板。原理也是通過組件拖拽操作來快速制作組件式報(bào)表。這在以往代碼開發(fā)上,都是需要寫JS來調(diào)用前端可視化庫,后端鏈接數(shù)據(jù)。FineReport直接可視化操作,可以直接適應(yīng)屏幕大小和分辨率,設(shè)計(jì)布局和交互,方便許多。
5、移動(dòng)決策平臺(tái)編碼生成
移動(dòng)端是企業(yè)報(bào)表應(yīng)用的一大趨勢(shì),以往的開發(fā)需要PC端和移動(dòng)端分別開發(fā),為了適配公司APP的報(bào)表展示,我們還特地找了一個(gè)移動(dòng)開發(fā)同事,移動(dòng)端還分為安卓系統(tǒng)和IOS系統(tǒng),需要配三套不同的人馬。后來這個(gè)平臺(tái)能直接適配,零代碼操作,界面化配置、自動(dòng)打包,還可以實(shí)現(xiàn)自我版本管控集成方式。
另外還有一些其他低代碼開發(fā)報(bào)表的功能這里就不多贅述了。
可以看到,低代碼開發(fā)對(duì)于效率的提升,能力的解放是很明顯的,起碼在我熟知的數(shù)據(jù)領(lǐng)域,比如還有數(shù)據(jù)需求管理平臺(tái),指標(biāo)管理平臺(tái),數(shù)據(jù)治理平臺(tái)等。
一套優(yōu)秀的軟件離不開兩個(gè)核心要素:編程能力和業(yè)務(wù)知識(shí),這就要求優(yōu)秀的技術(shù)團(tuán)隊(duì)深刻理解業(yè)務(wù)或業(yè)務(wù)人員熟悉技術(shù)邊界。
世界上不存在完全相同的管理模式,即使是范疇很小的數(shù)據(jù)報(bào)表每個(gè)企業(yè)都有其獨(dú)特的需求,集中體現(xiàn)在幾個(gè)問題上:
1、需求難以確定,始終有新需求提出,不斷修改從而面目全非。
2、客觀條件的不確定性,報(bào)表開發(fā)是一個(gè)不斷的過程,期間人員流動(dòng)、資源調(diào)整等種種變化都會(huì)加大這個(gè)項(xiàng)目的成本,減低效率
所以平臺(tái)就需要滿足以下幾個(gè)需求:
1、靈活,不拘泥于業(yè)務(wù)(不同項(xiàng)目、業(yè)務(wù)領(lǐng)域)必須全部通吃。
2、快速,極快的功能實(shí)現(xiàn)速度。
3、穩(wěn)定,不挑食但要能全部消化。
我初覺這樣的系統(tǒng)似乎遙不可及,但我舉例的FineReport就是一個(gè)典型范例。
天下武功唯快不破,實(shí)現(xiàn)開發(fā)快、變動(dòng)快、維護(hù)快才能解決現(xiàn)有軟件開發(fā)的困境。
不過,使用低代碼/無代碼平臺(tái)也許需要的開發(fā)者更少了,但是對(duì)于人的要求卻更高了:一方面要對(duì)業(yè)務(wù)非常了解,一方面又要對(duì)數(shù)據(jù)和開發(fā)非常通透,最后要能把從需求到開發(fā)串聯(lián)起來。這對(duì)于我們這一行也是一種進(jìn)度,IT需要更熟悉業(yè)務(wù),需要更明確數(shù)據(jù)價(jià)值。
想獲得低代碼工具,看評(píng)論。