The Infor OLAP connector is part of the Enterprise Edition.
How it works
XMLA is a SOAP-over-HTTP protocol. Bag of words posts to the endpoint you configure and:- Lists catalogs (OLAP databases) with a
DBSCHEMA_CATALOGSDiscover. - Lists cubes per catalog (
MDSCHEMA_CUBES), then their hierarchies (MDSCHEMA_HIERARCHIES) and measures (MDSCHEMA_MEASURES). - Executes MDX at query time (XMLA
Execute,Format=Tabular).
Catalog/Cube (for example Finance/GL), whose columns are dimension hierarchies (dtype="dimension") and measures (dtype="measure"). The MDX unique name for every column is carried in metadata.unique_name.
Two things are specific to Infor and worth understanding before you configure anything:
The application identity travels inside the XMLA request. Infor database workers authenticate from UserName, Password, and Tenant properties in each request’s XMLA PropertyList — not from HTTP Basic. Bag of words sends both: HTTP Basic reaches the endpoint, and the XMLA properties establish the Infor application identity. Sending Basic alone reaches the worker but leaves the username empty, which the worker rejects.
Farms route through a manager. Infor’s documented connection flow is to send DISCOVER_DATASOURCES to the OLAP Service Manager at http(s)://<server>:<manager_port>/BI/APP/SOAP/OLAPDB. The response lists each database with the URL of the Database Worker that serves it, and all subsequent traffic goes to that worker URL. Enable Manager discovery to have Bag of words perform this bootstrap on connect.
Before you start
- Decide which endpoint you have: a Database Worker XMLA URL (point at it directly) or the OLAP Service Manager URL (enable manager discovery). Worker endpoint paths are farm-specific; the manager endpoint is the documented, stable entry point.
- The Bag of words backend host must reach that URL. The connector posts to the exact URL configured — no path discovery, no redirect handling.
- An Infor EPM user with read access to the OLAP database.
- Know your Tenant value (
singleon single-tenant farms) and whether the datasource is advertised as Secured — manager discovery matches on both. - For ION API Gateway routing, a backend-service
.ionapicredentials file for an authorized application. You will need itspu+ot(token URL),ci(client ID), andcs(client secret) values.
Step 1 — Choose the endpoint
- Direct worker
- Manager discovery (farms)
Set Endpoint URL to the Database Worker’s XMLA URL and leave Manager discovery off. Use this when you already know the worker URL and it is reachable from the backend.
Step 2 — Handle worker host rewriting
Farms advertise internal machine names in the worker URLs they return, and those names rarely resolve from outside the farm. Rewrite worker host is on by default: the hostname in the discovered worker URL is replaced with the host from the endpoint URL you configured (the worker is reached at the same address the manager was), keeping the discovered path and port. Turn it off only when workers genuinely run on different machines whose hostnames the backend can resolve.Step 3 — (Optional) Route through ION API Gateway
When the OLAP farm is fronted by ION API Gateway or another reverse proxy, the worker paths returned by manager discovery have to be mapped onto the external route.1
Set the external worker base
Put the API-suite route that sits in front of
/BI/APP/SOAP/OLAPDB into Worker URL base. It must be an absolute URL. The path returned by discovery is appended to it, and the scheme and host of that base win — which is what makes an HTTPS gateway route survive in front of an HTTP OLAP farm.2
Switch the credentials to ION API Gateway
Choose the ION API Gateway authentication mode and fill it from the backend-service
.ionapi file: pu + ot form the token URL, ci is the client ID, cs is the client secret. Bag of words performs an OAuth client-credentials grant, caches the token until shortly before it expires, sends it as a bearer token on every XMLA call, and retries once with a fresh token if the gateway answers HTTP 401.3
Keep the EPM user
The gateway credentials authenticate the route, not the OLAP user. The Infor username and password are still required and still travel in the XMLA
PropertyList on every worker request.Set Secured to match the value
DISCOVER_DATASOURCES advertises for the datasource. It describes the Infor datasource itself — not the transport — so it stays as the farm reports it even when an HTTPS gateway fronts an HTTP OLAP farm.Connect in Bag of words
Go to Data Sources → Add data source → Infor OLAP and fill in the form.
Test Connection authenticates, lists catalogs, and — when a catalog is configured — also lists that catalog’s cubes on the resolved worker, so a manager-only success cannot mask an unreachable worker. When manager discovery resolved a worker, the message includes the worker URL it will use.
Authentication modes
Username / Password can be shared (one admin-supplied EPM account for everyone) or per-user, where each person supplies their own Infor credentials so the OLAP server applies their own access.
ION API Gateway is system-scope only — the gateway client is a shared backend-service identity, so this mode always runs on one shared credential.
Per-user authentication on database-style connectors requires an Enterprise license. See Authentication.
Troubleshooting
HTTP 404 — 'nothing serves XMLA at this URL path'
HTTP 404 — 'nothing serves XMLA at this URL path'
The host answered but nothing serves XMLA there. If the 404 carries
Server: Microsoft-HTTPAPI/2.0, the message adds the documented hint: point the URL at the OLAP Service Manager (http(s)://<server>:<manager_port>/BI/APP/SOAP/OLAPDB) and enable manager auto-discovery. Worker paths are farm-specific — verify the registered listeners on the OLAP app server.'Multiple databases found on the manager'
'Multiple databases found on the manager'
Manager discovery returned more than one database and cannot choose. Set Catalog to one of the names listed in the error.
'Database X not found on the manager'
'Database X not found on the manager'
The Catalog value does not match any database the manager advertises. The error lists the available names; database names are matched case-sensitively first, then case-insensitively.
'Manager discovery returned no databases'
'Manager discovery returned no databases'
DISCOVER_DATASOURCES came back empty. Check Tenant, Catalog, Secured, and that the user has access to the application — all four restrict the response.Discovery fails with an empty username, or Infor error 1042
Discovery fails with an empty username, or Infor error 1042
An empty application username means the worker got the request without the XMLA identity properties. Error
1042 means the worker parsed the identity and rejected the credential — check the Infor EPM username and password, not the transport.The resolved worker hostname does not resolve
The resolved worker hostname does not resolve
The farm advertised an internal machine name. Keep Rewrite worker host on so the configured host is substituted back in, or set Worker URL base when the worker is reached through a gateway.
'worker_url_base must be an absolute URL'
'worker_url_base must be an absolute URL'
Worker URL base needs both a scheme and a host, for example
https://gateway.example.com/MYTENANT/EPM_OLAP. A bare path is rejected.'ION API Gateway token exchange failed'
'ION API Gateway token exchange failed'
The client-credentials grant against
gateway_token_url was refused. Re-copy pu + ot, ci, and cs from the backend-service .ionapi file, and add gateway_scope if the authorized application requires scopes.Connected, but 0 catalogs found
Connected, but 0 catalogs found
Reported as “No OLAP databases visible to this user — check application access.” The endpoint and credentials are fine; the EPM user has no access to any OLAP database.
