Bắt đầu với Reporter
Phạm vi áp dụng
✅ Bravo 8 · ✅ Bravo 10
Bravo 8 hỗ trợ thiết kế báo cáo linh động hơn so với Bravo 7.
Hai thay đổi nền tảng
- Về CSDL: khi khai báo command không khai báo thủ tục chạy báo cáo, mà khai báo trực tiếp trên layout báo cáo bằng thẻ Command
- Về thiết kế giao diện: layout báo cáo chia làm 2 phần DataSource và Layout, tương tự Explorer và Editor
Cấu trúc khai báo
<root>
<Command>Tên_thủ_tục</Command>
<Tables>
<ParametersTable>...</ParametersTable> <!-- điều kiện lọc -->
<Table_1>...</Table_1> <!-- dữ liệu báo cáo -->
<Table_2>...</Table_2>
</Tables>
<panelParameters>
<Controls>...</Controls> <!-- control điều kiện lọc -->
</panelParameters>
<panelReporter>
<Controls>
<Report_0>
<PrintSettings>...</PrintSettings>
<ReportSetup>...</ReportSetup>
<ExportSettings>...</ExportSettings>
<ExportSetup>...</ExportSetup>
<Content>...</Content>
</Report_0>
<Report_1>...</Report_1>
</Controls>
</panelReporter>
</root>Bỏ SubReport — dùng Report_0, Report_1…
Khác Bravo 7
Bravo 8 không sử dụng SubReport như Bravo 7, mà khai báo từng báo cáo lần lượt:
Report_0,Report_1,Report_2…
- Các Report được khai báo với vị trí dòng/cột chỉ định
- Nếu không khai báo dòng/cột → mặc định các báo cáo nằm lần lượt từ trên xuống dưới như bản 7
- Mỗi Report được coi là 1 Control nên phải khai báo DataMember tương ứng với bảng dữ liệu trả về từ thủ tục (
Table1,Table2,Table3…)- Không khai báo
DataMember→ mặc định là bảng đầu tiên trả về từ thủ tục
⚠️ Tiền tố @_ cho biến tham số
Khác Bravo 7
Khi khai báo Reporter tham chiếu tới biến của bảng tham số cần có tiền tố
@_.Không có tiền tố
@_sẽ báo lỗi. Bravo 7 không cần tiền tố này.
ParametersTable
Khai báo các thẻ xử lý dữ liệu của các trường điều kiện lọc báo cáo. Các thẻ con tương tự DataSource của Editor.
| Thẻ | Thời điểm thực thi |
|---|---|
| RowAdded | Khi bảng parameter thêm 1 dòng dữ liệu |
| ServerUpdating | Evaluator chạy trước khi thực hiện thủ tục báo cáo (trong Transaction) |
| ServerUpdated | Evaluator chạy sau khi thủ tục báo cáo hoàn thành (trong Transaction) |
| ServerCommand → AfterCommit | Evaluator chạy sau khi thủ tục thực hiện xong và Transaction committed |
Warning
Bảng
ParametersTableluôn luôn có tối đa 1 dòng dữ liệu.
Table_x — tạo cây
Chứa Evaluators, TempColumns tương tự Editor, cộng thêm các thẻ tạo cây:
| Thẻ | Nội dung |
|---|---|
CreateTree | Có tạo cây hay không — mặc định False |
TreeNodeKey | Trường tạo cây |
TreeId | Trường Id tạo cây |
TreeParentId | Trường ParentId tạo cây |
Đã lỗi thời
Từ ver 4.1.6.1, các thẻ con này không được sử dụng trong thuật toán tạo cây ở màn hình Reporter nữa. Xem zMakingTreeNodeKeyColName.
Bản đồ các nhóm thẻ
| Nhóm | Vai trò | Note |
|---|---|---|
<PrintSettings> | Thiết lập định dạng in — khổ giấy, lề, máy in | PrintSettings |
<ReportSetup> | Thiết lập bố cục và hành vi báo cáo — nhóm, lặp tiêu đề, đường kẻ, watermark | ReportSetup |
<ExportSettings> | Thiết lập kết xuất — loại file, gửi mail | ExportSettings |
<ExportSetup> | Chi tiết bố cục khi kết xuất | ExportSetup |
<Content> | Nội dung báo cáo — nhóm, tổng cộng, biểu đồ, cây | Content |
| Thẻ cấp form | Tham số lọc nhanh, template, caching… | Thẻ khác của Reporter |
Liên quan
Bắt đầu với Explorer · Bắt đầu với USPCaller và Wizard · Bắt đầu với Dashboard · Bắt đầu với Expression