Sharperlight 2.8 Advanced Training Manual Print v1_1_0

Transcription

Sharperlight 2.8 Advanced Training Manual Print v1_1_0
Sharperlight 2.8
Advanced Training Manual
www.sharperlight.com
[email protected]
Sharperlight 2.8 Advanced Training Manual
Published by phiLight Software International Pty Ltd
Copyright 2010-2013 phiLight Software International Pty Ltd
All other copyrights and trademarks are the property of their respective owners
Printed: June 2013
Document Version: 1.1.0
Disclaimer: The information in this document remains the current view of phiLight Software
International Pty Ltd and is subject to change without notice. This position is due to changing market
conditions and should not be interpreted as a commitment to the correct operation of any technology
or product contained herein.
This document is intended as information only and phiLight Software International Pty Ltd makes no
warranties, express or implied as to the information in this document.
All rights reserved.
The copyright of this document and the computer software described herein and provided herewith
are the property of phiLight Software International Pty Ltd. No part of this publication or the computer
software may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into
any human or computer language, in any form or by any means or otherwise used without the express
written permission of phiLight Software International Pty Ltd.
phiLight Software International Pty Ltd
15 Ohio Place
Marangaroo
WA 6065
AUSTRALIA
Contents
3
Table of Contents
Part I Introduction
6
1 Terminology
................................................................................................................................... 6
2 Audience
................................................................................................................................... 7
Part II Query
9
1 Filter
................................................................................................................................... 9
Sub Query ......................................................................................................................................................... 9
2 Output
................................................................................................................................... 10
Expression
......................................................................................................................................................... 11
Email
.................................................................................................................................................. 11
Drill Link ......................................................................................................................................................... 15
Drill Through
......................................................................................................................................................... 16
Query Unions
......................................................................................................................................................... 18
Part III Excel Add-in
22
1 Writeback
................................................................................................................................... 22
Macro Button
......................................................................................................................................................... 27
Part IV Customisation
31
1 Custom
...................................................................................................................................
Tables
31
2 Custom
...................................................................................................................................
Fields
36
3 Custom
...................................................................................................................................
Joins
37
Part V Publisher
40
1 Report
................................................................................................................................... 40
Layout
......................................................................................................................................................... 41
HTML and.........................................................................................................................................................
Styles
43
Part VI Command Line
47
1 File
...................................................................................................................................
Query
47
2 Published
...................................................................................................................................
Query
48
Part VII Scheduling
50
Part VIII .NET Data Provider
55
1 SQL
...................................................................................................................................
Server Reporting Services
55
SQL Server
.........................................................................................................................................................
Business Intelligence Developm ent Studio
55
Report Manager
......................................................................................................................................................... 61
Report Builder
......................................................................................................................................................... 65
2 Report
...................................................................................................................................
Viewer
67
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
4
Sharperlight 2.8 Advanced Training Manual
Index
Copyright 2010-2013 phiLight Software International Pty Ltd
71
Simplified Intelligence
Part
I
6
1
Sharperlight 2.8 Advanced Training Manual
Introduction
This document explains some of the advanced functionality in Sharperlight. Whilst some of
the topics are for power users and technical analysts, many are within the reach of end-users
who just want a richer user experience.
1.1
Terminology
Datamodel
Most application databases consist of tables, views and complex interrelationships. The
Sharperlight Datamodel takes these building blocks and exposes them in a structure and
layout that can be more easily navigated and consumed by end-users.
The control logic in a Datamodel can adapt to the configuration of the underlying application
database, so the user experience is closely aligned to labelling, logic and fields available in
the source system. For example, if the source system can re-label the transaction date fields
to reflect the installation and client terminology, then the control logic in a Datamodel can
read in these customizations and display then in the Sharperlight field selection list.
The Sharperlight Query Engine interprets the structure of a Datamodel and automates the
control logic in the Datamodel. Working together the Query Engine and the Datamodel can
handle complex requirements ranging from record level security, to supporting multiple
database platforms, complex runtime calculations and version control logic, that allows
backward compatibility of legacy application databases.
Writeback
One of the key ways Sharperlight differentiates itself from other ad-hoc reporting
technologies is its ability to Writeback structured data from within Microsoft Excel® to an
application database, API or web service. Writebacks are formulated within a Datamodel and
it is the decision of the Datamodel author how the Writeback will work and how it is
controlled. Sharperlight has a generic Writeback form that simplifies the selection of feeder
cell ranges and it allows Writeback templates to be saved and reused.
.NET Data Provider
Rather than relying on the legacy ODBC connection types and drivers, Microsoft promotes its
own connectivity layer called .NET Data Providers. In essence, these Data Providers handle all
the database interaction but they are easier to develop and maintain by .NET programmers.
To allow close integration with Microsoft Enterprise technologies, the Sharperlight .NET Data
Provider is a standard component that is automatically configured during the install process to
work with SQL Server Reporting Services® and SQL Server Integration Services®.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Introduction
1.2
7
Audience
This manual covers the advanced concepts and features in Sharperlight. Prior attendance at a
standard training course is advised because this manual assumes familiarity with Sharperlight
technologies.
The screen images and practical exercises in this manual, may be different to the Datamodels
that the user audience plans to work with. Even with these differences the concepts and
functionality documented in this manual are applicable to all Sharperlight users.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Part
II
Query
2
Query
2.1
Filter
2.1.1
Sub Query
9
The concept of a Sub Query applies to both Query Outputs and Filters. With a Filter the Sub
Query can either restrict the records return in the query or it can restrict the items in the
lookup dialog or it can do both. To access the Sub Query interface, use the Attributes tab in a
fields filter options. The Sub Query only affects the selected field and if a Sub Query already
exists, it will display an Edit Sub Query and Delete button rather than a Create Sub Query
button.
Filter Attributes - Sub Query
A Sub Query on a filter uses the same naming concept available with an output Sub Query.
Therefore named filters in the parent query can be used to restrict the child query. The first
field in the Output pane in the Sub Query becomes the filter list that gets past into the filter
IN clause or into the lookup query.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
10
Sharperlight 2.8 Advanced Training Manual
Sub Query - Query Builder - Filter Sub Query
Item
Description
Filter based on Sub Query
2.2
Filter uses Sub Query values and no
lookup is displayed
The first column in the Sub Query will become the input stream for
an <in> clause in the parent query. Thus the Sub Query will restrict
the parent query but the filter will not display a lookup dialog.
Sub Query is used for Lookup value
selection
Sub Query will restrict the available values in the lookup dialog but
does not directly affect the parent query.
Sub Query is used for Lookup but
also restricts values
Sub Query will restrict both the available values in the lookup
dialog and these restrictions will also be applied to the parent
query.
Output
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Query
2.2.1
11
Expression
Output Expressions provide a means of manipulating and calculating output fields. These
Expressions have their own .NET calculation engine integrated into the Sharperlight query
engine. Expressions are visually differentiated from other output items by have a blue
calculator icon.
Output Expressions
2.2.1.1
Email
Expressions are often used for mathematical, string and date calculations, however it also
allows data manipulation like sorting, formatting and event driven logic. Email distribution is
a simple event that can be triggered by the execution of a query. The Send Email functions can
send an email message for each row in a query whilst the Send Report functions, send a single
email with the query contents enclosed in the email message.
The syntax for each email function is relatively similar, each starts with the from email
address, then the to email address, followed by a subject line and the message body. Output
rows, filter values and system variables can be imbedded in the addresses and message, the
values in curly brackets {... } will be resolved at run-time.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
12
Sharperlight 2.8 Advanced Training Manual
Expression - Email Report
To use email messaging the connection details of the outgoing email server need to be
configured in Client Setup. Each Service has its own email details and the Local Connection
can have email details too.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Query
13
Client Setup - Email
When the query is run in the Web Channel or in Explorer, the email message will be triggered
and distributed to the identified email recipients. Just running the query in Preview does not
trigger the email distribution logic. Normally the email Expression would be hidden because
it doesn't return anything in the report.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
14
Sharperlight 2.8 Advanced Training Manual
Published Query
The resulting email message can include multiple to addresses and cc addresses. The subject
line can have the extraction time added to the subject heading and the message body can
include hyperlinks back to the Web Channel along with commentary and the enclosed report.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Query
15
Report Email Received
2.2.2
Drill Link
A Drill Link is a special type of Drilldown where each row in a query is generated with its own
unique query URL address. This Drilldown reference will automate the loading of the Browser
Client and the encrypted row query will then be loaded into Explorer through the browser.
Drill Links provide a simple method of associating Drilldown to a result set where the
presentation layer only supports URL hyperlinks. Common uses of a Drill Links include
integrating Drilldowns into Microsoft SQL Server Reporting Services and it PDF documents.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
16
Sharperlight 2.8 Advanced Training Manual
Drill Link
2.2.3
Drill Through
There are two distinct types of Drill Through, the first type drills into a related query that has
been constructed using the Query Builder whilst the second type is a link to a URL web
address. The Link Drill Through can be used to load any web address, so it could just as easily
access a document management system, a google search, execute a report in Microsoft
Reporting Services or display a Published Query.
Drill Through Menu
The Link Drill Through allows for a base URL and additional URL parameters, that will be
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Query
17
concatenated to the end of the base URL. The named filters and output fields in the Query
Builder can be injected into the URL address by selecting them using the assist button with
three dots or typing them in directly.
Link URL and Parameters
If a Drill Through Link is going to access the Sharperlight Service, there is a runtime value
called {*Service.Rest.Address} that will resolved the full service address.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
18
Sharperlight 2.8 Advanced Training Manual
Service Address
2.2.4
Query Unions
Sometimes a query needs to append together different data sets from different tables or
products, or even the same table but with radically different filters and maybe summarised at
a different level. In these diverse circumstances, Query Unions can be used to append
together these different queries and return the combined data set in a single query result.
To use Query Unions start with a normal query that will become the parent to all the other
queries. Then select the Query Unions menu option from the Outputs menu or using the right
hand click menu on the Outputs pane. If a query template contains Query Unions then the
Query Unions button will be displayed above the right hand corner of the Outputs pane.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Query
19
Query Builder - Query Unions
The Query Unions dialog provides an interface to create additional queries whose results will
be appended to the parent query. There is no limit to the number of Query Unions that can be
defined and provided they all have the same number of output columns and they have the
same data types, then the child queries will be appended to the parent.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
20
Sharperlight 2.8 Advanced Training Manual
Query Unions
The creation of totals for each query union and then their inclusion or exclusion from the
query grand total can be controlled using the Total Options.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Part
III
22
Sharperlight 2.8 Advanced Training Manual
3
Excel Add-in
3.1
Writeback
Sharperlight has a Writeback form available from its Excel Add-in menu that can source
worksheet data and write this data back through a Datamodel to a target system. Datamodel
authors decide if Writebacks will be available in a Datamodel and they control the validate
and operation of the Writeback. The Writeback form simplifies the selection of feeder cell
ranges and it allows Writeback templates to be saved and reused.
Solutions
The Writeback form is accessed through the Solutions entry in the Sharperlight Excel Add-in
menu and it will display the Solutions dialog. To open the Writeback form use the Writeback
node below the relevant Datamodel. The Writeback form can handle different connection
services and Superfield values; the destination table is selected using the Table lookup or an
already saved Writeback template can opened and reused.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Excel Add-in
23
To map the fields to the underlying worksheet in Excel, select a field in the Fields tab, then
select the corresponding range or starting table column in the underlying workbook. Return to
the field row in the Writeback form and right hand click to display the Fields menu. When
referencing the source cells the menu can assist with absolute and relative referencing,
however, if the cell reference is part of a table the user will be prompted if they want to
autobind the table to the Writeback. Autobinding will match the column titles to the field
names and only reference table columns where they are the same.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
24
Sharperlight 2.8 Advanced Training Manual
Fields Menu
Table references use the format TableName[ColumnName] whilst cell references use
traditional the column and row syntax. The use of Excel Tables and table autobinding has the
advantage of speeding up the field mapping process and table columns can be added and
moved around without affecting the operation of the Writeback.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Excel Add-in
25
Field References
When defining the Writeback, one field needs to allocated as the Driver field. This field has
special significance because it restricts the evaluated range and it has special logic that will
skip rows which have a blank driver field.
Logging
During the field referencing stage of a Writeback, the end-user can Preview the records they
are extracting and they can Validate these records against the Writeback definition. If errors
are found in the source records then the Logging dialog will identify these invalid records. If
the user double clicks on the message row in the Logging dialog their cursor in Excel will jump
to the related cell reference.
Item
Description
Button
This button will display the Writeback Preview dialog. It extracts the
rows from the worksheet and shows them in grid view.
This button will display the Logging dialog. Validate compares the
source records with the Writeback definition in the Datamodel and
it verifies that all records are properly formed and valid.
This button actions the Writeback.
Row and Matrix Styles
Writebacks templates fall into two broad categories, there a row Writebacks where the source
records are listed down the worksheet and there are matrix style Writebacks where records
are referenced from both row and column. In most respects they look similar and they are
created the same way but the matrix style has cell references mapped across columns. The
idea being that the intersection of the rows and columns create a unique row in the
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
26
Sharperlight 2.8 Advanced Training Manual
Writeback. For example, uploading budget values for multiple periods is a classic use of the
matrix style.
Matrix Writeback
For a matrix Writeback to function it needs the cross-column references to be absolute and
the row and column intersection to be a relative cell reference on the first row. The Driver
field will determine how far down the rows extend.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Excel Add-in
27
Matrix Cell References
3.1.1
Macro Button
Within the Writeback dialog, the definition for the Writeback can be named and it then can be
saved into the workbook for future use. Once a Writeback definition is named it can also be
referenced in a macro button that automates the Writeback without having to open the
Writeback dialog.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
28
Sharperlight 2.8 Advanced Training Manual
Writeback Name
Once the Writeback definition has been named and saved, insert a macro button or a shape
onto the worksheet. Both of these will have an Assign Macro option on their right hand click
menu. Open the Assign Macro dialog and type in the macro mdWriteback. With this macro
associated to the button or shape it will use the objects name to determine the appropriate
Writeback to process when it is left hand mouse clicked. With the object selected, type the
name of the Writeback into the edit box on the left of the formula bar.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Excel Add-in
29
Writeback Macro
If the macro button or chart is properly configured, it will process the associated Writeback
definition and display the Logging dialog. If their is an error in the records and validation picks
it up, then the Writeback is aborted and the Logging dialog will return the error and the cell
reference of the erroneous value.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Part
IV
Customisation
4
31
Customisation
End-users often request site specific modifications and enhancement to a Datamodel. Some
of these requests are fed back into the development process and integrated into future
Datamodel releases. However, some requests are unique to the customer and may not be
relevant to the broader Datamodel audience. Sharperlight can still support and deliver these
site specific customisations through the use of Custom Tables, Custom Fields and Custom
Joins.
The customisation of Tables, Fields and Joins means new query objects can be added to an
existing Datamodel and they appear to the end-user, as if they are part of the core
Datamodel.The customisations are maintained separately and they can be export and
imported for migration purposes.
Note The definitions for Custom Tables, Fields and Joins are stored in the Sharperlight system
database.
4.1
Custom Tables
To add or edit a Custom Table use the right hand click menu on the Table filter and select
Custom Tables.
Custom Tables
The Custom Tables main form is a list view of all the existing Custom Tables available for the
site. Using the list view right hand click menu new Custom Tables can be created, existing
ones cloned and the table definitions can be saved to and loaded from files. To edit a Custom
Table double click on the relevant row and it will be displayed in the Custom Table editor.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
32
Sharperlight 2.8 Advanced Training Manual
Custom Tables List
Each Custom Table has a unique code that differentiates it from existing tables in a
Datamodel. The display location of the Custom Table in the Table Tree can be specified in the
General tab of the Custom Table editor. The default location for a Custom Table is in Custom
folder but a table can be located anywhere in the table tree of the parent Datamodel.
Custom Table - General
The Table Details tab contains the table structure with fields, joins and folders. The table and
every field has additional configuration settings available in the right hand side properties
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Customisation
33
pane. Users familiar with the Sharperlight Studio will notice the similarities between the
Table Details tab and the Table layout in the Studio, they use the same controls and design
interface.
Custom Table - Table Details
The Processes tab is a different interface to what exists in the Studio but it works the same
way, allowing scripting and control logic to assist and manage the operation of the Custom
Table. For example, a Custom Table could be based on a temporary table that is populated by
a stored procedure, the steps to drop, create and insert records into the temporary table
could all be initiated from the Processes tab.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
34
Sharperlight 2.8 Advanced Training Manual
Custom Table - Processes
Adding a New Custom Table
To create a Custom Table select the New item from the list view right hand click menu. The
first dialog to appear is the Product (Datamodel) dialog. Every Custom Table is associated a
single Datamodel and this customisation is merged at run-time into the related Datamodel.
Select the Datamodel where the new Custom Table will appear.
Products
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Customisation
35
The next dialog will control whether the Custom Table is created based on an existing SQL or
MDX statement. With a query statement the fields in the table will be automatically
generated, without a query statement the user will have to create the table structure from
scratch. It is generally better to generate the Custom Table using a query statement.
New Table based on SQL Statement
If the user selects YES in the New Table dialog then the Create Custom Table dialog will be
displayed. Copy and paste the prepared SQL query statement into the entry pane. Select OK
and the Custom Table will be created with a structure modelled on the prepared SQL
statement.
Create Custom Table based on SQL Statement
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
36
4.2
Sharperlight 2.8 Advanced Training Manual
Custom Fields
Custom Fields can be added to Datamodel tables and they then become available to all users.
These fields are displayed with a purple description to differentiate them from the native
Datamodel fields. To add or edit a Custom Field use the right hand mouse click menu in the
Selection pane.
Custom Fields
Custom Fields need a valid SQL query statement to work, they can combine fixed values, case
statements and include calculations based on other tables.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Customisation
37
Custom Field Dialog
4.3
Custom Joins
Custom Joins add a join folder to the selected table. These joins can be between existing
tables in the Datamodel or with Custom Tables. Care needs to be given when constructing the
SQL Join clause, it must be a valid SQL join statement and it must also be logical because an
erroneous join clause can fundamentally change the context of a query.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
38
Sharperlight 2.8 Advanced Training Manual
Custom Join Dialog
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Part
V
40
Sharperlight 2.8 Advanced Training Manual
5
Publisher
5.1
Report
The Report tab in Publisher controls how filters behave and the default web content type. The
Report tab also has a layout dialog that can control how multiple publisher queries can be
displayed together and it supports HTML control for presentation and content delivery. In the
illustration below, three published queries are used to create a main landing page or home
page.
The header section is a published query called System.HomeMain. It has a layout that refers
to the individual tabs and it has a custom HTML header with logos, title and the active login
details. The middle and footer section is a published query called System.HomeMenu. It uses
a query to list and shortcut too various published query groups. The footer section is a HTML
reference to site information and another logo. The Info tab in the middle section is another
published query that returns a Custom HTML page that contains some simple help topics.
Custom Home Page
The System Datamodel in Sharperlight allows queries to be created that return lists of
published queries. With minimum effort these query lists can become a navigation page for
accessing these published queries. The addition of a tabbed layout and custom HTML can very
quickly create a professional home page.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Publisher
41
Publisher - Home Page - Published Queries
5.1.1
Layout
The illustration below displays the Report tab for a published query called System.HomeMain.
Note that the Layout option is enabled along with the Custom Header. Selecting the Edit
button in the Layout group will display the Layout dialog.
Publisher - Report
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
42
Sharperlight 2.8 Advanced Training Manual
The Report Layout dialog supports a Tab and Dashboard presentation style. Tabs can orientate
to the top, bottom, left and right of the resulting web page. The Dashboard style allows for a
configurable number of columns and the nominated reports become stacked across the
available columns.
The illustration below refers multiple times to the same System.HomeMenu query, with the
Tab style each nominated reporting group becomes a separate tab. Note that the Tab Tile
provides a user friendly label for the tab and the URL Parameters are passed through to the
associated query and become filters.
Publisher - Report Layout
The URL Parameters in the Layout Dialog can be used to filter the associated query. For this to
work the lookup filter in the associated query needs to named and then the URL Parameter
references this name and the input value. For example, in the illustration about it uses
&fltModule=MYOBEXO and this becomes the filter value for the Group filter in the query
below because the Group filter has been named Module.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Publisher
43
Published Query
5.1.2
HTML and Styles
The Web Channel renders web content in HTML 4 and additional HTML content can be added
through the Report tab.
Custom Header
In the Custom Styles group in the Report tab there is a Custom Header option and an Edit
dialog. Standard HTML can be added to the header and it can reference content stored in a
Datamodel.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
44
Sharperlight 2.8 Advanced Training Manual
Custom Header
Custom Footer
The Custom Footer option is in the Custom Styles group on the Report tab.
Custom Footer
Custom HTML
The Custom HTML option in the Report tab allows for a full web page to be included and
delivered through the Web Channel.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Publisher
45
Custom HTML
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Part
VI
Command Line
6
47
Command Line
The main runtime application for Sharperlight is an executable named md.application.exe and
it is located in the Sharperlight installation bin folder. This application has several command
line options that allow it to execute queries, output file formats and distribute email content.
The command line options can execute query templates stored in a file system and they can
execute the published queries from Publisher.
Running a query from the command line does not support a native login and password,
therefore windows authenticated security needs to be implemented for the Sharperlight
Instance and a valid windows login created in Site Setup.
6.1
File Query
The syntax for executing a file query template is outlined below. In normal circumstances the
path to the md.Applications.exe will need to be fully quoted with the complete directory
path to the executable. For example, "C:\Program Files\phiLight\Sharperlight\bin
\md.Applications.exe" /queryexecute.
md.Applications.exe /queryexecute "queryfilename"
"<optionaloutputfilename>" "filter:name=value"
"filter:name2=value"
md.Applications.exe /queryexecute "C:\QueryTemplates\Sample1.xml"
"C:\Sample1.txt"
The query engine will use the output file name extension to determine the output file
format. The supported output file formats include CSV, TXT, HTML and XML. If the query
engine cannot recognise the file format it will default to CSV. To allow a unique naming
convention with each generated file, the output file name can include these runtime
variables {_DateTime}, {_Date} and {_Time}.
md.Applications.exe /queryexecute "C:\QueryTemplates\Sample1.xml"
"C:\Sample1-{_DateTime}.txt"
md.Applications.exe /queryexecute "C:\QueryTemplates\Sample1.xml"
"C:\Sample1-{_Date}.txt"
The default query filter values will be used in the execution of the query unless they have
been reassigned using command line filter options.
md.Applications.exe /queryexecute "C:\QueryTemplates\Sample1.xml"
"C:\Sample1-{_DateTime}.html" "filter:Company=MBR LTD"
"filter:Period=2010/001" filter:Period2=2010/010"
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
48
6.2
Sharperlight 2.8 Advanced Training Manual
Published Query
The syntax for executing a Published Query is similar to a file query but it needs the direction
command to look in Publisher for the query code .
md.Applications.exe /queryexecute "publisher:group.code"
"<optionaloutputfilename>" "filter:name=value"
"filter:name2=value"
md.Applications.exe /queryexecute "publisher:GL.ProfitLoss"
"C:\ProfitandLoss.html"
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Part
VII
50
7
Sharperlight 2.8 Advanced Training Manual
Scheduling
Sharperlight uses the Windows Task Scheduler and the command line options to the
md.application.exe to automate the generation of output formats and allow the regular
distribution of report content via email. The preferred output format is defined in the
command line and the email distribution is configured in the query using an Output
Expression. See the sections in the this manual that refer to Query Output Expressions and
the Command Line Options.
To open the Task Scheduler navigate through Control Panel into Administrative Tools and Task
Scheduler is available there. The creation of scheduled task is very easy to do and it is worth
using the Create Basic Task Wizard (select the Create Basic Task from the Actions pane).
Windows Task Scheduler
Using the Create Basic Task Wizard, give the task a name and select Next to move into the
Trigger dialog.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Scheduling
51
Task Create
In the Task Trigger dialog select the frequency for the task or the initiating event. Depending
on the Trigger the next dialog will provide scheduling and automation options appropriate to
the trigger.
Task Trigger
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
52
Sharperlight 2.8 Advanced Training Manual
In the Action dialog accept the default "Start a program" and then in the Start a Program dialog
use the Browse button to navigate and select the md.applications.exe in the Sharperlight
installation bin directory. Then add the arguments which will control the execution of the
Published Query. For example, the arguments /queryexecute
"publisher:MYOBEXO.Q02220336" "C:\Output_MYOBEXO_Q02220336.html" will execute the
Published Query MYOBEXO.Q02220336 and it will output a html version of the queried report.
Task Action
The last dialog in the Task Wizard provides a brief summary and the ability to open the full
properties dialog of the task when Finish is clicked. This will be necessary to configure the
windows user account that executes the query.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Scheduling
53
Task Finish
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Part
VIII
.NET Data Provider
8
55
.NET Data Provider
Sharperlight includes a .NET Data Provider that allows .NET technologies to consume
Sharperlight queries.
8.1
SQL Server Reporting Services
Microsoft SQL Server Reporting Services (SSRS) uses the term Custom Data Providers to
describe how it can use .NET Data Providers as a data source for reporting content. Its report
design studio also supports Custom Designer Extensions, so third party query interfaces can
be used within SQL Server Business Intelligence Development Studio (BIDS). When
Sharperlight is installed on a computer that has SQL Reporting Services, the installation
process will configure the Sharperlight .NET Data Provider to work with SSRS and it will
configure the Query Builder to be available in BIDS as a query designer.
8.1.1
SQL Server Business Intelligence Development Studio
BIDS is the development environment for designing and deploying SQL Server Reporting
Services reports. The Studio uses the concept of report projects where multiple reports are
constructed together and they can then all share the same data sources. These shared data
sources are then used to populate report data sets. When the reports are deployed to the
report web service, the shared data sources are create at the same time.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
56
Sharperlight 2.8 Advanced Training Manual
BIDS - Report Designer
If Sharperlight is installed on a SQL Server Reporting Server then the Sharperlight Data
Provider will be an available data source type in BIDS and in the reporting web service. This
Data Provider supports both windows authentication and a Sharperlight login. Rather than
hardcoding the login or prompting for credentials each time, it is generally easier to use
windows authentication.
Note The Sharperlight Data Provider supports multiple releases of SQL Server including 2005, 2008
and 2008 R2.
Shared Data Source - Sharperlight Data Provider
The design process for creating a Reporting Services report with the Sharperlight Data
Provider is similar to constructing a report with any other connection type. However, the
Sharperlight Data Provider provides all the advantages of a unified data abstraction layer and
and the Query Builder becomes the query designer in BIDS. So queries can be prototyped by
end-users and then sent to report developers for layout, this can significantly reduce
development timeframes.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
.NET Data Provider
57
Query Designer
To add a Sharperlight Dataset to a report, open the Dataset Properties dialog from the Report
Data pane. From within this dialog, select or create a data source that uses the Sharperlight
Data Provider and the Query Designer wizard will display the Query Builder. On an existing
Dataset that uses the Sharperlight Data Provider, the developer can easily display the Query
Builder by right hand clicking on the Dataset name and selecting the Query menu item.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
58
Sharperlight 2.8 Advanced Training Manual
Dataset Properties
Parameters
SQL Server Reporting Services uses parameters to filter datasets. The Query Builder supports
the use of parameters by exposing named filters as parameter names. So in the illustration
below the parameter value from and to are mapped to the named filters in the Query Builder.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
.NET Data Provider
59
Dataset Parameters
Drilldown
To further enrich the user experience of using Sharperlight with SQL Server Reporting
Services, the ad-hoc drilldown interfaces that are available with Sharperlight can be accessed
within SSRS. This functionality uses the Go To URL Action available in the BIDS report designer
and Sharperlight can pass it a unique web address that combines the browser client interface
for Explorer and it encapsulates the query definition and row context. Explorer will then open
the query and prompt the user for the fields they want to use for analysis.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
60
Sharperlight 2.8 Advanced Training Manual
Drill Link
To create the unique drilldown web address, use the Outputs menu and select Add Drill Link.
This will generate a new output field called Drilldown. In the BIDS report designer open the
relevant field data properties, selection the Action settings and use Go To URL to associate the
Drilldown field from the Query Builder. Refer to the section on Report Manager to see how
the Drilldown works within the Report Manager website.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
.NET Data Provider
61
Go To Action
8.1.2
Report Manager
The SQL Server Business Intelligence Development Studio is used to create reports but to
make them available to a wider audience they need to be deployed to a SQL Server Report
Server. This Report Server provides a web service with a web browser based Report Manager
for scheduling, running, printing and exporting reports.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
62
Sharperlight 2.8 Advanced Training Manual
Report Manager
The Sharperlight Data Provider can delivery datasets that populate parameter selection lists,
as well as the report content.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
.NET Data Provider
63
Report View
If a Drilldown web address has been added to a Go To URL Action then the end-user will
notice that when they hover over this field or chart series, it will display the related web
address in the browser status line. Selecting the field or chart series will load in the browser
the Sharperlight web client and it will open the Explorer Drilldown Output Fields dialog.
Go To URL Action - Drilldown
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
64
Sharperlight 2.8 Advanced Training Manual
Explorer in a browser has exactly the same interface experienced by desktop users, except it
uses a click-once installation that avoids the need for a desktop Sharperlight installation.
Drilldown Output Fields
When using the Sharperlight Drilldown in Reporting Services it sometimes better to open
another browser window so the end-user can quickly navigate back to the source report.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
.NET Data Provider
8.1.3
65
Report Builder
Report Builder (RB) is a simpler MS Office like report designer and runtime viewer of SSRS
reports. It doesn't support Custom Data Providers directly but it will use the Sharperlight Data
Provider if a report uses a shared data source accessible on the Report Server. So end-users
can open reports from the Report Server, modify them and run them within Report Builder.
Note Report Builder has two deployment types, it can be run as a click-once application in the SQL
Report Services Report Manager or it can be installed with a stand-alone desktop installer.
Open Report
Report Builder does not support Custom Designer Extensions, so if the Query Designer is
opened for a dataset it will error with the message "An error occurred while connecting to
data source... Only the text-based query designer will be available" and it will then display
the Sharperlight XML query in the Query Designer text pane.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
66
Sharperlight 2.8 Advanced Training Manual
Report Design
The Home menu and ribbon has the main formatting controls in Report Builder whilst the
Insert menu has wizards that can add a Table, Matrix, Chart and drawing objects. To Run the
report, select the Run icon on the Home ribbon.
Report Run
When running a report in Report Builder it uses the shared data source on the Report Server
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
.NET Data Provider
67
to extract the report data.
8.2
Report Viewer
Using the Sharperlight Data Provider with Microsoft SQL Server Reporting Services is a good
idea for existing SSRS customers because they can leverage their existing skills and
investment. However, for customers who do not want a Microsoft Reporting Server, they can
still use the BIDS report designer to author reports and then consumed directly in
Sharperlight.
The standard desktop installation of Sharperlight includes a Microsoft Report Viewer control
that handles the rendering and viewing of reports that are in the Microsoft Report Definition
Language (RDL) layout. To make these report files accessible they need to be included in a
Datamodel and linked to a Solutions menu.
Note The Microsoft Report Viewer control included with the Sharperlight will only work with Report
Definition Language files that use the SSRS 2008 RDL schema. These reports definition files can
be authored in the report development studio available with SQL Server 2008 Express with
Advance Services.
Solutions
End-users run these RDL reports by selecting a report item from the Solutions menu and then
the report definition will be loaded from the Datamodel into the local report viewer. This
viewer will prompt for report parameters and then the report can be executed using the
green run button. The rendered report has the same selection and output controls that are
available in the Report Manager web interface. The viewer also supports Go To URL Actions,
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
68
Sharperlight 2.8 Advanced Training Manual
so Drill Links can be used for Drilldown.
Report Viewer
To make an RDL report file available to end-users, use the Include Files menu in the Studio.
The RDL file will be copied from its source directly and loaded into the Datamodel.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
.NET Data Provider
69
Studio - Include Files
After including the RDL file in the Datamodel, use the Solutions menu to organize how the
reports will be displayed.
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
70
Sharperlight 2.8 Advanced Training Manual
Studio - Solutions
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Index
71
Index
-..NET Data Provider
Report Viewer
67
SQL Server Business Intelligence Development
Studio
55
-CCommand Line
47
Customization
31
Custom Fields
36
Custom Joins
37
Custom Tables
31
-DDrill Link
15
Drill Through
Link
16
-QQuery Unions
18
-SScheduling
50
-WWriteback
22
Macro Button
27
Copyright 2010-2013 phiLight Software International Pty Ltd
Simplified Intelligence
Back Cover