-* EXTRACT SOURCE DATA DEFINE FILE DEPARTMENTS QSET/I4 = EDIT(SALES_YEAR); YR /YY = QSET; SORT_DEPT/A46 = IF DEPT_NAME EQ 'Grocery' THEN ' Grocery' ELSE IF DEPT_NAME EQ 'Floral' THEN ' Floral' ELSE IF DEPT_NAME EQ 'Deli' THEN ' Deli' ELSE IF DEPT_NAME EQ 'Coffee Shop' THEN ' Coffee Shop' ELSE IF DEPT_NAME EQ 'Pharmacy' THEN ' Pharmacy' ELSE IF DEPT_NAME EQ 'Health and Beauty' THEN ' Health and Beauty' ELSE IF DEPT_NAME EQ 'Pet Food and Supplies' THEN ' Pet Food and Supplies' ELSE IF DEPT_NAME EQ 'Automotive' THEN ' Automotive' ELSE IF DEPT_NAME EQ 'Toys' THEN ' Toys' ELSE IF DEPT_NAME EQ 'Total' THEN 'Total' ELSE DEPT_NAME ; END -SET &MAXYR = &YR; -SET &MINYR = &MAXYR-5; TABLE FILE DEPARTMENTS -* SET values for small protect processing and -INCLUDE. -* Some choices are optional. -*INCLUDE small_cell_protect_5 -*----------------------------------------------------------------------------------------------- SUM SUM.DEPARTMENTS.DEPARTMENTS.EMPLOYEES AS 'SC_COUNTS' BY DEPARTMENTS.DEPARTMENTS.STORE_NAME BY DEPARTMENTS.DEPARTMENTS.SALES_YEAR BY DEPARTMENTS.DEPARTMENTS.YR BY LOWEST DEPARTMENTS.DEPARTMENTS.SORT_DEPT WHERE ( DEPARTMENTS.DEPARTMENTS.QUARTER_NAME EQ 'First Quarter' ) WHERE (DEPARTMENTS.DEPARTMENTS.YR GE &MINYR); WHERE (DEPARTMENTS.DEPARTMENTS.YR LE &MAXYR); ON TABLE HOLD AS EXTDATA FORMAT FOCUS END -RUN -* EXTRACT MAXIMUM YEAR IN A VARIABLE -DEFAULTH &YRMAX = 0 TABLE FILE EXTDATA SUM MAX.YR/I4 AS 'YRMAX' ON TABLE HOLD AS MAXYR FORMAT BINARY END -RUN -READFILE MAXYR -SET &YRMAX = &YRMAX; -TYPE &YRMAX -* EXTRACT ALL INDIVIDUAL YEARS IN A VARIABLE -DEFAULTH &EXTYR = 0 TABLE FILE EXTDATA BY YR/I4 AS 'EXTYR' ON TABLE HOLD AS YRLIST FORMAT BINARY END -RUN -SET &NBYR = &LINES; -REPEAT READYR FOR &I FROM 1 TO &NBYR STEP 1 -DEFAULTH &YR.&I = 0 -READFILE YRLIST -SET &YR.&I = &EXTYR; -TYPE &YR.&I -READYR DEFINE FILE EXTDATA SALES_YEAR/A100 =EDIT(YR) END TABLE FILE EXTDATA SUM SC_COUNTS BY STORE_NAME BY SALES_YEAR BY LOWEST SORT_DEPT ON TABLE SET ASNAMES ON ON TABLE NOTOTAL ON TABLE HOLD AS REPINPUT ON TABLE SET STYLE * ENDSTYLE END -* SET values for small protect processing and -INCLUDE. -* Some choices are optional. -SET &input = 'repinput'; -SET &output = 'finaldata'; -SET &dim1 = 'SORT_NAME'; -SET &dim1_id = 'SORT_DEPT'; -SET &dim2 = 'SALES_YEAR'; -SET &measure = 'SC_COUNTS'; -*Include small-cell protection file here -* Create report based on small protect output. DEFINE FILE finaldata SORT_REGION/A2V = IF &dim1 LIKE '%Julie%' THEN '2' ELSE IF &dim1 LIKE '%Lisa%' THEN '4' ELSE IF &dim1 LIKE '%Jake%' THEN '3' ELSE '1' ; END TABLE FILE finaldata ON TABLE SUBHEAD "Stores" "Employees by Department" "Sales Years &MINYR - &MAXYR" "Store Listing" ON TABLE SUBFOOT "Source: Sales Data " " " "^ Indicates a cell has been marked for small-cell protection." SUM &measure BY SORT_REGION NOPRINT BY &dim1._SORT NOPRINT BY &dim1 AS 'Store' BY LOWEST &dim1_id AS 'Department' ACROSS &dim2 AS 'First Quarter' WHERE &dim2 NE 'Total' AND &dim1 NE 'Total' ON &dim1 SUBFOOT " " ON TABLE SET PAGE-NUM NOLEAD ON TABLE PCHOLD FORMAT &WFFMT.(<HTML Web Document (HTML),HTML>,<Excel XLSX (XLSX),XLSX>).Output type. ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * -INCLUDE STYLESHEET file here $ TYPE=REPORT, HFREEZE=TOP, $ TYPE=TITLE, BORDER-BOTTOM=ON, BORDER-BOTTOM-COLOR=RGB (0 58 99), $ TYPE=TITLE, COLUMN=N3, JUSTIFY=LEFT, BORDER-BOTTOM=ON, BORDER-BOTTOM-COLOR=RGB (0 58 99), $ TYPE=TITLE, COLUMN=N4, JUSTIFY=LEFT, BORDER-BOTTOM=ON, BORDER-BOTTOM-COLOR=RGB (0 58 99), $ TYPE=ACROSSVALUE, JUSTIFY=CENTER, WRAP=ON, $ TYPE=DATA, JUSTIFY=CENTER, $ TYPE=DATA, COLUMN=N3, JUSTIFY=LEFT, SQUEEZE=ON, $ TYPE=DATA, COLUMN=N4, JUSTIFY=LEFT, $ TYPE=DATA, BORDER-TOP=OFF, BORDER-BOTTOM=OFF, $ TYPE=TABFOOTING, BORDER-TOP=OFF, $ TYPE=TABFOOTING, LINE=1, JUSTIFY=RIGHT, $ TYPE=TABFOOTING, LINE=1, OBJECT=TEXT, ITEM=1, SIZE=9, STYLE=NORMAL, $ TYPE=TABFOOTING, LINE=2, OBJECT=TEXT, ITEM=1, SIZE=9, STYLE=NORMAL, $ TYPE=TABFOOTING, LINE=3, OBJECT=TEXT, ITEM=1, SIZE=9, STYLE=ITALIC, $ TYPE=SUBFOOT BORDER-BOTTOM=ON, BORDER-TOP=ON, $ TYPE=SUBFOOT BORDER-BOTTOM=LIGHT, BORDER-TOP=LIGHT, $ TYPE=DATA, COLUMN=N12, BORDER-LEFT=LIGHT, BORDER-LEFT-COLOR=RGB(0 58 99), $ TYPE=ACROSSVALUE, COLUMN=N12, BORDER-LEFT=LIGHT, BORDER-LEFT-COLOR=RGB(0 58 99), $ TYPE=DATA, WHEN = &dim1_id EQ 'Total', COLOR=RGB(255 226 146), STYLE=NORMAL, $ TYPE=DATA, WHEN = &dim1_id EQ 'Total', BACKCOLOR=RGB(0 58 99), STYLE=NORMAL, $ TYPE=DATA, WHEN = &dim1_id EQ 'Total', BORDER-BOTTOM=LIGHT, BORDER-BOTTOM-COLOR=RGB(0 58 99),$ TYPE=DATA, WHEN = &dim1_id EQ 'Total', BORDER-BOTTOM=LIGHT, BORDER-BOTTOM-COLOR=RGB(0 58 99),$ ENDSTYLE END -RUN
type=report, color=rgb(0 0 0), font='CALIBRI', size=10, squeeze=on, grid=off, LEFTMARGIN=0.05, TOPMARGIN=0.025, $ type=report, object=status-area, color=white, backcolor=rgb(240 190 48), $ type=report, object=current-row, backcolor=rgb (0 0 0), hover-backcolor=rgb(255 243 209), $ type=report, hfreeze=top, graphcolor=green, graphcolorneg=red, $ type=report, object=calc-area, color=white, backcolor=rgb(240 190 48), $ type=report, object=menu, color=white, backcolor=rgb(240 190 48), border-color=white, hover-color=rgb(0 58 99), hover-backcolor=rgb(255 243 209), $ type=pagenum, style=italic, size=8, justify=right, $ type=tabheading, line=1, justify=left, style=bold, size=16, $ type=tabheading, line=2, justify=left, style=normal, size=14, $ type=tabheading, line=4, justify=left, style=normal, size=13, $ type=tabheading, line=5, justify=left, style=normal, size=13, $ type=tabheading, line=3, justify=left, style=normal, size=14, $ type=tabfooting, style=normal, size=11, justify=right, border-top=light, border-top-color=rgb(0 58 99), $ type=heading, style=bold, size=14, justify=left, $ type=footing, style=bold, size=12, justify=left, $ type=title, backcolor=rgb(0 58 99), color=rgb(255 226 146), style=-underline, justify=center, $ type=data, backcolor=(rgb(255 255 255) rgb(255 243 209)), justify=center, $ type=acrosstitle, border-top=light, border-bottom=light, border-top-color=rgb(0 58 99), border-bottom-color=rgb(0 58 99), color=rgb(0 58 99), backcolor=rgb(255 255 255), size=12, style=-underline, wrap=on, $ type=acrossvalue, border-top=light, border-top-color=rgb(0 58 99), backcolor=rgb(255 243 209), color=rgb(0 58 99), style=normal, $ type=subhead, size=12, style=bold, border-top=light, border-bottom=light, border-top-color=rgb(0 58 99), border-bottom-color=rgb(0 58 99), $ type=subfoot, size=12, style=bold, border-top=light, border-bottom=light, border-top-color=rgb(0 58 99), border-bottom-color=rgb(0 58 99), $ type=subtotal, backcolor=RGB(255 255 255), color=rgb(0 0 0), style=normal, border-top=light, border-top-color=rgb(0 58 99), border-bottom=light, border-bottom-color=rgb(0 58 99), $ type=grandtotal, backcolor=rgb(0 58 99), color=rgb(255 226 146), style=normal, border-top=light, border-bottom=light, border-top-color=rgb(0 58 99), border-top-style=solid, border-bottom-style=double, $ *GRAPH_SCRIPT setFillColor(getSeries(0),new Color(0,58,99)); setFillColor(getSeries(1),new Color(213,159,15)); setFillColor(getSeries(2),new Color(191,49,26)); setFillColor(getSeries(3),new Color(103,145,70)); setFillColor(getSeries(4),new Color(98,26,76)); setFillColor(getSeries(5),new Color(145,145,149)); setFillColor(getSeries(6),new Color(222,121,28)); setFillColor(getSeries(7),new Color(185,199,212)); setFillColor(getSeries(8),new Color(255,226,146)); setFillColor(getSeries(9),new Color(247,163,129)); setFillColor(getSeries(10),new Color(206,224,179)); setFillColor(getSeries(11),new Color(210,188,195)); setFillColor(getSeries(12),new Color(201,203,204)); setFillColor(getSeries(13),new Color(250,215,179)); setFillColor(getSeries(14),new Color(94,124,152)); setFillColor(getSeries(15),new Color(240,190,48)); setFillColor(getSeries(16),new Color(241,93,34)); setFillColor(getSeries(17),new Color(154,193,125)); setFillColor(getSeries(18),new Color(158,110,125)); setFillColor(getSeries(19),new Color(177,177,177)); setFillColor(getSeries(20),new Color(236,168,106)); setFillColor(getSeries(21),new Color(213,237,255)); setFillColor(getSeries(22),new Color(251,237,202)); setFillColor(getSeries(23),new Color(248,209,203)); setFillColor(getSeries(24),new Color(224,236,215)); setFillColor(getSeries(25),new Color(238,193,223)); setFillColor(getSeries(26),new Color(242,242,242)); setFillColor(getSeries(27),new Color(249,227,208)); setFillColor(getSeries(28),new Color(146,168,188)); setFillColor(getSeries(29),new Color(248,224,158)); setFillColor(getSeries(30),new Color(244,125,78)); setFillColor(getSeries(31),new Color(183,210,162)); setFillColor(getSeries(32),new Color(195,165,174)); setFillColor(getSeries(33),new Color(192,192,192)); setFillColor(getSeries(34),new Color(241,190,143)); setFillColor(getSeries(35),new Color(189,228,255)); setFillColor(getSeries(36),new Color(245,211,115)); setFillColor(getSeries(37),new Color(236,130,112)); setFillColor(getSeries(38),new Color(128,128,128)); setFillColor(getTimeScaleLevel(0), new Color(240,159,97)); setFillColor(getTimeScaleLevel(1), new Color(255,243,172)); setFillColor(getTimeScaleLevel(2), new Color(106,189,187)); setFillColor(getY1Title(),new Color(0,0,0)); setFillColor(getY1Label(),new Color(0,0,0)); setFillColor(getY2Label(),new Color(0,0,0)); setFillColor(getY3Label(),new Color(0,0,0)); setFillColor(getY4Label(),new Color(0,0,0)); setFillColor(getY5Label(),new Color(0,0,0)); setFillColor(getO1Title(),new Color(0,0,0)); setFillColor(getX1Title(),new Color(0,0,0)); setFillColor(getO1Label(),new Color(0,0,0)); setFillColor(getO2Label(),new Color(0,0,0)); setFillColor(getX1Label(),new Color(0,0,0)); setFillColor(getLegendText(),new Color(0,0,0)); setFillColor(getFrame(),new Color(235,235,240)); setFillColor(getChartBackground(),new Color(255,255,255)); setFillColor(getCubeFloor(),new Color(255,255,255)); setFillColor(getCubeLeftWall(),new Color(255,255,255)); setFillColor(getCubeRightWall(),new Color(255,255,255)); setFillColor(getFrame(),new Color(255,255,255)); setFillColor(getChartBackground(),new Color(255,255,255)); setFillColor(getFrameBottom(),new Color(255,255,255)); setFillColor(getFrameSeparator(),new Color(255,255,255)); setFillColor(getFrameSide(),new Color(255,255,255)); setFillColor(getHistogramRiser(),new Color(158,144,188)); setFillColor(getLegendArea(),new Color(255,255,255)); setBorderColor(getSeries(0),new Color(0,0,0)); setBorderColor(getSeries(1),new Color(0,0,0)); setBorderColor(getSeries(2),new Color(0,0,0)); setBorderColor(getSeries(3),new Color(0,0,0)); setBorderColor(getSeries(4),new Color(0,0,0)); setBorderColor(getSeries(5),new Color(0,0,0)); setBorderColor(getSeries(6),new Color(0,0,0)); setBorderColor(getSeries(7),new Color(0,0,0)); setBorderColor(getSeries(8),new Color(0,0,0)); setBorderColor(getSeries(9),new Color(0,0,0)); setBorderColor(getSeries(10),new Color(0,0,0)); setBorderColor(getSeries(11),new Color(0,0,0)); setBorderColor(getSeries(12),new Color(0,0,0)); setBorderColor(getSeries(13),new Color(0,0,0)); setBorderColor(getSeries(14),new Color(0,0,0)); setBorderColor(getSeries(15),new Color(0,0,0)); setBorderColor(getSeries(16),new Color(0,0,0)); setBorderColor(getSeries(17),new Color(0,0,0)); setBorderColor(getSeries(18),new Color(0,0,0)); setBorderColor(getSeries(19),new Color(0,0,0)); setBorderColor(getSeries(20),new Color(0,0,0)); setBorderColor(getHistogramRiser(),new Color(0,0,0)); setBorderColor(getLegendArea(),new Color(0,0,0)); setBorderColor(getY1MajorGrid(),new Color(204,204,204)); setBorderColor(getY1MinorGrid(),new Color(204,204,204)); setBorderColor(getY2MajorGrid(),new Color(204,204,204)); setBorderColor(getY2MinorGrid(),new Color(204,204,204)); setBorderColor(getO1MajorGrid(),new Color(204,204,204)); setBorderColor(getO1MinorGrid(),new Color(204,204,204)); setBorderColor(getX1MajorGrid(),new Color(204,204,204)); setBorderColor(getX1MinorGrid(),new Color(204,204,204)); setBorderColor(getO1AxisLine(),new Color(130,130,130)); setBorderColor(getY1AxisLine(),new Color(130,130,130)); setBorderColor(getCubeFloor(),new Color(0,0,0)); setBorderColor(getCubeLeftWall(),new Color(0,0,0)); setBorderColor(getCubeRightWall(),new Color(0,0,0)); setTransparentBorderColor(getSeries(0),true); setTransparentBorderColor(getSeries(1),true); setTransparentBorderColor(getSeries(2),true); setTransparentBorderColor(getSeries(3),true); setTransparentBorderColor(getSeries(4),true); setTransparentBorderColor(getSeries(5),true); setTransparentBorderColor(getSeries(6),true); setTransparentBorderColor(getSeries(7),true); setTransparentBorderColor(getSeries(8),true); setTransparentBorderColor(getSeries(9),true); setTransparentBorderColor(getSeries(10),true); setTransparentBorderColor(getSeries(11),true); setTransparentBorderColor(getSeries(12),true); setTransparentBorderColor(getSeries(13),true); setTransparentBorderColor(getSeries(14),true); setTransparentBorderColor(getSeries(15),true); setTransparentBorderColor(getSeries(16),true); setTransparentBorderColor(getSeries(17),true); setTransparentBorderColor(getSeries(18),true); setTransparentBorderColor(getSeries(19),true); setTransparentBorderColor(getSeries(20),true); setTransparentBorderColor(getFrameBottom(),false); setTransparentBorderColor(getFrameSide(),false); setTransparentBorderColor(getLegendArea(),false); setTransparentBorderColor(getO1MajorGrid(),false); setTransparentBorderColor(getPieFrame(),true); setTransparentBorderColor(getCubeFloor(),false); setTransparentBorderColor(getCubeLeftWall(),false); setTransparentBorderColor(getCubeRightWall(),false); setTransparentBorderColor(getChartBackground(),true); setTransparentBorderColor(getLegendArea(), true); setTransparentFillColor(getLegendArea(),true); setTransparentBorderColor(getHistogramRiser(),true); setCubeFocusFactor(95.83333182119424); setCubePanX(41.3); setCubePanY(54.7); setCubeRotationMatrix(0.9527877123115605,-0.39648905742363183,1.0691265903653806,-0.012240167246073914,1.389589570659449,0.5262420232508634,-1.1402128823990627,-0.3462324595884829,0.8877371966710723); setCubeViewerZ(93.61645050038162); setCubeZoomFactor(55.0); setCubeWallThickZ(0.0); setCubeWallThickY(0.0); setCubeWallThickX(0.0); setY1MajorGridStyle(0); setY2MajorGridStyle(0); setO1MajorGridStyle(0); setX1MajorGridStyle(0); setLineStyleLegendMarkers(3); setNullLegendMarkerShapesAsSquares(false); setFrameAutoShade(true); setColorMode(1); setUseDefaultBubbleMarker(false); setFontName(getDataText(),"CALIBRI"); setFontName(getPieLabel(),"CALIBRI"); setFontName(getPieBarLabel(),"CALIBRI"); setFontName(getPieRingLabel(),"CALIBRI"); setFontName(getPieSliceLabel(),"CALIBRI"); setFontName(getLegendText(),"CALIBRI"); setFontName(getO1Title(),"CALIBRI"); setFontName(getX1Title(),"CALIBRI"); setFontName(getY1Title(),"CALIBRI"); setFontName(getO2Title(),"CALIBRI"); setFontName(getY2Title(),"CALIBRI"); setFontName(getY3Title(),"CALIBRI"); setFontName(getY4Title(),"CALIBRI"); setFontName(getY5Title(),"CALIBRI"); setFontName(getTitle(),"CALIBRI"); setFontName(getSubtitle(),"CALIBRI"); setFontName(getFootnote(),"CALIBRI"); setFontName(getAllText(),"CALIBRI"); setReverseSeries(false); setDisplay(getFootnote(),true); *GRAPH_JS "mouseOverIndicator": { "enabled": true, "color": "rgba(255,255,255,0.5)", "marker":{"size": 0} }, "introAnimation": { "enabled": true, "duration": 1400 }, htmlToolTip: { enabled: true, -* snap: true, style: { border: 'thin #FFFFFF', background: '#FFFFFF', font: "CALIBRI", }, }, "riserBevel":"bevel" *ENDThis message has been edited. Last edited by: FP Mod Chuck,
In FOCUS Since 1983 ~ from FOCUS to WebFOCUS. Current: WebFOCUS Administrator at FIS Worldpay | 8204, 8206 |
DEFINE FILE CAR DSPYEL /A1 = IF COUNTRY EQ 'FRANCE' OR 'JAPAN' THEN 'Y' ELSE 'N'; END TABLE FILE CAR SUM SEATS DSPYEL NOPRINT BY COUNTRY ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * DEFMACRO=BACKYELLOW, MACTYPE=RULE, WHEN=DSPYEL EQ 'Y', $ TYPE=DATA, BACKCOLOR=RGB(255 255 255), JUSTIFY=CENTER, $ TYPE=DATA, BACKCOLOR=RGB(255 243 209), JUSTIFY=CENTER, MACRO=BACKYELLOW, $ ENDSTYLE END
In FOCUS Since 1983 ~ from FOCUS to WebFOCUS. Current: WebFOCUS Administrator at FIS Worldpay | 8204, 8206 |
Grocery - White Floral - Yellow Deli - White Coffee Shop - Yellow Pharmacy - White Health and Beauty - Yellow Pet Food and Supplies - White Automotive - Yellow Toys - White
DEFINE FILE GGSALES DSPYEL /A1 = IF PRODUCT EQ 'Capuccino' OR 'Coffee Pot' OR 'Espresso' OR 'Mug' OR 'Thermos' THEN 'Y' ELSE 'N'; END TABLE FILE GGSALES SUM DOLLARS DSPYEL NOPRINT BY REGION BY PRODUCT ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * DEFMACRO=BACKYELLOW, MACTYPE=RULE, WHEN=DSPYEL EQ 'Y', $ TYPE=DATA, BACKCOLOR=RGB(255 255 255), JUSTIFY=CENTER, $ TYPE=DATA, BACKCOLOR=RGB(255 243 209), JUSTIFY=CENTER, MACRO=BACKYELLOW, $ ENDSTYLE END
TABLE FILE GGSALES SUM DOLLARS BY REGION BY PRODUCT ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * TYPE=DATA, BACKCOLOR=(RGB(255 255 255) RGB(255 243 209)), JUSTIFY=CENTER, $ ENDSTYLE END
TABLE FILE GGSALES SUM DOLLARS BY REGION BY TOTAL COMPUTE ROWID /I2 = IF REGION EQ LAST REGION THEN ROWID + 1 ELSE 1; BY PRODUCT ON TABLE HOLD AS EXTDATA END -RUN DEFINE FILE EXTDATA -*-* FOR EACH EVEN ROW, THE COLOR WILL CHANGE DSPYEL /A1 = IF IMOD(ROWID, 2, 'I2') EQ 0 THEN 'Y' ELSE 'N'; END TABLE FILE EXTDATA SUM DOLLARS DSPYEL NOPRINT BY REGION ON REGION SUBHEAD "" BY PRODUCT ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * DEFMACRO=BACKYELLOW, MACTYPE=RULE, WHEN=DSPYEL EQ 'Y', $ TYPE=DATA, BACKCOLOR=RGB(255 255 255), JUSTIFY=CENTER, $ TYPE=DATA, BACKCOLOR=RGB(255 243 209), JUSTIFY=CENTER, MACRO=BACKYELLOW, $ ENDSTYLE END -RUN
TABLE FILE GGSALES SUM DOLLARS BY REGION BY TOTAL COMPUTE ROWID /I2 = IF REGION EQ LAST REGION THEN ROWID ELSE ABS(LAST ROWID - 1); NOPRINT BY PRODUCT ON TABLE SET STYLE * TYPE=DATA, BACKCOLOR=RGB(255 255 255), JUSTIFY=CENTER, WHEN=ROWID EQ 0, $ TYPE=DATA, BACKCOLOR=RGB(255 243 209), JUSTIFY=CENTER, WHEN=ROWID NE 0, $ ENDSTYLE END -RUN
In FOCUS since 1986 | WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2 | ||
WebFOCUS App Studio 8.2.06 standalone on Windows 10 |