Solved

.rpx file extension required

  • 19 May 2023
  • 3 replies
  • 96 views

Userlevel 3
Badge

Using 22R2.  We have a customization to print a custom report via Device Hub.  The report is sent to Device Hub but does not print.  The log shows the following:

5/19/2023 3:17:59 PM - [Warning] Retrying to retrieve PDF-file for Task #1.1 Print Jobs (Duration: 215.0806 ms.)... (Attempts left: 2).
5/19/2023 3:17:59 PM - [Printer] Restart print queue monitor. Reason:Unknown, Context:LoadPdf
5/19/2023 3:17:59 PM - [Printer] Logging out...
5/19/2023 3:17:59 PM - [Printer] Logged out.
5/19/2023 3:17:59 PM - [Warning] Retrying to retrieve PDF-file for Task #1.1 Print Jobs (Duration: 259.5783 ms.)... (Attempts left: 1).
5/19/2023 3:17:59 PM - [Printer] Restart print queue monitor. Reason:Unknown, Context:LoadPdf Waiting for completion.
5/19/2023 3:18:00 PM - [Printer] Logging in to https://nlacumaticarts.mydomain.com/AcumaticaERP...
5/19/2023 3:18:00 PM - [Printer] Initializing printers...
5/19/2023 3:18:00 PM - [Printer] Printer BWHP initialized.
5/19/2023 3:18:00 PM - [Printer] [Error] An error occured while polling the print queue: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.ApplicationException: .rpx file extension required

 

From the Print Jobs screen (SM206500), I can preview the job without issue.

The customization is attached.

icon

Best answer by darylbowman 20 May 2023, 16:25

View original

3 replies

Badge +11

In the system, is your report named *something*.rpx with a site map entry of AM3020ZZ?

Badge +11

I think if you’re giving it a particular printerID to use, you want to set the ‘DefinePrinterManually’ to true.

 

Here’s the code I’ve used to do something similar:

var reportParams = new Dictionary<string, string>();
string bAccountID = Base.CurrentBAccount.Current.BAccountID.ToString();
reportParams.Add("BAccount.BAccountID", bAccountID);
var printSettings = new PrintSettings
{
PrintWithDeviceHub = true,
DefinePrinterManually = true,
PrinterID = printerID
};
SMPrintJobMaint g = PXGraph.CreateInstance<SMPrintJobMaint>();
g.AddPrintJob("Address label (MB)", printSettings, "CRADBAMB", reportParams, null);

I’m not exactly sure what the difference is between ‘AddPrintJob’ and ‘CreatePrintJob’.

Userlevel 3
Badge

Yes.

Reply


About Acumatica ERP system
Acumatica Cloud ERP provides the best business management solution for transforming your company to thrive in the new digital economy. Built on a future-proof platform with open architecture for rapid integrations, scalability, and ease of use, Acumatica delivers unparalleled value to small and midmarket organizations. Connected Business. Delivered.
© 2008 — 2024  Acumatica, Inc. All rights reserved