"Best" way to export data on a schedule

@Rich do you also need the Print Routing License in addition to the Compliance Reporting License? or is this another name for the so called “SSRS Print Routing / Advanced Routing”

@hkeric.wci - Nope, separate and different.

2 Likes

@ckrusen, what is the application you have in the image here? I have not been able to find the screen you’re on, but it looks like it could be helpful to me.

SSRS can export CSV on a schedule.

1 Like

Don’t think you get here with cloud though.

No access to SSMS. No access to File Shares - unless you use EpicorData or you’re @klincecum.

1 Like

It looks like you’re cloud @jott, not knowing what you’re trying to do, you may want to consider this post.

2 Likes

I’m trying to send sales reports to external reps. I think I am going to have to use BAQ Report Designer. I’m just trying to figure out what screen he is on where you can choose to send excel data only. I’ve seen it before but am not able to find it currently.

Basically trying to send this report weekly, but it has to go to 20-30 reps. It also needs to be able to filter the BAQ by each sales reps sales rep code before exporting to CSV and sending it out. I haven’t been able to find a good way to do this so far. It’s the iterating through the different sales reps that has made it more difficult.

This will take a bit of setup, but I think you will find it worthwhile in the end.

Make a parametric BAQ with the filters you need and make an excel workbook for each of your reps that has the BAQSvc call with applicable parameters. Send that out to each of your reps, and they can refresh it on demand. No more weekly emails.

1 Like

I’m not totally against this idea myself, but I’ve been asked to do it via email. When dealing with this many external partners we want to stick with what they know. I just haven’t been able to find a way to pass a parameter to a baq report.

If this is a BAQ report and not a RDD with a report style, you can do this under the options tab.

Use the Option Fields sheet to set up the main user input fields for the report.

Option Fields display on the report window. They enable users to define the range of data that displays when the BAQ report generates. For example, you can use this sheet to set up fields where the user defines a From and To date range as criteria for running the report.

Any field on the selected BAQ (for example, LaborDtl_ClockInDate) as well as report parameter fields (for example, ReportParam_Date02) can be turned into an input field. Select the field in Option Field, enter a Field Label that will display in the report, and select the Compare Operator that defines what data displays in the report.

For those who know, I am NOT a big fan of emailing reports. I’ll save the reasons for another day. But may I offer an alternative?

In addition to @Camren360’s excellent (and frankly better) idea, you could place the report in a repository like ECM or SharePoint. The reps would then subscribe to that event (once) and get notified whenever there is a new report.

Benefits:

  • No email distribution list to maintain
  • Fewer Kinetic customizations to maintain (including Advanced Print Routing)
  • The report is not exposed to Business Email Compromise (BEC) sitting in an email folder
  • You KNOW for certain if and when a rep actually downloaded the report
  • Reduces email box size requirements
3 Likes

1 Like

I’m using BAQ report designer, RDD, and report style. The reps receiving the files aren’t able to login to Epicor, otherwise I’d just create a dashboard.

Mark,

I’m not saying emailing CSV’s is better than using the API, just that the task I was given is to get these emails setup. I did ask if we’re open to using the method you mentioned above, but have not received a response yet.

With that being said, I’ve attempted to setup an excel document that pulls the data in from an odata feed and am not able to find a way to do this that keeps my API key from being visible. Even making my API key visible I’m running into issues. I have searched and am not able to find a straightforward walkthrough of setting up the API in excel.

I have a url to my BAQ where I’ve begrudgingly already had to include the API key exposed. Even with the key, my Epicor credentials are still required (I am also prompted to enter the credentials in the browser). In the browser with my credentials and the api key in the URL, I am able to retrieve the data. In Excel with my credential and the api key in the URL, I am getting this error:
image

Any clue on a way I can do this? These sales reps are not directly employed by my company and do not have their own Epicor logins. I would really prefer them not being able to see the API key as well. In order to keep from making 26 separate BAQs for each rep, we decided to make a master BAQ with all data and would like to pass the repcode as a parameter. If the API key is visible, reps will be able to see information for every rep if they’re tech savvy enough.

Thanks for your responses so far.

That is wise. Having an intermediate service between Kinetic and the Reps would help hide the API-Key from them.

Is your company a Microsoft 365 user? If not, do you use any file sharing services (DropBox, Box, Google Drive) to pass information to the external reps?

We are on Microsoft 365. But to my knowledge we just communicate with reps via email. Is there a solution you know of using 365 to do what you suggest?

Yes. SharePoint or Teams (which is SharePoint under the hood). There are many ways to set this up, but the underlying idea is the same.

Each rep would have a dedicated Document Library and you would invite the rep as a member.

I would write a PowerShell script (like @josecgomez did here) that runs a BAQ for a given rep and then post the file to the corresponding Document Library for that Rep using the Microsoft Graph REST API.

For files less than 4MB, use this Graph API for smaller files. For larger files, you’ll need to do a little more with this MS Graph API for larger files.

Personally, I would create a Team for each rep and invite them to it. Add a channel called “Sales.” Each channel in Teams gets a Document Library by default. You can get the URL for the Library to use for the MS Graph calls above from the Copy link item.

The rep can choose the “Open In SharePoint” link and asked to be notified (Alert Me) when changes occur in the Document Library.

and indicate what, when, and how to be alerted.

Since EpicWeb is a SharePoint site, many users here use this feature to see when Epicor posts patches or changes to documentation.

To setup the ability to see who and when someone viewed a document, follow these steps.

Allow people to see who views their files or pages - Microsoft Support

That should cover it.

6 Likes

If they insist on emailed reports then yes using BAQ report with APR to route to email is the way to go. @Mark_Wonsil suggestions are better overall but may not be what your reps want, we have some who insist on emailed reports even though they have a Teams portal to see the latest reports.

Randy brings up a good point. It they insist on email, you can also use the MS Graph to send email, create a draft of the email for review before sending, send all drafts, etc.

1 Like

In this case, is there a way to pass a parameter to the BAQ? I see that I can use the filter, but I have some questions. I am a little confused on what it means by breaking, I must break before I can use the filter and other rules I’d like to use. I am also wondering if there is a way to iterate through a list so I do not have to have a break, filter, and email for all 26 reps. I can copy and paste if need be.