Setup ReportFrame trong code
Không chỉ setup ở csdl không, ta cũng cần setup trước một bảng đã lọc dữ liệu ở code để truyền vào khung báo cáo
QuickStart
Setup ngắn nhất ta có thể viết mà không phải lo nghĩ nhiều (Note: $year trong đây lấy từ năm của bộ lọc)
$filterTableSql = "CREATE TEMPORARY TABLE filtered_data
/* Code tạo bảng ... */";
DB::statement($filterTableSql);
$frame = new ReportFrame("report_glm_24_s90h", null, ["yyyy" => $year]);
$frame->execute("filtered_data");
$data = $frame->returnData();
//...Xử lý nốt $data trả về và trả báo cáo
Nhìn tổng thể, khi tạo ReportFrame, hàm constructor của nó chỉ lấy 4 tham số sau (các dấu ? đứng trước nghĩa là nó null/không cần truyền vào cũng đc)
<?php
$frame = ReportFrame($tableName = <tên-bảng-lấy-khung-trong-csdl>,
?array $options = [<mảng-các-option-có-thể-dùng-để-tinh-chỉnh-ReportFrame>],
?array $parameters = [<các-tham-số-truyền-vào-cho-ReportFrame>],
?array $middlewares = [<các-middleware(các-func-custom)-giữa-các-quá-trình-chạy-trong-ReportFrame>]
)
Nội dung của page này sẽ đi vào một số option và middleware hay dùng. Đối với api đầy đủ xem mục API ở đây