安訊報表生成器技術手冊_第1頁
安訊報表生成器技術手冊_第2頁
安訊報表生成器技術手冊_第3頁
安訊報表生成器技術手冊_第4頁
安訊報表生成器技術手冊_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.安訊報表生成器技術手冊目 錄1、安訊操作技巧及問題22、模版配置參數約定33、報表參數相關函數34、安訊報表生成器44.1生成器涉及表結構44.1.1模板配置信息表,表名: sec_model_config44.1.2模板參數表,表名: sec_model_params_config44.1.3生成報表配置表,表名: sec_report_dispatch44.1.4生成報表參數表,表名: sec_report_params54.2數據庫配置說明54.3自動調度配置54.3.1Spring中正確使用Quartz和CronExpression(觸發(fā)器)64.4axrgm.war包安裝說明:94

2、.5安訊報表生成器前臺使用說明94.5.1設計報表模板94.5.2配置報表模板94.5.3任務調度11自動調度管理114.5.4手動調度(該調度沒有前置條件,即無論生成的數據是否有都會跑)134.5.5手動報表時間參數說明155、使用生成器調用安訊模板155.1定義安訊模版(略)155.2前臺添加模板155.3配置前置條件和參數sql165.4模板生成xls文件175.4.1報表數據文件命名175.5自動跑數171、安訊操作技巧及問題1、 安訊安裝的問題安裝完畢后覆蓋備份中的文件到安裝目錄,要求安裝到c盤默認的目錄下,發(fā)現別的目錄老是不能用,原因不明可能是jdk、ora路徑問題。2、 安訊Jd

3、bc配置要求驅動程序類名稱:oracle.jdbc.OracleDriver連接url:jdbc:oracle:oci:actuate_rip如果本機沒有配置監(jiān)聽actuate_rip,請配置actuate_rip,對應ip:21.56.4.186,服務名dbreport3、 模版的使用:預先定義好一個模版,里面有數據庫聯接,數據查詢(空、時間、機構)。Svn上有模版可以使用4、 用安訊打開表格xls文件,直接粘貼到模版上繼續(xù)開發(fā),不用畫表格。5、 橫向可以合并單元格、縱向不要合并(否則查詢數據有時報錯)6、 group(Year Quarter, -Year -Quarter)多級分組、多級

4、排序的用法7、 初步判斷定義的數據查詢運行就會執(zhí)行(data沒引用的情況),所以沒有必要的查詢不要定義進去8、 使用offset可以簡化單元行列條件的書寫,可使單元格公式定義簡化,能用盡量使用。9、 對于分組求和使用sum(cells(a) a為分組所在行的別名。10、 使用parent完成多級分組求和,注意標簽的級別劃分11、 關于行號的寫法:#row( )-7&"." 注意:單元格風格 數字0有的時候不顯示字符要留意單元格格式12、 使用隱藏列完成計算和顯示數據#"= "&Q1:DKYE&" - "&

5、;Q_SY:DKYE13、 百分比的應用:#"= if( "&Q1:DKYE&" = 0 , 0 , "&Q1:BLJE&" / "&Q1:DKYE&")"14、 條件中使用like的方法:select(buscde like 0A*)注意要用*不是%!15、 在主子表顯示數據的設計中,盡管一個數據源都出來了數據;建議使用2個數據查詢分別處理不會造成數據沒有而顯示不全,比如機構、金額,機構應該使用字典,金額數據在關聯顯示就可以16、 查詢語句要指定列名。禁止在查詢中定

6、義如下語句:SELECT * FROM DUAL 此語句會出現下次打不開的情況提示,常規(guī)性錯誤,如果沒有備份就只能重新作了17、 做好一個#sheet之后預覽數據生成一個sheet表格,如果要新增一個表#sheet2切記不能在sheet中改名#sheet2,否則下次預覽會造成#sheet2丟失的情況,#sheet2就白做了,一定要插入一個新的工作表在改名#sheet2在繼續(xù)作就可以了,千萬別偷懶使用原來生成的sheet18、 2-1序號的實現方法,注意寫法#'=OFFSET('&col()&row()&',0,-2)' &'

7、;&"-"&'&'OFFSET('&col()&row()&',0,-1)'2、模板配置參數約定報表編號rep_num、(關鍵字) H-002301報表模板文件名rep_modle、(關鍵字):如:H-002301存貸款日報.vts模板文件路徑rep_modle_dir。如:E:WORK H-002301存貸款日報.vts參數類:1、時間(CENDAT):時間參數都定位到天,整型,即yyyymmdd,缺省20081231頻度:1位 FRE_REP 以下是頻度字段對應解釋 T -旬, M

8、-月, D -天,J -季, H -半年, Y -年 缺省“M”。2、機構號(ORGIDT ):符型 4位 缺省6243,(應該允許輸入值 和sql 語句)3、部門號(DEPNUM):字符型2位 ,缺省00 (應該允許輸入值 和sql 語句)4、匯總標記(SUMID):字符型1位 填寫4或者9 ,缺省9 (應該允許輸入值 和sql 語句)5、幣種(CURCDE) : 字符型 3位 缺省999 (應該允許輸入值 和sql 語句)參數1(FREE1): varchar(20) 缺省為空 (應該允許輸入值 和sql 語句)參數2(FREE2): varchar(20) 缺省為空 (應該允許輸入值 和

9、sql 語句)參數3(FREE3): varchar(20) 缺省為空 (應該允許輸入值 和sql 語句)3、報表參數相關函數返回上月最后一天的整數SELECT TO_NUMBER(TO_CHAR(LAST_DAY(ADD_MONTHS(TO_DATE(TO_CHAR(20081231),'YYYY.MM.DD'),- 1),'YYYYMMDD')FROM DUAL;返回上年年底整數SELECT TO_NUMBER(TO_CHAR(TO_NUMBER(SUBSTR(TO_CHAR(20081231),1,4) - 1)|'1231')FROM D

10、UAL;返回去年同期整數SELECT TO_NUMBER(TO_CHAR(LAST_DAY(TO_DATE(TO_CHAR(TO_NUMBER(SUBSTR(TO_CHAR(20081231),1,4) - 1) | SUBSTR(TO_CHAR(20081231),5,2)|'01','YYYY.MM.DD'),'YYYYMMDD')FROM DUAL;返回上日日期的整數SELECT TO_NUMBER(TO_CHAR(TO_DATE(TO_CHAR(20081231),'YYYY.MM.DD') - 1,'YYYYMM

11、DD')FROM DUAL;合并單元格(標題)會造成錯誤!使用系統(tǒng)的函數P_TOOLS.get_date('jm',20080911)上月末sym,上年末 'snm',去年同期 'qntq',年初 'nc',年底 'nd,月初 'yc,月底 'ym',當前季度 'jd',季末 'jm4、安訊報表生成器4.1生成器涉及表結構4.1.1模板配置信息表,表名: sec_model_config字段名說明示例ID主鍵1REP_NUM報表編號,不能為空H-002301REP_M

12、ODEL模板中文描述安訊模版1REP_MODEL_DIR模板絕對路徑,不能為空D:WorkAXRGMreportinput安訊模版1.vtsdispatch_frequency報表頻度參見頻度說明START_DATE生效日期,目前沒用END_DATE失效日期,目前沒用UPDATE_DATE更新日期,目前沒用UPDATE_NAME更新人,目前沒用4.1.2模板參數表,表名: sec_model_params_config字段名說明示例ID主鍵1MODEL_PARAM_NAME參數名稱,唯一,不能為空ORGIDTDEFAULT_VALUE默認值6243VALUE_EXPLAIN參數說明,目前沒用機

13、構編號MODEL_CONFIG_ID外鍵,指向sec_model_config表的主鍵14.1.3生成報表配置表,表名: sec_report_dispatch字段名說明示例ID主鍵1DISPATCH_FREQUENCY調度頻度,目前刪除不用DISPATCH_TIME調度時間WED-2009-03-17-15-10-00MODEL_CONFIG_ID外鍵,指向sec_model_config表的主鍵,調度所使用的模板ID1DISPATCH_DIR此生成的報表輸出路徑,不能為空D:WorkAXRGMreportoutputLAST_DISPATCH_TIME最后一次執(zhí)行時間WED-2009-03

14、-17-15-10-00IS_RUN是否跑,不能為空,0代表不跑,1代表跑1TABLE前置條件設置默認SELECT 1 AS CT FROM DUAL4.1.4生成報表參數表,表名: sec_report_params字段名說明示例ID主鍵1VALUE參數值,不能為空6243VALUE_TYPE參數類型,0代表數值,1代表SQL語句0MODEL_PARAMS_CONFIG_ID外鍵,指向sec_model_params_config表的主鍵1REPORT_DISPATCH_ID外鍵,指向sec_report_dispatch表的主鍵14.2數據庫配置說明所有表都不需要手工創(chuàng)建,只需改動axrg

15、mWEB-INFclasses hibernate.cfg.xml文件中的數據庫連接url,username,password,啟動tomcat后自動會在數據庫中創(chuàng)建相應的表<property name="hibernate.connection.url">jdbc:oracle:thin:21.56.4.186:1521:dbreport</property><property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriv

16、er</property><property name="hibernate.connection.username">report</property><property name="hibernate.connection.password">chrdw</property>4.3自動調度配置請手動更改axrgmWEB-INFclassesapplicationContext-beans.xml文件中的cronExpression表達式的值,此值目前版本相當于代替調度頻度。 相關的表達式寫法

17、,請查詢quartz框架的cronExpression表達式的寫法。<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <ref bean="autoReportTask" /> </property> <property name="cronExpression"&g

18、t; <!- 關鍵在配置此表達式,此表達式表示每隔60秒鐘調用一次 -> <value>0/60 * * * * ?</value> </property> </bean>4.3.1Spring中正確使用Quartz和CronExpression(觸發(fā)器)一個Cron-表達式是一個由六至七個字段組成由空格分隔的字符串,其中6個字段是必須的而一個是可選的,如下: 字段名允許的值允許的特殊字符秒0-59, - * /分0-59, - * /小時0-23, - * /日1-31, - * ? / L W C月1-12 or JAN-DEC,

19、 - * /周幾1-7 or SUN-SAT, - * ? / L C #年 (可選字段)empty, 1970-2099, - * /'*' 字符可以用于所有字段,在“分”字段中設為"*"表示"每一分鐘"的含義。'?' 字符可以用在“日”和“周幾”字段. 它用來指定 '不明確的值'. 這在你需要指定這兩個字段中的某一個值而不是另外一個的時候會被用到。在后面的例子中可以看到其含義。'-' 字符被用來指定一個值的范圍,比如在“小時”字段中設為"10-12"表示"1

20、0點到12點".',' 字符指定數個值。比如在“周幾”字段中設為"MON,WED,FRI"表示"the days Monday, Wednesday, and Friday".'/' 字符用來指定一個值的的增加幅度. 比如在“秒”字段中設置為"0/15"表示"第0, 15, 30, 和 45秒"。而 "5/15"則表示"第5, 20, 35, 和 50". 在'/'前加"*"字符相當于指定從0秒開始

21、. 每個字段都有一系列可以開始或結束的數值。對于“秒”和“分”字段來說,其數值范圍為0到59,對于“小時”字段來說其為0到23, 對于“日”字段來說為0到31, 而對于“月”字段來說為1到12。"/"字段僅僅只是幫助你在允許的數值范圍內從開始"第n"的值。 因此 對于“月”字段來說"7/6"只是表示7月被開啟而不是“每六個月”, 請注意其中微妙的差別。'L'字符可用在“日”和“周幾”這兩 個字段。它是"last"的縮寫, 但是在這兩個字段中有不同的含義。例如,“日”字段中的"L"

22、表示"一個月中的最后一天" 對于一月就是31號對于二月來說就是28號(非閏年)。而在“周幾”字段中, 它簡單的表示"7" or "SAT",但是如果在“周幾”字段中使用時跟在某個數字之后, 它表示"該月最后一個星期×" 比如"6L"表示"該月最后一個周五"。當使用'L'選項時,指定確定的列表或者范圍非常重要,否則你會被結果搞糊涂的。'W' 可用于“日”字段。用來指定歷給定日期最近的工作日(周一到周五) 。比如你將“日”字段設為&quo

23、t;15W",意為: "離該月15號最近的工作日"。因此如果15號為周六,觸發(fā)器會在14號即周五調用。如果15號為周日, 觸發(fā)器會在16號也就是周一觸發(fā)。如果15號為周二,那么當天就會觸發(fā)。然而如果你將“日”字段設為"1W", 而一號又是周六, 觸發(fā)器會于下周一也就是當月的3號觸發(fā),因為它不會越過當月的值的范圍邊界。'W'字符只能用于“日”字段的值為單獨的一天而不是一系列值的時候。'L'和'W'可以組合用于“日”字段表示為'LW',意為"該月最后一個工作日"。&

24、#39;#' 字符可用于“周幾”字段。該字符表示“該月第幾個周×”,比如"6#3"表示該月第三個周五( 6表示周五而"#3"該月第三個)。再比如: "2#1" = 表示該月第一個周一而 "4#5" = 該月第五個周三。注意如果你指定"#5"該月沒有第五個“周×”,該月是不會觸發(fā)的。'C' 字符可用于“日”和“周幾”字段,它是"calendar"的縮寫。 它表示為基于相關的日歷所計算出的值(如果有的話)。如果沒有關聯的日歷, 那它等同

25、于包含全部日歷。“日”字段值為"5C"表示"日歷中的第一天或者5號以后",“周幾”字段值為"1C"則表示"日歷中的第一天或者周日以后"。對于“月份”字段和“周幾”字段來說合法的字符都不是大小寫敏感的。下面是一些完整的例子: 表達式含義"0 0 12 * * ?"每天中午十二點觸發(fā)"0 15 10 ? * *"每天早上10:15觸發(fā)"0 15 10 * * ?"每天早上10:15觸發(fā)"0 15 10 * * ? *"每天早上10:15觸發(fā)

26、"0 15 10 * * ? 2005"2005年的每天早上10:15觸發(fā)"0 * 14 * * ?"每天從下午2點開始到2點59分每分鐘一次觸發(fā)"0 0/5 14 * * ?"每天從下午2點開始到2:55分結束每5分鐘一次觸發(fā)"0 0/5 14,18 * * ?"每天的下午2點至2:55和6點至6點55分兩個時間段內每5分鐘一次觸發(fā)"0 0-5 14 * * ?"每天14:00至14:05每分鐘一次觸發(fā)"0 10,44 14 ? 3 WED"三月的每周三的14:10和14:

27、44觸發(fā)"0 15 10 ? * MON-FRI"每個周一、周二、周三、周四、周五的10:15觸發(fā)"0 15 10 15 * ?"每月15號的10:15觸發(fā)"0 15 10 L * ?"每月的最后一天的10:15觸發(fā)"0 15 10 ? * 6L"每月最后一個周五的10:15觸發(fā)"0 15 10 ? * 6L"每月最后一個周五的10:15觸發(fā)"0 15 10 ? * 6L 2002-2005"2002年至2005年的每月最后一個周五的10:15觸發(fā)"0 15 10

28、? * 6#3"每月的第三個周五的10:15觸發(fā)4.4axrgm.war包安裝說明: 1.將axrgm目錄中的所有文件拷貝到tomcat_home webappsROOT中。 2.設置好oracle_home 3.請使用tomcat_home binstartup.bat進行啟動服務器。用myEclipse啟動的時候請先按照此步驟:1、 windowàPreferencesàServersàTomcatàTomcat5.xàJDK在中 輸入-Djava.library.path=D:oracleora92bin2、 window

29、24;PreferencesàServersàTomcatàTomcat5.xàPaths 在中加入此Parch4.5安訊報表生成器前臺使用說明4.5.1設計報表模板參見安訊報表生成器報表設計,此處略4.5.2配置報表模板 1.添加模板進入頁面后點擊模板管理.->點擊添加模板輸入正確的模板相關信息其中模板文件請選擇相關的兩個模板文件上傳到服務器的D:WorkUSERUPLOAD文件夾下.該文件夾會自動創(chuàng)建.生成的文件名為:原文件名+年月日時分秒2.修改模板輸入需要修改的模板信息即可,模板文件處留空則不更新模板,否則重新上傳.新上傳的模板不會覆蓋以前

30、的模板.4.5.3任務調度 自動調度管理1.添加自動調度點擊添加調度首先請選擇相關模板.在選擇下的園點雙擊即可進入調度參數設置界面.輸入調度相關參數.2.修改調度點擊修改.修改調度參數即可3.自動調度測試點擊測試可以生成xls文件4.5.4手動調度(該調度沒有前置條件,即無論生成的數據是否有都會跑)點擊手動調度,進入模板選擇界面選擇需要手動調度的模板,可多選.點擊確定進入起始結束時間設置按照相應的格式輸入正確的格式即可(相應的時間參數生成規(guī)則請看上次給你的文檔.)點擊確定進入相應所選模板參數設置界面這里沒有該模板的時間參數設置,因為前面已經設置.設置相應的參數值點擊確定即可.點擊確定之后請稍等

31、.前臺到后臺取生成信息的頻率為5秒取一次4.5.5手動報表時間參數說明時間輸入: /比如輸入20090101-200905020/則更改為20090101-200904011年報: /比如輸入20051112-20081022/則篩選出20051231,20061231,20071231月報:/比如輸入20051101-20060201/篩選出 20051130,20051231,20060131季報:/比如輸入20071010-200801111/則篩選出20071231,20080331,20080630,20080930日報:/比如輸入20071111-20071115/則篩選出20071111,20071112,20071113,20071114周報: /比如輸入20090324-200904011 /則篩選出20090329,200904005旬報:/比如輸入20090220-20090411 /則篩選出20090228,200901105、使用生成器調用安訊模板5.1定義安訊模版(略)5.2前臺添加模板添加并上傳模板(進入模板管理,按右上角的添加模板,彈出窗口如下)5.3配置前置條件和參數sql添加sql完成報表跑數的條件前置條件函數說明和用法:SELECT P_TOOLS.F_ACTUATE('

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論