Building a Customized Reporting Tool W/ Bullhorn Data

Forum for users and developers of Bullhorn's API service.

Moderators: StaffingSupport, s.emmons, BullhornSupport

Post Reply
sagard.int
User
Posts: 1
Joined: Wed Dec 31, 1969 8:00 pm

Building a Customized Reporting Tool W/ Bullhorn Data

Post by sagard.int » Fri Nov 08, 2013 1:53 pm

Hello Everyone,

I am interested in creating a customized reporting tool, to add some reporting functionality that Bullhorn currently doesn't have. However, I do not know where to start. Any thoughts or suggestions would be greatly appreciated.

Thanks!

joesuffceren
User
Posts: 14
Joined: Wed Dec 19, 2012 1:40 pm

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by joesuffceren » Mon Dec 02, 2013 4:07 pm

Bullhorn has a "datamart" product that syncs your data to a SQL database that you control. I use this service and then run SSRS (SQL Server Reporting Services) reports against that SQL database. I then embed those reports into the BH interface using custom tabs or custom components so my users can get the information they need without leaving Bullhorn. Feel free to PM me if you'd like more info, or if you'd like to see some samples of what I've done.

You could certainly reinvent the wheel on BH's datamart product using the API and create your own syncing service to a DB you control, or you could write reports that leverage the API's directly. Using their datamart, though, is probably the simplest way to get reporting up and running.

lucky
User
Posts: 32
Joined: Tue Jul 23, 2013 7:03 am

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by lucky » Wed Mar 19, 2014 11:42 am

Hi joesuffceren,

We are also planning to implement on-premise BH datamart product & since your organization is already using it so I would be interested to know -

1. Did you guys faced any specific challenge during implementation & deployment phase.

2. How good are performance & syncing capability of this product.

3. Is there any specific entity that is not replicated on local instance.

I would really appreciate if you could help on this.

Regards,
Lucky

joesuffceren
User
Posts: 14
Joined: Wed Dec 19, 2012 1:40 pm

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by joesuffceren » Thu Mar 20, 2014 3:38 am

Lucky,
Overall, we have been very happy with the Bullhorn DataMart. Here are some answers to your questions:

1. The documentation around the tool (at least that I was given when I deployed it) is all but nonexistent, and the error handling in the tool is cryptic/nonexistent as well. Thankfully, once you get it setup, there's not much you need to know about it because you don't really have to interact with it. I had two problems when deploying it. The first problem I had was that BH gives you a seed copy of the database to begin. This seed copy is a different schema than what they use in production on their servers. The datamart schema is simplified and some tables/columns have name changes. My rep accidentally gave me a copy of my database with the production schema rather than the datamart schema, so the tool wouldn't work. The other problem that I had (once I got the correct seed copy of the database) was that the tool kept crashing when I would try to run it. Unfortunately, I cannot remember what the exact problem was. I do recall that it ended up being something simple (I think either the user running the tool didn't have appropriate permissions on the server; or the API credentials in the config file were incorrect; or there was a SQL permissions issue... something with permissions), but since the error handling was so poor, and the response times for support were insufficient for my impatience, I ended up debugging the executable in Visual Studio and figuring it out. TLDR; make sure you check permissions when you're setting it up.

One recurring issue we've had in production is that occasionally the tool will get "stuck" trying to update a particular record. Users will complain that the data in my reports is out of date. When I kill the scheduled task that runs the sync tool and execute it manually in a cmd prompt window so that I can watch its output, I'll see it attempt to sync the same record over and over again. When this happens, I just have to issue the SQL command: "truncate table requeststatus" to clear up the problem. This is the only problem we've ever had in production, and it has occurred only a handful of times in several years. The problems above were only during initial setup.

2. Performance and sync time are generally quite good. During typical day-to-day operations for us, there is virtually no lag time. I have the sync tool set to run every 5 minutes, and I have it set to time itself out after 4m45s. This means that it is generally just listening to the API subscription waiting for an update event constantly, and it will sync it to SQL as soon as it happens. If I make a large batch edit (for instance, I am typing this after having edited ~4,000 records via the API), it can take quite a bit of time (an hour or so) to get caught back up.

3. The only one that has bitten me is the edit history on placementChangeRequests. (Datamart does show edit history [which is awesome and helpful], but be warned! The edit history shown in datamart is not synced from production like the other tables. Rather, it is recreated by the sync tool. This means that while the edit history will usually be the same, if you have two edits to the same record within the time period between two datamart syncs, the changes may appear to be made all by user B instead of user A then user B.) The edit history on other entities is replicated in datamart, and the Bullhorn app itself does track placementChangeRequests edit history, but datamart doesn't for some reason. I had to write a report using the API to get this information for my users. I'm sure there are other omissions, but there are no others that have bothered me / that I can think of. The sync tool leverages the SOAP 2.0 API (or did in the version I have at least), so anything left out of that API would be left out of the datamart tool as well. If you tell me any entities you are particularly concerned about, I'm happy to check for you. I don't want to post an EDR here and potentially violate T&Cs.

Enjoy!
Joe

lucky
User
Posts: 32
Joined: Tue Jul 23, 2013 7:03 am

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by lucky » Thu Mar 20, 2014 10:05 am

Thanks a lot Joe, you gave us insights that we would never had known unless we would have encountered. :D

Thanks again !

Regards,
Lucky

abegerho
User
Posts: 2
Joined: Sat Feb 02, 2013 2:26 pm

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by abegerho » Sat Mar 29, 2014 3:07 pm

Hi Joe,

We are now evaluating the BH DataMart product to see if we can pull some custom reports. Since, your last post was in 2014, I am wondering if you can comment on the following:

1. Are you still using it?
2. Still a satisfied administrator?
3. Do you use the BH S Release? And the DataMart works well along with it?
4. Do you use any Add-on BH products? like BH Backoffice etc.? If so, I am wondering if that DataMart syncs over and provides you access to that data as well.
5. Do you use Windows 2012 server or are you required to use Windows 2008?

Thanks.

joesuffceren
User
Posts: 14
Joined: Wed Dec 19, 2012 1:40 pm

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by joesuffceren » Sat Mar 29, 2014 4:42 pm

1. Are you still using it?
Yes. We have a ton of existing reporting, and I continue to write more to streamline our workflow where there is no native BH functionality to do so.
2. Still a satisfied administrator?
Yes.
3. Do you use the BH S Release? And the DataMart works well along with it?
We are not on S yet, but I confirmed with support that our eventual transition to S will not affect DataMart at all since it is purely a UI change.
4. Do you use any Add-on BH products? like BH Backoffice etc.? If so, I am wondering if that DataMart syncs over and provides you access to that data as well.
We do use BHBO. BHBO is (at this point) a completely separate app with a MySQL backend separate from BH's MSSQL backend. Perhaps they will eventually be integrated, and Datamart will sync BHBO data, but don't hold your breath for that. It won't happen any time soon. I do have some reporting integration with BHBO, though, and also with my GL (SuckBooks--not my favorite :-) ). If you contact me via <my first name> at exactsolutions.biz, I'd be happy to show you what I've done and discuss the options you might have.
5. Do you use Windows 2012 server or are you required to use Windows 2008?
We use it on 2008R2, but it's a really simple, little app. I don't know of any reason why it couldn't run on 2012, but I don't know for certain on that one.

joelm.teb
User
Posts: 1
Joined: Wed Dec 31, 1969 8:00 pm

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by joelm.teb » Tue Apr 22, 2014 3:52 pm

What is this datamart product and how do I get it? I tried to search for other references to it but this is the only relevant thing I can find. Thanks.

joesuffceren
User
Posts: 14
Joined: Wed Dec 19, 2012 1:40 pm

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by joesuffceren » Tue Apr 22, 2014 4:48 pm

It is a service more than a product. Talk to whomever your bullhorn sales rep is or submit a billing ticket, and they'll get you sorted out.

gatreg
User
Posts: 6
Joined: Mon Oct 05, 2015 11:41 am

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by gatreg » Mon Dec 21, 2015 3:14 pm

Joe,

I know this thread is from a while back, and I'm not sure if you're still an active user on this forum, but I want to ask you if you're willing to provide visuals on the types of custom reporting you've developed for your office.

Thanks,

max_max_mir
User
Posts: 77
Joined: Tue Jun 22, 2010 4:25 pm

Re: Building a Customized Reporting Tool W/ Bullhorn Data

Post by max_max_mir » Wed Jan 13, 2016 6:50 pm

I've developed a product that downloads all data on an hourly basis (using python scripts into a MySQL database) and built custom reports (using JasperReports) using the WebServices API. This has been working really well for multiple clients. Contact me if you need more details.
- Y

Post Reply