Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

declare @dbName nvarchar(MAX); set @dbName = 'DATAWAREHOUSE_NAME' --Replace DATAWAREHOUSE_NAME by the desired name for your datawarehouse database execute ('CREATE DATABASE ' + @dbName); execute ('use ' + @dbName + '; ' + 'create table dbo.IC_D_ROUTE ( ID varchar(255) not null, CODE varchar(255), EXTERNAL_ID varchar(255), ROUTE_DATE date, DOMAIN_CODE varchar(255), LOGISTICS_STATUS varchar(255), TRUCK_CODE varchar(255), DRIVER_CODE varchar(255), TRAILER_CODE varchar(255), PROVIDER_CODE varchar(255), INVOLVED_PROVIDER_CODE varchar(255), VALORIZED_PROVIDER_CODE varchar(255), primary key(ID) ); create table dbo.IC_M_ROUTE ( ID_ROUTE varchar(255) not null, TOTAL_DISTANCE_PREDICTED numeric(19,6), TOTAL_DISTANCE numeric(19,6), NOMINAL_DIFF_TOTAL_DISTANCE numeric(19,6), RELATIVE_DIFF_TOTAL_DISTANCE numeric(19,6), TOTAL_TIME_PREDICTED numeric(19,6), TOTAL_TIME numeric(19,6), NOMINAL_DIFF_TOTAL_TIME numeric(19,6), RELATIVE_DIFF_TOTAL_TIME numeric(19,6), UV_DELIVERED_PREDICTED numeric(19,6), UV_DELIVERED numeric(19,6), NOMINAL_DIFF_UV_DELIVERED numeric(19,6), RELATIVE_DIFF_UV_DELIVERED numeric(19,6), UP_DELIVERED_PREDICTED numeric(19,6), UP_DELIVERED numeric(19,6), NOMINAL_DIFF_UP_DELIVERED numeric(19,6), RELATIVE_DIFF_UP_DELIVERED numeric(19,6), UQ_DELIVERED_PREDICTED numeric(19,6), UQ_DELIVERED numeric(19,6), NOMINAL_DIFF_UQ_DELIVERED numeric(19,6), RELATIVE_DIFF_UQ_DELIVERED numeric(19,6), UM_DELIVERED_PREDICTED numeric(19,6), UM_DELIVERED numeric(19,6), NOMINAL_DIFF_UM_DELIVERED numeric(19,6), RELATIVE_DIFF_UM_DELIVERED numeric(19,6), UV_COLLECTED_PREDICTED numeric(19,6), UV_COLLECTED numeric(19,6), NOMINAL_DIFF_UV_COLLECTED numeric(19,6), RELATIVE_DIFF_UV_COLLECTED numeric(19,6), UP_COLLECTED_PREDICTED numeric(19,6), UP_COLLECTED numeric(19,6), NOMINAL_DIFF_UP_COLLECTED numeric(19,6), RELATIVE_DIFF_UP_COLLECTED numeric(19,6), UQ_COLLECTED_PREDICTED numeric(19,6), UQ_COLLECTED numeric(19,6), NOMINAL_DIFF_UQ_COLLECTED numeric(19,6), RELATIVE_DIFF_UQ_COLLECTED numeric(19,6), UM_COLLECTED_PREDICTED numeric(19,6), UM_COLLECTED numeric(19,6), NOMINAL_DIFF_UM_COLLECTED numeric(19,6), RELATIVE_DIFF_UM_COLLECTED numeric(19,6), START_DATE_PREDICTED datetime, START_DATE datetime, NOMINAL_DIFF_START_DATE int, END_DATE_PREDICTED datetime, END_DATE datetime, NOMINAL_DIFF_END_DATE int, FILLRATE_UV numeric(19,6), FILLRATE_UV_PREDICTED numeric(19,6), NOMINAL_DIFF_FILLRATE_UV numeric(19,6), RELATIVE_DIFF_FILLRATE_UV numeric(19,6), FILLRATE_UP numeric(19,6), FILLRATE_UP_PREDICTED numeric(19,6), NOMINAL_DIFF_FILLRATE_UP numeric(19,6), RELATIVE_DIFF_FILLRATE_UP numeric(19,6), #SITES_DELIVERED int, #SITES_DELIVERED_PREDICTED int, NOMINAL_DIFF_#SITES_DELIVERED int, RELATIVE_DIFF_#SITES_DELIVERED numeric(19,6), #SITES_COLLECTED int, #SITES_COLLECTED_PREDICTED int, NOMINAL_DIFF_#SITES_COLLECTED int, RELATIVE_DIFF_#SITES_COLLECTED numeric(19,6), #OPERATIONS_DELIVERED int, #OPERATIONS_DELIVERED_PREDICTED int, NOMINAL_DIFF_#OPERATIONS_DELIVERED int, RELATIVE_DIFF_#OPERATIONS_DELIVERED numeric(19,6), #OPERATIONS_COLLECTED int, #OPERATIONS_COLLECTED_PREDICTED int, NOMINAL_DIFF_#OPERATIONS_COLLECTED int, RELATIVE_DIFF_#OPERATIONS_COLLECTED numeric(19,6), TRANSPORTATION_COST_PREDICTED numeric(19,6), TRANSPORTATION_COST numeric(19,6), NOMINAL_DIFF_TRANSPORTATION_COST numeric(19,6), RELATIVE_DIFF_TRANSPORTATION_COST numeric(19,6), RATIO_UVKM_PREDICTED numeric(19,6), RATIO_UVKM numeric(19,6), NOMINAL_DIFF_RATIO_UVKM numeric(19,6), RELATIVE_DIFF_RATIO_UVKM numeric(19,6), RATIO_UPKM_PREDICTED numeric(19,6), RATIO_UPKM numeric(19,6), NOMINAL_DIFF_RATIO_UPKM numeric(19,6), RELATIVE_DIFF_RATIO_UPKM numeric(19,6), RATIO_KMUV_PREDICTED numeric(19,6), RATIO_KMUV numeric(19,6), NOMINAL_DIFF_RATIO_KMUV numeric(19,6), RELATIVE_DIFF_RATIO_KMUV numeric(19,6), RATIO_KMUP_PREDICTED numeric(19,6), RATIO_KMUP numeric(19,6), NOMINAL_DIFF_RATIO_KMUP numeric(19,6), RELATIVE_DIFF_RATIO_KMUP numeric(19,6), RATIO_COSTUP numeric(19,6), RATIO_COSTUP_PREDICTED numeric(19,6), NOMINAL_DIFF_RATIO_COSTUP numeric(19,6), RELATIVE_DIFF_RATIO_COSTUP numeric(19,6), RATIO_COSTUV numeric(19,6), RATIO_COSTUV_PREDICTED numeric(19,6), NOMINAL_DIFF_RATIO_COSTUV numeric(19,6), RELATIVE_DIFF_RATIO_COSTUV numeric(19,6), RATIO_COSTKM numeric(19,6), RATIO_COSTKM_PREDICTED numeric(19,6), NOMINAL_DIFF_RATIO_COSTKM numeric(19,6), RELATIVE_DIFF_RATIO_COSTKM numeric(19,6), primary key(ID_ROUTE) ); create table dbo.IC_D_SEQUENCE ( ID_ROUTE varchar(255) not null, ACTIVITY_CODE varchar(255) not null, SITE_CODE varchar(255) not null, PASSAGE_INDEX int not null, ROUTE_ORDER int, STARTING_SITE_CODE varchar(255), primary key(ID_ROUTE, ACTIVITY_CODE, SITE_CODE, PASSAGE_INDEX) ); create table dbo.IC_D_OPERATION ( ID varchar(255) not null, DIVISION_INDEX int not null, ID_ROUTE varchar(255), CLIENT_SITE_CODE varchar(255), DEPOSIT_SITE_CODE varchar(255), PRODUCT_CODE varchar(255), PACKAGING_CODE varchar(255), CLIENT_SEQ_ACTIVITY_CODE varchar(255), CLIENT_SEQ_SITE_CODE varchar(255), CLIENT_SEQ_PASSAGE_INDEX int, DEPOSIT_SEQ_ACTIVITY_CODE varchar(255), DEPOSIT_SEQ_SITE_CODE varchar(255), DEPOSIT_SEQ_PASSAGE_INDEX int, primary key(ID, DIVISION_INDEX) ); create table dbo.IC_M_SEQUENCE ( ID_ROUTE varchar(255) not null, ACTIVITY_CODE varchar(255) not null, SITE_CODE varchar(255) not null, PASSAGE_INDEX int not null, TOTAL_TIME_PREDICTED int, TOTAL_TIME int, NOMINAL_DIFF_TOTAL_TIME int, RELATIVE_DIFF_TOTAL_TIME numeric(19,6), UV_PREDICTED numeric(19,6), UV numeric(19,6), NOMINAL_DIFF_UV numeric(19,6), RELATIVE_DIFF_UV numeric(19,6), UP_PREDICTED numeric(19,6), UP numeric(19,6), NOMINAL_DIFF_UP numeric(19,6), RELATIVE_DIFF_UP numeric(19,6), UQ_PREDICTED numeric(19,6), UQ numeric(19,6), NOMINAL_DIFF_UQ numeric(19,6), RELATIVE_DIFF_UQ numeric(19,6), UM_PREDICTED numeric(19,6), UM numeric(19,6), NOMINAL_DIFF_UM numeric(19,6), RELATIVE_DIFF_UM numeric(19,6), START_DATE_PREDICTED datetime, START_DATE datetime, NOMINAL_DIFF_START_DATE int, END_DATE_PREDICTED datetime, END_DATE datetime, NOMINAL_DIFF_END_DATE int, primary key(ID_ROUTE, ACTIVITY_CODE, SITE_CODE, PASSAGE_INDEX) ); create table dbo.IC_M_OPERATION ( ID_OPERATION varchar(255) not null, DIVISION_INDEX int not null, UV_PREDICTED numeric(19,6), UV_INITIAL numeric(19,6), UV_REALISED numeric(19,6), NOMINAL_DIFF_UV numeric(19,6), RELATIVE_DIFF_UV numeric(19,6), UP_PREDICTED numeric(19,6), UP_INITIAL numeric(19,6), UP_REALISED numeric(19,6), NOMINAL_DIFF_UP numeric(19,6), RELATIVE_DIFF_UP numeric(19,6), UQ_PREDICTED numeric(19,6), UQ_INITIAL numeric(19,6), UQ_REALISED numeric(19,6), NOMINAL_DIFF_UQ numeric(19,6), RELATIVE_DIFF_UQ numeric(19,6), UM_PREDICTED numeric(19,6), UM_INITIAL numeric(19,6), UM_REALISED numeric(19,6), NOMINAL_DIFF_UM numeric(19,6), RELATIVE_DIFF_UM numeric(19,6), primary key(ID_OPERATION, DIVISION_INDEX) ); create table dbo.IC_D_LOGISTIC_AREA ( ID varchar(255) not null, LABEL varchar(255), primary key(ID) ); create table dbo.IC_D_SITE ( ID varchar(255) not null, LABEL varchar(255), primary key(ID) ); create table dbo.IC_D_PRODUCT ( ID varchar(255) not null, LABEL varchar(255), primary key(ID) ); create table dbo.IC_D_PROVIDER ( ID varchar(255) not null, LABEL varchar(255), primary key(ID) ); create table dbo.IC_D_TRUCK ( ID varchar(255) not null, LABEL varchar(255), primary key(ID) ); create table dbo.IC_D_DRIVER ( ID varchar(255) not null, LABEL varchar(255), primary key(ID) ); create table dbo.IC_D_TRAILER ( ID varchar(255) not null, LABEL varchar(255), primary key(ID) ); CREATE TABLE dbo.IC_D_ROUTE_INVOLVED_PROVIDERS ( ID_ROUTE VARCHAR(255) NOT NULL, ID_PROVIDER VARCHAR(255) NOT NULL, PRIMARY KEY(ID_ROUTE, ID_PROVIDER) ); CREATE TABLE dbo.IC_D_ROUTE_VALORIZED_PROVIDERS ( ID_ROUTE VARCHAR(255) NOT NULL, ID_PROVIDER VARCHAR(255) NOT NULL, PRIMARY KEY(ID_ROUTE, ID_PROVIDER) ); CREATE LOGIN [' + @dbName + '] WITH PASSWORD=N''' + @dbName + ''', DEFAULT_DATABASE=[' + @dbName + '], DEFAULT_LANGUAGE=[us_english], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF ALTER LOGIN [' + @dbName + '] ENABLE ALTER SERVER ROLE [bulkadmin] ADD MEMBER [' + @dbName + '] ALTER SERVER ROLE [sysadmin] ADD MEMBER [' + @dbName + '] CREATE USER ' + @dbName + ' FROM LOGIN ' + @dbName + ' ALTER USER ' + @dbName + ' WITH DEFAULT_SCHEMA=[dbo] EXEC sp_addrolemember ''db_owner'', ''' + @dbName + ''' USE [master] GRANT CONNECT ANY DATABASE, AUTHENTICATE SERVER, CONNECT SQL, CONNECT ANY DATABASE TO [' + @dbName + '] WITH GRANT OPTION AS sa RECONFIGURE ; USE [' + @dbName + '] ALTER ROLE [db_owner] ADD MEMBER [' + @dbName + '] RECONFIGURE ; ');

past the script "01 Datawarehouse main database creation" in SQL Server Management Studio and replace DATAWAREHOUSE_NAME (don't replace the punctuation marks) by the desired name for your datawarehouse database.

1/ Launch SQL Server Management Studio.



2/ Click on "New query".

3/ Copy and paste the script below in SQL Server Management Studio and replace DATAWAREHOUSE_NAME by the desired name for your datawarehouse database.

Code Block
titleCopy the following text into the opened tab:
linenumberstrue
collapsetrue

Image Added

4/ Click on "Execute". You should have a confirmation message "Command(s) completed successfully".Image Removed



Create Reporting cache database

...

1/ Double click on the "Axiodis BI OpenSource.exe" file to start the installation.

2/ Click on the "Next" button until the target directory screen.


3/ A screen will ask you a directory to install SpagoBI. Choose the Tomcat directory of Axiodis:

C:\Program FIles\Optilogistic\Axiodis\...\tomcat

Warning

Be careful to the directory, check it to be sure that SpagoBI will be install in the good one and not in a sub-folder.


4/ A pop-up will tell you that the folder already exist. Check the directory and click on "Yes" to confirm if it's ok.

5/ Choose the installation type you want (1/ installation from scratch, 2/ installation over an existing Axiodis with a Tomcat server, 3/ update of an existing reporting installation).

6/ Click on the install button.
7/ At the end of the installation, click on the "Next" button, do not take care about the message for now.

8/ Check "Open the configuration file" if you want to open the settings file directly. Click on "Finish" to close the installer.

Reporting tool setup

If your version is 6.9.0.0 or later, please skip this step.

1/ Open the file C:\Program Files\Optilogistic\Axiodis6\...\tomcat\conf\bi\context.xml

and copy in C:\Program Files\Optilogistic\Axiodis6\...\tomcat\conf\context.xml all missing lines and only them.

Warning

There is two different files called "context.xml":

C:\Program Files\Optilogistic\Axiodis6\...\tomcat\conf\bi\context.xml → Temporary file with setup variables for the reporting tool.

C:\Program Files\Optilogistic\Axiodis6\...\tomcat\conf\context.xml → The target file. Setup configuration will be in it. 



Code Block
languagexml
titleExample of code to add to the target context.xml file
linenumberstrue
collapsetrue
<!-- BI main datasource -->
<Environment name="bi_resource_path" type="java.lang.String" value="${catalina.home}/../bi"/>
<Environment name="bi_sso_class" type="java.lang.String" value="it.eng.spagobi.services.common.FakeSsoService"/>
<!--<Environment name="bi_sso_class" type="java.lang.String" value="it.eng.spagobi.services.cas.CasSsoService3"/>-->
<Environment name="bi_service_url" type="java.lang.String" value="http://#{HOSTNAME}:8080/bi"/>
<Environment name="bi_host_url" type="java.lang.String" value="http://#{HOSTNAME}:8080"/>
<!--# Define the global hibernate dialect to be used for the main JNDI Datasource -->
<Environment name="jdbc/bi_dialect" type="java.lang.String" value="org.hibernate.dialect.HSQLDialect"/>
<Environment name="jdbc/bi_cache_dialect" type="java.lang.String" value="org.hibernate.dialect.SQLServerDialect"/>
<!--TODO: Currently the JBPM, cache and quartz are REQUIRED to be on SqlServer Database!-->

<!--This is the main schema portable database-->
<Resource name="jdbc/axio-bi" auth="Container"
type="javax.sql.DataSource" driverClassName="org.hsqldb.jdbcDriver"
url="jdbc:hsqldb:file:${catalina.base}/database/axiodisbi"
username="sa" password="" maxTotal="64" maxIdle="8"
maxWaitMillis="-1" validationQuery="select 1 from INFORMATION_SCHEMA.SYSTEM_USERS"/>
<!--This is where the BI extract, trasform, load and store the big data-->
<Resource name="jdbc/axio-bi-cache" auth="Container"
type="javax.sql.DataSource" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://#{CACHE_HOSTNAME}:#{CACHE_HOSTPORT};databaseName=#{CACHE_DB}"
username="#{CACHE_DB_USERNAME}" password="#{CACHE_DB_PASSWD}" maxTotal="64" maxIdle="8" maxWaitMillis="-1"/>
<!--This is where the BI reads the real time data coming unaggregaged from the axiodis database-->
<Resource name="jdbc/axio-bi-operational" auth="Container"
type="javax.sql.DataSource" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://#{AXIODIS_HOSTNAME}:#{AXIODIS_HOSTPORT};databaseName=#{AXIODIS_DB}"
username="#{AXIODIS_DB_USERNAME}" password="#{AXIODIS_DB_PASSWD}" maxTotal="64" maxIdle="8" maxWaitMillis="-1"/>
<!--This is where the BI reads the MIA flux aggregaged data from the Infocenter database-->
<Resource name="jdbc/axio-bi-reporting" auth="Container"
type="javax.sql.DataSource" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://#{INFOCENTER_HOSTNAME}:#{INFOCENTER_HOSTPORT};databaseName=#{INFOCENTER_DB}"
username="#{INFOCENTER_DB_USERNAME}" password="#{INFOCENTER_DB_PASSWD}" maxTotal="64" maxIdle="8" maxWaitMillis="-1"/>

<Resource name="wm/BiWorkManager" auth="Container"
type="commonj.work.WorkManager" factory="de.myfoo.commonj.work.FooWorkManagerFactory" maxThreads="8"/>


If your version is 6.9.0.0 or later, please skip this step.

2/ Paste them just after the tag  <Context containerSciFilter=""> in the target file.

Image Modified

3/ Setup the database accesses in the target context.xml file. You have to replace some variables in the file (look at the list on the right).

You have three database accesses to setup:

  1. axio-bi-operational → The Axiodis main database with all datas.
  2. axio-bi-reporting → The Axiodis datawarehouse database. Contains datas to build reportings.
  3. axio-bi-cache → The Reporting tool database, used to stock reports and settings from the reporting tool.

List of variables to replace:

#{HOSTNAME} → Axiodis server hostname

Ex: gcrec02.optilogistic.dom

#{CACHE_HOSTNAME} → Cache database hostname

Ex: gcsql01

#{CACHE_HOSTPORT} → Cache database hostport number

Ex: 1533


Info
titleHow to find your hostport number ?

 Image Modified

#{CACHE_DB} → Cache database name

Ex: REC_V6_MINOR_BI1

#{CACHE_DB_USERNAME} → Cache database username

Ex: REC_V6_MINOR_BI1

#{CACHE_DB_PASSWD} → Cache database password

#{AXIODIS_HOSTNAME} → Axiodis main database hostname

Ex: gcsql01

#{AXIODIS_HOSTPORT} → Axiodis main database hostport number

#{AXIODIS_DB} → Axiodis main database name

Ex: REC_V6_MINOR_AX1

#{AXIODIS_DB_USERNAME} → Axiodis main database username

Ex: REC_V6_MINOR_AX1

#{AXIODIS_DB_PASSWD} → Axiodis main database password

#{INFOCENTER_HOSTNAME} → Axiodis datawarehouse database hostname

Ex: gcsql01

#{INFOCENTER_HOSTPORT} → Axiodis datawarehouse database hosport number

#{INFOCENTER_DB} → Axiodis datawarehouse name

Ex: REC_V6_MINOR_IC1

#{INFOCENTER_DB_USERNAME} → Axiodis datawarehouse database username

#{INFOCENTER_DB_PASSWD} → Axiodis datawarehouse database password

4/ In C:\Program Files\Optilogistic\Axiodis6\...\tomcat\conf\logging.properties add the following line if missing:

No Format
org.apache.jasper.servlet.TldScanner.level = SEVERE



5/ In C:\Program Files\Optilogistic\Axiodis6\...\conf\axio.remote.properties add the following line:

No Format
axio.reporting.app.remote.url=http\://#{HOSTNAME}:8080/bi

Replace #{HOSTNAME} by the Axiodis server hostname (see step 3).

Image Modified

6/ In C:\Program Files\Optilogistic\Axiodis6\...\tomcat\conf\server.xml add the following line:

No Format
maxHttpHeaderSize="65536"


Image Modified

7/ In C:\Program Files\Optilogistic\Axiodis6\...\apache\conf\httpd.conf add the following line:

No Format
JkMount /bi* axiodisWorker


Image Modified


Add MIA streams to populate the Datawarehouse database

...