Logs in to Essbase Server as another user. Logging in as another user can help administrators create scheduled reports with user-appropriate permissions.
This function should normally be called after executing a successful call to EssInit, and prior to making any other API calls which require a context handle argument.
Syntax
ESS_FUNC_M EssLoginAs (hInstance, Server, UserName, Password, UserNameAs, pDbCount, ppDbList, phCtx);
Parameter | Data Type | Description |
---|---|---|
hInstance | ESS_HINST_T | API instance handle. |
Server | ESS_STR_T | Network server name string. The server name can be expressed as hostname, hostname:port, or as a URL representing the APS servlet endpoint with the Essbase failover cluster name; for example: http://myhost:13080/aps/Essbase?clustername=Essbase-Cluster1 For secure mode (SSL), the URL syntax is http[s]://host:port/aps/Essbase?ClusterName=logicalName&SecureMODE=yesORno For example, https://myhost:13080/aps/Essbase?clustername=Essbase-Cluster1&SecureMODE=Yes |
UserName | ESS_STR_T | User name string. |
Password | ESS_STR_T | Password string. |
UserNameAs | ESS_STR_T | User name string for the user you want to impersonate. |
pDbCount | ESS_PUSHORT_T | Address of variable to receive count of accessible applications/databases. |
ppDbList | ESS_APPDB_T | Address of pointer to receive allocated array of application/databasename structures. |
phCtx | ESS_PHCTX_T | Pointer to an Essbase Server context handle. |
Notes
Memory allocated for ppDbList must be freed using EssFree.
You can call EssLogin more than once for the same user name and server. The API returns a unique context handle for each login to the specified server.
Return Value
If successful, returns an Essbase Server context handle in phCtx, which can be used as an argument in subsequent calls to other API functions. Also returns a count of databases accessible to the specified user in pCount, and a list of accessible applications and databases in ppDbList.
Access
You must be an administrator to log in as another user.
Before calling this function, you must first initialize the API and obtain a valid instance handle by calling EssInit.
See Also