1. xml publisher概念
(1).資料邏輯
(2).報表布局---->xml publisher---->報表輸出
(3).翻譯轉化
2. 開發xml publisher流程報表
(1). 設計資料原始檔---->註冊資料原始檔
(2). 設計rtf模板---->註冊rtf模板
(3). 註冊concurrent program
3. 在rtf中需要定義的兩類內容
(1). 資料域
(2). 迴圈控制標記
4. 組
<?for-each:xxname ?>...
5. 頁首頁尾
<?start:body ?>...<?end:body ?>
6. 巢狀模板
(1). 定義: <?template:xxname ?>...<?end template?>
(2). 呼叫: <?call:xxname ?>
7. 格式化工具
(1). 分頁符:若使用ctrl+enter會導致最後一頁空白,所以最好使用xml publisher語句定義分頁符<?split-by-page-break ?>
(2). 頁碼:
i. 可使用word中自帶的頁碼工具
ii.對頁碼使用要求較高
<?initial-page-number: $pagestart?>, $pagestart為所引用的xml data引數
8. 核取方塊
<?xxpopulation>1000?>
9.條件格式化
(1). if語句
(2). if-then-else語句
(3). choose語句
(4). 格式化列
(5). 格式化行
(6). 格式化單元格
9-1. if語句
(1). 換行<?if:xxcondition ?>...<?end if?>
(2). 不換行<?if @inlines:xxcondition?>...<?end if?>
判斷不為空:
<?if @inlines:name_1=''>...<?end if?>
9-2. if-then-else語句
<?xdofx:if xxamount>1000 then 'xxhigher'
else if xxount<1000 then 'xxlower'
else 'equal'
end if?>
9-3. choose語句
<?choose: ?>
<?when:xxflag1 ='y'?>...<?end when?>
<?when:xxflag2 ='n'?>...<?end when?>
<?otherwise ?>...<?end otherwise?>
<?end choose?>
9-4. 格式化列
根據條件顯示隱藏列:<?if @column:xxcondition?>...<?end if>
<?if @column: /items/@type="private"?>...<?end if?>
9-5. 格式化行
當滿足條件時加亮行:
<?if @row:condition?>
lightgray
<?end if>
10. 行的截斷和換行
no-warp -->禁止換行
hidden -->多餘截斷
11. 頁的相關問題
(1). 資料組分頁
i. section寫法
<?for-each @section:xxgroup?>
ii.split-by-page-break寫法
<?for-each:xxgroup ?>...<?split-by-page-break: ?><?end for-each?>
(2). 條件分頁和固定行
i. 條件分行
<?if:currency_code ="cny"?>
page
<?end if?>
ii. 固定行數
<?if:position () mod 10 =0?>
page
<?end if?>
12. 頁合計值
(1). 計算合計值:<?add-page-total ; 'debit-credit'?>
(2). 顯示合計值:<?show-page-total:net ; $#,##0.00; ($#,##0.00)'?>
(3). 連續合計
13. 排序
<?sort:xxelement1 ?><?sort:xxelement2 ?>
14. 變數
(1). 初始化變數:<?xdoxslt:set_variable ($_xdoctx,'xxname',xxvalue)?>
(2). 獲取變數:<?xdoxslt:get_variable ($_xdoctx,'xxname')?>
(3). 更新變數:<?xdoxslt:set_variable ($_xdoctx,'xxname',xdoxslt:get_variable($_xdoctx,'xxname'+1))?>
15. 數字格式化
(1). word自帶格式化方式
(2). oracle format-number功能:<?format-number:xxfile ; '999g999g99'?>
例子:<?if: index_id_28 mod 2=0?><?format-number:prior_charge_24 ;'#,##0.00'?>%<?end if?>
<?if: index_id_28 mod 2=1 and index_id_28 !=11 ?><?format-number:prior_charge_24 ;'#,##0.00'?><?end if?>
<?if:index_id_28 =11?><?format-number:prior_charge_24 ;'#,##0.00'?>%<?end if?>
16. 日期格式化
(1). word自帶格式化方式
(2). oracle format-date功能1:<?format-date:xxfile ; 'format_mask'?>
(3). oracle format-date功能2:<?format-date:hiredate ; 'yyyy--mm-dd'?>
17. 貨幣格式化
oracle format-currency:<?format-currency:xxcur ; font?>
18. sql擴充套件語句<?xdofx:... ?>
封基和開基的異同
封閉式 簡稱 封基 學名叫 契約型封閉式 開放式 簡稱 開基 學名叫 契約型開放式 相同點大致有 一 都是 管理公司的集合理財產品 二 都屬於面向社會公開募集 的範疇 三 都要執行 法 和規範的會計準則 四 都要按照資產淨值提取管理費 託管費 五 目前 分紅都不需要交納個人所得稅 歡迎補充 不同點有...
Shape Basedmatching的基本流程
1 確定出roi的矩形區域 2 從roi區域提取出影象 可以先進行影象處理 3 建立模板 create shape model 金字塔級數 由numlevels 指定 值越大則 找到物體的時間 越少 anglestart 和angleextent 決定可能的旋轉範圍,anglestep指定角度範圍搜...
ThreadPoolExecutor 的基本原理
先說下 threadpoolexecutor 的基本原理 1.當提交乙個任務時,如果執行緒數沒有達到coresize,那麼就會新建乙個執行緒,並繫結該任務,直到數量到達coresize前都不會重用之前的執行緒 2.到達後,提交的任務都會放到乙個等待佇列中進行等待,執行緒池中的執行緒會使用take 阻...