用FineReport報表系統構建資金監管平台

leohope

一、應用背景
計算機的應用已經滲透到日常工作的許多方面,無論是其自身還是所發揮的作用,計算機都標誌著一種高科技,使工作高效率和高水平。為了能更方便,更輕鬆,更好的管理,信息化建設正在日益發展壯大,更加完善。2007年11月,財政部黨組明確提出了「一體化建設」指導思想,要求做到管理一體化、業務一體化和技術一體化。近兩年來,始終堅持貫徹落實一體化建設指導思想,不斷加快建設步伐,信息化建設正逐步由「分散」走向「統一」,取得明顯進展。
二、工具
資金監管系統採用PHP網站架構,iframe方式嵌入了,使用FinReport6.5.3版本報表軟體,連接相關業務系統ORACLE資料庫,製作出圖形分析和報表分析,最終通過appserv訪問資金監管系統。
三、數據源
資金監管系統來源數據來於相關多個業務系統ORACLE資料庫。
(一)總體發放分析
FFDW表,是發放單位表,欄位分為,單位代碼和單位名稱。

FFLX表,是發放類型表,欄位分為,發放類型代碼、發放類型名稱、單位代碼、備註。

FFXM表,是發放項目表,欄位為,發放項目代碼、發放項目名稱、發放類型、發放單位代碼、預警金額、備註、項目備註。

HM_AREA表,是單位表,欄位分為,區域代碼和區域名稱。

HM_DATA表,是發生數據表,欄位分為,ID號、部門代碼、發放項目代碼、身份證號、姓名、區域代碼、賬號 、金額、日期、備註、發放日期。

RYXX表,是人員信息表,欄位分為,身份證號、姓名、性別、聯繫地址、聯繫電話、狀態、日期 、單位代碼。

(二)財務報表分析
Sjzw_dw表,是財務單位表,欄位分為單位代碼和單位名稱。

Sjzw_dwkm表,是單位科目表,欄位分為單位代碼,科目代碼,科目名稱。

Sjzw_pz表,是憑證表,欄位分為單位代碼、憑證ID、憑證日期、憑證號、憑證類型、用途、科目代碼、借方金額、貸方金額、審核員、財務主管、制單員、記賬員,記賬日期。

四、需求分析
對全區資金進行資金監管,包括區、鎮、街道財政和行政事業單位的所有資金收入和支出過程,銀行賬戶資金變動狀況進行實時監督、管理、分析,並通過各類圖表等方式實時展示反映、預警控制和實時互動交流分析管理。
各類報表可以自由組合并預測
每張報表在特定的條件下可以由指定用戶自由組合、定義組成相關的報表,並有多種查詢方式,同時需要有預測分析功能。
各類報表需要有預警功能
每張報表都需要有預警功能,而預警值可以由用戶自行定義,在預警範圍內有數據為正常情況而無需做任何動作時,可以以打標記的方式讓這條數據不出現在預警中。
各類報表的靈活性
每張報表的圖形分析要直觀明了,聯動性強,數據報表需要逐層挖掘至最底層明細數據。報表的操作靈活性要強,需要可以如EXCEL一樣可以隨意指定對齊方式、文本數字格式、多列排序,便於所有業務管理人員操作。
(一)資金總體發放分析
資金總體發放圖形分析分三塊統計圖,第一部分為部門發放比例,點擊部委傳參聯動第二部分部門發放類型比例,點擊發放類型傳參聯動第三部分部門發放類型的趨勢。
資金總體發放報表分析也分為三塊,第一部分是發放匯總總表,以交叉報表形式展現,橫向為部門,縱向為區域,金額以部門和區域交叉顯示。橫向縱向每個金額都可以點擊,傳不同條件展現出不同數據報表。第二部分是定位查詢,輸入框輸入信息點擊查詢,得到關於當前輸入框內信息的報表。第三部分為預警分析報表,每張報表設置好預警值,可以查看預警信息。
(二)賬務分析(資產負債表)
資產一般是按各種資產變化先後順序逐一列在表的左方,反映單位所有的各項財產、物資、債權和權利;所有的負債和所有者權益則逐一列在表的右方。負債一般列於右上方分別反映各種長期和短期負債的項目,業主權益列在右下方,反映業主的資本和盈餘。左右兩方的數額相等。資產負債表在製作過程中分為2類:第一類為有規則資產負債表,取數據全部取每一個一級科目的金額,一個一個科目單列在資產負債表上;第二類為無規律資產負債表,取數據全部取每一個一級科目的金額,單個科目或多個科目相加列在資產負債表上。
五、數據分析
(一)資金總體發放分析
資金總體發放分析的內容:資金髮放分析、資金髮放對比分析、資金髮放預警分析。
資金總體發放分析的目的:揭示單位發放每個發放類型的內涵、了解單位發放資金變動情況及變動原因、調整發放異常數據、為下一年預算做調整。
(二)賬務分析(資產負債表)
資產負債表分析的內容:資產負債表水平分析、資產負債表垂直分析、資產負債表項目分析。
資產負債表分析的目的:揭示資產負債表及相關項目的內涵、了解單位財務狀況的變動情況及變動原因、評價單位會計對單位收支狀況的反映程度、評價單位的會計政策、修正資產負債表的數據。
六、報表製作
①傳統的圖形分析及報表製作方法
難點1、圖形界面中無法製作中文字定位查詢,輸入中文字系統不識別。
難點2、圖形界面中表格無法自定義合并單元格居左、居中、居右。
難點3、圖形界面中統計圖分析模塊單獨最大化,數據多時,數據緊湊無法看清楚數據。
難點4、報表中無法行列凍結顯示,數據橫向和縱向數據多時,向下向上無法知道當前單元格欄位意思。
難點5、報表中定位查詢無法在整張報表中定位查詢,只能查詢定位到當前頁報表數據。
難點6、報表中無法屏蔽無意義數據,報表數據為零的條目屏蔽顯示難;
難點7、報表中無法在線列印,只能導出EXCL再列印。
難點8、報表中數據無法自動刷新,每次只能人工手動刷新數據。
難點9、通過SQL語句查詢出數據,無法再報表內自定義取數和排列,無法製作無規則報表(自定義報表)。
②利用FineReport報表工具
1、新建一個報表模板,模板內新建一個參數,在參數設計中,按鈕控制項事件中添加定位查詢後報表超鏈接代碼

連接FineReport報表JS腳本中添加代碼:
var XM = this.options.form.getWidgetByName("XM").getValue();
window.open("/WorkSpace1/ReportServer?reportlet=[60e0][6c11]/[5d07][660e][53bf][60e0][6c11][8d44][91d1][603b][4f53][53d1][653e][5206][6790][ff08][4e2a][4eba][67e5][8be2][62a5][8868][ff09].cpt&xm="+FR.cjkEncode(XM));
如果連接第三方報表JS腳本可以修改編碼轉換方式。

2、表格每一列可以任意合并單元格,居左、居中、居右,還可以調整不同格式。

3、圖形分析界面模板中,每個模塊都用網頁框控制項嵌入,如第一部分圖形分析製作2份,一份嵌入在網頁框控制項中,另一份放大版通過超鏈接寫在最大化圖片上面。

4、報表凍結設置,文件—頁面設置—其他中輸入重複標題起始行和重複標題結束行,再凍結重複標題結束行打鉤。

5、FineReport報表查詢過濾,針對當前報表所有數據進行查詢過濾,不存在無法查詢過濾翻頁數據。
6、報表中屏蔽無意義數據,在需要屏蔽無意義數據關鍵單元格中,右擊條件屬性,添加條件屬性,增加行高屬性,高度為0,輸入屏蔽無意義數據條件。

7、FineReport報表含多種列印方式,其中FLASH列印模式操作最為方便簡潔。


8、FineReport報表每次打開都是最新數據,打開FR報表時,實時刷新當前報表中數據集中的SQL語句,得到最新數據。
9、製作無規律資產負債表,資產負債表分2類數據資產類和負債類,新建2個數據集,一個為資產類科目借方減去貸的數據,另一個為負債科目貸方減去借方的數據。
數據集中唯一值取數用公式replace(UNIQUEARRAY(數據集名稱select(欄位名)),",","")如:月份、單位名稱、單位負責人、財務主管、制單人、審核員都可以用此公式取數據。
資產負債表取無規律值通過用公式=MAP(符合條件的值, "數據集名稱", "符合條件的列數", "取值的列數")如:取科目「應收在院病人醫藥費」的年初數,公式輸入=MAP(111, "科目1-5", "1", "3"),公式表示取數據集「科目1-5」中第一列值等於111對應的第三列的值。多個科目合計數可以使用公式=MAP(符合條件的值, "數據集名稱", "符合條件的列數", "取值的列數") +MAP(符合條件的值, "數據集名稱", "符合條件的列數", "取值的列數"),如:去科目「貨幣資金」的年初數,輸入公式=MAP(101, "科目1-5", "1", "3")+MAP(102, "科目1-5", "1", "3")+MAP(109, "科目1-5", "1", "3"),公式表示取數據集「科目1-5」第一列值等於101、102、109對應的第三列的值的合計數。

10、在報表頁面設置,其他中報表設置居中對齊,設置凍結重複行,目前版本設置凍結後報表分頁預覽無法居中顯示,通過在報表WEB屬性中添加JS代碼彌補此問題使用以下方法,但還存在缺陷,WEB預覽報表時看不到上下滾動條和在數據量多網速慢的情況下,系統先刷新了數據在最大化,無法完成居中效果。

在報表WEB屬性,分頁預覽報表中使用默認工具欄,添加「起始載入」在JS腳本中輸入
setTimeout(‘top.moveTo(0,0)’,5);
setTimeout(‘top.resizeTo(screen.availWidth,screen.availHeight)’,5);
此腳本打開報表起最大化作用;
再添加「載入結束」在JS腳本中輸入
varslmargin=($(‘.content-container’).width()-$(‘.pageContentDIV div:first-child’).width())/2
if (slmargin>0) $(‘.content-container’).css(‘margin-left’,slmargin);
此腳本彌補報表凍結後無法居中的缺陷。

七、成果展示
(一)資金總體發放圖形分析

「資金總體發放分析」點擊「點擊查看明細表」得到「資金髮放匯總表」,數據以部門橫向擴展顯示,以區域縱向擴展顯示以交叉表形勢匯總數據,橫向縱向交叉金額數據可以點擊,傳相關條件可以得到更明細數據。

「資金髮放匯總表」點擊部門匯總合計金額,得到「部門資金髮放匯總表」,數據以資金髮放類型橫向擴展顯示,以區域縱向擴展顯示以交叉表形勢匯總數據,橫向縱向交叉金額數據可以點擊,傳相關條件可以得到更明細數據。

「部門資金髮放匯總表」點擊資金髮放類型匯總合計金額,得到「資金髮放類型資金髮放明細表」,數據以月份橫向擴展顯示,區域、姓名、身份證、地址以列表縱向擴展顯示以交叉表形勢匯總數據。區域以分組顯示,能方便查看某區域有多少人信息,報表添加了統計行數功能,能明確數量的多與少。

「資金總體發放分析」點擊「10天內到期」得到符合當前報表條件報表。

「資金總體發放分析」點擊「金額大於10萬」得到符合當前報表條件報表。

「資金總體發放分析」點擊「金額大於等於1萬小於10萬」得到符合當前報表條件報表。

「資金總體發放分析」點擊「享受兩項以上惠民政策」得到符合當前報表條件報表。

點擊身份證,得到此身份證的詳細明細發放數據。

(二)賬務分析(資產負債表)
有規則資產負債表,同一張報表傳不同單位,默認當前月日期顯示數據。
有規則資產負債表單位1

有規則資產負債表單位2

無規則資產負債表(自定義報表),默認當前月日期顯示數據。

FineReport報表免費下載——零編碼做報表、多維圖表、多源填報、許可權管理,完美兼容excel。官網:http://www.finereport.com/tw/

原文網址:https://t17.techbang.com/topics/33962-using-finereport-report-system-of-regulatory-capital-platform?page=1