Label-Eigenschaften

<< Click to Display Table of Contents >>

Navigation:  Daten und Datensatz > Variablen in GESStabs > Variableneigenschaften >

Label-Eigenschaften

Im Zuge der VALUELABELS-Deklaration ist es möglich, den Wertelabels eine Reihe weiterer Eigenschaften zuzuweisen.

Alternativ können mit LABELFROMFILE alle Label-Informationen als CSV-Datei eingebunden werden.

LABELFORMAT bietet die Möglichkeit, die numberischen Codewerte einer Variablen(-liste) zu formatieren.

Wie groß dürfen Wertelabels höchstens sein? Siehe Maximale Codewerte.


LabelOptions

Die folgende Syntax zeigt sämtliche Möglichkeiten für die Ausgestaltung eines VALUELABELS-Statements in ihrer Grundstruktur.

Syntax:

VALUELABELS <VarList> = [ ADD ] POSITION <number> ]
{ LabelEntry }*n ;
LabelEntry ::=
[ <number> "String" | OVERCODE [ SUM ] [<name> ]
[ <number> "String" [ BACKGROUND | FOREGROUND ] <color> ]
{ <number> [ :<number> ] }*n "String" ] [ LabelOption ]
LabelOption ::=
{
[ SORTCLASS <number> ] | BOTTOM | NORANKING | [ LEVEL <number> ] 
| [ USEFONT <fontspecifier> ] | SIZE <fontsize> | [ CSSCLASS <value> ]
| NOCITATION | NEWPAGE | SLICE
| [ CELLELEMENTS ( <cellelements> )] | [ RECODE <value> ] ] 
}*n

Ein LabelEntry definiert einen Variablenwert (oder einen Obercode, der mehrere Werte zusammenfasst) und den dazugehörigen Text: <number> "String", siehe labelbezogene Texte.

Jedem LabelEntry können ergänzend ein oder mehrere LabelOptions hinzugefügt werden.

ADD

Editierung bestehender Labellisten, siehe ADD

POSITION

Mit POSITION kann die Position vorgegeben werden, an der das neue Label (oder auch OVERCODE) in die Labelliste eingefügt wird. Die Zählung ist 1-basiert. Möchte man z.B. ein Label vor allen bestehenden einfügen, so schreibt man etwa:

LABELS testvar = ADD POSITION 1

7 "label zum neuen code 7 am anfang der liste"

;

Wird ein LABEL/OVERCODE an eine Position eingefügt, die so nicht 'exsitiert' (z.B. an POSTIION 5 in einer liste mit nur drei VALUELABELS, wird dieses Label einfach ans Listenende angehängt - so, als ob keine POSITION angegeben wäre.

OVERCODE

Bildung und Benennung eines Obercodes

FOREGROUND
BACKGROUND

Farbinformation für Vordergrund (Schrift) und Hintergrund

SORTCLASS 

Vergabe einer Sortierklasse, siehe Sortierungen

BOTTOM 

Label wird innerhalb einer Sortierklasse immer ans Ende sortiert, siehe SORTCLASS

NORANKING

Ausschluss aus Ranking, siehe Sortierungen

LEVEL

Vergabe eines Zähllevels zur Steuerung der Ausgabe in Tabellen (relevant für Bedingte Tabellenanzeige):
0     = Default, d.h. Label wird in MULTITOTAL gezählt

1     = Label in MULTITOTAL unterdrücken

99   = Test gegen ROWMINIMUM/COLMINIMUM entfällt, d.h. immer ausgeben

98   = nicht abbilden, wenn Zeilen-/Spaltenhäufigkeit = 0

252 = Label nie drucken, immer unterdrücken

USEFONT

Schriftart, siehe Formatierung

SIZE

Schriftgröße, siehe Formatierung

CSSCLASS

Vergabe einer CSS-Klasse für die HTML-Ausgabe, siehe Formatierung

NEWPAGE

Seitenumbruch vor dem Label (Synonym: PAGE), siehe auch Layout

SLICE

Tabellenumbruch vor dem Label, siehe Layout

CELLELEMENTS

Anforderung spezifischer Zellenelemente für dieses Label

RECODE

Umkodierung (Voraussetzung: LABELRECODE = YES;), wird bei LABELS COPY bzw. LABELS AS vererbt

Beispiel für eine gültiges VALUELABELS-Statement mit LabelProperties:

VALUELABELS V1 =
OVERCODE 1:3 "Norden"                SORTCLASS 1

1 "Schleswig-Holstein"        USEFONT "Helvetica" SIZE 12

2 "Hamburg"                        NEWPAGE LEVEL 525

3 "Mecklenburg-Vorpommern"        
4 "Usedom"                                RECODE 3
9 "Keine Angabe"                        BOTTOM CELLELEMENTS ABSOLUTE 

;


LabelFromFile

Syntax:

VALUELABELS  <VarList>  = LABELFROMFILE <filename>;  

Anstelle der Auflistung einzelner VALUELABELs kann mit dem Schlüsselwort LABELFROMFILE auch eine CSV-Datei eingebunden werden, deren Inhalt die VALUELABELS beschreibt.

Diese CSV-Datei darf entweder in UTF-8 oder ANSI, bzw. Latin1 enkodiert sein. GESStabs entscheidet selbst, welche Enkodierung vorliegt.

Beispiel:

VALUELABELS  V1 V2 = LABELFROMFILE mylabels.csv; 

In der CSV-Datei stehen je Zeile die Informationen für ein Label. Beispiel für den Aufbau einer geeigneten CSV-Datei:

5 ; [VALUELABEL zum Code 5]
1 ; [VALUELABEL zum Code 1] ; LEVEL 252
2 ; [VALUELABEL zum Code 2] ; SORTCLASS 2 ; NEWPAGE
3 ; [VALUELABEL zum Code 3] ; USEFONT "Helvetica" SIZE 14 RECODE 3
OVERCODE 5 1:3 ; USEFONT "Helvetica" SIZE 14

Die erste Spalte jeder Zeile enthält den numerischen Code oder das Schlüsselwort OVERCODE und die zusammnzufassenden Codes. In der zweiten Spalte steht der Labeltext. In der Regel ist es nicht erforderlich, diesen in Anführungszeichen zu fassen (außer, es sind Semikola enthalten). Ab der dritten Spalte können Labeleigenschaften stehen - entweder einzeln ja Spalte oder alle a´hintereinander aufgereiht in der dritten Spalte.


LabelFormat

In aller Regel werden die Labels den Codes der Variablen zugeordnet (siehe VALUELABELS). GESStabs kann aber auch Labels aus den Zahlenwerten direkt erzeugen. Die Format-Ausgestaltung dessen kann mit LabelFormat gesteuert werden. Siehe hierzu Formatierungen.


Maximale Codewerte

Für die Codewerte von VALUELABELS gibt es keine relevante absolute Größenbegrenzung. Die Anzahl der Dezimalstellen ist auf 14 begrenzt.

Die Codewerte von OVERCODEs dürfen nicht länger als 18 Stellen sein.

Auch die Grenzen von Code-Ranges ([X:Y]) dürfen aus entsprechend großen Zahlen bestehen, aber die Spannweite ist aus Performance-Gründen begrenzt:

unter 1.000 ist bedenkenlos, z.B. OVERCODE 123456789001 : 123456789999

über 5.000 (und unter 100.000) ist ok, ergibt aber eine Warnung, z.B. OVERCODE 1 : 9999

über 100.000 Einzelwerte sind nicht zugelassen und ergeben einen Syntaxfehler, z.B. OVERCODE 1 : 100002