#InterSystems IRIS BI (DeepSee)

17 Followers · 324 Posts

InterSystems Business Intelligence enables you to embed business intelligence (BI) into your applications so that your users can ask and answer sophisticated questions of their data. Specifically, your application can include dashboards, which can include the following:

  • Interactive widgets that execute queries designed for specific user roles or for specific areas of your user interface.
  • Controls such as drop-down lists and data choosers that enable users to modify these queries.
  • Interactive drill options that enable users to view the displayed data in different ways.
  • Options to export, print, and send alerts to other users.
  • An option to launch the Mini Analyzer, which supports free-form analysis.
  • Execute custom actions that are provided as buttons or other controls.

In contrast to traditional BI systems that use static data warehouses, Business Intelligence is kept closely in synchronization with the live transactional data, as required for your business.

Learn more.

InterSystems staff + admins Hide everywhere
Hidden post for admin
Question Evgeny Shvarov · Apr 9, 2017

Hi!

Sometimes I need to filter the widget on a dashboard from a different cube. And I face the following problem:

Widget A refers to a query from Cube A and I want to filter Widget B from Widget B.

Widget's B pivot refers to Cube B, and which has different dimensions for the same data.

E.g. cube A has the dimension Author and the Cube B has the dimension Member for the same data. So  there is no way to filter such a widget B from the widget A.

1
1 406
Question Alexander Jäger · Apr 3, 2017

Hi,

suppose a part of my mdx query is [DIMENSION].[H1].[LEVEL1].CURRENTMEMBER.Property("PROP1").

If the source property of PROP1 is also used as a dimension level somehwere in the cube, this query will return a key  to the entry in the coresponding star table.

Does anybody know how I can follow that key and display the real value value?

1
0 1130
Question Derrek Kegler · Mar 29, 2017

How to setup dollar ranges to get the number of patient accounts. So, I want to capture the number of patient accounts based on the original balance of: 0 to 499 500 to 999 1000 to 2499 5000 to 9999 10000 to 24999 25000 to 49999 50000 to 74000 75000 to 99999

=100000

2
0 515
Question Evgeny Shvarov · Mar 13, 2017

Hi!

There is a 'New_window' control in DeepSee Widget which opens the page in a new tab in a browser with a given URL.

With the help of this control you can open another dashboard and supply some parameters in SETTINGS clause.

Consider  I can setup in Dash1 the URL like: 

_DeepSee.UserPortal.DashboardViewer.zen?DASHBOARD=Postings.dashboard&SETTINGS=TARGET:W1;FILTER: [Author].[H1].[Author].%26[$$$VALUELIST]

to filter the widget W1 in Postings dashboard with filter [Author].[H1].[Author].%26[$$$VALUELIST], where $$$VALUELIST is some value from the listing in a widget in Dash1.
2
0 300
Question Derrek Kegler · Mar 7, 2017

How can I create a calculated field that will give me the grand total of a column? For instance, if I have a row that has 200, 300, 500, 600, how do I get the Grand Total?

I have already used the wrench under Column Options as % of Total so, I can't use that option.

9
0 485
Question Derrek Kegler · Mar 4, 2017
  1. How can I create a calculated field to give the previous date. For example, I need to create a pivot table that shows total payments posted for the prior day.

  2. How to create a calculated field to show average daily collections divided by the number of the days passed in a month. So, for today, it would be the average daily collections divided by 4days.

Thanks!

3
0 574
Question Eduard Lebedyuk · Feb 9, 2017

I created a new class DSW.Addons.htmlViewer:

Class DSW.Addons.htmlViewer Extends %DeepSee.Component.Portlet.abstractPortlet
{

Property Data As %String;

ClassMethod %OnGetPortletSettings(Output pInfo As %List, ByRef pSettings) As %Status
{
    Kill pInfo
    Set pInfo(1) = $lb("Data", , , "Data", "Data setting")
    Quit $$$OK
}
}

It's a ZEN component and DeepSee portlet. It's immediately available in the namespace I created it in. DSW package is mapped to %ALL and to Samples, but if I try to create a widget with this portlet I get ZEN class not found error.

2
0 418
Question Evgeny Shvarov · Jan 24, 2017

Hi, All!

What is the calculated measure expression for the percentage of a member?

Say in Holefoods I want to see in a Cols Online sales in Revenue, All the revenue and % of Online sales for the Revenue?

I have the following:

With expression:

SELECT NON EMPTY {NONEMPTYCROSSJOIN([Channel].[H1].[Channel Name].&[2],[Measures].[Amount Sold]),[Measures].[Amount Sold]} ON 0 FROM [HOLEFOODS]

How can I add the percentage of All in Revenue for Online channel?

5
0 594
Question Laura Cavanaugh · Jan 20, 2017

My group needs to be able to monitor items / tasks, and let a non-management-portal user see the monitoring.  Is it possible to run DeepSee queries on Production items?  I feel like I should not be recreating the production environment or the task manager just so that I can query on the items that are running, and on their states (like "successful" or "send email").

Also, I need to log custom events for each task, and I'm running into difficulties with the task manager in this regard; hence the question about using the Production instead, but querying it.

Thanks,

Laura

1
0 385
Article Alessandro Marin · Dec 6, 2016 3m read

How are we doing THIS year versus the same period LAST year? 
This is a common need in Business Intelligence. In fact, many design specifications for reports make use of a comparison between a selected period (year, quarter, etc) up to a certain date (for example November 15th, 2016) and a summary of the same information for the previous year (i.e. up to November 15th, 2015). 
This post shows how to implement this in DeepSee.

8
0 1972
Question Samuel Claiborne · Dec 28, 2016

I am trying to create a query that returns the best and worst performing products for a given customer, based on this year's net sales versus last year's net sales, weighted by the total net sales for all of the products sold to this customer in the last two years.

I have created Last Year Net Sales (up to the last month end): AGGREGATE(PERIODSTODATE([Invoice Date].[H1].[YEAR],[Invoice Date].[H1].[Month].[NOW-13]),measures.[Net Sales])

This year Net Sales: AGGREGATE(PERIODSTODATE([Invoice Date].[H1].[YEAR],[Invoice Date].[H1].[Month].[NOW-1]),measures.[Net Sales])

3
0 410
Question Jenna Makin · Dec 7, 2016

Hi-

I am trying to figure out how to compare two dimension values in a MDX query such that records where two dimension values are the same will be filtered out.

To test this, I have modified the HoleFoods cube in SAMPLES namespace to have a new dimension called RandomRegion

I want to create a MDX query where the [Outlet].[H1].[Region] value is not equal to the [RandomRegion].[H1].[RandomRegion] value.

Here's the query I need to add the filter to:

SELECT NON EMPTY HEAD(NONEMPTYCROSSJOIN([Outlet].[H1].[Region].Members,[RandomRegion].[H1].[RandomRegion].Members),2000,SAMPLE) ON 1 FROM [HOLEFOODS]
4
0 1105
Question Samuel Claiborne · Nov 9, 2016

Hello. I'm just getting started in DeepSee, and am also a newbie in MDX.

I am looking to create a pivot table that will be used to drive a bar chart. The chart will have product classes across the bottom, and two bars per class: a calculated measure to derive Net Sales for the specified period last year, and a straight aggregation of a standard measure for the same period for this year. Ideally, this period can be chosen by the user via filters on the dashboard, and it could be week, month, or quarter. So, obviously, it's the calculated field (and perhaps the entire MDX query) I need help with.

4
0 592
Question Ashok S · Nov 30, 2016

Dear All,

From my web page, i am passing filter values to mdx query.

when mdx executes, i am getting Error #5001: Invalid member expression: empty name(2).

when i try the same in samples namespace (patient cube). I got the same error.

Below is my sample MDX from patients cube.

SELECT 
NON EMPTY %KPI("PluginDemo","HighScoreCount",,"%CONTEXT") 
ON 1 
FROM [PATIENTS] 
%FILTER %OR([HOMED].[H1].[ZIP].&[32000])

Result: 0   This works fine.

SELECT 
NON EMPTY %KPI("PluginDemo","HighScoreCount",,"%CONTEXT") 
ON 1 
FROM [PATIENTS] 
%FILTER %OR([HOMED].[H1].[ZIP].&[32006])

Result: 13   This works fine.

3
0 488
Question Benjamin Bryans · Nov 23, 2016

When creating a filter located on a dashboard that targets all, is there a way to narrow that filter down?

For example, in our data we have some dates that are well out of range due to data quality issues, but they still appear in the drop downs. Is there a way to say, only make available the below dates in the filter?

Another example, If we want to only look at Emergency data, it still provides all the wards for inpatient activity and activity in other hospitals, meaning, to get to just the Emergency wards you have to scroll through everything?

Hope that makes sense.

4
0 530
Question Benjamin Bryans · Nov 21, 2016

I currently have an MDX query/calculated measure as per the below:

 
[DaysOnListRange].[H1].[DaysOnListRange].&[Days 91 - 180]+ [DaysOnListRange].[H1].[DaysOnListRange].&[Days 181 - 365]+
[DaysOnListRange].[H1].[DaysOnListRange].&[Days 365+]

however it currently doesn't sum when there is a blank in the data.
How can I amend this query to include empty cells/only sum cells with data?

I've tried using nonempty but it doesn't appear to work in this context

2
0 453
Article Daniel Kutac · Nov 17, 2016 2m read

Those of you, who work with DeepSee, might have spotted, that when working with a date hierarchy, there are several functions, allowing you to select a time function for a given level. E.g. for extracting a year from a date/time property when building date hierarchy, you simply use Year function. similarly for month number, quarter and so on. Sometimes, you may wish to see the time - namely hour numbers. For this there is a HourNumber function available with DeepSee. Unfortunately, this function converts time into 12 hours format suffixed with AM/PM to indicate day part. This is not, however,

7
0 505