Skip to main content

How do I print out multiple shop order works instructions. E.g. all instructions for shop orders created by ‘HA’ today?

 

Preferable without any print dialogs.

Just search for all shop orders you want to print work instruction report for in the Shop Orders window, the right-click Reports>Create  Reports and select Work Instruction check box. It will print for all orders

Same if you instead use RMB Reports>Work Instruction


Quick answer, thanks,

However it looks it is ignoring the print rules (Shifting printer). It is working when printing just 1 order. When printing 2 orders it goes to the same printer.

Is it suppose to do that?

 


It should be because you have “no multi” option selected in the report rule. Unselect this option so that this rule will be trigger for all the report in a batch


No, it’s not working. Printing 2 shop orders:

 

I have a rule that change the printer on one of the orders (working when printing separately):

 

It print out the orders twice. 2 orders on both printers (4 printouts)

When I change it to this:

It print out the orders ones, but does not change the printer.

No combination is making 1 printout on 2 different printers.

What am I doing wrong here?

 


@Hans Andersen  I have no knowledge in the Report Rules functionality, so hopefully someone else can assist to tell whether or not this is expected.

However, please also try with the RMB to Work Instruction report directly without going through the Create Shop Order Reports dialog. Because, then one print dialog for each shop order will be generated instead.


@Hans Andersen  Your type of report rule action might require the “no multi” option. Keep it selected and then try changing the second option (report rule action ordinal 10) to type “Set Property” and then try type “Set Default Property”.


No, when “no multi” is selected, it will not change printer. I even tried this:

 


Some of the highlighted actions seem to be incorrect. Disable 5, 10 and 20 (keep enabled only 7). Next unselect “No multi”. 


Then it change printer on both orders. The rule only apply to one of them.


I don’t think that is possible. As per the current functionality reporting framework sees this print job as one contains two orders. So we can either instruct report rule to work for jobs that contain more than one order or not work (by “no multi” option). It cannot behave differently for different orders inside one print job.  

If there is a way that you can create two print jobs for these two orders, they you should be able to define report rules to print them differently. I am not sure if our Shop Orders module has such functionality - may be you can check this in “Insights” channel or somewhere Manufacturing product are?


Ok then. Unfortunately we just have to print them one by one or group them somehow.

 

Unless it is possible to print from pl sql?

 

Thank a lot for the effort.


mm, may be someone else have a better idea, lets see


We use Sql Server Reporting Services for a lot of our reports.  I have created a SSRS report that we use for work instructions.  So to accomplish what you are asking I would create a SSRS report that has a parameter for begin time, end time and created by.  The report would then include all created by HA.  I know this does not really answer your question but we have used this method to batch print work instructions.

Phil


We are not using ssrs at the moment. This problem alone is not big enough to doing so.  

I only learned about report rules a couple of days ago. It is handy,  except that, apparently does not work where it could be very powerful  :unamused:


Hi,

could you not use schedule reports? 

Gary


Hi@Hans Andersen,

 

You can  achieve your requirement by adding a custom menu of Action Type = PL/SQL  Block in the Shop Orders (tbwShopOrd).

PL/SQL code snippet for triggering a print job would be similar to below.

when selecting multiple rows, it will create separate print jobs for each SO so your report rule will work :wink:

DECLARE
BEGIN
--create archive record
ARCHIVE_API.NEW_CLIENT_REPORT(result_key_, report_attr_, parameter_attr_, distribution_list_, print_attr_);
ARCHIVE_API.GET_INFO(instance_attr_, parameter_attr_, result_key_);
--create a print job
PRINT_JOB_API.NEW(print_job_id_, print_job_attr_);
--create print job instance
PRINT_JOB_CONTENTS_API.NEW_INSTANCE(instance_attr_);
END;

 

Cheers!

Damith


@dsj I guess I owe you a beer.

Here is a working example. 


For the example above. Insert the following code, otherwise the operations will not be printed in apps10:

client_sys.Add_To_Attr('OPERATION_WORK_TYPES', 'NORMAL', parameter_attr_);

 


Reply