ReportSetup
Phạm vi áp dụng
✅ Bravo 8 · ✅ Bravo 10
Ý nghĩa
Khai báo bố cục và hành vi của báo cáo khi in — nhóm, lặp tiêu đề, đường kẻ, watermark, cache.
<ReportSetup>
<!-- các thẻ con -->
</ReportSetup>Lọc dòng in
PrintExpr / FilterExpr
Điều kiện kiểm tra dòng chi tiết nào được in hay không.
<ReportSetup>
<PrintExpr>LEN(ISNULL(Description,''))>3</PrintExpr>
</ReportSetup>Đổi tên từ v4.6.2
Thẻ đổi tên thành
FilterExpr, và áp dụng cho cả in và kết xuất (sẽ không tính công thức khi kết xuất Excel).
zExcludedColumns
Khai báo danh sách các cột không được in của báo cáo.
Nhóm báo cáo
ReportGroupMember
In liên tục: hiển thị in báo cáo theo từng nhóm — những dòng thuộc nhóm gần nhau sẽ in thành 1 báo cáo.
<ReportSetup>
<ReportGroupMember>CrspAccount</ReportGroupMember>
</ReportSetup>Ví dụ bảng kê chứng từ
Account CrspAccount Amount Nhóm báo cáo khi in 1111 11122 123,333.00 1 3311 1521 300,000.00 2 63212 1521 400,000.00 2 1311 5118 500,000.00 3
Các thẻ nhóm khác
| Thẻ | Nội dung | Mặc định |
|---|---|---|
bRenderSubtotalForGroup | Các dòng Subtotal in cùng với group | False |
bGroupOnNewPage | Mỗi nhóm in ở 1 trang mới | True |
bIgnoreEmptyGroup | False → các nhóm trắng vẫn được in | True |
bColumnGroupTogether | Với báo cáo in liên tục theo nhóm, in Title/Summary trên cùng 1 cột nếu có thể | False |
bNoResetPageNumberForGroup | Không đánh lại số trang cho mỗi nhóm dữ liệu | False |
bExcludeTreeGlyphIndent | Bỏ qua lùi lề theo cây nhóm khi in. Chỉ tác dụng với báo cáo có nhóm | True |
Cộng chuyển trang
| Thẻ | Nội dung |
|---|---|
SumOnEachPage | Hiển thị dòng “Cộng chuyển sang trang sau” và “Cộng trang trước chuyển sang” |
zSumFromPreviousPageDisplayText | Chuỗi hiển thị nội dung cộng trang trước chuyển sang |
zSumForNextPageDisplayText | Chuỗi hiển thị nội dung cộng chuyển trang sau |
bTotalRowAtBottom | True → dòng tổng cộng chèn vào cuối cùng của lưới dữ liệu mở rộng.False (mặc định) → in sát phần dữ liệu detail |
Lặp lại tiêu đề / tổng kết
| Thẻ | Nội dung | Mặc định |
|---|---|---|
bRepeatColumnHeader | False → tiêu đề cột phần Detail không hiển thị từ trang 2 trở đi | True |
bRepeatColumnHeaderWithoutDetail | Lặp tiêu đề cột kể cả khi không có detail | — |
bRepeatTitleForGroup | False → phần Title chỉ in ở nhóm đầu tiên | True |
bRepeatSummaryForGroup | False → phần Summary chỉ in ở nhóm cuối cùng | True |
bRepeatTitleOnPage | True → mỗi trang in đều hiển thị thông tin trong Title | False |
bRepeatSummaryOnPage | True → mỗi trang in đều hiển thị thông tin chữ ký trong Summary.False → chữ ký chỉ hiện ở trang cuối | True |
In nhiều bản (liên)
| Thẻ | Nội dung | Mặc định |
|---|---|---|
nNumberOfCopies | Số bản in (số liên) của báo cáo / mẫu in | — |
bCopyPageForGroup | True → in lần lượt từng trang theo số bản tương ứng, thay vì in lần lượt từng bản | False |
showCopyInfo | Tùy biến hiển thị chuỗi liên in | — |
zCopyInfoDisplayText | Chuỗi hiển thị nội dung CopyText (số liên) | — |
copyInfoOffset | Điều chỉnh vị trí chuỗi liên in | — |
attachedTextOffset | Tọa độ điều chỉnh vị trí lý do in khi in lần thứ 2 trở đi (mẫu hóa đơn tự in) | — |
bCopyMergeContent | Khi printExtraWidth=Column, nếu cột merge bị tách sang trang mở rộng thì copy nội dung sang cột mở rộng | False |
Đường kẻ và khung viền
| Thẻ | Nội dung | Mặc định |
|---|---|---|
bDetailKeepTogether | In chi tiết của báo cáo trên cùng 1 trang (nếu có thể) | True |
bDetailPageBottomLine | Vẽ đường viền dưới của phần chi tiết | True |
detailHLineColor / detailHLineStyle | Màu / kiểu đường kẻ ngang phân cách các dòng chi tiết | |
detailVLineColor / detailVLineStyle | Màu / kiểu đường kẻ dọc phần dữ liệu | |
detailPageBottomLineColor | Màu đường kẻ kết thúc trang (chỉ tác dụng khi bDetailPageBottomLine=True) | theo contentBorderColor |
nDetailPageBottomLineWeight | Độ nét đường kẻ kết thúc trang | 1 |
detailPageBottomLineStyle | Kiểu đường kẻ ngang dòng cuối cùng phần dữ liệu | |
nContentBorderWeight | Độ nét đường viền bao quanh grid | 1 |
ContentBorderStyle | Kiểu đường viền bao quanh grid | Solid |
Đường gạch chéo phần mở rộng
| Thẻ | Nội dung |
|---|---|
bDrawDiagonalMarginHLine | True → cho phép vẽ đường kẻ ngang trước khi vẽ đường gạch chéo |
diagonalLineStyle | Định dạng đường kẻ chéo ở đoạn mở rộng báo cáo |
diagonalMargins | Điểm bắt đầu và kết thúc của đường chéo phần mở rộng |
nDiagonalLineWeight | Chiều rộng của đường chéo phần mở rộng |
Bố cục và hiển thị
| Thẻ | Nội dung | Mặc định |
|---|---|---|
bCenterOnPage | Căn giữa báo cáo theo chiều ngang trang in | — |
bMiddleOnPage | Căn giữa báo cáo theo chiều dọc trang in | False |
bAutoAdjustPageSettings | Điều chỉnh khổ giấy sao cho phù hợp nhất với nội dung in | False |
bAutoCompanyTitle | Tự động hiển thị tên và địa chỉ công ty ở góc trên trái mẫu in | True |
bFitCompanyTitle | Grid CompanyTitle luôn co giãn vừa với nội dung, không phụ thuộc thiết lập trong layout (CompanyLogo) | True |
companyTitlePadding | Tự động đệm dòng cho dòng tiêu đề so với đầu trang giấy | — |
bFitDetailContent | Tự động căn chỉnh chiều cao ô có khai báo wrap-text vừa với dữ liệu | False |
autoExtendDetail | Tự động kéo dài chi tiết báo cáo để lấp đủ chiều cao trang giấy in | None |
detailNewPage | Cách mà phần Detail sẽ được in ra | — |
displayIndent | Có hiển thị khoảng trống của khối hình vuông ở đầu các dòng nhóm khi in / kết xuất | — |
In tràn trang (printExtraWidth)
| Thẻ | Nội dung |
|---|---|
printExtraWidth | Lựa chọn in phần tràn trang khi báo cáo view mẫu hoặc in ra bị tràn |
pageNumberOrder | Cách thức đánh số trang khi có in trang mở rộng (printExtraWidth=Column) |
extraPageDisplayContent | Phần sẽ được sao chép khi in các trang mở rộng |
SubReport
subReportLayout
Khi thêm một subreport:
- Nếu subreport có khai báo
<PrintSettings>→subReportLayouttự động làNewPageWithDiffSettings - Nếu có
<bReportOnNewPage>True</bReportOnNewPage>(property giữ lại để tương thích khai báo cũ)
| Thẻ | Nội dung |
|---|---|
bSubReportWithoutDetailOnGroup | Có hiển thị các subreport (với subReportLayout=TopGrouping hoặc LastGrouping) mà không có dữ liệu chi tiết hay không |
Watermark (hình nền)
| Thẻ | Nội dung |
|---|---|
Watermark | Nền của báo cáo khi view mẫu hoặc in ra. Ảnh nền được copy vào thư mục bmp |
WatermarkAlignment | Vị trí: BottomLeft, BottomRight, Center (mặc định), TopLeft, TopRight |
WatermarkPrintOnPages | Số trang hiển thị hình nền: 1,2,3,5… hoặc 1-3,5,7-9. Để trắng = tất cả các trang |
WatermarkSizeMode | Kiểu kích cỡ: Clip, Stretch, Zoom |
Tối ưu tốc độ & Cache
| Thẻ | Nội dung | Mặc định |
|---|---|---|
bOptimizeRendering | Tăng tốc độ đưa ra báo cáo. ⚠️ Đổi lại một số trường hợp báo cáo không chính xác — VD báo cáo có Barcode, QRcode, ảnh | False |
bRenderPlainColorOnly | True → tất cả đường kẻ khung, viền đều là đường kẻ đậm.False → đường kẻ khung giữa các ô chỉ là đường kẻ mờ | False |
bRenderTextOnly | True → ẩn hết đường kẻ khung, viền, chỉ hiển thị text | False |
nTextLineSpacing | Khoảng cách giữa các dòng. Chỉ tác dụng khi bRenderTextOnly=True | — |
nTextCharSpacing | Khoảng cách giữa các chữ. Chỉ tác dụng khi bRenderTextOnly=True | — |
cachingDocument | Cách thức lưu cache báo cáo | — |
nCustomCachingDocumentPages | Số trang lưu xuống ổ cứng | 100 |
nAutoCachingMinimumRows | Số dòng dữ liệu tối thiểu để kích hoạt cache | 50000 |
zCachingLocation | Đường dẫn lưu file cache. Chỉ tác dụng khi cachingDocument = Standard — dùng khi in với dữ liệu lớn | — |
Barcode
| Thẻ | Nội dung | Mặc định |
|---|---|---|
bBarcodeAsImage | Đưa ra dạng ảnh của Barcode trên grid khi kết xuất, thay vì tạo control Barcode → hiển thị chính xác Barcode đã thiết kế | False |
bAutoBarcodeChecksum | Tự động thiết lập checksum cho từng loại barcode | — |
bBarcodeChecksumEnabled | Thiết lập checksum cho barcode trong trường | — |
Thông tin trang
| Thẻ | Nội dung |
|---|---|
PageInfor | Định dạng cho thông tin PageInfo (Trang in). ⚠️ Nếu có nhiều Report thì khai báo ở Report_0 |
zPageInfoDisplayText | Chuỗi hiển thị nội dung PageInfo |
pageInfoOffset | Điều chỉnh vị trí thông tin trang báo cáo (đánh số trang) |
Liên quan
PrintSettings · ExportSettings · Content · Bắt đầu với Reporter · Bắt đầu với Expression