Tipp: Strukturieren Sie grössere Auswahllisten mit DynamicLists

Mit DynamicLists können für die nachfolgende Listen-Auswahl Einschränkungen erstellt werden, sodass die vorgeschlagenen Werte der definierten Logik folgen.

Schritt 1

Aufgerufen wird die DynamicList im PDM Admin Tool unter den Zusatzanwendungen myPDMTools (wenn vorhanden).

Es können mehrere Listen definiert werden:

Schritt 2

Der Zugriff kann auf eine Text-, / CSV- / Excel-Datei oder auf eine Datenbank erfolgen.

Im ersten Beispiel wird der Zugriff auf eine Excel-Datei definiert.

Schritt 3

Danach wird die Reihenfolge der Abhängigkeiten mit der variablen Reihenfolge definiert.

Die Excel-Datei hat den folgenden Aufbau:

Schritt 4

Der Aufruf der DynamicList erfolgt in der PDM Dateikarte mit dem Befehlstyp “Addin starten”.

Nach dem Aufruf der Funktion erscheint eine Karte, in der die Variablen belegt werden können.

Schritt 5

Nach der Auswahl werden mit “OK” die Daten auf die PDM-Karte geschrieben.

Die Auswahl mit der Datenbank-Verknüpfung sieht wie folgt aus:

Der Unterschied liegt darin, dass die Daten aus einer Tabelle im SQL-Server gelesen werden und der Zugriff auf diese Daten nachfolgend beschrieben wird.

Im Beispiel heisst die Datenbank “DynamicLists” und hat eine Tabelle mit dem Namen “dbo.Rohmaterial”.

Im Admin Tool wird der Zugriff dann definiert.

Schritt 6

Anstelle der Sterne **** müssen die Einträge “Server Name”, Uid = sa,  pwd = …. und der Datenbankname (hier “DynamicLists”) eingefügt werden.

Schritt 7

Danach werden die SQL-Abfragen (Queries) erstellt.

Zu Testzwecken kann man diese im SQL-Server Management Studio testen. Einzig die Bedingungen müssen im AdminTool angepasst werden. Die Variable heisst dort ‘VAL1’, ‘VAL2’ usw.

Queries

select distinct Art from dbo.Rohmaterial

select distinct Unterklasse from dbo.Rohmaterial where Art =’VAL1′

select RomatCode from dbo.Rohmaterial where Art = ‘VAL1’ and Unterklasse = ‘VAL2’

 

Hier die Abfrage für die letzte Variable aus der Liste:

select Romat from dbo.Rohmaterial where Art = ‘VAL1’ and Unterklasse = ‘VAL2’ and RomatCode = ‘VAL3’

Schritt 8

Der Aufruf in der Dateikarte erfolgt gleich, wie für die Liste mit einer Datei. Hier heisst die DynamicList “Klasse”

Mit der DynamicList können also grössere Auswahllisten strukturiert werden, sodass nicht aus einer riesigen einstufigen Liste ausgewählt werden muss.

Das können auch Adresslisten, Bezeichnungen usw. sein, die alphabetisch oder kategorisch aufgebaut sein sollen.

Viel Spass beim Ausprobieren!

Autor des Artikels

Roland Linder, Application Engineer bei Visiativ Solutions Switzerland