|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.kl.xsreports.TemplateBasedGenerator
de.kl.xsreports.RtfGenerator
public class RtfGenerator
Diese Klasse implementiert einen Report-Generator, der die Ausgabe im RTF Format erzeugt. Die Sache funktioniert wie folgt:
Factory
erezugt.
Dabei wird der parameterlose Konstruktor aufgerufen.
GeneratorConfiguration
// eine Tabelle mit 3 Zeilen
Object[]Rights=new Object[3];
// nun die Daten fuer die Tabelle festlegen
Rights[0]=new String[] {"Lesen","Beschreibung des Rechts Lesen","RD"};
Rights[1]=new String[] {"Schreiben","Beschreibung des Rechts Schreiben","WR"};
Rights[2]=new String[] {"Loeschen","Beschreibung des Rechts Loeschen","DD"};
// Daten in einem Properities Object speichern
Properties Data=new Properties();
Data.put("mytable",Rights);
Dieser Generator liest folgende Parameter aus der WEB-XML
des Servlets:
generator.properties - Name der Datei in der Konfigurationsdaten
des Generators abgelegt sind. Fehlt dieser
Parameter beim Servlet so werden Defaultwerte
verwendet. Diese Werte sind in der Datei
RtfGenerator.properties die Teil dieses Pakets ist
definiert.
Der Generator liest folgende Werte aus den Properties des Templates:
report.symbol.header - Die Kopfzeile fuer die Tabelle durch die das
Symbol "symbol" ersetzt wird. Die Zeile ist als
eine Kommaliste anzugeben.
Beispiel:
report.mytable.header=Index,Bezeichnung
report.symbol.columnwidth- Breite der einzelnen Tabellenspalten der Tabelle
durch die das Symbol "symbol" ersetzt wird. Die
Zeile ist als eine Kommaliste anzugeben.
Beispiel:
report.mytable.columnwidth=19,42
report.symbol.body.haslines
- Flag um die Trennlinien im Hauptteil der Tabelle
zu steuern. Bei "0" werden keine Linien gezeichnet
report.symbol.columnmap - Reihenfolge der Spalten der Tabelle. Die
Zeile ist als eine Kommaliste anzugeben.
Die erste Spalte hat den Index 0
Beispiel:
report.mytable.columnmap=1,0
Constructor Summary | |
---|---|
RtfGenerator()
Erzeugt eine neue Instanz des RTF Generators. |
Method Summary | |
---|---|
protected java.lang.String |
createCheckbox(java.lang.String SymbolName,
java.lang.Boolean Data)
Erzeugt eine "Checkbox" fuer ein Symbol von Type boolean. |
protected java.lang.String |
createTable(java.lang.String SymbolName,
java.lang.Object[] Data)
Erzeugen eine RTF Tabelle aus einem Array. |
java.lang.String |
getContentType()
Type der Daten im HTTP Protokoll |
protected java.lang.String |
getKeyPattern()
Lesen des Markers fuer den Anfang eines Symbols |
protected java.lang.String |
getOutputLineseperator()
Lesen des Zeilentrenners. |
protected java.lang.String |
getSectionEnd()
Ende eines als ein Abschnitt zu scannende Sektion |
protected int |
getSymbolNameGroup()
Lesen des Indexes der Gruppe implements KeyPattern die den Namen des Symbols beinhaltet. |
protected java.lang.Object |
getUndefindSymbolValue(java.lang.String SymbolName)
Der Wert der fuer ein Symbol eingesetzt wird, das nicht in den Daten vorhanden ist. |
protected java.lang.String |
getValuePattern()
Liest den String, der als Muster fuer die Text ersetzung verwendet wird. |
void |
init(javax.servlet.ServletConfig Config)
Diese Methode wird von der Factory auferufen, um dem
Generator die Moeglichkeit zu geben, Daten aus der
Servlet-Konfiguration zu lesen. |
void |
setProperties(java.util.Map Prop)
Definiert die Eigenschaften des Reports. |
Methods inherited from class de.kl.xsreports.TemplateBasedGenerator |
---|
generate, replace, setTemplate |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface de.kl.xsreports.Generator |
---|
generate |
Methods inherited from interface de.kl.xsreports.GeneratorConfiguration |
---|
setTemplate |
Constructor Detail |
---|
public RtfGenerator()
Factory
Method Detail |
---|
protected java.lang.String getKeyPattern()
getKeyPattern
in class TemplateBasedGenerator
protected int getSymbolNameGroup()
getSymbolNameGroup
in class TemplateBasedGenerator
protected java.lang.String getValuePattern()
getValuePattern
in class TemplateBasedGenerator
protected java.lang.String getSectionEnd()
getSectionEnd
in class TemplateBasedGenerator
protected java.lang.String getOutputLineseperator()
getOutputLineseperator
in class TemplateBasedGenerator
protected java.lang.Object getUndefindSymbolValue(java.lang.String SymbolName)
getUndefindSymbolValue
in class TemplateBasedGenerator
public void init(javax.servlet.ServletConfig Config) throws ConfigurationException
Factory
auferufen, um dem
Generator die Moeglichkeit zu geben, Daten aus der
Servlet-Konfiguration zu lesen.
init
in interface GeneratorConfiguration
Config
- Objekt mit der Servelet Konfiguration.
ConfigurationException
- Falls Fehler in den Konfigurationsdaten des Servelet
festgestellt werden.public void setProperties(java.util.Map Prop) throws ConfigurationException
setProperties
in interface GeneratorConfiguration
Prop
- Ein Object das das Map Interface implementiert
Das Object speichert zusaetzlich Eigenschaften
die aus Aussehen des Reports bestimmen.
ConfigurationException
public java.lang.String getContentType()
getContentType
in interface Generator
protected java.lang.String createTable(java.lang.String SymbolName, java.lang.Object[] Data) throws ConfigurationException
createTable
in class TemplateBasedGenerator
SymbolName
- Name des Symbols das durch die Tabelle ersetzt
werden soll.Data
- Objekt mit den Daten aus denen die Tabelle
erzeugt wird. Das sollte ein Array sein,
in dem fuer jede Zeile der Tabelle
wiederum ein Array existiert mit je einem
Eintrag pro Spalte.
ConfigurationException
- Falls die Konfigurations-Daten der Tabelle nicht
zu den aktuellen Tabellendaten passen.protected java.lang.String createCheckbox(java.lang.String SymbolName, java.lang.Boolean Data)
createCheckbox
in class TemplateBasedGenerator
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |