Automated Month End Reports

You can set them to run sequentially so one must run before the other.

1 Like

I created a Process Set and added a single report to it. Then scheduled that Process set to run every 5 minutes.

The sys monitor shows the report was created, with last action being “none”.

If they were archived, you could open them from there.

@ckrusen So last action = NONE means the report is waiting to be output from the system monitor? I was looking for a way to locate the file information without having the accounting person go to each of the 40 reports and open them one at a time but that might have to be the solution

It looks like when you click the “Save Process Set” button on a report screen, it just remembers all the field settings. When that process set is run either manually or via a schedule, the report is submitted with all the settings you selected, just as if you had chosen “Generate Only” on the report form.

image

If you have the Print Break/Routing module you could set them up to be emailed, or even sent to a printer. Because the commands setup in the Break/Routing are executed when the report is submitted. So if your break routing had a AutoPrint widget in it, it would execute that auto print (by creating a new task scheduled to run immediately) and print it.

That might work if routing can output a file to a file share but we would have to set up break routing rules for each report. Also if a report takes an hour to run, running it again for another hour will defeat the purpose of them not running at the same time.

I don’t think it “runs again”. The initial run from being in the process set is what generates the dataset for the report. Once that data set is done, the break/routing acts on that dataset.

Excellent! Do you know how to output to a file in print break and routing?

I’ll give it a shot tonight, and test it out before I get your hopes up.

Thanks @ckrusen, I appreciate your time!

Here’s what I did to have the following reports auto printed via a process set
Reports:

  1. WIP Recon (because it takes a while to run)
  2. GL Report
  3. AR Aging

Here’s the steps

  1. Make a Process Set named MonthEnd

  2. Make a new Report Style for WIP Recon by copying the the one I want to print
    a. Add a new SSRS Break Routing
    b. Select the break table (choose the most generic one available. I chose Recon)
    image
    c. Open the Break Route Designer
    d. Add a Break block, breaking on Company


    e. Add a printer block and set its properties
    f. Save and exit the designer.
    g. Enable the Break/Routing
    image

  3. Repeat step 2 for the GL Report style you want
    a. I choose Company for the break table, and Company as the break field (step 2.d)

  4. Repeat step 2 for the AR Aging Report style you want
    a. I choose Company for the break table, and Company as the break field (step 2.d)

  5. Launch WIP Recon report like I was Was going to print it.
    a. Set the fields (make sure to use dynamic dates)
    b. Select the new style Month End
    c. Click the Save Process Set icon, and select the process Set made in step 1
    d. Close WIP Recon

  6. Repeat step 5 for the GL Report

  7. Repeat step 5 for the AR Aging Report

  8. test by using the Schedule Process Set, with the schedule Now
    a. A quick check of the Sys Monitor shows only the WIP Recon is active - Like you said, the only happen one at a time.
    b. Then the GL report
    c. Then the AR Aging.

  9. In Schedule Report Process Set, schedule it with the desired Sys Agent schedule, and submit.

Working from Home I’m not setup with a client printer, so I tested using the email widget instead of the print widget:

I scheduled the Process Set to Run every 5 minutes, And see the following:

In the Sys Monitor:
image

and in my mailbox:

3 Likes

A couple more things to note:

  • Instead of creating a 2nd report style for Break/Routing, you may be able to add a Break Routing to the original report style, with a condition block

    • Set the condition for when a particular user runs it.
    • If it’s not that user, then perform the User Action (does what the user selected: Print Preview, email etc…)
    • If it was that user, the perform the AutoPrint (or whatever function you want)
    • Use that user account when adding to the process set, and scheduling it.
  • Double clicking a task in Process Set Maint, will launch the form with the settings you had selected when you saved it to the Process Set

  • To change a parameter of an existing process set task,

    • Double click it to bring it up
    • Edit the Params as needed and add comment in the User Description
    • Save to Process Set. This will create a another entry (at the end of the list)
    • Close the form window that popped up
    • Back in Process Set Maint
      • Delete the original task you double clicked
      • Move the newly added task to the position desired
  • Use Dynamic Dates when setting up reports to save to a Process Sets

    • Since the tasks run sequentially, one might not start for well after the Process Set is started, I don’t know what date is used for Dynamic dates. Is it the date when the process set starts, or when the specific task starts?
      • For example, Process Set “Nightly” is set to run at 11:PM every day.
      • It has 5 tasks - All with a date parameter of ‘Today’
      • If tasks 1-4 take 65 minutes to complete, does task 5 use the date the process set was launched, or the current date (now a day after the date when the Process Set was launched)?
      • FWIW - I typical run tasks at 12:01 AM, with the date set to ‘Yesterday’
  • We have issues with printing directly to client printers, so we always preview, then print the preview. So I can’t test automated printing to a client machine.

    • Obviously the Client computer would need to be on
    • I assume the E10 client running.
1 Like

Thanks for looking into this, I really appreciate your help and insight! I will dig into deeper and see if I can output a file instead of an email but other than that this looks like a workable solution

Thanks,
Tanner

You should have a look at this thread.

I’m on 10.1.400 :wink:

How do you deal with customization?

@Rich That looks like exactly what I am looking for. I ran a test and was hoping to see the output path in the ProcessTaskParam dataset somewhere. However, it doesn’t appear to store this information in the parameters so I assume it looks back to the report style when it is runs the report.

Is there a way to set the output file path parameter into the ProcessTaskParam dataset instead of creating a new report style for each report? If not and I tie this report option to the default report style, does the system have a purging mechanism for files generated or will I need to clean up files that are not needed?

Thanks
Tanner

Tanner - You need to specify the output location on the Report Style. As it is currently setup, the files are written out under the Reports folder of the Epicor Data path as specified on the System Agent. You will need to manage the files and purging but I believe we will overwrite the previous file if you are using a fixed file name.

2 Likes

@Rich Okay thanks for the information, that makes sense. It appears report styles can share identical report definitions so this works. For some reason, I was thinking that we would have to maintain unique rdds and rdls for each style.

One more question I have is, if we choose to email the report using SSRSPrint instead of SSRSGenerate is there a way to set the attachment name?

Thanks,
Tanner

Yes. In my example, the attachment would be named like “WIP Recon 2019-09-24”

Also, once you create a Break Rout for a style, you cannot select a different RDD for that style. So even if you want to use the original RDD, I’d still make a copy of it. Because you cannot make changes to the original RDD. That way you can make changes to the copy of the RDD, without having to rename it.

1 Like

@ckrusen Oh yeah, I forgot about that! Thank you both for your time, I have a lot to work out on this!