将 table 中的每条记录保存为 PDF
Save every record in the table as PDF
在一个名为 Bill Info 的 table 中有两条记录,
我为 table 设计了一份报告,需要将每条记录保存到特定文件夹中的 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 所说:
The FileName parameter specifies a location on the computer running
Microsoft Dynamics NAV Server. If you call this function from the
RoleTailored client, such as from an action on a page, then use the
DOWNLOAD Function (File) to download the .pdf file from the computer
running Microsoft Dynamics NAV Server to the computer running the
RoleTailored client.
所以不要在客户端 运行.
的本地计算机上查找您的文件
还有其他问题促使您 post 两次 吗?
在一个名为 Bill Info 的 table 中有两条记录, 我为 table 设计了一份报告,需要将每条记录保存到特定文件夹中的 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 所说:
The FileName parameter specifies a location on the computer running Microsoft Dynamics NAV Server. If you call this function from the RoleTailored client, such as from an action on a page, then use the DOWNLOAD Function (File) to download the .pdf file from the computer running Microsoft Dynamics NAV Server to the computer running the RoleTailored client.
所以不要在客户端 运行.
的本地计算机上查找您的文件还有其他问题促使您 post 两次