Announcement

Migration of this forum

Dear users of this forum,

we are pleased to inform you that we will be updating the software behind this forum in the near future.

Existing posts, users and categories will remain untouched.

Important:

  • Each user will need to reset their password.
  • Please select "I forgot my password".
  • Enter the email address you used to register in this forum.
  • You will receive an email with a link to set a new password.
  • Please choose a new (secure) password and confirm the process.

We will keep you informed in the pinned thread.

Kind regards,
Your ReportServer Team


Migration des Forums

Liebe Nutzer dieses Forums,

wir freuen uns, euch mitteilen zu können, dass wir in naher Zukunft die Software hinter diesem Forum aktualisieren werden.

Existierende Beiträge, Nutzer und Kategorien bleiben weiterhin bestehen!

Wichtig:

  • Jeder Nutzer muss sein Passwort neu vergeben.
  • Wählt dazu einfach "Ich habe mein Passwort vergessen".
  • Gebt die E-Mail-Adresse ein, mit der ihr registriert seid.
  • Ihr erhaltet eine E-Mail mit einem Link zur Passwortvergabe.
  • Bitte wählt ein neues (sicheres) Passwort und bestätigt den Vorgang.

Wir halten euch im angepinnten Beitrag auf dem Laufenden!

Mit vielen Grüßen
Euer ReportServer Team

#1 2019-12-19 13:39:21

sebjak
Member
Registered: 2019-12-18

Mondrian connection

Hello
I have a problem with a mondrian connection

I have create a MYSQL connection datamart
URL : jdbc:mondrian:Jdbc=jdbc:mysql://localhost:3306/datamart

properties :
type=OLAP
name=datamart
driver=mondrian.olap4j.MondrianOlap4jDriver
jdbcDrivers=com.mysql.jdbc.Driver

Schema : generated withe pentaho workbench

<Schema name="statistiques">
  <Dimension type="StandardDimension" visible="true" highCardinality="false" name="Clients" description="Dimension clients">
    <Hierarchy visible="true" hasAll="false">
      <Table name="dim_clients">
      </Table>
      <Level name="Clients" visible="true" table="dim_clients" column="okcuno" nameColumn="okcunm" type="String" internalType="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never" description="Clients">
      </Level>
    </Hierarchy>
  </Dimension>
  <Dimension type="StandardDimension" visible="true" highCardinality="false" name="Articles" description="Articles">
    <Hierarchy visible="true" hasAll="true">
      <Table name="dim_articles">
      </Table>
      <Level name="Groupe article" visible="true" table="dim_articles" column="mmbuar" nameColumn="desi_buar" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never" description="Groupe article">
      </Level>
      <Level name="Type articles" visible="true" table="dim_articles" column="mmitty" nameColumn="desi_itty" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never" description="Type articles">
      </Level>
    </Hierarchy>
  </Dimension>
  <Dimension type="StandardDimension" visible="true" highCardinality="false" name="Temps" description="Temps">
    <Hierarchy visible="true" hasAll="true">
      <Table name="dim_calendrier">
      </Table>
      <Level name="Annee" visible="true" table="dim_calendrier" column="Annee" nameColumn="Annee" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
      </Level>
      <Level name="Mois" visible="true" table="dim_calendrier" column="Mois" nameColumn="Mois" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
      </Level>
      <Level name="Semaine" visible="true" table="dim_calendrier" column="Semaine" nameColumn="Semaine" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never">
      </Level>
    </Hierarchy>
  </Dimension>
  <Cube name="statistiques" visible="true" description="statistiques" cache="true" enabled="true">
    <Table name="fait_chiffre_affaires" alias="Chiffre_d&#39;affaires">
    </Table>
    <DimensionUsage source="Clients" name="Clients" visible="true" foreignKey="client" highCardinality="false">
    </DimensionUsage>
    <DimensionUsage source="Articles" name="Articles" visible="true" foreignKey="article" highCardinality="false">
    </DimensionUsage>
    <DimensionUsage source="Temps" name="Temps" visible="true" foreignKey="date_facture" highCardinality="false">
    </DimensionUsage>
    <Measure name="TOTAL" column="montant_total" datatype="Numeric" aggregator="sum" description="TOTAL" visible="true">
    </Measure>
  </Cube>
</Schema>




when I run the report I have this error

net.datenwerke.gxtdto.client.servercommunication.exceptions.ServerCallFailedException
<br>    at net.datenwerke.rs.saiku.server.rest.SaikuRpcServiceImpl.loadCubesFor(SaikuRpcServiceImpl.java:121)
<br>    at net.datenwerke.security.service.security.aop.SecurityCheckInterceptor.invoke(SecurityCheckInterceptor.java:109)
<br>    at net.datenwerke.gf.service.gwtstacktrace.CatchStacktraceInterceptor.invoke(CatchStacktraceInterceptor.java:38)
<br>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
<br>    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
<br>    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
<br>    at java.lang.reflect.Method.invoke(Unknown Source)
<br>    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:587)
<br>    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:333)
<br>    at net.datenwerke.security.service.security.aop.SecurityCheckInterceptor.invoke(SecurityCheckInterceptor.java:109)
<br>    at net.datenwerke.gf.service.gwtstacktrace.CatchStacktraceInterceptor.invoke(CatchStacktraceInterceptor.java:38)
<br>    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:303)
<br>    at net.datenwerke.security.service.security.aop.SecurityCheckInterceptor.invoke(SecurityCheckInterceptor.java:109)
<br>    at net.datenwerke.gf.service.gwtstacktrace.CatchStacktraceInterceptor.invoke(CatchStacktraceInterceptor.java:38)
<br>    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:373)
<br>    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
<br>    at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
<br>    at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
<br>    at net.datenwerke.security.service.security.aop.SecurityCheckInterceptor.invoke(SecurityCheckInterceptor.java:109)
<br>    at net.datenwerke.gf.service.gwtstacktrace.CatchStacktraceInterceptor.invoke(CatchStacktraceInterceptor.java:38)
<br>    at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
<br>    at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
<br>    at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
<br>    at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
<br>    at com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:89)
<br>    at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
<br>    at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
<br>    at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
<br>    at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
<br>    at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
<br>    at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
<br>    at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
<br>    at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
<br>    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
<br>    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
<br>    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
<br>    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
<br>    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
<br>    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
<br>    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
<br>    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678)
<br>    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
<br>    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
<br>    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:367)
<br>    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
<br>    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:860)
<br>    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1598)
<br>    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
<br>    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
<br>    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
<br>    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
<br>    at java.lang.Thread.run(Unknown Source)
<br>Caused by: java.lang.NullPointerException
<br>    at mondrian.rolap.RolapSchema$PhysLink.deriveSql(RolapSchema.java:2046)
<br>    at mondrian.rolap.RolapSchema$PhysLink.&lt;init&gt;(RolapSchema.java:2004)
<br>    at mondrian.rolap.RolapSchema$PhysSchema.addLink(RolapSchema.java:945)
<br>    at mondrian.rolap.RolapSchemaUpgrader.registerRelation(RolapSchemaUpgrader.java:3013)
<br>    at mondrian.rolap.RolapSchemaUpgrader.convertHierarchy(RolapSchemaUpgrader.java:2800)
<br>    at mondrian.rolap.RolapSchemaUpgrader.convertDimension(RolapSchemaUpgrader.java:2707)
<br>    at mondrian.rolap.RolapSchemaUpgrader.convertCubeDimension(RolapSchemaUpgrader.java:735)
<br>    at mondrian.rolap.RolapSchemaUpgrader.convertCube(RolapSchemaUpgrader.java:201)
<br>    at mondrian.rolap.RolapSchemaUpgrader.convertSchema(RolapSchemaUpgrader.java:2208)
<br>    at mondrian.rolap.RolapSchemaUpgrader.upgrade(RolapSchemaUpgrader.java:125)
<br>    at mondrian.rolap.RolapSchemaLoader.loadStage0(RolapSchemaLoader.java:254)
<br>    at mondrian.rolap.RolapSchemaLoader.createSchema(RolapSchemaLoader.java:4303)
<br>    at mondrian.rolap.RolapSchemaPool.get(RolapSchemaPool.java:210)
<br>    at mondrian.rolap.RolapSchemaPool.get(RolapSchemaPool.java:62)
<br>    at mondrian.rolap.RolapConnection.&lt;init&gt;(RolapConnection.java:160)
<br>    at mondrian.rolap.RolapConnection.&lt;init&gt;(RolapConnection.java:84)
<br>    at mondrian.olap.DriverManager.getConnection(DriverManager.java:112)
<br>    at mondrian.olap.DriverManager.getConnection(DriverManager.java:68)
<br>    at mondrian.olap4j.MondrianOlap4jConnection.&lt;init&gt;(MondrianOlap4jConnection.java:153)
<br>    at mondrian.olap4j.FactoryJdbc4Plus$AbstractConnection.&lt;init&gt;(FactoryJdbc4Plus.java:323)
<br>    at mondrian.olap4j.FactoryJdbc41Impl$MondrianOlap4jConnectionJdbc41.&lt;init&gt;(FactoryJdbc41Impl.java:118)
<br>    at mondrian.olap4j.FactoryJdbc41Impl.newConnection(FactoryJdbc41Impl.java:32)
<br>    at mondrian.olap4j.MondrianOlap4jDriver.connect(MondrianOlap4jDriver.java:139)
<br>    at java.sql.DriverManager.getConnection(Unknown Source)
<br>    at java.sql.DriverManager.getConnection(Unknown Source)
<br>    at net.datenwerke.rs.saiku.service.saiku.OlapUtilServiceImpl.getOlapConnection(OlapUtilServiceImpl.java:340)
<br>    at net.datenwerke.rs.saiku.service.saiku.OlapUtilServiceImpl.getCubes(OlapUtilServiceImpl.java:141)
<br>    at net.datenwerke.rs.saiku.server.rest.SaikuRpcServiceImpl.loadCubesFor(SaikuRpcServiceImpl.java:118)
<br>    ... 51 more
<br>

And it's not possible to choose the Cube
Thank's for your help

Offline

#2 2019-12-19 15:15:11

IF_Eduardo
Administrator
Registered: 2016-11-01
Website

Re: Mondrian connection

Hi sebjak,

currently, reportserver supports mondrian 4 cubes only, please check here: https://reportserver.net/en/tutorials/upgrade-30/

"In ReportServer 3.0.3, the Saiku and Mondrian libraries were upgraded to 3.8 and 4.x, respectively. These are in most of the cases not backward compatible. This means the following:
Pivot table variants: you have to create new variants, configure them, and save them again.
Mondrian datasources: if your Mondrian XML schema is defined in reportserver, you shall upgrade the schema to version 4, i.e. it must contain: "<Schema name="YourSchema" metamodelVersion="4.0">". More information here."

Your schema definition seems not to be version 4.0 ( no metamodelVersion="4.0" )

Thus said, we are working on support of Mondrian 3 datasources too.

Regards,
Eduardo

Offline

#3 2019-12-19 15:52:53

sebjak
Member
Registered: 2019-12-18

Re: Mondrian connection

Tnanks for your return
Maybe you know if a schema workbench soft exist for version 4 ?

Offline

#4 2019-12-19 22:09:29

IF_Eduardo
Administrator
Registered: 2016-11-01
Website

Re: Mondrian connection

Hi sebjak,

I would recommend you to use the pivot report of a dynamic list. Internally, a mondrian cube is created dynamically and you have all advantages of a dynamic list + mondrian without having to write / maintain the XML cube manually. And the interface is the same interface you have with cube reports. Internally, as I mentioned, a pivot report is a cube report. The only difference is that the XML schema is created and maintained by reportserver. Please take a look at this: https://reportserver.net/en/guides/user … amic-List/
All the ad-hoc reporting advantages of the dynamic list are of course available in pivot reports too.

Regards,
Eduardo

Offline

#5 2019-12-20 13:19:28

sebjak
Member
Registered: 2019-12-18

Re: Mondrian connection

Hi
thank's for the answer
I have a look about the solution ! Sorry but I have a new question ?
on the left of the screen you have Pivot/preview
On m'y screen, I only have preview !

Have I miss something during the setup ?

Thank's

Offline

#6 2019-12-20 14:51:07

IF_Eduardo
Administrator
Registered: 2016-11-01
Website

Re: Mondrian connection

Hi sebjak,

you first have to activate the pivot mode, like this:

https://reportserver.net/en/guides/user … amic-List/

"To switch to Pivot mode choose the Pivot option from the toolbar and acknowledge the subsequent check. This will trigger a reload of the Dynamic List now in Pivot mode. The effect is that the aspects list configuration and preview have been replaced by Dimensions/Measures and Pivot/Preview. The aspects parameters, computed columns and pre filter remain visible and are identical to before.

"

You should see a "pivot" button in your dynamic list.

Regards,
Eduardo

Offline

#7 2019-12-20 15:05:19

sebjak
Member
Registered: 2019-12-18

Re: Mondrian connection

Sorry but I don't have the button in the toolbar
I have
Export excel / Send to / Schedule !

Offline

#8 2019-12-20 15:22:17

IF_Eduardo
Administrator
Registered: 2016-11-01
Website

Re: Mondrian connection

Hi sebjak,

this is an enterprise feature, you may use an enterprise evaluation to take a look at the functionality, or you can take a look at the demo system here:
http://demo.raas.datenwerke.net/?locale=en  (demoadmin, demoadmin)

You should see the "pivot" button in every dynamic list.

Regards,
Eduardo

Offline

#9 2019-12-23 09:17:29

sebjak
Member
Registered: 2019-12-18

Re: Mondrian connection

Hello
Ok I understand why now. I use the community version for the moment, in order to understand the soft.
If I want an OLAP, I must writh the xml Schema in mondrain  version 4.

Thank's for your help

Offline

#10 2019-12-23 15:46:05

IF_Eduardo
Administrator
Registered: 2016-11-01
Website

Re: Mondrian connection

Hi sebjak,

in order to understand the software, I would recommend the enterprise evaluation version. There you can see how easy it is to use pivot reports, you don't have to maintain xml cubes by hand, it is done automatically smile you can download a 45-day trial enterprise version from here: https://reportserver.net/en/get-enterprise/

Regards,
Eduardo

Offline

Board footer

Powered by FluxBB