Versions Compared

Key

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

...

To install software from the distribution package (find the archive in ftp://ftp.ucs.ru/rk7/versions/7_05_03/STANDALONES/ folder), copy the REPSERV.INI file from \bin\win\ini\ folder to \bin\win\ working folder where rkReportServer.exe is located.

...

When is Reports Server Needed?

  1. A report reports server is needed when it is necessary to divide reports and references info into separate tasks.
  2. A report reports server is required to generate reports (with prior re-calculation recalculation of cubes) and to view them in the manager station (the license is needed, connection to the internal SQL database is set up);

...

Note
Licensing is necessary if the report reports server is supposed to be used for data collection and cube reports generation. The license is bound to the full object code (9 digits) and the key code.
Prior to licensing, the reports server needs to be created in the manager station, in the Settings Options - OLAP reports - Reports Reporting servers reference.

Reports server licensing procedure is identical to references server licensing procedure described in the article on the References server.

Briefly, the procedure is as follows:

  • Open Settings Options - OLAP reports - Report Reporting servers reference; reference
  • Select the server;

...

Info
Executing the paragraph below is necessary if the server has already been licensed,

...

that is, the existing license needs to be modified (prolongation, an increasing number of stations, hardware change, etc.)
  • Disconnect an external DB if there is a connection (Connection to external DB settings -> External Data Base Link — empty, Cubes data source - switch to re-calculation with file: DB UDB Source Type — switch to recalculation via disk file: UDB database (exchange via file);
  • Save ;the changes
  • Select the protection key in License Info - Protection key - Physical number field;in the License Information — Protection Key Actual Number field
  • Generate license request (: right-click on report the reports server icon -> Actions -> Generate license request);— Generate License Request
  • Generate license for this request at l.ucs.ru siteon the licensing system site, and enter specify it to "License info -> License key" field;
  • Save
  • in the License Information — License Key field
  • Save the changes
  • Configure the connection to an Configure connection to external DB if cube-based reports are required.

Launch

Launch report the reports server as follows:

    • Create a server in the manager station in
  • "Settings -
    • Options — OLAP reports
  • - Report
    • — Reporting servers
  • "
    • , assign a unique network ID to it,
  • e
    • f.
  • g
    • ex., REPSRV3001, change the status to Active, and save
  • ;
    • the changes
    • License the server (see paragraph above); Otherwise, the connection
  • from
    • via the manager station will not be possible
  • ;
    • In
  • "
    • the Synchronization
  • "
    • section,
  • make sure all checks re set
    • check all the boxes. Synchronization
  • should
    • must be turned on.
    • Create
  • clean
    • an empty base in Management Studio. Configure the connection to this DB using
  • instruction
    • instructions in the article on connection to MS SQL.

Specify the following parameters in repserv.ini, in the [Config] section:

Code Block
Client = "REPSRV3001" ;

...

 reports server

...

 network IDRefServer = "RK7SRV3001" ; upper level server network ID (it can be both

...

 references server and

...

 reports server)

...

RefsBasePath = ".\BaseData\refsdata.udb" ; relative or absolute (recommended) path to

...

 reference DBCheckBasePath = ".\BaseData\check_db.udb" ; relative or absolute (recommended) path to

...

 receipt (cumulative)

...

 DBWorkModsFile = ".\BaseData\wmodules.udb" ; relative or absolute (recommended) path to working

...

 modules DBReceivedPath = ".\Received\" ; relative or absolute (recommended) path to

...

 directory with received

...

 closed shiftsErrorLog = "repsserv.stk" ; relative or absolute (recommended) path to

...

 log fileUseSql = 0 ; do not connect to external DB under SQL Server 2012 control
  • Launch the server.
  • Stop the server, change UseSql=1 parameter value in repserv.ini config file
  • Launch the server.

Important: the The first launch should always be performed as an application (with the /desktop parameter). Also, make sure to perform the launch as administrator.Note:

Info
The default server config file is repserv.ini. If

...

the reports server needs to be launched with

...

another INI file, use the following command:

...

rkReportServer.exe /ininame: newname.ini /desktop

...

.

As well as references server, report reports server can be launched as a service. For this purpose, use the /install parameter.

Upon server lunch as a service (rkReportsServer.exe/desktop) the following icon will appear in the task bartray:Image Added

Repsserv.ini

...

Attention!

...

File Description

Before launching the reports server, uncheck the Read only box in its parent folder attributes (otherwise,

...

the reports server will not be able to create its database).

...

Also, make sure the full path to the folder with the RKREPORTSSERVER.EXE file contains no spaces, and the total number of path symbols does not exceed 200.

Copy Copy the repserv.ini file from  file from the RK7/BIN/WIN/ini folder folder if you have not done so yetthis before, and place it besides beside the RKREPORTSSERVER.EXE file file, i. e., into the RK7/BIN/WIN/ folder.

Code Block
languagedelphi
[CONFIG]

...



Client = "REPSRV3001"

...

RefServer = "RK7SRV_3001" ;; references server network name (or upper report server)

...

                                           ;; the report server network name, same as the corresponding report server in the manager station. See "Manager station settings" below
RefServer = "RK7SRV_3001"                               ;; the references server network name (or the upper report server)
RefsBasePath = ".\BaseData\refsdata.udb"         ;; a full path to the reference base, do not confuse with rk7.udb

...


CheckBasePath = ".\BaseData\check_db.udb"   ;; a full path to

...

 the receipt base, do not confuse with check.udb

...


WorkModsFile = ".\BaseData\wmodules.udb"    ;;  a full path to the working modules base

...


ReceivedPath = ".\Received\"

...

ErrorLog = "repsserv.stk" ;; log file name (add path if necessary). By default, log file is saved in the same folder where RKREPORTSSERVER.exe is placed

ErrorLogSize = 1048576 ;; error log size in bytes

OldRefsSyncMode = 0 ;; 1 - enable old synchronization mode necessary if PollEvents=1

PollEvents = 0 ;; enable periodic references server polling mode (in references server .ini file, fill EventCachePath= parameter), and set OldRefsSyncMode=1

RecalcAllCubesAt = 2015 ;; Time is specified without semicolon in "HHMM" format. Re-calculate all cubes that would be re-calculated by "re-calculate all cubes" item at manager station in 20:15. For versions 7.4.20.60 or higher.

CubesRecalc = 0 ;; disable cubes re-calculation, 1- enable cubes re-calculation, 2 - manual cubes re-calculation (For versions7.6.1.2 or higher!)

NoReports = 0 ;; disabling menu with manager station reports (For versions 7.6.1.2 or higher!)

ServPingTimeout = 5000 ;; 7.4.17.78 or higher

UseSql = 1 ;; 0 - if no connection to SQL, 1 - if connection to SQL is used

LoadThreadsCount = 4 ;; load closed shifts data to cumulative DB in parallel, "4" - number of files processed in parallel (recommended in case of big number of shift files arriving in parallel). Version shall not be lower than 7.5.2.328!

cubesBuildTool = "bldcubex.exe" ;; Enable bldcubex.exe utility for cubes generation at PC with 2+ GB memory (For versions7.6.2 or higher!)

[NETKERN]

Protocols = tcpsoc.dll ;; protocols list (comma separated), you must make sure these DLL files are in the folder with RKREPORTSSERVER.exe file

[TCPSOC]

PORT=3639 ;; port for server

[TCPDNS]

                                   ;; a path to the data receiving folder
ErrorLog = "repsserv.stk"                                         ;; a log file name (add a path if necessary). By default, a log file is saved in the same folder where RKREPORTSSERVER.exe is placed
ErrorLogSize = 1048576                                          ;; error log size in bytes
OldRefsSyncMode = 0                                         ;; 1 - enable old synchronization mode, necessary if PollEvents=1
PollEvents = 0                                          ;; enable periodic references server polling mode (in the references server .ini file, fill in the EventCachePath= parameter), and set OldRefsSyncMode=1
RecalcAllCubesAt = 2015                                         ;; Time is specified without semicolon in "HHMM" format. Recalculate all cubes that would be recalculated by the "recalculate all cubes" item at the manager station at 20:15. For versions 7.4.20.60 or higher.
CubesRecalc = 0                                          ;; disable cubes recalculation, 1- enable cubes recalculation, 2 - only manual cubes recalculation (For versions7.6.1.2 or higher!)
NoReports = 0                                         ;; disabling menu with manager station reports (For versions 7.6.1.2 or higher!)
ServPingTimeout = 5000                                          ;; 7.4.17.78 or higher 
UseSql = 1                                          ;; 0 - if there is no connection to SQL, 1 - if connection to SQL is used
LoadThreadsCount = 4                                           ;; load closed shifts data to cumulative DB simultaneously, "4" - number of files processed simultaneously (recommended in case of big number of shift files arriving in parallel). For versions 7.5.2.328 or higher!!
cubesBuildTool = "bldcubex.exe"                                     ;; Enable bldcubex.exe utility for cubes generation at PC with 2+ GB memory (For versions7.6.2 or higher!)

[NETKERN]
Protocols = tcpsoc.dll    ;; protocols list (comma separated), you must make sure these DLL files are placed in the folder with the RKREPORTSSERVER.exe file
[TCPSOC]
PORT=3639    ;; port for server
 
[TCPDNS]
RK7SRV_3001=subway.rkeeper.com:3648

...


REP_CENTR4=subway.rkeeper.com:3644

...


RK7SRV=subway.rkeeper.com:3639

...


 
[UPDATE]

...


NoUpdate=0

...


 
 scheduler. only

...

 for 7.5.2.502+

...


[SYNCCONF]

...


 Enable scheduled synchronization

...


RefsSyncMode=1

...


 synchronization time in

...

 CRON format 50 10 * * * is equivalent to "always at 10:50",

...

 45 13 * * * is equivalent to "always

...

 at 13:45".

...

 
Format is as follows:

...




* * * * *

...


| | | | |

...


| | | | +----- Days of week (range:

...

 1-7)

...


| | | +------- Months (range:

...

 1-12)

...


| | +--------- Days of month (range:

...

 1-31)

...


| +----------- Hours (range:

...

 0-23)

...


+------------- Minutes (range:

...

 0-59)

...





SyncSchedule=

...

50 10 * * *         ;; synchronize references at report server loading

...


SyncOnReload=0

...

Reports Server Update

Right-click the icon to open report the reports server in a browser. Default Http HTTP port can be assigned set in the manager station by specifying a new port in report reports server properties (HTTP Server group -> HTTP Data Port group).

Upon report After the reports server launch, check its connection to the upper server.

Report The reports server update is identical to to the references server update.

Важно: Report server restart after update is mandatory.

...

Note
The report server must be restarted after its update,

Manager Station Connection to Reports Server

Use the following methods ways to connect the manager station to report the reports server:

  1. Create a separate instance of the manager station with a new ini INI file and specify report the reports server network ID in the [REFEDIT] section therein.

    • Server= REPSRV3001 ;; Your

...

    • reports server name
    • Client=MANST-%RANDOM% ;; the name of the manager station that will be connected to

...

    • the reports server.

      Therefore, there will be

...

    • two icons for RK7MAN.exe on the desktop - one for connection to

...

    • the reports server and references editing, another for connection to

...

    • the reports server and reports viewing.

  1. Launch the manager station again, leaving ini the INI file unchanged. When the logging window appears, press "Ctrl+Alt+S" on the keyboard and enter report the reports server ID in the poll that appears in the bottom left corner.

Manager The manager station will make necessary modifications in rk7man.ini, and you will have to select the server by pressing "Ctrl+Alt+S" at the next launch.

Cubes

...

Recalculation

Cubes are in Settings - placed in the Options — OLAP reports - Cubes and reports referenceReports reference.

The status of a Status of cube and its data thereof can be checked in the cube properties, "Data processing" Processing section. Each cube has a list of report reports servers and cube re-calculation recalculation info (periodperiodicity, calculation time, last error, etc.).

You can re-calculate cube of interest recalculate a required cube manually (right-click - actions - re-calculate> Actions -> Recalculate).

Starting from version 7.06.04.041: if a server has over 2 GB of RAM, you can use a new utility for cubes construction – generation – bldcubex.exe. To do sothis, add the following settings to to repserv.ini:

Code Block
[CONFIG]

...



cubesBuildTool = "bldcubex.exe"

and restart report the reports server. Then, you will have new a new rk7manex.exe manager station file. Use it for cube report generation.

It is desirable to create a new user (role) with "cubes and reports only" rights and hide all other elements in the manager station for this user (role). Then, create an icon for such a manager station with a name like "Reports".

Starting from version 7.4.20.60 or higher, all  all cubes that , that would be re-calculated recalculated by the "re-calculate recalculate all cubes" menu items item at the manager station,   can be re-calculated recalculated automatically at the specified time  by entering by inserting the following command in the INI file:

RecalcAllCubesAt = "2015" (Time is specified without semicolon "HHMM") 
The value is easy to check via the web interface.

Setup of

...

Reports Servers for Restaurant Chain

  1. Example of report reports servers connection in chain restaurants

Big distribution networks restaurants chains (like SUBWAY, BURGERKINGBURGER KING) use quite extensive chains nets consisting of multilevel connection trees or report of reports servers with a central report reports server (numbering in hundreds sometimes). Since the data (meals, prices, composition) is the same within one chain, it is enough to make modifications in the manager station working with the upper-level server (references server), and the data synchronizes automatically with lower-level servers (intermediate), and then with local servers (in a restaurant).

Info
When the manager station is connected to

...

the reports server (other than central), some rights to edit references and object properties will be restricted!

Connection of report reports server to an external DB is required if reports generation and viewing is needed when the manager station is connected to this report server.Connection diagram is shown in the figure below.reports server.

Find the connection diagram below:

draw.io Diagram
bordertrue
diagramNameChain restaurant servers
simpleViewerfalse
width
linksauto
tbstyletop
lboxtrue
diagramWidth1211
revision1

In this case, the servers that will be used to view reports and process data, are subject to licensing. No. The quantity of stations is means the number of different users that can generate reports at the same time.

Warning
If there are no active licenses in the base (a case with one references server without a license and several licensed

...

reports servers), the number of manager station connections to the server is limited to 1. This situation may occur when all the licenses

...

of the

...

servers chain expire.

Configuration example for the network of 2 restaurants and

...

a head office

...


Image Added

How it works:

Upon After the common shift closure being closed at POS the cash server 1 (midserver1) of restaurant #1, the shift data is processed at report the reports server 1 and report server at "the reports server of the head office".

The same is valid for the second restaurant. The closed common shift is processed by "a local " report reports server 2, and further in the head office.2.1.

Framework

  • Head Office
    • primary SQL base
    • manager station
    • references server (= primary report reports server)
  • Restaurant 1
    • report reports server 1
    • local SQL base 1
    • POS cash server 1 (midserver1)
  • Restaurant 2
    • POS cash server 2 (midserver2)
    • local SQL base 2
    • report reports server 2

...

SQL databases

  • for Head office – ‘reports_HO’
  • for restaurant 1 - ‘reports_rest1’
  • for restaurant 2 - ‘reports_rest2’

...

Stations and devices

Create 2 restaurants and a POS cash server for each of them.
Image Added2.4.

External DB settings

Create 3 settings as described in articledescribed in the article on connection to MS SQL, and configure the connection to corresponding report reports servers (shall be created additionally). 

This shall result in 3 configurations:

  1. for For Head office (‘reports_HO’ database);
  2. for For restaurant 1 (‘reports_rest1’ database);

...

  1. For restaurant 2 (‘reports_rest2’ database).

2.5. Report server properties

...

Image Added

Reports Server Properties

Image Added

Info
Do not forget to acquire 3 licenses for 3

...

reports servers.

...

INI files

For report reports server 1:


Code Block
[CONFIG]

...


Client =

...

 "repsrv_1"

...


RefServer =

...

 "RK7SRV_3001"

...


RefsBasePath =

...

 ".\BaseData1\refsdata.udb"

...


CheckBasePath =

...

 ".\BaseData1\check_db.udb"

...


ReceivedPath = ".\Received1\"

...


ErrorLog =

...

 "repsserv1.stk"

...




[NETKERN]

...


Protocols = tcpsoc.dll

For report reports server 2:

Code Block
[CONFIG]

...


Client =

...

 "repsrv_2"

...


RefServer =

...

 "RK7SRV_3001"

...


RefsBasePath =

...

 ".\BaseData2\refsdata.udb"

...


CheckBasePath =

...

 ".\BaseData2\check_db.udb"

...


ReceivedPath = ".\Received2\"

...


ErrorLog =

...

 "repsserv2.stk"

...



[NETKERN]

...


Protocols = tcpsoc.dll

Manager The manager station connected to the references server (refserver):

Code Block
[REFEDIT]

...


Server=RK7SRV_3001

...


Client=rk7man_ref

Manager The manager station connected to report reports server 1:

Code Block
[REFEDIT]

...


Server=repsrv_1 //network name of

...

 reports server 1

...


Client=rk7man_rep1

Manager station connected to report reports server 2:

Code Block
[REFEDIT]

...


Server=repsrv_

...

2 //network name of

...

 reports server 2

...


Client=rk7man_rep2

...


Employees and their rights

...

Add 2 employee groups:*

  • for

...

  • reports server 1

...

  • for

...

  • reports server 2

Configure their right in properties:*

  • give all rights to view reports

...

  • manager restrictions -->

...

  • reports servers

...

  • --> mark corresponding

...

  • reports server

Set the following in employee properties:* general

  • main --

...

  • > current restaurant

...

  • main --

...

  • > account --

...

  • > login and password

Using

...

Valid SSL

...

Certificates for

...

Reports Server in Domain

The default Default certificate (for rk7.local) is placed in the BaseData\httpKeys\ folder,  the default.pem file.
To use your own certificate, rename it (own certificate) change its name to mylocal.pem, and place it into the same catalogdirectory, then restart report the reports server.

Certificate properties:

  • Subj name – restaurant DNS name
  • Alternative An alternative name is not needed
  • Certificate A certificate shall support server authentication.
  • Key type – exchange or signature (default value is exchange). Exchange is a data encryption certificate.key
  • Key A key size of 2048 is supported.
  • sha256 algorithm and sha256RSA hash algorithm are supported.
  • Key export is possible. Certificate The certificate itself shall be in PEM format. Server The server key shall be located there as well. See example in default .pem file.
  • No restrictions on crypto provider usage.


Note

Please, note

...

: an attempt to use a wildcard certificate for FQDN machine with custom port and *.DomainName.local:8080 template failed. *.DomainName.local template worked.

Troubleshooting

  1. "The error occurring while viewing a report: Cannot load cube data (cube data is empty or corrupted): Cannot open file "D:\UCS\RK7_5_1_34\bin\win\Cubes\00000022.blb". File not found". (see figure below)
    Solution:

...

  1. Find a cube corresponding to the report and

...

  1. recalculate it

...

  1. .

  2. In In Windows 7 and higher OS, when report generation is attempted at the manager station,  "the following error may occur: CubeDLL: Error reading Grid -> LICENSE_STR: Failed to set data for" error occurs. " The CubeDLL: " error occurs in while viewing the course of viewing corresponding cube.
    Solution: Assign administrator rights to the Windows 7 user or run the manager station as administrator.

...

  1. Disable account control

...

  1. .

  2. The error occurring during report generation: "Item 0 was not found in external base config collection"error occurs during report generation.
    Reason:

...

  1. this happens if the role has no connection to SQL

...

  1. , and the user attempts to run an existing report or to create a new

...

  1. one, generated via FR4 directly from SQL.

...


  1. Connections limit exceeded.
    Reason

...

  1. : the pre-installed

...

  1. reports server is licensed in RK7, and you are trying to create one more

...

  1. reports server.

...

  1. Solution: reset the license data of an extra

...

  1. reports server, and create

...

  1. the "Setup of connection to external DB"empty string.

  2. If the following user login failure error occurs while implementing an internal or external base on your computer:
    check correctness of filling your computer, go to Options > OLAP Reports > Reporting Servers and check if the following lines are filled correctly: 

    Image Added

Reason: When "Connection to external DB" the External Data Base Link block is filled, "the Reference logs" Logs block is filled automatically.

Solution: SQL username and password shall be the same in "Connection to external DB" and "Reference logs" blocks

 Installation of cash register station on Linux  Setup of service print

 the External Data Base Link and Reference Logs blocks.