Question

New Batch Message Queue for In Sequence execution


Badge +3

We need to create a separate batch message queue BATCH_INVOICE to handle the printing of batches of customer invoices In Sequence.  We would like all other print jobs to go through the standard BATCH2 - batch queue used for print jobs and leave the standard queue with execution mode of In Parallel.

In test I have created the new message queue and set this to execute in sequence using 1 thread (so that the print jobs are sent in order as sorted in the print customer invoices screen).

I would like to know how can I configure IFS to only send print jobs with the title of ‘Invoice’ to the newly created queue?

We are on Apps 10 and our users require this to help them sort batches of invoices by customer for posting.  We want to keep invoice printing separate to other print jobs as to not slow down other forms of printing.

 

Thanks,

Darren Turner


5 replies

Userlevel 6
Badge +18

Identify the API.Method handling the print functionality, RMB on BATCH_INVOICE and Add the API.Method to the new queue. Once you finish adding, save the change and RMB Init Queue.

You can identify the API.Method by checking the background jobs screen.

Badge +3

Identify the API.Method handling the print functionality, RMB on BATCH_INVOICE and Add the API.Method to the new queue. Once you finish adding, save the change and RMB Init Queue.

You can identify the API.Method by checking the background jobs screen.

I have identified the API from the print invoice background job.  From IFS connect there is no RMB to add.  The options are shown below.  You can add from the batch queue configuration screen but this message queue is not shown there?

 

Userlevel 6
Badge +18

Is there a reason that you are looking to do this under IFS Connect rather than in the Batch Queue Configuration?

Unless I am misunderstanding your request, it looks like you really want a new Batch Queue to be set up under Sol Man / Background Processing / Background Jobs / Batch Queue Configuration, with just 1 Process assigned to it to ensure serial job processing.  Once you have that new Batch Queue in place you would then add the <API>.<METHOD> (looks like Customer_Order_Inv_Head_API.Print_Invoices) to that queue using the RMB / Add option.

I guess you could use IFS Connect if you wanted to duplicate the PROCESSING_PRINT_JOBS Task Template, then only include the Invoice printer device in that, but I don’t know if that is the best way to go in general...  You would want to have a dedicated logical printer called “Invoice” in that case that only gets added to that Task Template and not the normal printing Task Template.  That new Task Template with just the Invoice logical printer would then be set to use the new Queue that you created in IFS Connect, and all invoices being printed would have to be sent to the Invoice logical printer.

HTH,

Nick

Badge +3

Is there a reason that you are looking to do this under IFS Connect rather than in the Batch Queue Configuration?

Unless I am misunderstanding your request, it looks like you really want a new Batch Queue to be set up under Sol Man / Background Processing / Background Jobs / Batch Queue Configuration, with just 1 Process assigned to it to ensure serial job processing.  Once you have that new Batch Queue in place you would then add the <API>.<METHOD> (looks like Customer_Order_Inv_Head_API.Print_Invoices) to that queue using the RMB / Add option.

I guess you could use IFS Connect if you wanted to duplicate the PROCESSING_PRINT_JOBS Task Template, then only include the Invoice printer device in that, but I don’t know if that is the best way to go in general...  You would want to have a dedicated logical printer called “Invoice” in that case that only gets added to that Task Template and not the normal printing Task Template.  That new Task Template with just the Invoice logical printer would then be set to use the new Queue that you created in IFS Connect, and all invoices being printed would have to be sent to the Invoice logical printer.

HTH,

Nick

Hi Nick,

Thanks for your reply.  The reason we want to use connect is because the issue we are having of invoices printing out in the wrong order is caused by the standard connect print job BATCH2, has an execution mode of in parallel.  In batch queue configuration we only have one process against the invoice queue that contains the print invoices API, so we cannot correct the issue by changing the setting here.  The only way we have found to stop batches of invoices printing out of sequence in test is change the setting on the connect message queue from in parallel to in sequence.  We do not want to potentially slow down printing of other documents so would like to separate out invoices if possible. We also have the added complication that invoices need to be be printed across our regional depots and this is managed by report user printers defined in printer definitions.  

Regards,

Darren

 

Userlevel 6
Badge +18

Makes sense.  So in that case I think you’d need to control it via dedicated logical printers that are only used for Invoice printing (remember that one physical printer can have multiple logical printers defined in IFS) , and assign those logical printers for Invoices to the new Task Template as noted previously, and make sure that the same logical printers are NOT included in the original printing Task Template.

I don’t think that the Connect queue itself can control anything at that level based on API, but I could be wrong.

Reply