public class Crosstab
extends java.lang.Object
implements java.io.Serializable
Modifier and Type | Class and Description |
---|---|
class |
Crosstab.Axis
Crosstab axis
|
class |
Crosstab.NodeLine |
Modifier and Type | Field and Description |
---|---|
static char |
METHOD_AVG_ALG
Algebraic average (optimized)
|
static char |
METHOD_AVG_GEO
Geometric average
|
static char |
METHOD_FORMULA
Formula
|
static char |
METHOD_MAX
Max content (optimized)
|
static char |
METHOD_MIN
Min content (optimized)
|
static char |
METHOD_PROD
Product content
|
static char |
METHOD_SUM
Sum content (optimized)
|
static char |
METHOD_TEXT
Text content
|
Constructor and Description |
---|
Crosstab(java.lang.String id,
ObjectDB object,
java.lang.String name,
java.lang.String display,
char method,
boolean visible,
boolean fixedcolors,
boolean grantable)
Constructor
|
Modifier and Type | Method and Description |
---|---|
void |
addAxis(java.lang.String input,
char type,
int order,
ObjectField field,
ObjectDB obj,
char method,
java.lang.String chart,
int precision,
boolean subtotal,
java.lang.String formula,
java.lang.String display,
boolean hidden)
Add a field in the crosstab
|
void |
addGrantedGroup(java.lang.String group) |
void |
build(ObjectDB obj) |
java.util.Vector<java.lang.Object>[][] |
build(java.util.Vector<java.lang.String> columns,
java.util.Vector<java.lang.String> lines,
java.util.Hashtable<java.lang.String,java.lang.String> labels,
Grant g)
Build the table
|
Crosstab.NodeLine |
buildLineTree(Grant g,
java.util.Vector<java.lang.String> lines,
java.util.Hashtable<java.lang.String,java.lang.String> labels,
java.util.Vector<java.lang.Object>[][] val,
boolean bText) |
void |
clear()
Clear memory
|
static Crosstab.Axis |
getAxis(java.util.Vector<Crosstab.Axis> axis,
int index)
Get the field associated with axis
|
Crosstab.Axis |
getAxisForInput(char type,
java.lang.String input)
Get axis of specified type for specified input name
|
java.util.Vector<java.lang.Object>[][] |
getCellValue() |
java.lang.String |
getColor(int lineIndex,
java.lang.String serieLabel)
Series color
|
java.util.HashMap<java.lang.String,java.lang.String> |
getColors()
Serie label = #RRGGBB
|
java.util.Vector<Crosstab.Axis> |
getColumnAxis(boolean all)
Definition of columns axis
|
java.lang.String |
getColumnLabel(java.lang.String key,
java.lang.String separator) |
java.util.Vector<java.lang.String> |
getColumnValues() |
java.util.Vector<java.lang.String[]> |
getCurrentColors()
Current displayed colors
|
java.lang.String |
getDisplay()
Translated name
|
static ObjectField |
getField(ObjectDB obj,
java.util.Vector<Crosstab.Axis> axis,
int index)
Get the field associated with axis
|
java.util.List<java.lang.String> |
getGrantedGroups()
Granted groups ?
|
Graphic |
getGraphic() |
java.lang.String |
getId()
Crosstab id
|
java.util.Hashtable<java.lang.String,java.lang.String> |
getLabels() |
java.util.Vector<Crosstab.Axis> |
getLineAxis(boolean all)
Definition of lines axis
|
java.lang.String |
getLineLabel(java.lang.String key,
java.lang.String separator,
ObjectField value) |
java.util.Vector<java.lang.String> |
getLineValues() |
char |
getMethod()
Crosstab method
|
java.lang.String |
getName()
Crosstab name
|
ObjectDB |
getObject()
Object
|
java.lang.String |
getPaletteName()
Palette of colors
|
int |
getPrecision()
Precision
|
Crosstab.NodeLine |
getRoot() |
java.lang.String |
getSubtotalColor(int level) |
java.util.Vector<Crosstab.Axis> |
getValueAxis(boolean all)
Definition of values axis
|
boolean |
hasFormulas()
Has formula values ?
|
void |
init(ObjectDB obj)
Initialize the data
|
boolean |
isControlVisible()
Controls visible
|
boolean |
isEditable()
EXPERIMENTAL do not use
|
boolean |
isEnabled() |
boolean |
isFixedColors()
Fixed colors ?
|
boolean |
isGrantable()
Grantable ?
|
boolean |
isGranted(Grant g) |
boolean |
isLoaded() |
boolean |
isSubtotalVisible()
Display sub totals ?
|
boolean |
isTableVisible()
Crosstable visible ?
|
boolean |
isVisible()
Visible ?
|
void |
nodeInsert(int line,
java.lang.String path,
Crosstab.NodeLine n,
java.util.Vector<java.lang.Object>[] val) |
Crosstab.NodeLine |
nodeSearch(java.lang.String path,
Crosstab.NodeLine nl) |
void |
removeGrantedGroup(java.lang.String group) |
void |
resetCurrentColors() |
void |
setCellValues(java.util.Vector<java.lang.Object>[][] v) |
void |
setColor(java.lang.String serieLabel,
java.lang.String color) |
void |
setColumnValues(java.util.Vector<java.lang.String> v) |
void |
setControlVisible(boolean b) |
void |
setDisplay(java.lang.String d) |
void |
setEnabled(boolean enabled) |
void |
setFixedColors(boolean fixed) |
void |
setGrantable(boolean b) |
void |
setGraphic(Graphic g) |
void |
setLabels(java.util.Hashtable<java.lang.String,java.lang.String> h) |
void |
setLineValues(java.util.Vector<java.lang.String> v) |
void |
setLoaded(boolean b) |
void |
setMethod(char m) |
void |
setPaletteName(java.lang.String name) |
void |
setPrecision(int n) |
void |
setSubtotalColor(java.lang.String c)
Color of the total line (#RRGGBB)
|
void |
setSubtotalVisible(boolean b) |
void |
setTableVisible(boolean b) |
void |
setVisible(boolean b) |
java.lang.String |
toChartData(java.lang.String type,
int line,
java.lang.String title,
boolean flash) |
java.lang.String |
toCSV(java.lang.String sep,
Grant g) |
static java.lang.Double |
toDouble(java.lang.Object value) |
byte[] |
toExcel(Grant g,
java.lang.String table) |
java.lang.String |
toExcelHTML(Grant g,
java.lang.String table) |
java.lang.String |
toExcelML(Grant g) |
byte[] |
toExcelPOI(Grant g) |
java.lang.String |
toHTML(Grant g,
boolean cubes)
Publish pivot table as raw HTML.
|
void |
toHTML(Grant g,
boolean cubes,
java.io.PrintWriter out)
Publish pivot table as raw HTML on specified print writer.
|
java.lang.String |
toJSON() |
java.lang.String |
toJSONCubes() |
java.lang.String |
toXML() |
java.lang.String |
toXSD() |
public static final char METHOD_TEXT
public static final char METHOD_SUM
public static final char METHOD_PROD
public static final char METHOD_AVG_ALG
public static final char METHOD_AVG_GEO
public static final char METHOD_MIN
public static final char METHOD_MAX
public static final char METHOD_FORMULA
public Crosstab(java.lang.String id, ObjectDB object, java.lang.String name, java.lang.String display, char method, boolean visible, boolean fixedcolors, boolean grantable)
id
- Crosstab idobject
- Objectname
- Crosstable namedisplay
- Label to displaymethod
- Group methodvisible
- Visible ?fixedcolors
- Use fixed colors ?grantable
- Granted to groups ?public java.lang.String getDisplay()
public void setDisplay(java.lang.String d)
public boolean isVisible()
public void setVisible(boolean b)
public boolean isGrantable()
public void setGrantable(boolean b)
public java.util.List<java.lang.String> getGrantedGroups()
public void addGrantedGroup(java.lang.String group)
public void removeGrantedGroup(java.lang.String group)
public boolean isGranted(Grant g)
public boolean isFixedColors()
public void setFixedColors(boolean fixed)
public java.lang.String getPaletteName()
public void setPaletteName(java.lang.String name)
public Crosstab.Axis getAxisForInput(char type, java.lang.String input)
type
- Axis type (one of Crosstab.Axis.AXIS_*)input
- Axis input namepublic java.util.Vector<Crosstab.Axis> getColumnAxis(boolean all)
all
- All axis (otherwise only non hidden axis are returned) ?public java.util.Vector<Crosstab.Axis> getLineAxis(boolean all)
all
- All axis (otherwise only non hidden axis are returned) ?public java.util.Vector<Crosstab.Axis> getValueAxis(boolean all)
all
- All axis (otherwise only non hidden axis are returned) ?public boolean hasFormulas()
public char getMethod()
public void setMethod(char m)
public void setColumnValues(java.util.Vector<java.lang.String> v)
public java.util.Vector<java.lang.String> getColumnValues()
public void setLineValues(java.util.Vector<java.lang.String> v)
public java.util.Vector<java.lang.String> getLineValues()
public void setLabels(java.util.Hashtable<java.lang.String,java.lang.String> h)
public java.util.Hashtable<java.lang.String,java.lang.String> getLabels()
public java.lang.String getColumnLabel(java.lang.String key, java.lang.String separator)
public java.lang.String getLineLabel(java.lang.String key, java.lang.String separator, ObjectField value)
public void setCellValues(java.util.Vector<java.lang.Object>[][] v)
public java.util.Vector<java.lang.Object>[][] getCellValue()
public void setGraphic(Graphic g)
public Graphic getGraphic()
public java.lang.String getColor(int lineIndex, java.lang.String serieLabel)
public void setColor(java.lang.String serieLabel, java.lang.String color)
public java.util.HashMap<java.lang.String,java.lang.String> getColors()
public java.util.Vector<java.lang.String[]> getCurrentColors()
public void resetCurrentColors()
public java.lang.String getId()
public ObjectDB getObject()
public java.lang.String getName()
public boolean isLoaded()
public void setLoaded(boolean b)
public boolean isEnabled()
public void setEnabled(boolean enabled)
public boolean isTableVisible()
public void setTableVisible(boolean b)
public boolean isControlVisible()
public void setControlVisible(boolean b)
public boolean isSubtotalVisible()
public void setSubtotalVisible(boolean b)
public void setSubtotalColor(java.lang.String c)
public java.lang.String getSubtotalColor(int level)
public int getPrecision()
public void setPrecision(int n)
public void addAxis(java.lang.String input, char type, int order, ObjectField field, ObjectDB obj, char method, java.lang.String chart, int precision, boolean subtotal, java.lang.String formula, java.lang.String display, boolean hidden)
input
- Input nametype
- Type (one of Crosstab.Axis.AXIS_*)order
- Axis orderfield
- Object fieldmethod
- Group by methodobj
- Objectchart
- Chart typeprecision
- Precisionsubtotal
- Sub total ?formula
- Formuladisplay
- Displayhidden
- Hidden ?public void init(ObjectDB obj)
obj
- Object with filters for searchpublic void clear()
public boolean isEditable()
EXPERIMENTAL do not use
The cell is editable if the value is linked to a unique row in DB: - functional keys = heads values (column and row) - other mandatory field are knownpublic static Crosstab.Axis getAxis(java.util.Vector<Crosstab.Axis> axis, int index)
axis
- Axisindex
- Positionpublic static ObjectField getField(ObjectDB obj, java.util.Vector<Crosstab.Axis> axis, int index)
obj
- Objectaxis
- Axisindex
- Positionpublic java.util.Vector<java.lang.Object>[][] build(java.util.Vector<java.lang.String> columns, java.util.Vector<java.lang.String> lines, java.util.Hashtable<java.lang.String,java.lang.String> labels, Grant g)
columns
- Column headerslines
- Row headersg
- User rightspublic void build(ObjectDB obj)
public java.lang.String toXSD()
public java.lang.String toJSON()
public java.lang.String toJSONCubes()
public java.lang.String toChartData(java.lang.String type, int line, java.lang.String title, boolean flash)
public byte[] toExcel(Grant g, java.lang.String table)
public java.lang.String toExcelHTML(Grant g, java.lang.String table)
public java.lang.String toExcelML(Grant g)
public byte[] toExcelPOI(Grant g)
public java.lang.String toCSV(java.lang.String sep, Grant g)
public java.lang.String toHTML(Grant g, boolean cubes)
g
- Grantcubes
- true generate data as cubes, false generates as pivot tablepublic void toHTML(Grant g, boolean cubes, java.io.PrintWriter out)
g
- Grantcubes
- true generate data as cubes, false generates as pivot tableout
- Print writerpublic java.lang.String toXML()
public static java.lang.Double toDouble(java.lang.Object value)
public Crosstab.NodeLine nodeSearch(java.lang.String path, Crosstab.NodeLine nl)
public void nodeInsert(int line, java.lang.String path, Crosstab.NodeLine n, java.util.Vector<java.lang.Object>[] val)
public Crosstab.NodeLine getRoot()
public Crosstab.NodeLine buildLineTree(Grant g, java.util.Vector<java.lang.String> lines, java.util.Hashtable<java.lang.String,java.lang.String> labels, java.util.Vector<java.lang.Object>[][] val, boolean bText)
Copyright (c)2006-2014 Simplicite Software. All Rights Reserved.