jxTMS web端的格式化顯示

2021-10-07 14:35:29 字數 1381 閱讀 4090

在前文講解web端的自動計算時,筆者從order模組中的web檔案中拷貝其自動計算的定義作為例子時,突然看到了乙個控制項的定義:

原因是在剛開始設計jxtms時,筆者非常看重資料字典的作用,所以當時定義的定義檔案中還有乙個專門用來定義程式中會用的資料的定義:alias檔案。該檔案所定義的資料就包含了該資料在web端的顯示格式的定義。

但後來筆者發現,用alias預定義資料的方式有些多此一舉,jxtms的程式設計模式是一人完成乙個模組中所有的設計、開發工作,其中就包括web檔案中定義web控制項,然後在capa.py檔案中定義相應的事件,然後通過web控制項所bind的資料名來直接操作控制項的輸入輸出。由於就是同乙個人來做這些事情,而且jxtms推崇的開發方法是動手做、做完改,充分發揮自己的低成本快速定製的優勢來快速迭代。所以在開始開發時會大量的調整整個設計,包括web介面設計和相應的操作邏輯處理,那麼這種情況下,如果還要增加有變動還得再去改alias定義,那就多了一步操作、大幅度降低了工作效率。

由於該功能是從alias檔案轉過來的,筆者就不想因此來調整web定義的語法了,同時如資料表列的定義也不是web控制項的定義,所以將該顯示格式的語法設計到了如下幾個地方:

#容器表

with 容器表名 row 行號 col 列名 顯示格式? web控制項定義

#資料表

with 資料表名 col 列名 列頭文字? 顯示格式? web控制項定義

with 資料表名 col 列名 列頭文字? 顯示格式? web屬性定義

顯示格式的定義語法為:

dispstyle=顯示格式字串
顯示格式字串的格式請參考:string-format-js​。所以上面所引用的實際折扣率的顯示格式:』%.2f』,會將自動計算出來的實際折扣率格式化為兩位小數點後值,形如:123.45。

注:前述所引實際折扣率控制項的定義中有兩個從沒有在任何介紹文章與線上程式設計手冊中說明過的屬性:datatype和descr。這兩個屬性,尤其是descr,和前述的《web控制項的一般定義》一文中,筆者對描述一節的說明存在衝突。這是由於,jxtms原本設計用來開發前後端都是同一人完成的,以實現低成本的高效開發。但筆者也在開篇的綜述中說過,jxtms的動態介面由於都是預定義的,所以難以在美學方面達到很高的水平,那麼對於某些對介面要求較高的專案來說,就必須使用靜態web介面了。而這就帶來了乙個嚴重的問題:前後端是不同人來開發,那就需要雙方協調一致。但筆者為了乙個人低成本快速的開發而把用於資料說明的alias檔案都給取消了。所以後來筆者在遇到需前後端配合時,就給web控制項的定義增加了這兩個屬性,然後就可以利用之前《效能測試》一文中提到的測試工具通過解析web檔案和op.py檔案,來自動生成兩個介面檔案:前後端互動用的資料說明檔案和前端呼叫後台的介面說明檔案。所以這兩個屬性本是用於為靜態web介面應用自動生成介面說明檔案的。大家在自己乙個人開發時,應予以刪除

幣值顯示格式化

9 15 標準i o庫並沒有提供一種機制,列印大整數時逗號進行分隔。在這個練習中,你需要編寫乙個程式,為美元數額的列印提供這個功能。函式把乙個數字字串 代表以美分為單位的金額 轉換為美元形式,如下面的例子所示 下面是函式的原型 void dollars char dest,char const sr...

時間的格式化顯示

時間的格式化顯示 system.datetime currenttime new system.datetime 1.1 取當前年月日時分秒 currenttime system.datetime.now 1.2 取當前年 int 年 currenttime.year 1.3 取當前月 int 月 ...

json串格式化顯示

json串直接儲存後,沒有格式的話字元連在一起,可讀性很差。下面2種方法輸出有格式的字串以便閱讀,如果用as3語言,推薦使用json.stringify帶格式化引數的方式 這個引數以前一直沒注意到 格式化json串顯示 public static function getformatjsonstrf...