0

我刚刚为客户建立了一个在线系统,在系统中我有一个报告部分。我的客户现在希望能够设置打印所有功能,他们基本上单击一个按钮,它将一次打印 4 个单独的报告,而无需全部进入。

它们的设置如下:

/报告/快照

/报告/查询

/报告/前景

/报告/销售

等等....

变量也传递到这些报告中,例如开始日期和结束日期,但它们都接受相同的变量,只是显示不同的图表和图形。

无论如何我可以编写一个打印所有函数来调用每个控制器和视图,而无需创建一个单独的全包页面。

谢谢

4

1 回答 1

1

您可以创建一个 allReports() 方法:

public function all_reports() {

    $this->snapshot();
    $this->enquiries();
    $this->prospects();
    $this->sales();
    // and so on

}

它的相关视图:

all_reports.ctp

echo $this->Element('../Reports/snapshot.ctp');
echo $this->Element('../Reports/enquiries.ctp');
echo $this->Element('../Reports/prospects.ctp');
echo $this->Element('../Reports/sales.ctp');
// and so on

基本上, all_reports() 运行所有报告方法,它们将填充视图变量,然后您的视图一个接一个地包含每个报告。

为此,您需要确保您在各种报告中设置的变量不会相互覆盖。

于 2012-09-11T09:17:50.243 回答