Menü

{InfosystemName} (SQL-Registry)

Zurück | Ebene zurück  

\ROOT\OBJECTS\DATAOBJECTS\{DataobjectsNamen}\Infosystem\
{InfosystemName}\

Die Infosysteme können frei erweitert werden. EULANDA® wird mit einer Reihe sinnvoller Infosysteme ausgeliefert, die aber wie die Druckreports erweiterbar sind. 

Unterhalb des Ordners {InfosystemName} können zur besseren Strukturierung auch Infosystem-Gruppen angelegt werden. In diesem Fall wird im Oberordner neben der Eigenschaft „Title“ auch die Eigenschaft „Common“ gesetzt.

TIPP: 
Änderungen am Infosystem werden für die aktive EULANDA® sofort wirksam. Sie müssen das Programm also nicht neu starten - im Gegensatz zur Praxis bei den meisten anderen Registry-Änderungen.

Folgende Eigenschaften werden unterstützt:

Browser= 
{ Zeichenfolge }
Wird im Infosystem ein Browser angezeigt, so kann über die Eigenschaft „Browser“ der Name eines Browsers angegeben werden. Wird ein Browser ohne diese Eigenschaft definiert, so kann der Browser in der Darstellung nicht verändert werden. 

Browser werden unterhalb des Root-Key „User“ unter dem Namen des angemeldeten Benutzers gespeichert.

Der Browser muss nicht vorhanden sein. Er wird automatisch mit dem in „Browser“ angegebenen Namen angelegt. 

Beispiel:
Browser=Info.Eulanda.Adresse.INFO_AdAr

ChartType= 
{ Integer }
Diese Eigenschaft wird nur bei Type=6 ausgewertet. Hierüber kann eingestellt werden, ob ein Chart als Kuchendiagramm oder als Balkendiagramm dargestellt wird.

Es gibt folgende Definitionen für ChartType:

0 Balkendiagramm. Bei Balkendiagrammen müssen 12 Werte für die Monate Januar bis Dezember als Datenmenge über den SQL-Befehl geliefert werden.
1 Kuchendiagramm. Bei einem Kuchendiagramm muss die SQL-Datenmenge immer 100% liefern.

Beispiel:
ChartType=1

In diesem Beispiel wird ein Kuchendiagramm erzeugt.

CommandText= 
{ Zeichenfolge }
CommandText enthält den entsprechenden Befehl, um das Infosystem zu erzeugen.

Bei Type=2 oder 3 wird hier eine SQL-Datenmenge erwartet, wie sie beispielsweise von einem Select-Befehl erzeugt wird. 

Das Infosystem stellt die Daten dann in einem Browser dar.

Beispiel:
CommandText=SELECT * FROM
dbo.MASTER_RechnungPos
WHERE AdresseId=%id% ORDER BY ArtNummer

Dieses Beispiel geht von einem im Adress-Bereich definierten Infosystem aus. Es ruft alle Rechnungspositionen auf, die vom selektierten Kunden bezogen wurden. Die Ergebnismenge wird nach der Artikelnummer sortiert angezeigt.  


Wird Type=5 verwendet, so wird in CommandText die URL erwartet. Feldwerte des aktuell angezeigten Datensatzes können in %FeldName% übergeben werden.

Beispiel 1:
CommandText=%homepage%

Wird dieses Infosystem von einer Adresse aus aufgerufen, so wird der Feldinhalt des Feldes „Homepage“ in den CommandText geladen. Steht im Kundensatz dort z.B. www.eulanda.de, so wird die Eulanda-Homepage im Infosystem angezeigt.

Beispiel 2:
CommandText=http://wwwapps.ups.com/etracking/
tracking.cgi?tracknums_displayed=5&error_carried=
yes&TypeOfInquiryNumber=T&HTMLVersion=
4.0&sort_by=status&InquiryNumber1=
%TrackingNr%&track.x=36&track.y=5

Wird dieser Befehl in einem Lieferschein-Infosystem hinterlegt, so wird die Variable des Feldes TrackingNr mit dem aktuell im Lieferschein vorhandenen Wert ausgetauscht und der CGI-Befehl für das UPS-Trackingsystem aktiviert. Das Infosystem zeigt dann die aktuellen Trackingdaten aus dem UPS-WEB-Server an.

Sollen die Felder nicht in der URL sondern „unsichtbar“ über die HTTP-POST Methode an den Server gesendet werden, so geben Sie diese einfach in einer zweiten Zeile unter der eigentlichen URL an. Am einfachsten ist geht das, wenn Sie den Feldwert nicht mit Doppelklick edittieren, sondern über das Kontextmenü Ändern mit mehrzeiligem Editor verwenden. Als Beispiel können Sie sich hierzu das Tracking/DPD Infosystem in Lieferschienen ansehen.


Bei Charts Type=6 liefert CommandText je nach Untertyp ChartType eine Datenmenge die für ein Balkendiagramm geeignet ist (12 Werte) oder eine Datenmenge die für ein Kuchendiagramm (alle Werte müssen 100% ergeben) geeignet ist.

Beispiel:
CommandText=SELECT k.Info [Group], 
S [Value] FROM
(SELECT ErloesGr, sum(VkGes) S
FROM dbo.RechnungPos rep, 
dbo.Rechnung re WHERE 
rep.kopfid = re.id 
AND re.AdresseID=%id%
AND ErloesGr IS NOT NULL
GROUP by ErloesGr) X
LEFT JOIN dbo.konErloesKonto k on 
X.ErloesGr=k.ErloesGr

Dieser Select-Befehl ruft ein Wertepaar vom SQL-Server ab. in diesem Beispiel alle Erlösgruppen in der die angezeigte Adresse Umsätze getätigt hat. Die Werte werden in ein Kuchendiagramm geladen und im Infosystem angezeigt. EULANDA® sucht  in der Ergebnismenge nach  Spalten   mit den Namen Group/Value oder Gruppe/Wert. Wenn keines dieser Paare gefunden wird, werden die ersten zwei Spalten  der Ergebnismenge verwendet. 

Für komplexe SQL-Abfragen sollte besser eine eigene Stored Procedure bzw. Function erstellt werden, die dann an dieser Stelle nur noch aufgerufen werden zu braucht. Die Namen der SQL-Funktionen, die EULANDA® verwendet fangen stets mit „cnf_info_“ an gefolgt von dem Namen des Infosystems in der Registry. Wobei allerdings die Dezimalpunkte durch Unterstriche ausgetauscht werden:
also z.B.: cnf_Info_cnsoft_Adress_AdresseGr  

Common= 
{ Integer }
Über Common kann eingestellt werden, ob das Infosystem einen selektierten Datensatz benötigt, oder ob das Infosystem globale Informationen darstellen soll. Globale Informationen werden im Programm  mit Umsch+Strg+I aufgerufen, während die speziell zum aktuellen Datensatz gültigen Informationen mit Strg+I abgerufen werden.

Hat Common den Wert 1 so handelt es sich um ein globales Informationssystem. Wird Common nicht angegeben, oder hat Common den Wert 0, so ist es ein datensatzspezifisches Infosystem.

Beispiel:
Common=1

Das in Beispiel definierte Infosystem ist ein globales Infosystem.

DetailForm= 
{ Zeichenfolge }
Hier wird der Name eines Formulars angegeben, dass im Detailbereich des Infofensters angezeigt werden soll. Diese Eigenschaft wird nur bei Type=1 unterstützt.

Die Formulare (Bildschirmmasken) sind unter dem Schlüssel ROOT\OBJECTS\FORMS mit diesem Namen gespeichert.

Beispiel:
DetailForm=Info.Eulanda.Adresse.Angebot

Title= 
{ Zeichenfolge }
Enthält den Anzeigetext, der im Infosystem angezeigt wird.

Beispiel:
Title=Gekauft Detail

Link=
{Zeichenfolge}
Wenn der Type 1 verwendet wird, hat der Benutzer über das Kontextmenü (rechte Maustaste) die Möglichkeit das verbundene Objekt aufzurufen. Z.B. kann man im Adressen-Infosystem unter Vorgänge/ Rechnungen eine bestimmte Rechnung über Öffnen direkt aufrufen. Das Infosystem-Fenster wird dann geschlossen und die entsprechende Rechnung im Hauptfenster von EULANDA® aufgerufen.

Wird dagegen Type 2 verwendet, „weiß“ EULANDA® nicht, welches das zugehörige Objekt ist, das aufgerufen werden soll, da der SELECT Befehl eine beliebige Form haben kann. In diesem Fall kann man EULANDA® über diesen Eintrag mitteilen, mit welchem Datenobjekten die Datenmenge korrespondiert und welches Feld in der Datenmenge das ID Feld ist. Der Link-Eintrag hat folgende Syntax:

Objekt_Name=Name_des_ID_Feld

Beispiel:

Eulanda.Artikel=ArtikelID

Type= 
{ Integer }
Es gibt verschiedene Darstellungsweisen des Infosystems. Diese werden durch Type spezifiziert. Je nach benutztem Type kann CommandText ein SQL-Befehl sein, oder andere Angaben enthalten. 

Es gibt folgende Definitionen für Type:

0 Werden Ordnerstrukturen im Infosystem abgebildet, so hat hier die Eigenschaft Type den Wert 0. Man kann in diesem Fall sie Eigenschaft auch komplett weg lassen.
1 Wird Type auf 1 gesetzt, so informiert sich EULANDA® über verlinkte Objekte und stellt die Informationen im Infosystem automatisch dar. Nur Infosysteme mit diesem Typ können mit einer Detail-Bildschirmmaske versehen werden.

CommandText enthält hier nur einen Link auf die im selben Abschnitt definierten Links. 

2+3 Bei Type=2 wird in CommandText ein SQL-Befehl erwartet, der eine Datenmenge liefert. In der Regel also ein Select-Befehl. Die Daten werden hierbei in einem Browser dargestellt.
4 Wird derzeit nicht verwendet
5 CommandText enthält hier eine URL. Wird kein Protokoll angegeben, so wird vom Protokoll http:// ausgegangen. Über %Feldname% kann im CommandText ein Feldname des aktuell am Bildschirm selektierten Datensatzes übergeben werden. Auf diese Weise ist es möglich die Homepage des angezeigten Kunden aufzurufen, oder das Trackingsystem des Paketdienstes zu starten.
6 Hierüber lassen sich im Infosystem Charts anzeigen. Es werden zwei Charttypen unterschieden. Die Monatsdiagramme bei denen in einer Balkenstatistik 12 Werte angezeigt werden und die Kuchendiagramme, die Informationen mit einer Verteilung anzeigen. Die Unterscheidung der beiden möglichen Diagramme wird über die Eigenschaft ChartType eingestellt.

Beispiel:
Type=2

In diesem Beispiel wird ein Browser aufgerufen, der die anzuzeigenden Daten aus in CommandText hinterlegten SQL-Befehl erhält.