which Eclipse 32 or 64 bit should i install?

which eclipse should I install for SDK development of the different BO toolsets ( 326bit or 64bit)
-> Design Studio

-> IDT
-> Data services (4.2)
-> WebI

BI Version 4.1

Thanks


10muscat (BOB member since 2012-09-03)

I’m using 64-bit Eclipse 4.4.2 with the 64 bit Java JDK v7u55 to write java routines to retrieve and extract information from UNX universes using the SAP BI Semantic Layer Java SDK v4.1 SP6. However, to run the routines, I use a 32-bit JRE (either v6 or v7 seem to work).

Todd


twalowit :us: (BOB member since 2015-04-17)

Thanks Todd


10muscat (BOB member since 2012-09-03)

Hi,

I have done quite a lot of work with the SDK for UNV universes both using VBA and C# but now i want to try some of the operations I do on a UNX universe.

I am new to Java but hope i can get into it by “learning by doing”.
Do you have any code you can share to get me started?

I think i have to struggle through 3 levels before i can get it useful

  1. setting up the environment ready for use including the JDK
  2. connect to the server and extract universe information
  3. display some of the information in a form on screen/save to database

Any help on any of the above would be very nice.

Installing Eclipse now…

Best regards
Yakobay

Update:
God great help from Gino’s Quick start guide here:

Now i just need to fetch some information from the universe and display in a gui.

Anyone with sample code?


YakoBay (BOB member since 2006-04-27)

Assuming you have Eclipse installed, the BO Client tools installed, and a 32-bit JRE installed

  1. Your path environment variable needs to contain C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86
  2. Your build path in Eclipse needs to include libraries:
    sl_sdk.jar --> C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\SL SDK\java
    JRE System Libary fora 32 bit JRE (v 6 or v7)
  3. Your Eclipse run configuration needs to include VM argument: -Dbusinessobjects.connectivity.directory=“C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\dataAccess\connectionServer”

Then try to create a new project in Eclipse using code along the lines of what I’ve provided below (update the name of the universe, your BOE server, local path, etc.). Be sure whatever universe you are trying this out on is capable of passing the IDTs integrity checks. I’d recommend starting off by creating a very simple universe just to try to get through the retrieval process. See http://help.sap.com/javadocs/bip/40/slsdk/en/index.html for details on accessing the various objects in the universe once you’ve been able to load it.

import com.crystaldecisions.sdk.exception.SDKException;
import com.crystaldecisions.sdk.framework.CrystalEnterprise;
import com.crystaldecisions.sdk.framework.IEnterpriseSession;
import com.sap.sl.sdk.authoring.businesslayer.RelationalBusinessLayer;
import com.sap.sl.sdk.authoring.cms.CmsResourceService;
import com.sap.sl.sdk.authoring.datafoundation.MonoSourceDataFoundation;
import com.sap.sl.sdk.authoring.local.LocalResourceService;
import com.sap.sl.sdk.framework.SlContext;
import com.sap.sl.sdk.framework.cms.CmsSessionService;

public class RetrieveUniverse {

public static void main(String[] args) throws SDKException {

	String pathUNX = "/Universes/Sample.unx";
	String pathBLX = "C:/temp";
	
	System.out.println("Retrieving universe.");
	
	// Connects to the CMS and creates a session
	System.out.println("Creating BOE enterprise session using login parameters.");
	IEnterpriseSession enterpriseSession = CrystalEnterprise.getSessionMgr().logon("XXXXX", "XXXXX", "XXXXX:6400", "secEnterprise");

	System.out.println("Connecting to BOE server.");
	SlContext context = SlContext.create();
	context.getService(CmsSessionService.class).setSession(enterpriseSession);
	
	CmsResourceService serviceCMS = context.getService(CmsResourceService.class);
	// Retrieves the specified universe into folder pathBLX, updating pathBLX with the new subfolder
	System.out.println("Retrieving universe from BOE server.");
	pathBLX = serviceCMS.retrieveUniverse(pathUNX, pathBLX, true);
	System.out.println ("Local universe path: " + pathBLX);

	System.out.println("Creating Local Resource Service.");
	LocalResourceService service = context.getService(LocalResourceService.class);
	
    //load business layer retrieved from server
    System.out.println("Getting Business Layer.");
    RelationalBusinessLayer businessLayer = (RelationalBusinessLayer) service.load(pathBLX);
    System.out.println("Business Layer Name: " + businessLayer.getName());
	
    //load data foundation
    System.out.println("Getting data foundation.");
	String dfxPath = businessLayer.getDataFoundationPath();
	MonoSourceDataFoundation dataFoundation = (MonoSourceDataFoundation) service.load(dfxPath);
	System.out.println("Data Foundation Name: " + dataFoundation.getName());
	
	//Close session
	System.out.println("Closing session.");
	service.close(dataFoundation);
	service.close(businessLayer);
	context.close();
	enterpriseSession.logoff();
	
	System.out.println("Done!");
	
}

}

Good luck!
Todd


twalowit :us: (BOB member since 2015-04-17)