该表中有两个记录,称为帐单信息,我已经设计了表的报告,需要将每个记录保存到特定文件夹中的PDF文件中。
CustBill.RESET;
CustBill.SETFILTER(CustBill."Customer No.",'%1',Customers."No.");
IF CustBill.FIND('-') THEN
Customers.GET(Customers."No.");
IF Customers.FIND('-')THEN BEGIN
REPEAT
CustNumber:= Customers."No.";
tofile := '.pdf';
Filename := 'C:reports'+CustNumber+tofile;
REPORT.SAVEASPDF(50050, Filename,Runrpt);
UNTIL CustBill.NEXT=0;
END;
您的代码是一团糟。在这里,我为您修复了它。
CustBill.RESET;
CustBill.SETFILTER(CustBill."Customer No.",'%1',Customers."No.");
IF CustBill.FIND('-') THEN
BEGIN //you missed this one
CustLocal.SETRANGE("No.", Customers."No.");
IF CustLocal.FINDSET THEN //use findset already its year 2016
BEGIN
REPEAT
CustNumber:= CustLocal."No.";
tofile := '.pdf';
Filename := 'C:reports'+CustNumber+tofile;
REPORT.SAVEASPDF(50050, Filename, CustLocal); //propper parameters
UNTIL CustBill.NEXT=0;
end;
END;
请注意此行
REPORT.SAVEASPDF(50050, Filename, CustLocal);
根据报告中的数据,您可能必须将CustLocal
或CustBill
变量用作最后一个参数。它将用作您的报告的过滤器。
还有一件事。正如MSDN所说:
文件名参数指定运行计算机上的位置 Microsoft Dynamics NAV服务器。如果您从 roletailored客户端,例如在页面上的操作中,然后使用 下载函数(文件)以从计算机下载.pdf文件 运行Microsoft Dynamics Nav服务器到运行的计算机 roletailored客户端。
所以不要在客户端正在运行的本地计算机上寻找您的文件。
其他问题敦促您将问题发布两次?