Professional Documents
Culture Documents
OTBI Quick Hints
OTBI Quick Hints
below on more than one occasion. This document provides solutions to these questions and in doing
so will highlight some techniques that can be used across all of the reports you create.
Table of Contents
How do I remove the scroll bars on a table when I create a new query? .......................................... 2
If I have created a report and then realise that I actually wanted to use a different subject area, is
it possible to point that same report at the new subject area without re-writing it?........................ 4
How can I calculate an employees age from their date of birth? ...................................................... 6
How can I hide fields from the default layout but still have them available to users on the right
mouse click? ........................................................................................................................................ 8
How can I change the standard aggregation on a numeric field, for example to show the average
age of a group of employees?........................................................................................................... 10
How can I limit my report to only bring back records for say the last 12 months?.......................... 12
Appendix XML for Example Reports .............................................................................................. 15
How do I remove the scroll bars on a table when I create a new query?
When creating a new report containing several columns of information, the default table view will
automatically include both a horizontal and vertical scroll bar as shown below
The scroll bars can be removed by choosing the View Properties icon just above the table to the right
hand side (the XYZ icon as highlighted in the screenshot below)
When you click on that, the table properties will be displayed. Choose the radio button beside
Content Paging to remove the scroll bars. When you do that, an option will appear to specify the
number of rows per page (default if not specified is 25 rows). Choose OK and the table will display
with no scroll bars.
If I have created a report and then realise that I actually wanted to use
a different subject area, is it possible to point that same report at the
new subject area without re-writing it?
The answer is yes provided is only uses items that are in both subject areas.
Lets use the example from the previous answer. This report is returning some worker information.
At the moment, it is using Workforce Management Person Real Time subject area. We are going
to change it to use Workforce Management Worker Assignment Real Time because there is a
need to add the business unit for each worker and that field is available in the Workforce
Management - Worker Assignment Real Time subject area.
Here is the current query. It uses items from the worker folder that are all available in the new
subject area.
To change the subject area without re-writing the query, choose the Advanced tab highlighted above
the Analysis XML will be displayed as shown below.
This may look a bit daunting but dont worry, you are only going to make a very small change. You
can resize the box using the handle highlighted in the bottom right corner on the screenshot above.
You need to find the second line of the XML where it says
subjectArea=""Workforce Management - Person Real Time""
In this example, we are going to replace the word Person with the words Worker Assignment to
reflect the new subject area we want to use. The updated XML is shown below.
Once done, you need to choose Apply XML. The SQL issued box lower down the page will update
with the new query. Now, if you choose the Criteria tab again, you will see from the list on the left
hand side that the query is pointing at Worker Assignments. And if you run the query and look at the
Results tab, you will see the same data but from the new subject area.
You can then add other items into the report from the new subject area, for example, business unit.
Notes
1. In many cases, you can achieve the same result by creating a cross subject area report
2. If you want to point a report at a new subject area but have items that are not in the new
subject area, you must remove those items from the original report before changing the
subject area name. Otherwise you will receive errors when you try and apply the XML
In non SaaS implementations, this is easily fixed by either updating the default behaviour to remove
the ROUND or by using the EXECUTE function which passes an exact database function across for
processing. Neither of these solutions are available in SaaS, so we need to find another answer.
The calculation below returns a persons correct age and can be used in reports.
YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth") - (CASE WHEN
(CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee
Date Of Birth") AS INT) THEN 1 ELSE 0 END)
Again this may look a little daunting, but lets break it down and explain what is happening when we
run this on 11th May 2014 for a person born on 22nd May 1979 (the first record in the table above).
The calculation below is colour coded, with each part explained below.
YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth") - (CASE WHEN
(CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee
Date Of Birth") AS INT) THEN 1 ELSE 0 END)
Notes
1. This same approach can be used whenever you want to know the number of complete years
between a date in the past and the current date, or in fact between any two dates
2. TIMESTAMPADD is another similar function. It is available to add or subtract periods from a
date use a positive number to add and a negative number to subtract the periods. This
function works fine in SaaS and can be used with any of the date fields in OTBI, for example
to calculate a date 12 months ago. To specify different types of period, use a different
parameter to SQL_TSI_YEAR, for example SQL_TSI_MONTH, SQL_TSI_DAY etc. See later in
this document for an example of using TIMESTAMPADD.
It is only TIMESTAMPDIFF where rounding can cause issues because the system is calculating
a difference between two dates.
How can I hide fields from the default layout but still have them
available to users on the right mouse click?
The report we have been building now looks like this ...
... but not everyone is interested in all the columns. Therefore, Id like to hide Person ID & Ethnicity
but keep them available to be viewed if required. This functionality is called excluding columns and
can be a very powerful way of providing fewer reports but with lots of flexibility for different users
to view extra columns of data without the need for them to edit the report.
To exclude columns, right mouse click on the Person ID column heading and choose Exclude column
from the menu as shown below (if Exclude column doesnt appear, make sure you are clicking on the
column heading and not on the values within that column).
Repeat for Ethnicity. Now when you view the report, the 2 columns are hidden ...
... but can be viewed by a right mouse click on the report and choosing Include column.
When you first create this layout, the age field does not show any data. That is because you havent
told OTBI how to aggregate that field when displayed it at a level above employee. You can either
update this setting in the pivot table itself (in which case it will only apply to that view in the report)
or you can set it on the Criteria tab and it will impact all the views in this report.
In the Criteria tab, choose Edit Formula for the Correct Age column.
Set the Aggregation Rule as shown below using the drop down list of options.
In this case use Average, but you could use the other options instead for different scenarios (such as
the highest age Max, the lowest age Min, a count of employees Count Distinct etc). You can
also use this approach to change the aggregation on one of the pre-delivered metrics if you need a
different calculation to be applied to that metric.
After clicking OK and returning to the results tab, the aggregation is now displayed in the pivot table,
which can also have charts added to its display if required.
How can I limit my report to only bring back records for say the last 12
months?
There any many scenarios where you might wish to limit the records you return to a certain time
period, such as the last week, month or year. In this section, we are going to use an example around
workforce events. The requirements is to see all events that have happened in the last 12 months,
with no hard coding of any dates in the report, so that it naturally moves forward with time.
First, create a report first which returns, by report date, all events in the system using the
Workforce Management Worker Assignment Events Real Time subject area.
To update the report to always return a fixed rolling period of time ie always 12 months back from
today, add a report filter on the Date field as shown below.
Click OK and the report will now only return events in the last 12 months in this case, the report is
run on May 11th 2014, so nothing earlier than May 12th 2013.
If the requirement is to have a default of 12 months but to allow the user to override this on each
run of the report, then rather than using filters, the best approach is to use Report Prompts. Report
Prompts are like filters but the user can select a new value at run time.
On the same report, delete the filter we have just created. Choose the Prompts tab and add a new
prompt based on the Date field and define it as shown below the code is on the right hand side as
well to make it easier to copy. This will define a from and to date as a prompt on the report. The
values here will default to today and to the date 364 days ago. You can adjust this to be exactly a
year earlier depending on your requirements. Or you can use other periods to define a prompt for
the last month or week or quarter.
select
TIMESTAMPADD(SQL_TSI_DAY, 364, CURRENT_DATE) from Time
<sawx:expr xsi:type="sawx:binned">
<sawx:baseFormula>
<sawx:expr xsi:type="sawx:sqlExpression">YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth") (CASE WHEN (CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee Date Of Birth") AS INT)
THEN 1 ELSE 0 END)</sawx:expr></sawx:baseFormula>
<sawx:rules>
<sawx:when>
<sawx:condition>
<sawx:expr xsi:type="sawx:comparison" op="lessOrEqual">
<sawx:expr xsi:type="sawx:sqlExpression">YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth")
- (CASE WHEN (CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee Date Of Birth") AS INT)
THEN 1 ELSE 0 END)</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">20</sawx:expr></sawx:expr></sawx:condition>
<sawx:value>
<sawx:expr xsi:type="xsd:string">16 - 20 years</sawx:expr></sawx:value></sawx:when>
<sawx:when>
<sawx:condition>
<sawx:expr xsi:type="sawx:comparison" op="between">
<sawx:expr xsi:type="sawx:sqlExpression">YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth")
- (CASE WHEN (CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee Date Of Birth") AS INT)
THEN 1 ELSE 0 END)</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">21</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">30</sawx:expr></sawx:expr></sawx:condition>
<sawx:value>
<sawx:expr xsi:type="xsd:string">21 to 30 years</sawx:expr></sawx:value></sawx:when>
<sawx:when>
<sawx:condition>
<sawx:expr xsi:type="sawx:comparison" op="between">
<sawx:expr xsi:type="sawx:sqlExpression">YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth")
- (CASE WHEN (CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee Date Of Birth") AS INT)
THEN 1 ELSE 0 END)</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">31</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">40</sawx:expr></sawx:expr></sawx:condition>
<sawx:value>
<sawx:expr xsi:type="xsd:string">31 to 40 years</sawx:expr></sawx:value></sawx:when>
<sawx:when>
<sawx:condition>
<sawx:expr xsi:type="sawx:comparison" op="between">
<sawx:expr xsi:type="sawx:sqlExpression">YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth")
- (CASE WHEN (CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee Date Of Birth") AS INT)
THEN 1 ELSE 0 END)</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">41</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">50</sawx:expr></sawx:expr></sawx:condition>
<sawx:value>
<sawx:expr xsi:type="xsd:string">41 to 50 years</sawx:expr></sawx:value></sawx:when>
<sawx:when>
<sawx:condition>
<sawx:expr xsi:type="sawx:comparison" op="greaterOrEqual">
<sawx:expr xsi:type="sawx:sqlExpression">YEAR(CURRENT_DATE) - YEAR("Worker"."Employee Date Of Birth")
- (CASE WHEN (CAST(MONTH(CURRENT_DATE) AS INT)*100) + CAST(DAY(CURRENT_DATE) AS INT) <
(CAST(MONTH("Worker"."Employee Date Of Birth") AS INT)*100) + CAST(DAY("Worker"."Employee Date Of Birth") AS INT)
THEN 1 ELSE 0 END)</sawx:expr>
<sawx:expr xsi:type="xsd:decimal">51</sawx:expr></sawx:expr></sawx:condition>
<sawx:value>
<sawx:expr xsi:type="xsd:string">51 years and over</sawx:expr></sawx:value></sawx:when>
<sawx:otherwise>
<sawx:value>
<sawx:expr
xsi:type="xsd:string">Unspecified</sawx:expr></sawx:value></sawx:otherwise></sawx:rules></sawx:expr></saw:columnForm
ula>
<saw:tableHeading>
<saw:caption fmt="text">
<saw:text>Worker</saw:text></saw:caption></saw:tableHeading>
<saw:columnHeading>
<saw:caption fmt="text">
<saw:text>Age Band</saw:text></saw:caption></saw:columnHeading></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="c24d3f5b4e137054a">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Employee
Name"</sawx:expr></saw:columnFormula></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="c0dd66e4aff3402cd">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Person
Number"</sawx:expr></saw:columnFormula></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="c7bd5a99fa105fb31">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Worker Assignment"."Head
Count"</sawx:expr></saw:columnFormula></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="cd14422845c157fef">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Business Unit"."Business Unit
Name"</sawx:expr></saw:columnFormula></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="c26c8e3d341f3dcf2">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Employee
Ethnicity"</sawx:expr></saw:columnFormula></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="cdd511654498c266e">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Employee
Gender"</sawx:expr></saw:columnFormula></saw:column></saw:columns>
<saw:filter>
<sawx:expr xsi:type="sawx:logical" op="and">
<sawx:expr xsi:type="sawx:comparison" op="equal">
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Person Type"</sawx:expr>
<sawx:expr xsi:type="xsd:string">Employee</sawx:expr></sawx:expr>
<sawx:expr xsi:type="sawx:comparison" op="equal">
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Assignment Status Type"</sawx:expr>
<sawx:expr xsi:type="xsd:string">Active</sawx:expr></sawx:expr></sawx:expr></saw:filter></saw:criteria>
<saw:views currentView="0">
<saw:view xsi:type="saw:compoundView" name="compoundView!1">
<saw:cvTable>
<saw:cvRow>
<saw:cvCell viewName="titleView!1" colSpan="2">
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:cvCell></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="headlineView!1">
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:cvCell>
<saw:cvCell viewName="headlineView!2">
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:cvCell></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="pivotTableView!1" colSpan="2">
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:cvCell></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="tableView!1" colSpan="2">
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:cvCell></saw:cvRow></saw:cvTable></saw:view>
<saw:view xsi:type="saw:titleView" name="titleView!1"/>
<saw:view xsi:type="saw:tableView" name="tableView!1">
<saw:edges>
<saw:edge axis="page" showColumnHeader="true">
<saw:edgeLayers>
<saw:measure columnID="c7121186cd40c230f">
<saw:dataBodyFormat>
<saw:displayFormat>
<saw:formatSpec
hAlign="center"/></saw:displayFormat></saw:dataBodyFormat></saw:measure></saw:measuresList>
<saw:headlineProperties vAlign="top" style="style2"/>
<saw:headlineLabelOne useMeasurePropertyAsLabel="true"/>
<saw:headlineLabelTwo useMeasurePropertyAsLabel="false">
<saw:caption>
<saw:text>Average Age across all people</saw:text></saw:caption></saw:headlineLabelTwo></saw:view>
<saw:view xsi:type="saw:dvtchart" name="dvtchart!1">
<saw:display type="bar" subtype="basic" renderFormat="default" mode="online">
<saw:style barStyle="default" lineStyle="default" scatterStyle="default" fillStyle="default" bubblePercentSize="100"
effect="2d"/></saw:display>
<saw:canvasFormat height="330" width="640">
<saw:dataLabels display="default" label="default" position="below" transparentBackground="true"
valueAs="default"/></saw:canvasFormat>
<saw:selections>
<saw:categories>
<saw:category>
<saw:columnRef columnID="c13d5ec301c934a22"/></saw:category></saw:categories>
<saw:measures showMeasureLabelsOnCategory="false">
<saw:column measureType="y">
<saw:columnRef columnID="c7bd5a99fa105fb31"/></saw:column></saw:measures>
<saw:seriesGenerators>
<saw:seriesGenerator>
<saw:columnRef columnID="cec4ee4fedf1b5d01"/></saw:seriesGenerator>
<saw:measureLabels/></saw:seriesGenerators>
<saw:page>
<saw:column>
<saw:columnRef columnID="c24d3f5b4e137054a"/></saw:column>
<saw:column>
<saw:columnRef columnID="cd14422845c157fef"/></saw:column>
<saw:column>
<saw:columnRef columnID="c0532556d7af2a458"/></saw:column>
<saw:column>
<saw:columnRef columnID="c64f9bb7dc5013a7e"/></saw:column>
<saw:column>
<saw:columnRef columnID="c9494aaae940691b2"/></saw:column>
<saw:column>
<saw:columnRef columnID="c7121186cd40c230f"/></saw:column>
<saw:column>
<saw:columnRef columnID="c396c835326efbff4"/></saw:column>
<saw:column>
<saw:columnRef columnID="c0dd66e4aff3402cd"/></saw:column></saw:page></saw:selections>
<saw:legendFormat position="default" transparentFill="true"/></saw:view>
<saw:view xsi:type="saw:pivotTableView" name="pivotTableView!1" scrollingEnabled="true">
<saw:edges>
<saw:edge axis="page" showColumnHeader="true"/>
<saw:edge axis="section"/>
<saw:edge axis="row" showColumnHeader="true">
<saw:displayGrandTotals>
<saw:displayGrandTotal id="gt_row" grandTotalPosition="after"/></saw:displayGrandTotals>
<saw:edgeLayers>
<saw:edgeLayer type="column" columnID="cd14422845c157fef"/></saw:edgeLayers></saw:edge>
<saw:edge axis="column" showColumnHeader="rollover">
<saw:edgeLayers>
<saw:edgeLayer type="measure"/></saw:edgeLayers></saw:edge></saw:edges>
<saw:measuresList>
<saw:measure columnID="c7bd5a99fa105fb31"/>
<saw:measure columnID="c7121186cd40c230f"/></saw:measuresList>
<saw:nestedViews>
<saw:nestedView position="right">
<saw:view xsi:type="saw:dvtchart" name="pivotTableView!1::GridChart">
<saw:display type="lineBar" subtype="basic" renderFormat="default" mode="online">
Report 2 XML
<saw:report xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlVersion="201201160"
xmlns:sawx="com.siebel.analytics.web/expression/v1.1">
<saw:criteria xsi:type="saw:simpleCriteria" subjectArea=""Workforce Management - Worker Assignment Event Real
Time"" withinHierarchy="true">
<saw:columns>
<saw:column xsi:type="saw:regularColumn" columnID="c13b76bdbcc72b1a3">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Person
Number"</sawx:expr></saw:columnFormula></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="cb5b16bf7bdbadd76">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Worker"."Employee
Name"</sawx:expr></saw:columnFormula></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="c88aa8d7fed718bf1">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"Time"."Date"</sawx:expr></saw:columnFormula>
<saw:displayFormat>
<saw:formatSpec suppress="repeat" wrapText="true" hAlign="right">
<saw:dataFormat xsi:type="saw:custom" customFormat="d-MMM-yyyy"/></saw:formatSpec></saw:displayFormat>
<saw:columnHeading>
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:columnHeading></saw:column>
<saw:column xsi:type="saw:regularColumn" columnID="c11eeb206a8c151e1">
<saw:columnFormula>
<sawx:expr xsi:type="sawx:sqlExpression">"HR Action"."Action
Name"</sawx:expr></saw:columnFormula></saw:column></saw:columns>
<saw:columnOrder>
<saw:columnOrderRef columnID="cb5b16bf7bdbadd76" direction="ascending"/>
<saw:columnOrderRef columnID="c88aa8d7fed718bf1" direction="ascending"/></saw:columnOrder></saw:criteria>
<saw:views currentView="0">
<saw:view xsi:type="saw:compoundView" name="compoundView!1">
<saw:cvTable>
<saw:cvRow>
<saw:cvCell viewName="titleView!1">
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:cvCell></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="tableView!1">
<saw:displayFormat>
<saw:formatSpec/></saw:displayFormat></saw:cvCell></saw:cvRow>
<saw:cvRow>
<saw:cvCell viewName="filtersView!1"/></saw:cvRow></saw:cvTable></saw:view>
<saw:view xsi:type="saw:titleView" name="titleView!1"/>
<saw:view xsi:type="saw:tableView" name="tableView!1">
<saw:edges>
<saw:edge axis="page" showColumnHeader="true"/>
<saw:edge axis="section"/>
<saw:edge axis="row" showColumnHeader="true">
<saw:columnOrder>
<saw:columnOrderRef columnID="c88aa8d7fed718bf1" direction="ascending"/></saw:columnOrder>
<saw:edgeLayers>
<saw:edgeLayer type="column" columnID="c13b76bdbcc72b1a3"/>
<saw:edgeLayer type="column" columnID="cb5b16bf7bdbadd76"/>
<saw:edgeLayer type="column" columnID="c11eeb206a8c151e1"/>
<saw:edgeLayer type="column" columnID="c88aa8d7fed718bf1"/></saw:edgeLayers></saw:edge>
<saw:edge axis="column" showColumnHeader="rollover"/></saw:edges></saw:view>
<saw:view xsi:type="saw:filtersView" name="filtersView!1"/></saw:views>
<saw:prompts scope="report" subjectArea=""Workforce Management - Worker Assignment Event Real Time"">
<saw:promptStep>
<saw:individualPrompts>
<saw:prompt xsi:type="saw:columnFilterPrompt" columnID="c5" subjectArea=""Workforce Management - Worker
Assignment Event Real Time"" required="false" noAutoPopulateLabel="true">
<saw:formula>
<sawx:expr xsi:type="sawx:sqlExpression">"Time"."Date"</sawx:expr></saw:formula>
<saw:promptOperator op="between"/>
<saw:promptUIControl xsi:type="saw:calendar">
<saw:customWidth width="120" using="custompixels"/></saw:promptUIControl>
<saw:label>
<saw:caption>
<saw:text>Time Period (default is last 12 months)</saw:text></saw:caption></saw:label>
<saw:promptDefaultValues type="sql" usingCodeValue="false">
<saw:promptDefaultValue>select TIMESTAMPADD(SQL_TSI_DAY, -364, CURRENT_DATE) from
Time</saw:promptDefaultValue>
<saw:promptDefaultValue>select CURRENT_DATE from
Time</saw:promptDefaultValue></saw:promptDefaultValues>
<saw:constrainPrompt type="none"/>
<saw:setPromptVariables>
<saw:setPromptVariable location="value" type="none" variableFormula=""/></saw:setPromptVariables>
<saw:promptSource xsi:type="saw:allChoices"/></saw:prompt></saw:individualPrompts>
<saw:customWidth width="120" using="custompixels"/></saw:promptStep></saw:prompts></saw:report>