Element "DataRM"

<< Click to Display Table of Contents >>

Navigation:  Konfigurierung Webinterface > Individuelles Maskenlayout > Elemente im individuellen Maskenlayout >

Element "DataRM"

Abkürzung für Data RelationMiner.

Sucht den Pfad zwischen einem Startobjekt und einem oder mehreren Endobjekten innerhalb einer Tabelle über eine konkrete n:m-Tabelle.

 

Einstellungen im Web-Interface

 

Basistabelle

Basistabelle

 

Beziehung (n:m)

n:m-Tabelle, wo beide FK sind FK auf die Basistabelle.

 

Startobjekt

Ein einziges Objekt aus der Basistabelle.

 

Endobjekte

Ein oder mehrere Objekte aus der Basistabelle.

Wenn eines dieser Objekte gefunden wird, wird der Pfad beendet und die rekursive Suche wird nach anderen Pfaden suchen.

 

Über

Eine Liste von Objekten. Die Bedeutung wird weiter spezifiziert:

alle: der Pfad muss alle Objekte beinhalten, plus optional einige mehr

einige:        der Pfad muss mindestens ein oder alle Objekte beinhalten, plus optional einige weitere Objekte

nur diese: der Pfad darf nur diese Objekte beinhalten (muss nicht alle) und keine weiteren Objekte

 

Nicht über

Eine Liste von ausgeschlossenen Objekten.

 

Eltern-Beziehungen anzeigen

Ob bei der Suche die Richtung „Spalte 1“ 🡪 „Spalte 2“ benutzen (siehe auch Erstellung / Bearbeitung von Tabellen).

Wenn aktiv, in der Auswahlliste kann optional das zu angezeigte Attribut (aus der n:m-Tabelle und nur FK und Auswahl) ausgewählt werden und optional kann „über“ und „nicht über“ definiert werden

Wenn nichts ausgewählt, wird der Beziehungstyp angezeigt.

 

Beispiel eines Pfades (kein Attribut ausgewählt):

Startobjekt 🡪 <Beziehungstyp> 🡪 Zwischenobjekt1 🡪 <Beziehungstyp> 🡪 Zwischenobjekt2 🡪 Endobjekt

 

Beispiel eines Pfades (ein Attribut ausgewählt):

Startobjekt 🡪 <n:m-Attribut> 🡪 Zwischenobjekt1 🡪 < n:m-Attribut> 🡪 Zwischenobjekt2 🡪 Endobjekt

 

Kind-Beziehungen anzeigen

Ähnlich wie Eltern-Beziehungen anzeigen, aber umgekehrt, d.h. die Richtung „Spalte 2“ 🡪 „Spalte 1“ (siehe auch Erstellung / Bearbeitung von Tabellen).

Es muss mindestens eine von Eltern- oder Kind-Beziehungen aktiviert werden, ansonst werden keine Pfade gefunden.

 

Minimale und minimale Länge:

Pfadlänge Einschränkung, inklusiv des Starts- und Endobjektes.

 

Timeout

Zeiteinschränkung.

 

Suchen

Suche wird gestartet und die Ergebnisse (die Pfade) werden aufgelistet.

Auf den Pfaden (alles oder nur einigen) is es möglich ein Diagram erstellen.

 

 

Attribute

 

links, oben, Breite, Höhe

Position und Größe

 

visible

Legt fest, ob das Element nach Initiierung der Maske angezeigt wird.

 

AutoMoveAndResize

siehe auch AutoMoveAndResize

 

Rahmen

Rahmeneigenschaften

 

Konfigurieren

Die Diagramkomponenet (wo der Diagram angezeigt wird), Basistabelle und die n:m-Tabelle können voreingestellt werden, genauso ob die Einstellun im Web-Interface änderbar ist.

 

 

Funktionen

 

addNotViaDirectNMAttrs(values:Array<string>)

Fügt die Objekte in die “nicht über“-Liste im Berech „Eltern-Beziehungen anzeigen“ hinzu. Die Werte sind FK-IDs oder Auswahl-Nummers (als JS-string!).

 

addNotViaIndirectNMAttrs(values:string[])

Fügt die Objekte in die “nicht über“-Liste im Berech „Kind-Beziehungen anzeigen“ hinzu. Die Werte sind FK-IDs oder Auswahl-Nummers (als JS-string!).

 

addNotViaObjects(ids:number[])

Fügt die Objekte in die “nicht über“-Liste

 

addViaDirectNMAttrs(values:string[])

Fügt die Objekte in die “über“-Liste im Berech „Eltern-Beziehungen anzeigen“ hinzu. Die Werte sind FK-IDs oder Auswahl-Nummers (als JS-string!).

 

addViaIndirectNMAttrs(values:string[])

Fügt die Objekte in die “über“-Liste im Berech „Kind-Beziehungen anzeigen“ hinzu. Die Werte sind FK-IDs oder Auswahl-Nummers (als JS-string!).

 

addViaObjects(ids:number[])

Fügt die Objekte in die “über“-Liste

 

baseTableUIEnabled(newValue?:boolean)

Gibt zurück, ob die Basistabelle im Web-Interface vom Webbenutzer geändert darf oder legt es fest.

 

baseTableValue(newValue?:number)

Gibt die ID (VTAB_ID) der ausgewählter Basistabelle zurück oder legt sie fest.

 

directNMAttrValue(value?:number)

Gibt die ID (VCOL_ID) des ausgewähltes n:m-Attributes in Sektion „Eltern-Beziehungen anzeigen“ zurück oder legt sie fest.

 

directNMAttrUse(use?:boolean)

Gibt zurück, ob Eltern-Beziehungen angezeigt werden oder legt es fest.

 

endObjectsValue(newValues?:number[])

endObjectValue(newValue?:number)

Gibt die Endobjekte zurück oder legt sie fest.

 

generDiagram(diagram)

Generiert ein Diagramm in der Komponente Diagram, siehe auch Element "Diagramm".

 

generDiagramConfig

Hier können einige Diagramm-Parameter voreingestellt werden.

 

getCurrentSearchResult()

Gibt die zuletzt gefundenen Pfade zurück.

 

getSelectedChains()

Gibt die ausgewählten Pfade zurück.

 

indirectNMAttrUse(use?:boolean)

Gibt zurück, ob Kind-Beziehungen angezeigt werden oder legt es fest.

 

indirectNMAttrValue(value?:number)

Gibt die ID (VCOL_ID) des ausgewähltes n:m-Attributes in Sektion „Kind-Beziehungen anzeigen“ zurück oder legt sie fest.

 

maxChainLength(newValue?:number)

Gibt die maximale Pfadlänge zurück oder legt sie fest.

 

minChainLength(newValue?:number)

Gibt die minimale Pfadlänge zurück oder legt sie fest.

 

nmTableUIEnabled(newValue?:boolean)

Gibt zurück, ob die n:m-Tabelle im Web-Interface vom Webbenutzer geändert darf oder legt es fest.

 

nmTableValue(newValue?:number)

Gibt die ID (VTAB_ID) der ausgewählter n:m-Tabelle zurück oder legt sie fest.

 

notViaDirectNMAttrs(values?:string[])

Gibt die IDs (Primärschlüssel oder Auswahlwert) der Objekte in Sektion „Eltern-Beziehungen anzeigen“ 🡪 „nicht über“ zurück oder legt sie fest.

 

notViaIndirectNMAttrs(values?:string[])

Gibt die IDs (Primärschlüssel oder Auswahlwert) der Objekte in Sektion „Kind-Beziehungen anzeigen“ 🡪 „nicht über“ zurück oder legt sie fest.

 

notViaObjects(ids?:number[])

Gibt ID der „nicht über“-Objektes zurück oder legt sie fest.

 

resultCICustomStyle(style?:string)

Gibt das benutzerdefinierte html-style für die Objekte in der Ergebnisliste zurück oder legt es fest. Dies wird erst nach Suche betrachtet.

Beispiel:

RU.Datarm1.resultCICustomStyle("color:red");

 

resultRelCustomStyle(style?:string)

Gibt das benutzerdefiniertes html-style für die Relationen in der Ergebnisliste zurück oder legt es fest. Dies wird erst nach Suche betrachtet.

 

startObjectValue(newValue?:number)

Gibt das Startobjekt zurück oder legt es fest.

 

timeout(newValue?:number)

Gibt das Timeout zurück oder legt es fest.

 

updateBaseObjectList()

Aktualisiert Texte für das Startobjekt, Enobjekte, „über“ und „nicht über“. Dies ist sinnvoll, wenn die Basistabelle modifiziert wurde und die Texte sollten aktualisiert werden.

 

viaDirectNMAttrs(values?:string[])

Gibt die IDs (Primärschlüssel oder Auswahlwert) der Objekte in Sektion „Eltern-Beziehungen anzeigen“ 🡪 „über“ zurück oder legt sie fest.

 

viaDirectNMAttrsCC(cc?:string)

Gibt zurück, wie die Objekte in Sektion „Eltern-Beziehungen anzeigen“ 🡪 „über“ betrachten:

„some“  = einige

„all“    = alle

„filter“ = nur diese

 

viaIndirectNMAttrs(values?:string[])

Gibt die IDs (Primärschlüssel oder Auswahlwert) der Objekte in Sektion „Kind-Beziehungen anzeigen“ 🡪 „über“ zurück oder legt sie fest.

 

viaIndirectNMAttrCC(cc?:string)

Gibt zurück, wie die Objekte in Sektion „Kind-Beziehungen anzeigen“ 🡪 „über“ betrachten:

„some“  = einige

„all“    = alle

„filter“ = nur diese

 

viaObjects(ids?:number[])

Gibt ID der „über“-Objektes zurück oder legt sie fest.

 

viaObjectsCC(cc?:string)

Gibt zurück oder legt fest, wie sollte die Liste von „über Objekte“ betrachtete werden. Mögliche Weret sind:

„some“  = einige

„all“    = alle

„filter“ = nur diese

 

 

Ereignisse

 

onGetBaseObjects

Nutzen Sie dieses Ereignis, um die Liste von Objekten der Basistabelle zu beeinflussen.

 

Beispiel:

Datarm1.onGetBaseObjects

var RU=rimacon._userform, RUC=rimacon._userform._customer;

if (ctx.vtabId == <VTAB_ID von Tabelle PAF> ) return RU._server.GetPAFListForDataRM();

 

Server-SQL-API:

Name: GetPAFListForDataRM

Rückgabewert: IDBResultset

Über Javascript aufrufbar: [x]

select PAF_ID as xid, PAF_Firmname  + ' (' + PAF_EMAIL + ')' as xname from PAF

-- where irgendeine Einschränkung

order by xname

 

Wenn das Ereignis ungenutzt ist oder nichts zurück gibt, werden automatisch alle Objekte/Zeilen der Basistabelle genutzt.

Die Komponente führt dieses Ereignis immer auf, wenn sie die Liste von Objekten der Basistabelle benötigt, (z.B. alle Rechner der Rechnertabelle). Standardmäßig werden alle Objekte/Zeilen der Basistabelle genutzt.

 

onGetNMFilter

Ähnlich wie onGetBaseObjects. Ermöglicht die n:m-Tabelle einzuschränken, d.h. welche Zeilen betrachten. Geben Sie über Javascript-return eine 1D-Numerische Array mit den Primärschlüssel-IDs zurück,

 

onSearchDone

Ereignis wird nach Ende der Suche aufgerufen. Die  Kontextvariable ctx enthält die gefundenen Pfade.

 

afterDiagramInited

Dieses Ereignis wird aufgerufen, nachdem das Diagramm initiiert wird. Dies ermöglicht es, zusätzliche spezifische Aktionen durchzuführen.

 

onResultCIClick

Dieses Ereignis wird nach anklicken eines Objektes in Ergebnissektion aufgeführ. Die Kontextvariable ctx enthält detaillierte Information über das Objekt.

 

onResultRelClick

Dieses Ereignis wird nach anklicken eines Beziehungstextes in Ergebnissektion aufgeführ. Die Kontextvariable ctx enthält detaillierte Information über die Beziehung.

 

onClickSelectStartObject

onClickAddEndObjects

onClickAddViaObjects

onClickAddNotViaObjects

onClickAddViaDirectNMAttrs

onClickAddNotViaDirectNMAttrs

onClickAddViaIndirectNMAttrs

onClickAddNotViaIndirectNMAttrs

Ereignis wird bei entsprechender Aktion ausgeführt. Standardmäßig wird automatisch eine Auswahlmaske geöffnet. Um dies zu verhindern, geben Sie über Javascript-return ein false zurück und öffnen eigene Auswahlmaske (oder andere Aktion).

Hinweis: Mit „direct“ ist die „Eltern-Beziehung“ gemeint, mit „indirect“ ist die „Kind-Beziehung“ gemeint.