Thomas's profileThomas RoschinskyPhotosBlogLists Tools Help

Thomas Roschinsky

May 24

Tag-aktiviertes Textfeld im CRM

FunktionsweiseIm Rahmen von Dynamics CRM-Anpassungsprojekten wird gelegentlich der Wunsch nach einer einfachen Gruppierungsfunktion laut, die es ermöglicht auf eine intuitive und schnelle Weise mehrere Datensätze zu gruppieren oder mit nicht näher kategorisierbaren Attributen zu versehen. Oft werden dabei keine weiteren Anforderungen an Reporting oder Auswertbarkeit gestellt, da es einzig darauf ankommt, Datensätze nach Eingabe eines Schlüsselwortes wiederfinden zu können.
 
Im Standardumfang von Microsoft Dynamics CRM 4.0 existiert eine ähnliche Funktion (Betreff-Struktur) lediglich an wenigen Entitäten des Service-Bereichs und ist dabei nur eingeschränkt zu verwenden, da die Eingabe auf jeweils ein Attribut je Datensatz eingeschränkt ist.
 
Um hier Abhilfe zu schaffen, habe ich mittels JScript eine CRM-Anpassung entwickelt, die es ermöglicht, jedes beliebige Textfeld eines CRM-Datentyps (CRM-Entität) in ein "Tag-aktiviertes" Feld zu verwandeln. Direkt während der Eingabe eines Tags in das Tag-Feld, wird anhand der an anderen Datensätzen (des gleichen Typs) hinterlegten Tags eine Tag-Liste zusammengestellt, aus welcher Tags in der korrekten Schreibweise übernommen werden können.
 
Zusätzlich dazu ist es konfigurativ möglich, die vorgeschlagene Tag-Liste anhand eines weiteren Attributs auf dem CRM-Formular einzuschränken (z.B. bei Kontakten der gleichen Firma, so dass hier nur Tags vorgeschlagen werden, die an Mitarbeitern der Firma hinterlegt wurden).
Ein weiteres Anwendungsszenario für die Beschränkung der Tag-Liste anhand eines Formularfelds, wäre der Einsatz an Kampagnenaktivitäten. Hier könnten jeweils nur die an den verküpften Kampagnen verwendeten Tags angeboten werden.
 
 
 Das Projekt habe ich auf CodePlex unter dem Namen TaggingField veröffentlicht.
 
April 15

NotesCount v0.5 mit neuen Features

Ein gutes Jahr ist seit der letzen Änderung an NotesCount im Rahmen der Anpassung an das Frontend von CRM 4.0 vergangen. Umso mehr freue ich mich, dass - neben dem ausstehenden Upgrade auf die CRM-2007-WebServices - gleich zwei weitere Funktionen ihren Weg in die aktuelle Version des UX-AddOns für CRM gefunden haben:
1. kann bereits auf der Lasche zwischen Notizen und Dateianlagen unterschieden werden, so dass die Teilanzahl je nach Typ angezeigt wird; 2. ist es möglich, einen Tooltip mit allen Anlagen - ebenfalls unterschieden anhand des Notiztyps - beim Überfahren der Notizen-Lasche mit der Maus einzublenden.
 
NotesCount v0.5
 
Beide Zusatzfeatures sind jeweils im Konfigurationsabschnitt des Scripts zu deaktivieren, so dass NotesCount auch im "Classic-Mode" ausgeführt werden kann. Die bereits erwähnte Anpassung von NotesCount an die Spezifikationen der CRM WebServices 2007 ermöglicht es, das AddOn auch in gehosteten Umgebungen mit mehreren Organisationen und ohne integrierter Authentifizierung problemfrei zu verwenden.
 
Eine weitere Neuerung - jedoch nicht am NotesCount selbst: Ich habe für das kleine Tool ein CodePlex-Projekt eingerichtet, so dass hier z. B. auch Bugs nachverfolgt werden können.
 
January 17

Tagging für unterwegs wird bunt

Mit dem QR-Code oder DataMatrix erfreute sich in den vergangenen Jahren das Mobile Tagging (?...!) immer größerer Beliebtheit.
Selbst in einige Tageszeitungen haben die 2D-Barcodes bisweilen ihren Weg gefunden.

Nun wird es bunt mit Microsoft Tag. Mit einer Live-ID registrierte Benutzer erhalten direkten Zugang zum momentan noch im Beta-Release befindlichen System, in welchem eigene Tags der verschiedenen Varianten (URL, Freitext, vCard und Rufnummer) erstellt werden können.
 
Eine hervorzuhebende Besonderheit des Systems ist die Auswertungsfunktion, die in oben genanntem Portal genutzt werden kann. Hier ist es möglich sich einen umfassenden Überblick zu verschaffen, wie oft und wann seine Tags gescannt wurden. Und die Antwort auf die sich aus dem letzten Satz ergebende Frage lautet "Ja! Man muss online sein, um die Tags scannen und auslesen zu können."... ob Vorteil oder Nachteil ist sicher diskussionswürdig. Jedoch lässt sich zweifelsohne feststellen, dass man zumindest für die verbreiteteste Form von Tags - der URL - ohnehin online sein sollte, um Tags daraufhin im Browser auflösen zu können.
 
Funktion:
Nachdem ein Tag mit der Kamera des Handys über die vorher von gettag.mobi heruntergeladenen Software (den Tag-Reader) gescannt und erkannt wurde, wird eine Art Tag-Proxy-Server mit der im Tag enthaltenen ID angesprochen, welcher den Aufruf protokolliert und daraufhin auf die eigentliche Seite, die sich hinter dem URL-Tag verbirgt, umleitet.
 
Der Vorgang sieht für den oben abgebildeten Tag (übergebene Variablen aus dem Tag bold und unterstrichen) so aus:

GET /HALOWE56FQGDMXIFK3LAJSA5E3HW3CHG.aspx?
Level=1&
VID=1%2B71&
TH=_%2Bxrkqy8D01uhO8WheA%24&
PL=q6FhwD8%2BUBxH%2BeYmbhoYCYP63RvwxBa%2BaAlTYlyL3Qw%2BXUJik_fVSMvPC8YrSzwMRfe0cjhdMnnj9qlWyMoa1i43W2NV8rwbU15TFfvvykXdpxTeLkAldl%2BCw3hQUDx1jem%2BPMauYsI2MU4XRZnKAFw_L3qU4ccqtNlgqDE_IRYzjLgNXyk4eeOOv0WutBqhQShAcyHovwVYRSlimMKHAvuUBro_RVdyXYDfAEo5L3CKj9JSt8RnrT5QPRYsmg%24%24 HTTP/1.1
Host: rs.tag.microsoft.com

HTTP/1.1 302 Found
Date: Sat, 17 Jan 2009 21:15:08 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
P3P:CP="BUS CUR COVo FIN IVDo ONL OUR PHY SAMo TEKo"
X-AspNet-Version: 2.0.50727
Location:
http://t-roschinsky.spaces.live.com/
Cache-Control: private
Content-Type: text/html; charset=utf-8
Content-Length: 153

Momentan verfügbar sind Versionen des Tag-Readers für Blackberry, Java 2 Micro Edition, Symbian S60 (v1.0 + 3rd Edition) und Windows Mobile. Geplant ist die Unterstützung der Plattformen Android, iPhone sowie PalmOS.
 
Viel Spaß beim Taggen!
 
Technorati-Tags:

December 06

Isolated Storage - Raum für Fehlinterpretation?

Bei der Überlegung, wo man Daten wie Konfigurationseinstellungen einer Silverlight-Anwendung (z.B. ein mit Hilfe dieser Technologie entwickeltes Sidebar Gadget) persistieren soll, landet man früher oder später beim Isolated Storage.
Der grundsätzliche Ansatz der Isolierung der Daten auf den Ebenen Benutzer, Assembly-Identität und Domain ist durchaus lobenswert, durchdacht sowie aus einer gewissen Perspektive nachvollziehbar.

Doch Obacht: Der Begriff an sich (man denke an z.B. den Protected Storage) als auch die in vielen Ressourcen zum Thema angegebenen Bezeichnungen wie 'Schatzkammer' etc. täuschen weit mehr Sicherheit vor, als der Anwender oder der Softwareentwickler erhält.
Die hier gespeicherten Daten werden schlussendlich im Klartext im Dateisystem in automatisch generierten Ordnern hinterlegt - integriert man keine eigene Verschlüsselung kann jeder, der direkt im Kontext des Benutzers agiert bzw. jeder, der Zugriff auf den Datenträger erhält, die Daten ohne weitere Hürden einsehen.
Mehr noch - da es sich bei dem Isolated Storage um keinen flüchtigen Speicher handelt, der auch nicht zwangsweise geleert wird, können hier eingetragene Daten wie Authentifizierungstokens, Benutzer-Credentials oder andere sensitive Informationen eine lange Zeit ungeachtet verweilen.
 
Fazit:
Bei der Ablage von sensitiven Benutzerinformationen im Isolated Storage, speziell bei der Entwicklung von Anwendungen mit Zugriff auf unternehmenskritische Daten, sollte unbedingt sichergestellt werden, dass die Daten durch die Anwendung abgesichert werden.
 
Pfad zum Isolated Storage unter Windows Vista
%userprofile%\AppData\LocalLow\Microsoft\Silverlight\is
Pfad zum Isolated Storage unter Windows XP
%userprofile%\Local Settings\Application Data\Microsoft\Silverlight\is
 
September 09

Microsoft Dynamics Technical Airlift 2008

In lauschiger Umgebung im Kloster Fürstenfeld dreht sich nach dem ERP-Launch am Vortag alles rund um die eher technisch interessanten Themen.

Die Tracks für meinen heutigen Tag, da nebenher noch parallele Tracks zu NAV, zu Dynamics AX sowie übergreifenden Themen stattfinden, sehen wie folgt aus:

  1. Mobile Lösungen für Microsoft Dynamics CRM 4.0
  2. Keynote unter dem Titel "Produktstrategie und -ausblick" bzw. ursprünglich "Microsoft Dynamics CRM Product Strategie and Preview of the next version" mit Hal Howard
  3. Solution Accelerators für Microsoft Dynamics CRM 4.0
  4. Leveraging Microsoft Dynamics CRM 4.0 at Microsoft
  5. Business Intelligence und Analytics mit Microsoft Dynamics CRM 4.0
  6. Optimizing and Scaling Microsoft Dynamics CRM 4.0
  7. Integration von Microsoft Dynamics CRM 4.0, Microsoft Office System und .NET Applikationen
  8. Partner Readiness Angebot und Zusammenfassung

Nach einer kleinen Einstimmung im Early-Morning-Track mit den aktuell verfügbaren Optionen für den mobilen Einsatz von MS CRM [1], die meiner Meinung nach noch nicht vollständig überzeugen können, startete der Tag mit einer zumindest aus Sicht der CRM-Fraktion recht ernüchternden Keynote [2] durch den Microsoft ERP Produktstrategen Hal Howard: Nachdem ausgiebig über die neuen Features und Roadmaps zu NAV und Dynamics AX geredet wurde, ging man ausgesprochen flüchtig auf eine CRM-Integration ein. Wohlgemerkt Integration! Es entstand eher der Eindruck, dass die Überlegungen in Richtung der Integration von CRM(-Funktionen) in die NAV- und AX-Produkte bestenfalls mit Hilfe von Schnittstellen gingen, denn in Richtung einer Konsolidierung der Produkte zu einer Business-Lösung/-Suite. Ob maßgeblich oder nicht aber ich erinnere mich dunkel, dass solche Überlegungen bereits vor über einem Jahr angestrebt wurden.
Ein paar zukunftsweisende Worte zu Dynamics CRM konnte man leider auch nicht zwischen den Zeilen heraus hören. Selbst eine Rückfrage aus dem Publikum zur strategischen Ausrichtung von Dynamics CRM wurde von Howard lässig überspielt mit dem Verweis, dass es sich dabei nicht um sein Themen- und Aufgabengebiet handele.

Nach der kleinen Verstimmung im Rahmen der Keynote ging es mit einem kurzen Überblick über die Solution Accelerators für Microsoft Dynamics CRM 4.0 [3] weiter.
Hier wurden einige interessante Ansätze aufgezeigt, die im Rahmen von CRM-Anpassungen die Grundfunktionalitäten des CRM-Systems um oft nachgefragte Features (z.B. ein Ticketsystem für Kunden mit Zugriff auf Anfragen und KB-Artikel) rudimentär erweitern. Der große Vorteil dabei ist, dass es sich bei allen Accelerators um als PoC entworfene Lösungen handelt, die mit Quellcode veröffentlicht werden und frei erweiterbar sind. Als Termin wurde Oktober/November 2008 genannt - ich denke dem Thema werde ich in Kürze nochmals separat ein paar Links oder Zeilen widmen.

Im Track Leveraging Microsoft Dynamics CRM 4.0 at Microsoft [4] wurde besonders eine CRM-Anpassung zur ganzheitlichen Nachverfolgung von Support-Anfragen namens Microsoft Solve (Support case and incident management) vorgestellt. Die Technologie soll voraussichtlich in die nächste Version des CRM-Systems mit eigener UI integriert werden und beispielsweise Features wie die automatische Verknüpfung von Anfragen mitbringen.

Im Anschluss an die Mittagspause folgte ein qualitativ hochwertiger Vortrag über Business Intelligence und Analytics mit Microsoft Dynamics CRM 4.0 [5] mit Joris Kalz. Hier wurde nochmals im Details auf den bereits kurz im Voraus angeführten [3] Analytics Accelerator eingegangen sowie in einer Demo präsentiert, wie die SQL Server Analytic Services im Kontext von CRM genutzt und ein Cube um weitere Measures ergänzt werden kann.

Beeindruckende Zahlen sowie die optimale Herangehensweise zur Bestimmung einer geeigneten Hardwareumgebung für CRM wurden in Optimizing and Scaling Microsoft Dynamics CRM 4.0 [6] aufgezeigt. Im wesentlichen wurde hier Augenmerk auf das CRM Performance Toolkit (frei über CodePlex verfügbar) sowie die von Microsoft im Downloadbereich bereitgestellten Whitepapers gelegt.

Im letzten "echten" Track des Tages mit dem Titel Integration von Microsoft Dynamics CRM 4.0, Microsoft Office System und .NET Applikationen [7] wurde detailliert auf die teilweise bereits länger bekannten Möglichkeiten eingegangen, SharePoint und CRM ineinander zu integrieren. Neu hierbei sind die relativ einfachen Möglichkeiten zur Indizierung von CRM-Inhalten in der SharePoint-Suche mit Hilfe des SharePoint Geschäftsdatenkatalogs (BDC).
Ebenfalls neu bei der SharePoint-Integration gegenüber CRM 3.0 war die Verwendung von Custom Workflow Activities zur Erstellung von SharePoint-Sites und der Verknüpfung im CRM.

Fazit
Eine gelungene Veranstaltung ohne jedoch wirklich große Neuigkeiten mit einem bitteren Nachgeschmack bei der Keynote: Wird Microsoft Dynamics CRM 4.0 wirklich als Teil der Microsoft Business Tools gesehen und akzeptiert?

 
Photo 1 of 32

Thomas Roschinsky

Occupation
Location
Interests
MCAD, MCSD, Softwarekonzeption/-entwicklung .NET, Projektplanung & -steuerung, Projektleitung, .NET, C#, C/C++, PHP, MySQL, Crystal Reporting, XHTML, JS, CSS, Microsoft, SQL Server, IIS, Reporting Services, Office 2003, Office 2007, InfoPath, Visio, Project, Dynamics, CRM 3.0, CRM 4.0, WPF, Azure, TCP/IP Networking, IT-Security, PIC, ATMEL, ASM
XING