Focal Point
[CLOSED] Help with creating vert bar graph for 4 months of data

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/8687016826

February 08, 2013, 01:17 PM
Tomsweb
[CLOSED] Help with creating vert bar graph for 4 months of data
I have created a vertical bar graph for 4 months of data (count enrollments by date by county (2 counties)).

The graph shows me a month series (Nov. 2012, Dec. 2012, etc.). For each series I see a blue vertical bar for county #1 and a green vertical bar for county #2.

The graph dispays that series for Nov. 2012, Dec. 2012, and Jan. 2013. For Feb. 2013, however, I get a series for Feb. 6, 2013, Feb. 7, 2013 and Feb. 8, 2013.

I would like to see a single series for Feb. 2013 as well. Simply put, I'd like a series for each month even though Feb. 2013 is only 8 days old.

I am showing my code to ask how can I edit the code to get this result?

Thanks!

  

-SET &ECHO = ALL;
SET ASNAMES = ON

TABLE FILE OSC
HEADING CENTER
"NOVEMBER 2012"
""
-*COUNT
SUM
CNT.CUSTACCT
BY SACTDATE
ON SACTDATE SKIP-LINE COLUMN-TOTAL AS 'TOTAL'

-*BY FDT
-*ON FDT SKIP-LINE COLUMN-TOTAL AS 'TOTAL'

BY SACTCODE NOPRINT
ACROSS CTY
ROW-TOTAL
WHERE SACTCODE EQ '0303';
WHERE SACTREAS EQ '001';
WHERE (SACTDATE GE '121101') AND (SACTDATE LE '121130');
IF RECORDLIMIT EQ 30
ON TABLE HOLD AS W01
END
-RUN

? HOLD W01
-RUN

TABLE FILE OSC
HEADING CENTER
"DECEMBER 2012"
""
-*COUNT
SUM
CNT.CUSTACCT
BY SACTDATE
ON SACTDATE SKIP-LINE COLUMN-TOTAL AS 'TOTAL'
BY SACTCODE NOPRINT
ACROSS CTY
ROW-TOTAL
WHERE SACTCODE EQ '0303';
WHERE SACTREAS EQ '001';
WHERE (SACTDATE GE '121201') AND (SACTDATE LE '121231');
IF RECORDLIMIT EQ 30
ON TABLE HOLD AS W02
END
-RUN

TABLE FILE OSC
HEADING CENTER
"JANUARY 2013"
""
-*COUNT
SUM
CNT.CUSTACCT
BY SACTDATE
ON SACTDATE SKIP-LINE COLUMN-TOTAL AS 'TOTAL'
BY SACTCODE NOPRINT
ACROSS CTY
ROW-TOTAL
WHERE SACTCODE EQ '0303';
WHERE SACTREAS EQ '001';
WHERE (SACTDATE GE '130101') AND (SACTDATE LE '130131');
IF RECORDLIMIT EQ 30
ON TABLE HOLD AS W03
END
-RUN

TABLE FILE OSC
HEADING CENTER
"FEBRUARY 2013"
""
-*COUNT
SUM
CNT.CUSTACCT
BY SACTDATE
ON SACTDATE SKIP-LINE COLUMN-TOTAL AS 'TOTAL'
BY SACTCODE NOPRINT
ACROSS CTY
ROW-TOTAL
WHERE SACTCODE EQ '0303';
WHERE SACTREAS EQ '001';
WHERE (SACTDATE GE '130201');
IF RECORDLIMIT EQ 30
ON TABLE HOLD AS W04
END
-RUN

TABLE FILE W01
PRINT *
ON TABLE HOLD AS WOTOT
MORE
FILE W02
MORE
FILE W03
MORE
FILE W04
END
-RUN

? HOLD WOTOT
-RUN

-TYPE ...

DEFINE FILE WOTOT
XYR/A2 = EDIT(SACTDATE,'99$$$$');
XMN/A2 = EDIT(SACTDATE,'$$99$$');
XDY/A2 = EDIT(SACTDATE,'$$$$99');
FDT/A8 = XMN | '/' | XDY | '/' | XYR;
-*MCUSM/I5 MISSING ON = IF CUSM NE 0 THEN CUSM ELSE MISSING;
-*MCUSP/I5 MISSING ON = IF CUSP NE 0 THEN CUSP ELSE MISSING;
END

GRAPH FILE WOTOT
SUM
CUSM
CUSP
-*CUSROWTOTAL

ACROSS SACTDATE AS ''

ON GRAPH PCHOLD FORMAT PNG
ON GRAPH SET GRAPHDEFAULT ON
ON GRAPH SET VZERO OFF
ON GRAPH SET HTMLENCODE ON
ON GRAPH SET GRID ON
ON GRAPH SET HAXIS 700
ON GRAPH SET VAXIS 405
-*ON GRAPH SET HAXIS 600
-*ON GRAPH SET VAXIS 315
ON GRAPH SET UNITS PIXELS

ON GRAPH SET LOOKGRAPH VBAR

ON GRAPH SET GRMERGE ON
ON GRAPH SET GRMULTIGRAPH 0
ON GRAPH SET GRLEGEND 0
ON GRAPH SET GRXAXIS 2
ON GRAPH SET GRAPHSTYLE *

setReportParsingErrors(false);
setSelectionEnableMove(false);
setDepthRadius(5);
setPlace(true);
setCurveEquationDisplay(false);

-*GOTO XTOT
-*** set Totals on vBar
setDisplay(getDataText(), true);
setFillColor(getDataText(), new Color(0,0,255));

-*** position Totals relative to vBar
setDataTextPosition();
setDataTextRadiusDefault(30);
-XTOT
setFillMissingData(0);

setO1LabelRotate(0);
-GOTO XSER
setSeriesLabel(0,"Montg. Cnty Enroll.");
setSeriesLabel(1,"Pr. Geo. Cnty Enroll.");
setSeriesLabel(2,"Total Enroll.");\

-XSER
-*** Control fonts of x-axis
setFontName(getO1Label(0),"TimesRoman");
setAutoFit(getO1Label(0),false);
setFontSizeAbsolute(getO1Label(0),true);
setFontSize(getO1Label(0),12);

-*** Control fonts of y-axis
setFontName(getY1Label(0),"TimesRoman");
setAutoFit(getY1Label(0),false);
setFontSizeAbsolute(getY1Label(0),true);
setFontSize(getO1Label(0),12);

-*setTemplateFile("/images/tdg/template/IBISouthWestern.txt");
-*setTemplateFile("/images/tdg/template/IBIColorToWhite.txt");
-*setTemplateFile("/images/tdg/template/IBIPurpleLight.txt");
setTemplateFile("/images/tdg/template/IBITrueColors.txt");

setTransparentBorderColor(getSeries(0),true);
setTransparentBorderColor(getSeries(1),true);
-GOTO XTITL
setTransparentBorderColor(getSeries(2),true);
setTransparentBorderColor(getSeries(3),true);


setTitleString("E-Bill Enrollments");
setTextJustHoriz(getTitle(),1);

-XTITL
ENDSTYLE
END
-RUN

-EXIT

This message has been edited. Last edited by: Kerry,


Tomsweb
WebFOCUS 8.1.05M, 8.2.x
APP Studio, Developer Studio, InfoAssist, Dashboards, charts & reports
Apache Tomcat/8.0.36
February 08, 2013, 06:29 PM
eric.woerle
Tom,

Maybe I am looking this in an over simplified manner, but why not define a yym Field for your date?

SACTYRMO/YYM=SACTDATE  


or you probably could just declare the format on the fly

GRAPH FILE WOTOT
SUM
CUSM
CUSP
-*CUSROWTOTAL

ACROSS SACTDATE/YYM AS ''



Eric Woerle
8.1.05M Gen 913- Reporting Server Unix
8.1.05 Client Unix
Oracle 11.2.0.2
February 09, 2013, 01:48 AM
FrankDutch
Why do you create all the separate hold files?
It can be done all in one single fex.

DEFINE FILE XXXX
MONTHD/YYM=SACTDATE;
CUSM=IF CTY EQ 'M' THEN SALES ELSE 0;
CUSP.....
END
TABLE FILE XXXX
SUM CUSM CUSP 
BY MONTH
ON TABLE HOLD
END
GRAPH FILE HOLD
...




Creating hold files with heading and footing?
You do some defines to convert the date and it is not used?




Frank

prod: WF 7.6.10 platform Windows,
databases: msSQL2000, msSQL2005, RMS, Oracle, Sybase,IE7
test: WF 7.6.10 on the same platform and databases,IE7