Globale Platzhalter #
An verschiedenen Stellen in der EULANDA ist es möglich Texte dynamisch mit Platzhaltern zu erzeugen. Neben Platzhaltern die von Modulen abhängig sind gibt es eine Reihe von Platzhaltern die allgemein gültig sind. Diese sind unten aufgeführt.
Dieser Beitrag richtet sich an Administratoren, Poweruser und Entwickler. Teilweise sind Kenntnisse über die internen Strukturen von EULANDA, wie über die SQL-Registry erforderlich.
Beispiele: #
-
E-Mail Vorgaben für Berichte Zu jedem Druck-Bericht kann eine Vorgabe für den E-Mail-Betreff und den Text der E-Mail hinterlegt werden. Neben Platzhaltern für das aktuelle Objekt (z.B. die Rechnung) können auch alle nachfolgenden globalen Platzhalter verwendet werden.
-
E-Mail-Signatur (global und persönlich) in den Einstellungen
-
Im Briefmodul (ab EULANDA 7.5) Hierbei müssen die Platzhalter in geschweifte Klammern gestellt und ihnen ein kaufmännisches “Und” vorangestellt werden. Zum Beispiel &{grundwerte.firmenstamm.Firma}.
-
Archivierungsschnittstelle (optional) In der Archivierungsschnittstelle können Platzhalter u.A. zur Steuerung der Archivierung, zur Bestimmung des Export-Verzeichnisses und zur Erzeugung zusätzlicher Text- oder XML-Dateien, die für die Übergabe an ein externes Archivierungssystem benötigt werden.
-
Beim Erstellen von Kurzinfos (für Entwickler) In der Kurzinfo-Definition werden die Platzhalter jedoch in doppelte Dollar-Zeichen eingekleidet, statt in Prozentzeichen.
Grundwerte #
Grundsätzlich sind alle Text- und Zahlenwerte verfügbar, die in der Registry unterhalb des Schlüssels „\MODULES\Grundwerte“ liegen. Die einzelnen Unterschlüssel müssen im Platzhalter mit einem einzelnen Punkt getrennt werden und am Ende folgt - ebenfalls mit einem Punkt getrennt - der Name des Wertes, wie er in der Registry gespeichert ist.
Soll Beispielsweise die Bankleitzahl der zweiten im Firmenstamm hinterlegten Bankverbindung ausgegeben werden, verwendet man den Platzhalter grundwerte.Bank.2.BLZ da sich der gesuchte Wert „BLZ“ in der Registry unter „\MODULES\Grundwerte\Bank\2“ befindet
Über ein angehängtes “.ValueExists()” bzw. “.KeyExists()” lässt sich prüfen, ob der Wert resp. der Schlüssel überhaupt vorhanden ist.
Beispiele #
Wert | Beschreibung |
---|---|
grundwerte.firmenstamm.Firma | Firma |
grundwerte.firmenstamm.Strasse | Straße |
grundwerte.firmenstamm.PLZ | PLZ |
grundwerte.firmenstamm.Ort | Ort |
grundwerte.firmenstamm.Hompage | Firmen Hompage |
grundwerte.firmenstamm.Tel | Telefonnummer |
grundwerte.firmenstamm.Fax | Faxnummer |
grundwerte.Bank.1.IBANgrundwerte.Bank.1.BICgrundwerte.Bank.1.NAME | Erste im Firmenstamm hinterlegte Bank |
Usergrundwerte #
Analog zu “Grundwerte” werden über “usergrundwerte” alle Registry-Werte aus dem Registry-Schlüssel “\USER<aktueller Benutzer>\Grundwerte” zur Verfügung gestellt. I.A. sind hier keine speziellen Werte von EULANDA hinterlegt. Es dient vielmehr dazu eigene Werte oder auch Unterschlüssel anzulegen, die es erlauben benutzerabhängige Ausgaben zu realisieren (z.B. Unterschrift).
Über ein angehängtes “.ValueExists()” bzw. “.KeyExists()” lässt sich prüfen, ob der Wert resp. der Schlüssel überhaupt vorhanden ist.
Usergrundwerte.Controls hat eine Sonderrolle. Siehe nächster Absatz.
Usergrundwerte.Controls #
Hierüber lassen sich die aktuellen Farb- und Schrifteinstellungen abrufen. Die zurückgegebenen Werte sind so formatiert, dass diese in HTML/CSS verwendet werden können.
Der komplette Platzhalter hat folgenden Aufbau:
usergrundwerte.controls.<Element>.<Eigenschaft>
Beispielsweise gibt %usergrundwerte.controls.FieldEditing.FontFamily% die Schriftart eines eingabefeldes im Änderungsmodus zurück.
Eine Beispiel-HTML-Seite hierzu findet man in EULANDA auf der Entwicklerseite (Schnellstartleiste / Systemverwaltung) unter “ControlProperties”.
Elemente #
Caption | Feldbeschriftung in Eingabemasken |
---|---|
GroupHeader | Gruppenüberschrift in Eingabemasken |
Field | Eingabefeld |
FieldEditing | aktives Eingabefeld (Änderungsmodus) |
FieldSearching | aktives Eingabefeld (Suchmodus) |
FieldViewing | aktives Eingabefeld (Ansichtsmodus) |
FieldReadonly | Eingabefeld (schreibgeschützt) |
FieldHighlighted | Eingabefeld (hervorgehoben) |
GridHeader | Tabellen-Überschrift |
Grid | Tabellen-Zellen |
GridSelected | Tabellenelemente ausgewählt |
Sidebar | |
TreeView | Baum-Darstellung (z.B. Merkmalbaum) |
Menu | Menüleiste |
Title | Titel in Dialogfenster |
SubTitle | Untertitel in Dialogfenster |
SmallTitle | Kleine Schrift |
Surface | Oberfläche |
Accent | Akkzentfarbe |
Background | Hintergrundfarbe |
BackgroundDisable | Hintergrund deaktiviert |
Code | Programmcode (feste Schriftbreite) |
Eigenschaften #
Color | Schriftfarbe |
---|---|
ColorDisabled | Schriftfarbe (deaktiviert) |
ColorHilighted | Schriftfarbe (hervorgehoben) |
BackgroundColor | Hintergrundfarbe |
BackgroundColorHilighted | Hintergrundfarbe (hervorgehoben) |
BackgroundColorDisabled | Hintergrundfarbe (deaktiviert) |
IconSize | Symbolgröße (dpi skaliert) |
IconSizeNative | Symbolgröße (nicht skaliert) |
FontFamily | CSS-Fontfamilie |
colorCSS | CSS-Code nur Farben |
CSS | CSS-Code für Schrift und Farbe |
disabledCSS | CSS-Code (deaktiviert) |
hilightedCSS | CSS-Code (hervorgehoben) |
Session #
Analog zu “Grundwerte” wird hier der Registry Schlüssel “\SESSION” samt der vorhandenen Unterschlüssel zurückgegeben, soweit dieser in der jeweiligen EULANDA-Version vorhanden ist. Bei dem Session-Schlüssel handelt es sich um “flüchtige” Einträge, die nicht zurück in den Server gespeichert werden. Diese sind also nur im aktuellen laufenden Prozess vorhanden.
Über ein angehängtes “.ValueExists()” bzw. “.KeyExists()” lässt sich prüfen, ob der Wert resp. der Schlüssel überhaupt vorhanden ist.
Properties (Mandanten Eigenschaften) #
Bei diesen Platzhaltern wird durch voranstellen von “properties.” der Pfad des jeweiligen Ordners angezeigt. Soll beispielsweise der Desktop Orden angezeigt werden, gibt man property.folder.desktop ein. Als Ausgabe wird C:\Users\Mustermann\Desktop angezeigt.
Folder #
Wert | Beschreibung |
---|---|
folder.desktop | Desktop |
folder.windows | Speicherort Windows |
folder.windowstemp | temporäre Daten Windows |
folder.eulandatemp | temporäre Daten EULANDA |
folder.exe | Speicherort der exe |
folder.client | Hintergrundfarbe (deaktiviert) |
folder.clientblobcache | |
folder.clientcache | Symbolgröße (nicht skaliert) |
FontFamily | CSS-Fontfamilie |
folder.appdata | Verzeichnis der App-Einstellungen |
folder.cdburn | CSS-Code für Schrift und Farbe |
folder.mydocuments | Verzeichnis eigene Dokumente |
folder.personal | Verzeichnis “Dokumente” |
folder.internetcache | |
folder.cookies | Verzeichnis “Cookies” |
folder.personal | Verzeichnis “Dokumente” |
folder.history | Verlauf des Internet Explores |
folder.localappdata | Verzeichnis der temporären Webbrowser Daten |
folder.programfiles | Verzeichns der Programme |
folder.commonappdata | Dateiverzeichnis mit Applikationsdaten aller Benutzer |
folder.mypictures | Verzeichnis “eigene Bilder” |
folder.myvideo | Verzeichnis “eigene Videos” |
folder.programfilescommon | Verzeichnis “gemeinsamer Dateien” |
folder.commondocuments | Verzeichnis “gemeinsamer Dokumente” |
folder.commonadmintools | Verzeichnis “gemeinsame Admistrative Tools” |
folder.admintools | |
folder.startup | Verzeichnis “Autostart” der Programme |
folder.datalinkdir | Verzeichnis der Links für die ADO Datenquellen |
folder.udllocalappdata |
Global #
Name | Bedeutung |
---|---|
global.primarylang | Hauptsprache des Mandanten |
global.primarylocal | |
global.uilang | Benutzersprache |
global.defprintlang | |
folder.exe | Speicherort der exe |
global.defprintlocal |
Client #
Name | Beschreibung |
---|---|
client.number | Benutzernummer |
Exe #
Name | Beschreibung |
---|---|
exe.mainversion | Hauptversion |
exe.subversion | Untertversion |
exe.release | Ausgabe der Haupt-/ Nebenversion |
exe.build | interne Nummer der exe-Zusammenstellung |
exe.version | exe Version |
exe.fullversion | Version des Hauptprogrammes mit Build |
exe.udlfilename | |
exe.fullname |
Wts #
Name | Beschreibung |
---|---|
wts.clientname | Benutzername |
wts.clientaddress | Benutzeradresse |
wts.domainname | Domain Name |
wts.clientdirectory |
IExplorer #
Name | Beschreibung |
---|---|
iexplorer.version | Explorer Version |
iexplorer.majorversion | Versionsnummer |
Templates #
EULANDA bietet ab Version 6 die Möglichkeit von Datenobjekt-Bezogenen oder allgemeinen Text-Vorlagen. Je nach Auststattungslinie können diese Mustervorlagen auch angepasst oder durch eigene Vorlagen ergänzt werden.
Beispiel #
Zeigt den Text an, der auch von “Adresse in Zwischenablage” erzeugt wird
ellib.ShowMessage _
ellib.ReplaceObjectValues("%template.cnsoft.toClipboard%","AD",13705,"")
Name | Beschreibung |
---|---|
template.cnsoft.toClipboard | Vorlage von “Adresse in Zwischenablage” |
template.cnsoft.EmailDisclaimer | Textblock mit Haftungsauschluss für E-Mails |
Features #
Abfrage, ob ein EULANDA-Feature aktiv ist. Der Aufbau sieht folgendermaßen aus:
feature.<Name des Features>
Es wird eine “0” für “Feature nicht aktiv bzw. nicht vorhanden” und “1” für “Feature ist aktiv” zurückgegeben. Den benötigten Featurenamen finden sie in den Einstellungen unter “Features und Programmfunktionen”. Nach Auswahl eines Features wird der “interne Name” dort im Bereich “zusätzliche Informationen” angezeigt.
Name | Beschreibung |
---|---|
feature.headings | Feature “Titelverwaltung” |
feature.partslists | Feature “Stücklisten” |
Beispiel #
Über die Abfrage der vorhandenen Features werden beispielsweise im Kurzinfo “Aktive Vorgänge” (interner Name: cnsoft.Common.AktiveVorgaenge) auf der Startseite Teilbereiche ein- und ausgeblendet.
Systemvariabeln #
Daneben sind noch folgende zwei Systemvariablen zulässig.
Name | Beschreibung |
---|---|
system.today | Tagesdatum im Format dd.mm.yyyy |
system.today_iso | Tagesdatum im ISO-Format yyyy-mm-dd |
system.today_isotime | (ab 8.0.13) Tagesdatum und Uhrzeit im ISO-Format yyyy-mm-ddThh:mm:ss |
system.timestamp | (ab 8.0.13) Tagesdatum und Uhrzeit sortierfähig und dateinamenkonform yyyy-mm-ddThh_mm_ss |
system.username | Windows-Benutzername |
system.pcname | Name des PC |
system.ismorning | Für tageszeitabhängige Grußformel: 1, zwischen 5 Uhr morgens und 11:59, ansonsten 0 |
Windows-Umgebungsvariablen #
Diese lassen sich über den Prefix “env.” einbinden. Also beispielsweise “env.PATH” für die Suchpfade.
cnMessage-Tabelle (EULANDA 8) #
Einträge aus der CnMessages-Tabelle können über die allgemeine Syntax:
%msg.Type.SubType%
abgerufen werden.
Daneben gibt es noch einige Sonderformen:
msgbox ellib.replacebasicvars("%msg.1047.256%") ' Januar`
`msgbox ellib.replacebasicvars("%msg.1500.ArtNr%") ' Artikelnummer`
`msgbox ellib.replacebasicvars("%msg.1043.FR%") ' Frankreich`
`msgbox ellib.replacebasicvars("%msg.10002%") ' Der Beleg ist bereits gebucht`
`msgbox ellib.replacebasicvars("%msg.1000.10002%") ' Der Beleg ist bereits gebucht