Hi Shaun ( @SHAUN_KERSLAKE )
For APPS8 I would create a PLSQL procedure within a package (you could add it to your IFS_TECH_CONS_UTIL_API if you have one) to emulate running this REP report and then scheduling it via Database Tasks, Scheduled Tasks.
I have included below some sample code, not for your particular REP view but it shouldn’t be too difficult to adapt it:
procedure Print_Inventory_Part_Barcode (
barcode_id_ in varchar2,
contract_ in varchar2,
number_of_copies_ in number default 1,
in_layout_name_ in varchar2 default null,
logical_printer_ in varchar2 default null)
is
printer_id_ varchar2(250);
print_job_attr_ varchar2(200);
report_attr_ varchar2(2000);
parameter_attr_ varchar2(2000);
result_key_ number;
print_job_id_ number;
printer_id_list_ varchar2(32000);
begin
General_SYS.Init_Method(lu_name_, 'Ifs_Tech_Cons_Util_API', 'Print_Inventory_Part_Barcode');
-- Generate a new print job id
logical_printer_api.convert_logical_printer(printer_id_, logical_printer_);
printer_id_ := nvl(printer_id_, printer_connection_api.get_default_printer(fnd_session_api.get_fnd_user, 'INVENTORY_PART_BARCODE_REP'));
client_sys.clear_attr(print_job_attr_);
client_sys.add_to_attr('PRINTER_ID', printer_id_, print_job_attr_);
print_job_api.new(print_job_id_, print_job_attr_);
client_sys.clear_attr(report_attr_);
client_sys.add_to_attr('REPORT_ID', 'INVENTORY_PART_BARCODE_REP', report_attr_);
--Note: Create the report
client_sys.clear_attr(parameter_attr_);
client_sys.add_to_attr('BARCODE_ID', barcode_id_, parameter_attr_);
-- Bug 132558, Added contract to the parameter list to handle the barcode printing logic.
client_sys.add_to_attr('CONTRACT', contract_, parameter_attr_);
client_sys.add_to_attr('NUMBER_OF_COPIES', number_of_copies_, parameter_attr_);
client_sys.add_to_attr('LAYOUT_NAME', in_layout_name_, report_attr_);
archive_api.new_instance(result_key_, report_attr_, parameter_attr_);
--Note: Connect the created report to a print job id
client_sys.clear_attr(print_job_attr_);
client_sys.add_to_attr('PRINT_JOB_ID', print_job_id_, print_job_attr_);
client_sys.add_to_attr('RESULT_KEY', result_key_, print_job_attr_);
print_job_contents_api.new_instance(print_job_attr_);
-- Send the print job to the printer.
logical_printer_api.enumerate_printer_id(printer_id_list_);
if (printer_id_list_ is not null) then
if (print_job_id_ is not null) then
print_job_api.print(print_job_id_);
-- TODO: Investigate alternate method:
--Archive_API.Create_And_Print_Report__(msg_);
end if;
end if;
end Print_Inventory_Part_Barcode;
Replace the REP view name, Layout Name, and the 3 report specific parameters for the ones related to the PURCHASE_RECEIPT_REP(COMPANY, CONTRACT, TO_DATE,PART_TYPE).
If you do not need it printed then ensure it gets routed to the NO_PRINTOUT printer.
PM me if you need further assistance with this.
Cheers,
Pete