cancel
Showing results for 
Search instead for 
Did you mean: 

BOE SDK best practice in regards to deployment - custom audit database

Former Member
0 Kudos

Hi,

  I'm looking to write an app that extracts info from the CMS.  This will get just all the users and user groups, and it will get all the reports and their paths.  I can worry about getting more later.  Maybe I can deploy it once and it will update nightly.  I was going to write it in Java and not .NET, I feel a bit more comfortable in Java. Although I do love Visual Studio, the last couple times I set it up it was a real pain if I didn't have the latest and greatest MSDN subscription to go with it.

1.  I know I can just create an application that sits on the BOE box and schedule it with windows scheduler.  Has anyone done this before with an SAP BI SDK app?

2.  While I appreciate knowing all the possible ways of doing something, I'm not looking here to get all of the ways to do this.  Unless there is a single best practice that pretty much everyone does.

Thanks!

Accepted Solutions (1)

Accepted Solutions (1)

DellSC
Active Contributor
0 Kudos

I have done similar things, but I usually inherit from IProgramBase.  That way I can upload the program to BO and run it on a schedule from there.  I also output the information to .csv files, which can be easily opened in Excel or uploaded to SQL Server.

-Dell

Former Member
0 Kudos

Thanks so much Dell!

  How do you create the deployment artifacts?  Do you create and executable jar?  I havent heard anything about this IProgramBase yet, this sounds liek just what I needed to know

DellSC
Active Contributor
0 Kudos

Yes, I create an executable .jar.

The reason that you want to inherit from IProgramBase is that it knows how to handle the parameters that BO passes to it.  BO passes the following in this order:

UserID

Password

CMS Name

Authentication Type (like 'secEnterprise' or 'secWinAD', etc.)

It then passes in any other parameters that you've configured when you set up the program schedule.

-Dell

Former Member
0 Kudos

Thanks so much Dell!

  I have a question now - if I implement the IProgramBase then it would make sense that I wouldnt have a main method.  If I don't have a main method, then how can you create an executable .jar file?  What am I missing here? 

Mike

DellSC
Active Contributor
0 Kudos

I use the Main method for testing outside of BO.  It will establish the connection to BO (IEnterpriseSession and IInfoStore) and then call the Run method using those and the rest of the arguments (if any).  The Run method is what BO when it runs the program.

-Dell

Former Member
0 Kudos

Dell thanks so much!

So you actually leave the main method in your program?  I understand that you can use the main method in for testing but do you create a "version" with the main method not included for deployment to BOE?  If so, how do you do create an executable jar with no main method?

Thanks!

Former Member
0 Kudos

I'm guessing I do not need to create a runnable jar file, I just can create a utility jar file?

DellSC
Active Contributor
0 Kudos

I just leave the main method in there.  It doesn't hurt anything as long as you also have the Run method there too.  And it needs to be a runnable jar.

-Dell

Former Member
0 Kudos

Thanks so much Dell!  I have one more question!

I am using opencsv for this app.

If I did not need opencsv, I could deploy it to BOE and I would not need to package or extract the jars that the program needs. The reason being that BusinessObjects already has them in the java/lib folder - as you know!

However, how can I include the opencsv jar without packaging all the jars with my runnable jar? Basically, I need to do the same as "configure build path" in Ecplise for my project, but I need to do that through the Business Objects platform, so that I am configuring their build path.

Do you know what I'm talking about?

DellSC
Active Contributor
0 Kudos

When you publish a program to BO, you have an option of adding to the build path in the properties of the program.

-Dell

Answers (0)