Greeting,
Is it possible to add another page on PDF file which is located on external path, when generating report.
Thanks
*This post is locked for comments
Greeting,
Is it possible to add another page on PDF file which is located on external path, when generating report.
Thanks
*This post is locked for comments
Hi,
I tried the same approach. It's working well if the Pdf paths defined to ProcessStartInfo.Arguments is hardcoded like mentioned and I'm facing issue if I'm using it through variables. I believe there is some issue in the quotes.
The following is the code which I used. Request your guidance on it.
ProcessStartInfo := ProcessStartInfo.ProcessStartInfo('C:\Program Files (x86)\Metaist\pdfmerge\bin\pdfmerge.exe');
ArgumentPath := ''+'-o "'+NewPDFFile+'" "'+ PDFFile1 +'" "'+PDFFile2+'"';
ProcessStartInfo.Arguments := ArgumentPath;
ProcessStartInfo.UseShellExecute := FALSE;
ProcessStartInfo.CreateNoWindow := TRUE;
ProcessStartInfo.WindowStyle := ProcessWindowStyle.Hidden;
ProcessStartInfo.RedirectStandardOutput := TRUE;
Process := Process.Process;
Process.StartInfo(ProcessStartInfo);
Process.Start;
Below is the code which will merge file1 and file2 as out.pdf
These are variable declarations
ProcessStartInfo - DotNet - System.Diagnostics.ProcessStartInfo.'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
Process - DotNet - System.Diagnostics.Process.'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
ProcessStartInfo := ProcessStartInfo.ProcessStartInfo('C:\Program Files (x86)\Metaist\pdfmerge\bin\pdfmerge.exe');
ProcessStartInfo.Arguments := '-o "c:\temp\out.pdf" "C:\Temp\file1.pdf" "C:\Temp\file2.pdf"';
ProcessStartInfo.UseShellExecute := FALSE;
ProcessStartInfo.CreateNoWindow := TRUE;
ProcessStartInfo.RedirectStandardOutput := TRUE;
Process := Process.Process;
Process.StartInfo(ProcessStartInfo);
Process.Start;
Please try to use processInfo instead of Shell to run the program. For example please check below
What error are you getting using that application ?
Emp.RESET;
Emp.SETRANGE("Employee No.",No);
Emp.SETRANGE(Active,TRUE);
IF Emp.FIND('-') THEN
REPEAT
CLEAR(R_Contract);
CLEAR(FileManagement);
R_Contract.SetParam(No,TODAY);
R_Contract.SETTABLEVIEW(Emp);
//filename:='C:\Temp\PayList-'+T_Employee."First Name"+' '+T_Employee."Last Name"+'.pdf';
// filename:='\\HR\c\NAV2016\Platna Lista-'+Emp."First Name"+' '+Emp."Last Name"+'.pdf';
filename:='C:\Temp\'+Emp."Employee No."+'.pdf';
filename2:='C:\Temp\1031.pdf';
R_Contract.SAVEASPDF(filename);
FileManagement.DownloadToFile(filename,filename);
IFi:='"'+filename+'"'+',';
OFi:='"'+filename2+'"';
MergePDFFiles(IFi+OFi,'C:\Temp\Result.pdf');
UNTIL Emp.NEXT=0;
CLEAR(WshShell);
HRSetup.GET;
CMD_LineTxt:=STRSUBSTNO('%1 output=%2 input=%3',HRSetup."PDF Merge Tool",OutputFileName,InputFileName);
dumyInt:=0;
runMod:=FALSE;
CREATE(WshShell,FALSE,TRUE);
WshShell.Run(CMD_LineTxt);
SLEEP(3000);
CLEAR(WshShell);
This is code i used but it doesn't work. I have problem with pdfmerge application. If you could propose some application that will resolve my problem.
I am not sure if you can print that but you can use an utility called PDF merge to merge two files after you saving your report into PDF
Stay up to date on forum activity by subscribing. You can also customize your in-app and email Notification settings across all subscriptions.
André Arnaud de Cal... 290,946 Super User 2024 Season 2
Martin Dráb 229,426 Most Valuable Professional
nmaenpaa 101,156