Carsten 的个人资料Microsoft Dynamics CRM &...日志列表 工具 帮助

日志


Microsoft Dynamics CRM 4.0 | Ansicht aller Firmen, denen kein Kontakt zugewiesen wurde

 

Auslöser für den heutigen Artikel ist eine Frage aus der mscrm-community. Und da mir diese Frage schon häufiger begegnet ist, sei an dieser Stelle einmal eine Antwort gegeben:

Die Fragestellung:

“Ist es möglich eine Ansicht zu generieren, in der alle Fírmen angezeigt werden, denen kein Kontakt zugeordnet ist?”

 

Die Antwort: “Ohne Programmierung / Anpassung ist dieses Szenario mit “Boardmitteln” nur bedingt zu lösen.”
Mit “Boardmitteln” bedarf es der zur Hilfe nahme der “Export nach Excel”-Funktion.

 

Ich danke Greg Owens und übersetze aus dem engl. Original-Beitrag:

Lösungsweg

1.) Zunächst erstellen wir uns mit einer Erweiterten Suche eine Ansicht aller Firmen (Anmerkung:  Ich verwende z.B. die Filtereinstellungen “Status = aktiv” und “Firmenname enthält Daten”). Danach lasse ich mir die Suchtreffer ausgeben.

2.) Die Ergebnisliste exportiere ich nach Excel und wähle “Dynamische Tabelle” (Anmerkung: via “Spalten bearb.” kann ich mir noch diverse Zusatzinformationen ausgeben lassen, die mir eine nachträgliche Bearbeitung der Datensätze erleichtert)

3.) Nachdem die Ergebnisliste in Excel geöffnet ist, stelle ich den Mauszeiger irgendwo in die Ergebnisliste und klicke die rechte Maustaste.

4.) Aus dem Kontext-Menü wähle ich “Abfrage bearbeiten”

5.) Es erscheint die Standard-Warnung “Diese Abfrage kann mit dem Abfrage-Assistenten nicht bearbeitet werden.” – ich wähle trotzdem ok ;-)

6.) Im Microsoft Query-Fenster wähle ich den Button “SQL” aus, um mir die hinter meiner Ergebnisliste liegende Abfrage in SQL ansehen zu können.

7.) Eure SQL-Anweisung könnte wie folg aussehen:

   1: select top 10000 account0.name as 'name'
   2: account0.primarycontactidname as 'primarycontactidname',
   3: account0.telephone1 as 'telephone1', account0.accountid as
   4: 'accountid' from FilteredAccount as account0 where
   5: (account0.statecode = 0 and account0.name is not null) order by
   6: account0.name asc, account0.accountid asc

8.) In Zeile 5 setzen wir nunmehr bei dem in Klammern stehenden Ausdruck an und ergänzen mit

   1: AND 0 =  (
   2:   SELECT COUNT(*)
   3:   FROM dbo.FilteredContact AS contact 
   4:   WHERE contact.parentcustomerid = account.accountid
   5:   AND contact.statuscode = 1
   6:   )

9.) Eure SQL-Anweisung sollte also nunmehr wie u.g. aussehen:

   1: select top 10000 account0.name as 'name',
   2: account0.primarycontactidname as 'primarycontactidname',
   3: account0.telephone1 as 'telephone1', account0.accountid as
   4: 'accountid' from FilteredAccount as account0 where
   5: (account0.statecode = 0 and account0.name ist not null
   6: and 0 = (select count(*) from dbo.FilteredContact as contact
   7: where contact.parentcustomerid = account0.accountid
   8: and contact.statuscode = 1 )) order by account0.name asc,
   9: account0.accountid asc

10.) Bestätigt die Anweisung mit Ok. Es erscheint eine Warnmeldung “Eine SQL-Abfrage kann nicht grafisch dargestellt werden. Möchten Sie den Vorgang fortsetzen?

11.) Bestätigt mit Ok. Ihr seid nun wieder in dem Microsoft Query Fenster.

12.) Schließt Microsoft Query und kehrt zurück zu Microsoft Excel. Es werden nur noch Datensätze angezeigt, die der Abfrage entsprechen. Fertig !

 

Ich wünsche viel Spass in der Umsetzung.

Meinerseits baue ich gleiche SQL-Abfrage in eine aspx-Grid-Seite, die dem Layout von Microsoft Dynamics CRM entspricht und integriere diese ISV-Lösung via Sitemap. Alle hierfür erforderlichen Lösungsbausteine finden sich im SDK beschrieben.

 

评论 (3)

请稍候...
很抱歉,您输入的评论太长。请缩短您的评论。
您没有输入任何内容,请重试。
很抱歉,我们当前无法添加您的评论。请稍后重试。
若要添加评论,需要您的家长授予您相应权限。请求权限
您的家长禁用了评论功能。
很抱歉,我们当前无法删除您的评论。请稍后重试。
您已超过了一天之内允许提供的评论数上限。请在 24 小时后重试。
因为我们的系统表明您可能在向其他用户提供垃圾评论,您的帐户已禁用了评论功能。如果您认为我们错误地禁用了您的帐户,请联系 Windows Live 支持部门
完成下面的安全检查,您提供评论的过程才能完成。
您在安全检查中键入的字符必须与图片或音频中的字符一致。

若要添加评论,请使用您的 Windows Live ID 登录(如果您使用过 Hotmail、Messenger 或 Xbox LIVE,您就拥有 Windows Live ID)。登录


还没有 Windows Live ID 吗?请注册

Hallo Carsten,

den hatte ich vergessen einzurichten. Jetzt passts aber...
4 月 2 日
Hallo "unbekannt",

yep - auch das ist ein Weg, wie man es mit "Boardmitteln" darstellen könnte.
4 月 1 日
Hallo Carsten,

es gibt auch noch den Weg über eine Marketingliste. Also einfache eine Marketingliste erstellen und dann alle Firmen hinzufügen. Im Anschluss über eine erweiterte Suche alle Firmen entfernen, die Kontakte haben. Es bleiben die Firmen ohne Kontakte übrig.
4 月 1 日

引用通告

此日志的引用通告 URL 是:
http://carstengroth.spaces.live.com/blog/cns!97768EC3728C1FF3!603.trak
引用此项的网络日志