一ã€äؓ什么是jasperreport
很简å•两点:
    åQ‘ å…è´¹
    åQ’ 在大多数开æºäñ”å“䏿œ€èƒ½æ»¡‘Ïxœ¬äº?å…¬å¸çš„需求.
   如果è¦ä¸€å¥è¯æ€È»“那么ž®±æ˜¯ "适刞®±å¥½!" åQŒå…¶‹Æ¡å†æƒÏx’一å?其实jasperreportå¯ä»¥åšå¾—更好åQŒåªæ˜¯ç¼ºž®‘大家去å‘现ã€?
在erp软äšgå¼€å‘ä¸ä¸€å¥—强大易用的报表工具˜q˜æ˜¯ç›¸å½“é‡è¦çš„地ä½ï¼Œåœ¨è¿™é‡Œæˆ‘åªé’ˆå¯¹ä¸€äº›æ—¥å¸æ€¸šåŠ¡æŠ¥è¡¨ï¼Ž
jasperreport + ireport 报表套装在普通的报表ä¸å·²åšå¾—很ä¸é”™ï¼š‹¹æ°´è´¦å¼çš„,分组报表都å¯ä»¥è½»æ‘Ö®žçŽ?在这里æå‡ºçš„æ˜¯ä¸€äº›ç›¸å¯¹ç‰¹åˆ«ä»¥åŠå°‘用到的报表设计问题.
当å‰ç‰ˆæœ¬ : jasperreport 1.1.0
ireport : 0.5.2
二ã€é—®é¢˜ä¸Žè§£å†³
1.æ“作
åˆç”¨ireport 设计报表åQˆç‰¹åˆ«æ˜¯æ—©æœŸçš„版本)感觉˜q˜æ˜¯æ¯”较原始åQŒç›¸å¯¹äºŽbirt ¾cÖM¼¼äºŽåœ¨ Dreamweaverä¸ç”»table å¼çš„设计˜q˜æ˜¯æœ‰ç‚¹å·®è·åQŽä½†æ–°ç‰ˆæœ?0.5.2)ä¸ä¹Ÿæœ‰ä¸ž®çš„æ”¹å–„åQŒå¢žåŠ äº†å¾ˆå¤šå¿«é€Ÿå¯¹é½ï¼Œæ ¼å¼åŒ–的工具æ 以åŠå¿«æäh“作方å¼ï¼Žé€šè¿‡¾l“刘q™äº›æ“作˜q˜ç®—是方便了ä¸å°‘åQ?BR>
2.分页
刚接触jasper report åQŒæ— 论是看其官方的example˜q˜æ˜¯è‡ªå·±åŠ¨æ‰‹è®¾è®¡æŠ¥è¡¨, html view æ€È»™äººå¾ˆæ·Þqš„å°è±¡åQ?怎么å—体那么ž®ï¼Œè€Œä¸”实际打å°ä¸€ä¸‹ï¼Œåˆ†é¡µåŠŸèƒ½òq¶æ²¡çœŸæ£å®žçް"
¾l过客户一轮的抗义åQŒæœ€¾lˆè¿˜æ˜¯ä¸‹å®šå†³å¿ƒåŽ»ä¿®è¡¥ä¸€ä¸‹ï¼Œ
  其实jasper report 原熘q˜æ˜¯æŒºç®€å•:
  å®ƒé»˜è®¤çš„åˆ†é¡µæ–¹å¼æ˜¯èƒ½˜q‡ä¸€è½®çš„高度计算åQŒå†ç”¨ä¸¤ä¸?lt;br>ž®×ƒ»¥ä¸ÞZº†äº‹äº†åQ?/P>
<table>
<tr>
<td>
<table>
</table>
<br/> <!--两个bråˆ†è¡Œæ ‡è®°-->
<br/>
<table>
</table>
</td>
</tr>
</table>
解决æ–ÒŽ¡ˆåQ?BR> 好在jasperreport˜q˜æä¾›äº†å¾ˆå¥½çš„æ‰©å±•æ–¹æ¡?它å…许我们自定义分页方å¼åQˆå°±æ˜¯è¯´åœ¨ä¸¤™å?table之间能让我们放自å·Þqš„代ç åQ‰ï¼Œè‡ªå·±å®šä¹‰betweenPagesHtml ž®±ï¼¯åQ«äº†åQŒå¯ä»¥èƒ½˜q‡ïÛEåQ»I¼³å®šä¹‰åˆ†é¡µåQŽåœ¨˜q™é‡ŒåQŒæˆ‘ž®Þq›´æŽ¥æ”¹å®ƒä»£ç 算了.大家å¯ä»¥è‡ªå·±é€‰æ‹©.
net.sf.jasperreports.engine.export.JRHtmlExporter
<!--CSS代ç -->

pageEnd
{page-break-after:always}
if (betweenPagesHtml == null)

{
writer.write("<br class=\"pageEnd\">"); // åŽŸæ¥æ˜¯ä¸¤ä¸?<br/>
} else

{
writer.write(betweenPagesHtml);
}
3. 打å°
  分页解决åŽå¯ä»¥å‘现当报表预览时真的能一™åµä¸€™åµåˆ†å¾—很好.å´åˆå‘现了一个问题.报表明显ä¸èƒ½æ»¡ä¸€å¼ AåQ”å¼ å¤§å°(ireport 设计选择的是åQ¡ï¼”¾U¸å¼ ),疑惑了一际ååQŒå…¶å®žä¸èƒ½ç®—是BUGåQ?BR>   ireport æŠ¥è¡¨å±žæ€§ä¸æ˜Žæ˜¾(21 * 29.7 CM) ä¸€å¼ ï¼¡åQ”纸的大ž®ï¼Œä¸ÞZ»€ä¹ˆï¿ƒåQß_Ý‹åQ¬å‡ºæ¥çš„æ•ˆæžœå´æ˜Žæ˜‘ְ的那么多了.其实˜q™ä¸Žè®¡ç®—机的分èöL率有å…?BR>   计算æœÞZ¸çš„分辨率åQŒæ™®é是72 è±¡ç´ /英寸åQŒè€Œæ‰“å°æœºæ™®é€šæ˜¯300è±¡ç´ /英寸åQ?BR>   jasperreport 与ireport 默认å•使˜¯pxåQŒæˆ‘猜想如果用CMåšå•ä½çš„è¯å¯ä»¥è§£å†Œ™¿™ä¸ªé—®é¢˜ï¼Žä½†åœ¨˜q™é‡Œæˆ‘ä»¬çš„åšæ³•是ž®½é‡åŠ å¤§æŠ¥è¡¨è®¾è®¡æ—¶çš„å®½åº¦ä¸Žé«˜åº¦ï¼Žå¦ä¸€ä¸ªè¦æ³¨æ„的是记得ž®†æ‰€æœ‰é¡µè¾¹è·è®¾äØ“0,å› äØ“˜q™äº›è®„¡½®åœ¨æ‰“å°çš„æ—¶å€™å·²åœ¨ï¾ƒåQ¥ï¼‹¹è§ˆå™¨ä¸è®‘Ö®šäº†ï¼Œä¸ç”¨é‡å¤åQ?BR>
4.分æ
ã€€ã€€ä»¥å‰æ²¡å¤šæ³¨æ„,但刚用ireport新版本时å¯ä»¥å‘现在报表属性设计的时候å¯ä»¥è®¾¾|®æ åQŽè¿™ä¸‹å如果当报表主体部分列æ•îC¸å¤šæ—¶å®žçŽ°åˆ†æ æ˜„¡¤ºåQŒä»¥èŠ‚çœ¾U¸å¼ åQ?BR>
5.斑马¾U¿å¼æ˜„¡¤ºæŠ¥è¡¨ä¸ÖM½“
   有时我们惌™®©æŠ¥è¡¨æ›´ç¾ŽåŒ–,让用æˆäh›´æ–¹ä¾¿åœ°è§‚看数æ®ï¼Œå¯ä»¥è®„¡½®ä¸¤ç§è‰²ç›¸éš”.˜q™ç§æ•ˆæžœåœ¨jasperreport ä¸çš„example䏿œ‰demo一下,大家如果惛_¦ä¹ å¯ä»¥ä¸‹è½½çœ‹çœ‹ï¼Ž
6.äº¤å‰æŠ¥è¡¨
   关于jasperreportçš„äº¤å‰æŠ¥è¡¨è®¾è®¡ç½‘ä¸Šè¿˜æ˜¯æœ‰ä¸å°çš„讨论,而真æ£å®žçŽ°çš„ä¸å¤šåQŽæˆ‘观察˜q‡å¤§å¤šç”¨jasperreportå®žçŽ°éƒ½æ˜¯ä¼ªäº¤å‰æŠ¥è¡¨ï¼Žòq¶ä¸æ˜¯çœŸæ£å®žçŽ°çœŸæ£çš„动æ€è¡Œä¸Žåˆ—åQ?BR>   其实在jaspert report下è²åŒ…丘q˜æ˜¯æœ‰ä¸ªäº¤å‰æŠ¥è¡¨çš„实现example(crosstabs)åQŒåªä¸è¿‡æ®æˆ‘了解åQŒçŽ°åœ¨ireport˜q˜ä¸èƒ½å®žçŽ°è®¾è®¡ï¼Žåªèƒ½é€šè¿‡æ‰‹å·¥å†™jrxmlæ–‡äšg实现åQŽæœ¬äººå°è¯•一下,˜q˜æ˜¯æŒÞZ¸é”™çš„åQ?BR>
三ã€å¾…ç ”ç©¶
 通过¾l§æ‰¿net.sf.jasperreports.engine.export.JRHtmlExporter ,˜q˜æ˜¯èƒ½æ‰©å±•丞®çš„功能åQŽä¾‹å¦‚用åQ£ï¼³åQÏx ¼å¼åŒ–åQŒå¯ä»¥å¤§å¤§å‡ž®ä»£ç é‡åQŒåЍæ€åˆ—åQå¯è®‘Öˆ—宽度大大增强我们的报表功能.
 现本人åˆéƒ¨å®žçŽ?00åQ…宽度,ä¸å†ç”¨jasperreportä¸hardcode列度½{‰ç‰,以下三点˜q˜æœ‰å¾…时间去跟进:)
1.动æ€åˆ—
 
2.å¯è®¾åˆ—宽åº?BR>
3.CSS设计
  

]]>