play makAll work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All
HBAM2016AUG95
Pro 3.0
All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dullCopyright 1984-1996 Claris Corporation
and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy.
HBAM3016AUG95@
Pro 3.0F!
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
January
February
March
April
August
September
October
November
December
1st Quarter
2nd Quarter
3rd Quarter
4th Quarter
chart
8/7/97
CONSTANT
GRAPHICS
HBAR1
HBAR2
HBAR3
HBAR4
HBAR5
HBAR6
HBar Chart Mac
Instructions Mac
HBar Chart PC
Instructions PC
HBar Chart MacB
HLABEL1
HLABEL2
HLABEL3
HLABEL4
HLABEL5
HLABEL6
LABELS
LABELSINDICATOR
q LOTSABARS
LOTSASPACES
MAXVALUE
SCALEAUTO
SCALEMANUAL
SCALEMAX
SCALEMIN
SOLIDCHECK
] VARIABLE1
VARIABLE2
VARIABLE3
VARIABLE4
VARIABLE5
VARIABLE6
A Variable1B
A Variable2B
A Variable3B
A Variable4B
A Variable5B
A Variable6B
MaxValueB
ScaleManualB
ScaleMaxB
ScaleMinB
A ScaleAutoB
GraphicsB
HBar1B
) / (
* 135)
HBar2B
) / (
* 135)
HBar3B
) / (
* 135)
HBar4B
HBar5B
) / (
* 135)
HBar6B
) / (
* 135)
HLabel1B
p = "yes"
) / (
* 90) &
HLabel2B
p = "yes"
) / (
* 90) &
HLabel3B
) / (
* 135)
HLabel4B
p = "yes"
) / (
* 90) &
HLabel5B
p = "yes"
) / (
* 90) &
HLabel6B
p = "yes"
) / (
* 90) &
SolidCheckB
mA LotsaBarsB
LotsaSpacesB
LabelsB
p = "yes"
) / (
* 90) &
LabelsIndicatorB
p = "yes"
ConstantB
Instructions MacB
FPTHAwMacBrian:Desktop Folder:ADS Projects:BRIAN'S DEMOS:ChartMaker Pro:CMP Versions:Shareware:ChartMaker Pro 1.1:CMPSCAT.FP3
MSPCA
NAMEA
CMPSCAT.FP3
RPTHA
CMPSCAT.FP3
MacBrian
CMPSCAT.FP3
FMP3FMP3
ChartMaker Pro 1.1
wMacBrian:Desktop Folder:ADS Projects:BRIAN'S DEMOS:ChartMaker Pro:CMP Versions:Shareware:ChartMaker Pro 1.1:CMPSCAT.FP3
MacBrian
MacBrian
Brian
MacBrian
aRPTH
FPTHAaMacBrian:Desktop Folder:ADS Projects:BRIAN'S DEMOS:ChartMaker Pro:ChartMaker Pro
:ChartMaker Pro
MSPCA
HBar Chart PCB
Horizontal Bar Chart
Horizontal Bar Chart
Horizontal Bar Chart
Horizontal Bar Chart
General:
Everything in this file is stored in a single record. No globals, relations, or scripts are used in any of the demo files, allowing all the calculations to remain stored and indexable. This gives you the greatest flexibility for incorporating it into your own solutions.
Fields:
Constant A calculation, always 1, for use as a relational key if you decide to link to this file via a relation. Set up another field of 1 in your main file, and you can set the Variable fields usin
g this relation.
Graphics This container field
s repetitions hold the graphics for the checkboxes and radio buttons.
HBar1...6 A calculated text field which forms each horizontal bar. Here is the calc for HBar1:
Left(LotsaBars,
If(ScaleAuto = GetRepetition(Graphics, 1),
Variable1 / MaxValue,
(Variable1 - ScaleMin) / (ScaleMax - ScaleMin))
* 135)
135 vertical bar characters will form a horizontal bar that goes all the way across the chart, so 135 is used as a multiplier for w
hatever percentage of the maximum each bar should be. If automatic scaling is turned on (line 2), this percentage is simply Variable1/MaxValue. Otherwise, manual scaling has been selected and the expression in line 4 computes the correct percentage. Last, the number of bar characters determined by this percentage of 135 is extracted from the LotsaBars field (line 1).
HLabel1...6 If value labels are set to display, this calculated text field contains the same number of spaces a
s the HBar fields contain bar characters, followed by a couple extra spaces, plus the digits of the value. If value labels are turned off it simply contains nothing.
Labels A text field containing either yes or no, which determines whether the value label fields will contain a value to be displayed at the end of each bar.
LabelsIndicator A calculated container field, containing a checked box when Labels =
and an unchecked box when it equals
LotsaBars This is a text
field containing a few hundred vertical bar characters, of which a certain number are taken and placed next to each other to form each horizontal bar.
LotsaSpaces Ditto, except these are just a bunch of spaces, used to space the value labels away from the left edge of the chart.
MaxValue This calculation uses the Max() aggregate function to determine the highest variable used. The purpose of this is for the automatic scaling to be able to determine which value should stretch all
the way across the chart.
ScaleAuto A container containing a checked radio button when automatic scaling is to be used.
ScaleManual A container containing a checked radio button when manual scaling is to be used.
ScaleMax The maximum value set by the user when manual scaling is selected.
ScaleMin The minimum value set by the user when manual scaling is selected.
Variable1...6 These are the values for each bar, which you must set with your data. You can use the Set Field command,
a script, a relation, or whatever you want. To use more than six bars, simply add more Number fields and name them Variable7, Variable8, etc.
Layout:
Each HBar text field must be bolded and condensed, and the right font and size must be selected, to eliminate space between the bar characters and make them appear to be a solid bar. The text color determines the color of the bar. In this file, each HBar field was duplicated to appear three times on the layout; one with a lighter text
color a couple pixels higher than the frontmost field, and one with a darker text color a couple pixels lower. This provides the snazzy 3D effect.
The HLabel field needs only to be placed right on top of the frontmost HBar field.
Resizing:
The bar graphs are easily resized. To scale them horizontally, all you need do is change the 135 constant in the HBar and HLabel fields. To scale them vertically, resist the temptation to change the font size...this invariably screws up the spaci
ng between the bar characters and suddenly you have a dashed line instead of a nice solid bar. Instead, duplicate the HBar field a few times on the layout to widen the bar.
Everything in this file is stored in a single record. No globals, relations, or scripts are used in any of the demo files, allowing all the calculations to remain stored and indexable. This gives you the greatest flexibility for incorporating it into your own solutions.
Fields:
Constant A calculation, always 1, for use as a relational key if you decide to link to this file via a relation. Set up another field of 1 in your main file, and you can set the Variable fields usin
g this relation.
Graphics This container field
s repetitions hold the graphics for the checkboxes and radio buttons.
HBar1...6 A calculated text field which forms each horizontal bar. Here is the calc for HBar1:
Left(LotsaBars,
If(ScaleAuto = GetRepetition(Graphics, 1),
Variable1 / MaxValue,
(Variable1 - ScaleMin) / (ScaleMax - ScaleMin))
* 135)
135 vertical bar characters will form a horizontal bar that goes all the way across the chart, so 135 is used as a multiplier for w
hatever percentage of the maximum each bar should be. If automatic scaling is turned on (line 2), this percentage is simply Variable1/MaxValue. Otherwise, manual scaling has been selected and the expression in line 4 computes the correct percentage. Last, the number of bar characters determined by this percentage of 135 is extracted from the LotsaBars field (line 1).
HLabel1...6 If value labels are set to display, this calculated text field contains the same number of spaces
as the HBar fields contain bar characters, followed by a couple extra spaces, plus the digits of the value. If value labels are turned off it simply contains nothing.
Labels A text field containing either yes or no, which determines whether the value label fields will contain a value to be displayed at the end of each bar.
LabelsIndicator: A calculated container field, containing a checked box when Labels = "yes" and an unchecked box when it equals "no."
LotsaBars This is
a text field containing a few hundred vertical bar characters, of which a certain number are taken and placed next to each other to form each horizontal bar.
LotsaSpaces Ditto, except these are just a bunch of spaces, used to space the value labels away from the left edge of the chart.
MaxValue This calculation uses the Max() aggregate function to determine the highest variable used. The purpose of this is for the automatic scaling to be able to determine which value should stretc
h all the way across the chart.
ScaleAuto A container containing a checked radio button when automatic scaling is to be used.
ScaleManual A container containing a checked radio button when manual scaling is to be used.
ScaleMax The maximum value set by the user when manual scaling is selected.
ScaleMin The minimum value set by the user when manual scaling is selected.
Variable1...6 These are the values for each bar, which you must set with your data. You can use the Set Field com
mand, a script, a relation, or whatever you want. To use more than six bars, simply add more Number fields and name them Variable7, Variable8, etc.
Layout:
Each HBar text field must be bolded and condensed, and the right font and size must be selected, to eliminate space between the bar characters and make them appear to be a solid bar. The text color determines the color of the bar. In this file, each HBar field was duplicated to appear three times on the layout; one with a lighter
text color a couple pixels higher than the frontmost field, and one with a darker text color a couple pixels lower. This provides the snazzy 3D effect.
The HLabel field needs only to be placed right on top of the frontmost HBar field.
Resizing:
The bar graphs are easily resized. To scale them horizontally, all you need do is change the 135 constant in the HBar and HLabel fields. To scale them vertically, resist the temptation to change the font size...this invariably screws up the
spacing between the bar characters and suddenly you have a dashed line instead of a nice solid bar. Instead, duplicate the HBar field a few times on the layout to widen the bar.