Page 1 of 1

Tabellenübergreifende erweiterte Zeichenfolge in Formularen.

Posted: 09. Apr 2010, 16:06
by Matthias
Ich möchte beim Hauptbenutzer eines Assets die Telefonnummer mit anzeigen lassen.

Da wir für die automatische Anrufererkennung im Feld BuissnessPhone die "hässliche" Telefonanlagentelefonnummer nutzen müssen, haben wir eine unserer Tabelle mit Mitarbeitererweiterungen ein Feld mit einer optisch schöneren Telefonnummer angelegt.

Ich möchte jetzt in der erweiterten Zeichenfolge die "hübsche" Telefonnummer verwenden, aber ich schaffe es nicht auf das passende Feld zuzugreifen.

Folgendes Script funktioniert enthält aber die "hässliche" Telefonnummer:

DisplayExpression="LastName+IsNull(', '+FirstName, '')+IsNull(' / Telefon: ('+BusinessPhone+')','') + IsNull(' / Mobil: ('+MobilePhone+')', '')"


Die Erweiterungen zu Benutzern liegen in folgender Tabelle:
CUSTUNIUserClassExtension

Die Telefonnummer ist in diesem Feld:
PhoneNumberOriginal


Wie muss ich mein Script anpassen, damit ich die "hübsche" Telefonnummer nutzen kann?

Gruß

Matthias

Re: Tabellenübergreifende erweiterte Zeichenfolge in Formula

Posted: 12. Apr 2010, 10:26
by TomO
Ich denke dass man den "hübschen" Wert mit

Code: Select all

ISNULL(T(CUSTUNIUserClassExtension).Feldname)
in die Display Expression kriegen könnte, kann mich aber auch irren.

Re: Tabellenübergreifende erweiterte Zeichenfolge in Formula

Posted: 12. Apr 2010, 14:14
by Matthias
Leider funktioniert das nicht.

Wenn ich das Formular aufrufe, bleibt das Feld komplett leer und als Hinweistext erscheint:

Fehler im Ausdruck Die Datentypen nvarchar und ntext sind im add Operator inkompatibel.

Das Datenbankfeld ist aber als TextType definiert.

Ich bin weiterhin für Ideen offen und schon mal danke für die Hilfe.

Re: Tabellenübergreifende erweiterte Zeichenfolge in Formula

Posted: 13. May 2010, 16:27
by wkiefer
Hallo, der komplette Ausdruck würde lauten:

DisplayExpression="IsNull(T(CustUniUserExtensions).SomeBeautifulPhoneNumber, '')"

Der IsNull funktion hat zwei Parameter!, Falls mehrere abgefragt werden sollen so kann man m.E. mit COALESCE arbeiten.
Der erste Ausdruck der nicht NULL zurückliefert wird genommen. Ein Leerstring ('') (zwei einfache Hochkommas) sind nicht null.

Viel Erfolg
Wolfgang Kiefer