Transcript Slide 1

“You Asked For It, You Got It!”
Best New [Backend] Features of WebFOCUS 7.7.03
Renee Teatro
Information Builders
December 2011
You Asked For It, You Got It!
You Asked For It, You Got It!
WebFOCUS and FOCUS are Like Twins
7.7.03 finally brings together WebFOCUS and FOCUS
Virtually identical backend features and functionality
 New features hit all products and platforms together
 Minimal difference between internal code paths
 Focexecs work identically in either product
 Bugs are fixed once for everyone
You Asked For It, You Got It!
MASTER
TABLE
OUTPUT
and Efficiencies
You Asked For It, You Got It!
MASTER
MetaTable in the Master
TABLE
(Compute/Filter)
DBA WHERE
Extended Limits
Absolute Value format
Business Views
OUTPUT
and Efficiencies
You Asked For It, You Got It!
FILTER in MFD
Put your global filters into the
metadata for general availability *
FILE = filename
MASTER
SEGMENT =
Filter format is always I1
FIELD=FIELD1,, A3,$
FIELD=FIELD2,, A4,$
DEFINE DEFFIELD/A7 = FIELD1 | FIELD2 ; ,$
FILTER FILTFIELD = FIELD1 NE FIELD2; ,$
TABLE FILE filename
PRINT FIELD1 FIELD2 DEFFIELD
WHERE FILTFIELD
END
Expression must
resolve to 0 or 1
(false or true)
FOCEXEC
No operator, no
expression
* Works independently of FILTER FILE syntax
You Asked For It, You Got It!
COMPUTE in MFD
Put global Computes into the metadata
for general availability
FILE = filename
MASTER
SEGMENT =
Any format
FIELD=FIELD1,, A3,$
Any expression
FIELD=FIELD2,, A4,$
DEFINE DEFFIELD/A7 = FIELD1 | FIELD2 ; ,$
COMPUTE COMPFIELD/D12.2 = IF…THEN…ELSE… ; ,$
TABLE FILE filename
PRINT FIELD1 FIELD2 DEFFIELD
COMPUTE COMPFIELD;
END
No operator,
no expression,
add semicolon
FOCEXEC
You Asked For It, You Got It!
WHERE in DBA
Use WHERE in DBA instead of IF
FILE =
SEGMENT =
MASTER
IF
FIELD=
END
DBA
USER=XYZ, …RESTRICT=VALUE,VALUE=ITEM NE RADIO
FILE =
SEGMENT =
MASTER
FIELD=
WHERE
END
More complex
DBA
expressions
USER=XYZ, …RESTRICT=VALUE_WHERE,
VALUE=ITEM NE RADIO
USER=ABC, …RESTRICT=VALUE_WHERE,
VALUE=ITEM NE ‘RADIO’ AND BB NE AA
You Asked For It, You Got It!
Absolute Value Format Option
A – IF
absolute
implied
value
FILE = filename
SEGMENT =
FIELD= VALUE1,, FORMAT = F8.2 ,$
DEFINE VALUE2/F8.2AM = VALUE1; ,$
DEFINE VALUE3/D8.2B
= VALUE1; ,$
DEFINE VALUE4/D12.2Ac = VALUE1; ,$
MASTER
VALUE1
VALUE2
VALUE3
VALUE4
-1484.27
$1484.27
[1,484.27]
1484.27
!! Column totals add
original signed values
REPORT
You Asked For It, You Got It!
Business “View” of a Database
A VIEW into the original file – no new data, no separate extraction
 Reflect the business instead of physical field arrangement
 Have as many different Business Views as required; Direct via USE
 BV recognized only for extract (TABLE[F], GRAPH, MATCH, MORE)
 JOIN a Business View to other files
 Limit the fields accessible in the main file, without DBA
 Make OS impose a View via security
Business View
Original
MFD
FILE=ORIG,
SUFFIX=any
MFD
FILE=anyname,
CRFILE=ORIG
FOLDER=
You Asked For It, You Got It!
Business “View” of a Database
FILE=ORIG, SUFFIX=FOC
SEGNAME=SEG1, …
FILE=BUSVIEW, …
FIELD=SOCSECNO, …
SEGNAME=SEG1, CRFILE=ORIG,
FIELD=NAME, …
CRINCLUDE=ALL, $
FIELD=SALARY, …
FOLDER=FOLDER1,$
SEGNAME=SEG2, PARENT=SEG1
FIELD=FULLNAME,, ALIAS=NAME,$
FIELD=COMPANY, …
FIELD=SSN,, ALIAS=SOCSECNO,$
This Business
View
FIELD=COMPANY,,TITLE=‘CO
NAME’,$
omits SALARY
Rename or rearrange fields without touching original file
 Each Business View field relates (maps) to an original field
 TABLE with BV field names translates to original names
• Attributes and relationships are taken from the original field
 New DEFINEs permitted in Business View master
SET FOCTRANSFORM = ON
You Asked For It, You Got It!
Extended Limits
256K total length of all fields in a request
1022 segments in JOIN or COMBINE
64 character Define Function name
32 gigabyte XFOCUS partition
128 BY sort phrases
You Asked For It, You Got It!
Across Print
Hide Null Across
MASTER Heading When
Subtotal Above
TABLE
OUTPUT
and Efficiencies
You Asked For It, You Got It!
ACROSSPRT and HIDENULLACRS
One line per
record retrieved
TABLE FILE EMPDATA
PRINT
'EMPDATA.EMPDATA.SALARY'
BY 'EMPDATA.EMPDATA.MAJ' NOPRINT
BY 'EMPDATA.EMPDATA.LCAREA' AS 'Area'
ACROSS 'EMPDATA.EMPDATA.LCDEPT' AS 'Dept:‘
WHERE LCDEPT EQ 'Admin Services' OR 'Consulting'
OR 'Accounting' OR 'Marketing'
ON EMPDATA.EMPDATA.MAJ SUBTOTAL AS ''
ON EMPDATA.EMPDATA.MAJ PAGE-BREAK
HEADING
One column for
"Compensation Report“ each value
…
You Asked For It, You Got It!
ACROSSPRT and HIDENULLACRS
One column for
each ACROSS value
AREA
Central
North Eastern
PAGE 1
COMPENSATION REPORT
DEPT
Accounting
Admin Services
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
$25,400.00
.
.
.
.
.
No values in
.
Accounting
.
.
column
.
.
.
.
You Asked For It, You Got It!
ACROSSPRT and HIDENULLACRS
SET ACROSSPRT = COMPRESS
Eliminates MISSING cells
Moves up non-missing values within BY
Default is NORMAL
SET HIDENULLACRS = ON
 Null ACROSS columns are removed when no value
exists for that ACROSS column within the BY group
BY group must specify PAGE-BREAK
 Higher “BY” SUBTOTAL may force column display
Ignored with ACROSS FIELD COLUMNS value …
Default is OFF
You Asked For It, You Got It!
ACROSSPRT and HIDENULLACRS
SET ACROSSPRT=COMPRESS
Empty rows are removed
COMPENSATION REPORT
DEPT:
Admin Services
Consulting
Marketing
AREA
Central
North Eastern
South Eastern
Western
Branch Admin
PAGE 1
$25,400.00
.
.
.
.
.
$30,800.00
.
.
.
.
.
$49,500.00
$35,900.00
$40,900.00
.
$62,500.00
$55,500.00
$52,000.00
$32,300.00
$62,500.00
$50,500.00
$43,400.00
$58,800.00
$56,200.00
$126,300.00
$417,500.00
SET HIDENULLACRS=ON
Accounting column is suppressed
Columns may change per pagebreak
You Asked For It, You Got It!
ACROSSPRT and HIDENULLACRS
COMPENSATION REPORT
DEPT:
Accounting
Marketing
AREA
Corporate
$83,000.00
$32,400.00
$79,000.00
$62,500.00
$26,400.00
$55,500.00
$62,500.00
$35,200.00
.
.
Total Corp
$283,300.00
$153,200.00
PAGE 2
SET HIDENULLACRS=ON
Accounting column returns on this page
You Asked For It, You Got It!
Subtotals Above the Line
SET SUMMARYLINES = EXPLICIT
SET SUBTOTALS = ABOVE
TABLE FILE EMPDATA
PRINT PIN SALARY AS 'Pay'
BY MAJ NOPRINT PAGE-BREAK REPAGE SUBTOTAL
BY AREA NOPRINT PAGE-BREAK
ON AREA SUBTOTAL AS 'Total Area'
WHEN MAJ NE 'Corporate'
BY DEPT AS 'Department'
Code continues…
You Asked For It, You Got It!
Headings WHEN
HEADING CENTER
"&DATEMTRDYY
Compensation Report "
HEADING
This heading
always appears
"Corporate Division "
WHEN MAJ EQ 'Corporate';
HEADING
"<MAJ "
"<AREA "
WHEN MAJ NE 'Corporate' AND TABPAGENO EQ 1;
HEADING
"<MAJ (Continued) "
"<AREA "
WHEN MAJ NE 'Corporate’ AND TABPAGENO GT 1 ;
END
You Asked For It, You Got It!
Subtotals Above and Headings WHEN
HEADING WHEN
2 headings selected
SET SUBTOTALS = ABOVE
Subtotals moved above detail lines
Compensation Report
Branch Admin
Central
Department
PIN
Pay
Total Branch Admin
$1,592,700.00
Total Area Central
$493,700.00
ADMIN SERVICES
000000180
$25,400.00
MARKETING
000000040
$62,500.00
PERSONNEL
000000240
$33,300.00
PERSONNEL
000000250
$25,000.00
PERSONNEL
000000390
$45,000.00
PROGRMING & DVLPMT 000000260
$49,500.00
PROGRMING & DVLPMT 000000290
$40,900.00
SALES
000000050
$54,100.00
SALES
000000200
$115,000.00
SALES
000000360
$43,000.00
Page 1of 4
You Asked For It, You Got It!
Subtotals Above and Headings WHEN
HEADING WHEN
2 different headings selected
(due to page 2)
Compensation Report
Branch Admin (Continued)
North Eastern
Department
PIN
Total Area North Eastern
CUSTOMER SUPPORT
CUSTOMER SUPPORT
MARKETING
MARKETING
MARKETING
SALES
SALES
Page 2of 4
000000110
000000140
000000060
000000310
000000410
000000190
000000210
Subtotal above detail
Pay
$304,200.00
$19,300.00
$62,500.00
$55,500.00
$52,000.00
$32,300.00
$39,000.00
$43,600.00
You Asked For It, You Got It!
Subtotals Above and Headings WHEN
HEADING WHEN
just Corporate heading selected
Compensation Report
Corporate Division
Department
PIN
Total Corporate
ACCOUNTING
ACCOUNTING
ACCOUNTING
ACCOUNTING
ACCOUNTING
MARKETING
MARKETING
MARKETING
Page 1of 1
000000070
000000100
000000300
000000370
000000400
000000010
000000130
000000320
Subtotal above detail
Pay
$436,500.00
$83,000.00
$32,400.00
$79,000.00
$62,500.00
$26,400.00
$55,500.00
$62,500.00
$35,200.00
You Asked For It, You Got It!
Active Reports
Output to Powerpoint
SQL Efficiencies
Character Collation
MFACT – Multipath Handling
MASTER
TABLE
OUTPUT
and Efficiencies
You Asked For It, You Got It!
Output and Efficiencies
Active Reports for FOCUS
 Provide enduser the same ability to manipulate report
 Limited to HTML reports
 Complete report including javascript created in FOCUS
TABLE FILE filename
SUM ….
…
ON TABLE HOLD AS ABC FORMAT AHTML
END
You Asked For It, You Got It!
Active Reports for FOCUS
COUNTRY
CAR
MODEL
RETAIL_COST
DEALER_COST
SALES
ENGLAND
JAGUAR
V12XKE AUTO
8,878
7,427
0
8,878
7,427
0
13,491
11,194
12000
*TOTAL MODEL XJ12L AUTO
13,491
11,194
12000
*TOTAL CAR JAGUAR
22,369
18,621
12000
17,850
14,940
0
*TOTAL MODEL INTERCEPTOR III
17,850
14,940
0
*TOTAL CAR JENSEN
17,850
14,940
0
5,100
4,292
0
5,100
5,100
4,292
4,292
0
0
45,319
37,853
12000
*TOTAL MODEL V12XKE AUTO
XJ12L AUTO
JENSEN
TRIUMPH
*TOTAL MODEL TR7
*TOTAL CAR TRIUMPH
*TOTAL COUNTRY ENGLAND
INTERCEPTOR III
TR7
ON TABLE HOLD FORMAT HTML
You Asked For It, You Got It!
Active Reports for FOCUS
ON TABLE HOLD FORMAT AHTML
You Asked For It, You Got It!
Active Reports for FOCUS
Additional Stylesheet Controls allow you to –
 Apply calculations to columns and control display location
 Control data display by hiding or freezing columns
 Control the user menu display
 Limit the number of rows per page
 Add graphic visualization of numeric data
 Customize colors for most of the report components
 Control the Report Menu options available to the user
You Asked For It, You Got It!
Output to Powerpoint
Instant Presentations
HOLD FORMAT PPT
TABLE FILE CAR
HEADING CENTER
"CAR SALES - CURRENT STATISTICS"
"CREATED ON &DATEMTRDYY"
"FOR COUNTRY <COUNTRY"
""
SUM RCOST DCOST SALES
BY COUNTRY PAGE-BREAK NOPRINT
BY CAR UNDER-LINE NOPRINT
ON CAR SUBHEAD
"Current Sales for <CAR "
""
BY MODEL SUB-TOTAL MULTILINES
ON TABLE HOLD AS PPT4 FORMAT PPT
ON TABLE SET STYLE *
You Asked For It, You Got It!
Output to Powerpoint
WebFOCUS Graphics !
WebFOCUS Reports
Excel, HTML, PDF
Dashboard, Graphics
Visual Discovery
You Asked For It, You Got It!
SQL Efficiencies
More Optimization to speed your requests!
DEFINE FUNCTION – optimized where possible
Boolean expressions – optimized as SQL CASE
statements
SQL.<sqlfunctionname> -- passed directly to the
relational engine
DEFINE and IFTHENELSE – optimized as SQL CASE
or SQL COUNT statements
WebFOCUS sorting optimized to ORDER BY
expression
You Asked For It, You Got It!
SET COLLATION
When does DIGITAL = digital?
In 7.7 – with SET COLLATION !
SET COLLATION =
{BINARY|SRV_CI|SRV_CS|CODEPAGE}
Case Insensitive -- all WHERE tests and sorts
ignore the case of the elements being compared.
Affects sorting, WHERE conditions, Comparison in
Calculations, StyleSheets
** Server only Setting ****
Copyright 2007, Information Builders. Slide 32
You Asked For It, You Got It!
Collation
DEFINE FILE CENTINV
FLAG/A1=IF CENTINV.INVINFO.PRODNAME CONTAINS 'ZT' THEN '$'
ELSE 'Y';
END
SET EQTEST = &EQTEST
TABLE FILE CENTINV
PRINT
'CENTINV.INVINFO.FLAG'
'CENTINV.INVINFO.PRICE'
BY 'CENTINV.INVINFO.PRODNAME'
HEADING
" Setting of EQTEST is &EQTEST “
“ COLLATION is set to SRV_CI “
" Filter: WHERE CENTINV.INVINFO.FLAG EQ '$'; “
"
AND PRODTYPE EQ 'DIGITAL'; "
FOOTING
""
WHERE ( CENTINV.INVINFO.FLAG EQ '$' )
AND ( CENTINV.INVINFO.PRODTYPE EQ 'Digital' );
…
Copyright 2007, Information Builders. Slide 33
You Asked For It, You Got It!
SET COLLATION
Setting of EQTEST is EXACT
COLLATION is set to SRV_CI
Filter: WHERE CENTINV.INVINFO.FLAG EQ '$'
AND PRODUCT CONTAINS 'DIGITAL';
Product
Name:
FLAG
Price:
ZT Digital PDA – Commercial
$
499.00
Copyright 2007, Information Builders. Slide 34
You Asked For It, You Got It!
MFACT for Multi-Path

Sort within request must be consistent - all sort fields
within path of all verb objects
 Multiple parents requires change to this requirement
 SET FOCTRANSFORM = MFACT supports requests
where sorts are applicable to only some of the verb
objects
 Request is decomposed to MATCH to sort the
appropriate fields , followed by TABLE to format and
display the results
You Asked For It, You Got It!
MFACT for Multi-Path
EMPINFO
BY
PAY_DATE
PAYINFO
TABLE FILE EMPLOYEE
SUM SALARY GROSS
BY EID
BY LAST_NAME
BY HIGHEST DAT_INC
BY PAY_DATE
END
BY EID
BY LAST_NAME
SALINFO
BY
DAT_INC
You Asked For It, You Got It!
MFACT for Multi-Path
PAGE
EMP_ID
LAST_NAME
-------------071382660 STEVENS
112847612 SMITH
1
DAT_INC PAY_DATE
------- -------82/01/01 81/12/31
81/01/01 81/11/30
. 82/01/29
82/02/26
82/03/31
82/04/30
82/05/28
82/06/30
82/07/30
82/08/31
82/01/01 82/01/29
. 82/02/26
82/03/31
82/04/30
82/05/28
82/06/30
82/07/30
SALARY
-----$11,000.00
$10,000.00
.
.
.
.
.
.
.
.
$13,200.00
.
.
.
.
.
.
GROSS
----$833.33
$833.33
$916.67
$916.67
$916.67
$916.67
$916.67
$916.67
$916.67
$916.67
$1,100.00
$1,100.00
$1,100.00
$1,100.00
$1,100.00
$1,100.00
$1,100.00