2017-12-27 38 views
1

我有一个查询可以获取一组商店的销售报告的数据。带循环和附件的CFMAIL

我需要为每个商店创建每月销售的PDF,然后仅向其销售店发送电子邮件给销售经理。

创建PDF部分工作正常。它为每个商店创建一个单独的报告。

当我尝试通过电子邮件发送报告时,它会为每个记录发送一个报告,而不是针对所有销售人员的一个报告。例如:如果商店#1的报告中有4个人,则销售经理将获得4个报告,而不是1个报告。

这里是我的代码:创建PDF

 <cfoutput query="data" group="site_name"> 
    <cfdocument format="pdf" overwrite="yes" fontembed="yes" 
    pagetype="Letter" 
    filename="xxxxxxxxxxxxxxxsite_name#.pdf" margintop="0.25" 
    marginbottom="0.25" marginleft="0.25" marginright="0.25" 
    backgroundvisible="yes"> 
    <table width="100%" align="center" border="1" cellpadding="5" 
    cellspacing="0"> 
    <tr bgcolor="##e1e8f7"> 
    <td colspan="8" align="center">Sales Report -#today#-#site_name#</td> 
    </tr> 
    <tr align="center"> 
    <td>Sales Person</td> 
    <td>Total Sales</td> 
    </tr> 
    <cfoutput> 
    <tr> 
    <td>#firstName# #lastName#</td> 
    <td>#totalSales#</td> 
    </tr> 
    </cfoutput> 
    </table> 
    </cfdocument> 
    </cfoutput> 

CFMAIL

<cfmail query="data" to="#salesmanageremail#" subject="monthly sales 
    report" 
    type="html"> 
    <style type="text/css"> 
    body { font-size: 12px; font-family: Arial; } 
    </style> 
    <body> 
    Report attached. 
    </body> 
    <cfsilent> 
    <cfmailparam file="xxxxxxxxxxxxxxxsite_name#.pdf"> 
    </cfsilent> 
    </cfmail> 

如何通过电子邮件发送每包含所有数据到每个销售经理店一个报告?

回答

3

您可以将您的cfmail标签作为cfoutput标签对待。这包括像创建PDF时一样使用组属性。

或者,您可以将cfmail标记放入您用来创建pdf的cfoutput块中。所有事情都考虑到了,这就是我要采取的方法。这样你发送每个网站的正确文件。

+0

好的谢谢我会尝试你的后一个建议 –

+0

这工作。谢谢 –