<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Salesforce-Blog.de</title>
	<atom:link href="http://salesforce-blog.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://salesforce-blog.de</link>
	<description>Ein deutschsprachiger CRM-Blog von Hannes Ellerbrock</description>
	<lastBuildDate>Fri, 03 Feb 2012 08:41:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>HOWTO: Kampagne in Salesforce erstellen</title>
		<link>http://salesforce-blog.de/2012/01/23/howto-kampagne-in-salesforce-erstellen/</link>
		<comments>http://salesforce-blog.de/2012/01/23/howto-kampagne-in-salesforce-erstellen/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 06:00:16 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[administrator]]></category>
		<category><![CDATA[kampagnen]]></category>
		<category><![CDATA[poweruser]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>
		<category><![CDATA[tipps]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=268</guid>
		<description><![CDATA[Das Anlegen von Kampagnen in Salesforce ist mit allerlei verteilten Einstellungen verbunden. Da viele Suchanfragen auf meinen Blog zu diesem Thema kommen, kommt an dieser Stelle eine detaillierte Anleitung dazu. Ich hoffe, ich kann damit eine Lücke in der Dokumentation schließen und einigen Leuten weiterhelfen. Die folgende Anleitung ist so geschrieben, als wollten Sie die [...]]]></description>
			<content:encoded><![CDATA[<p>Das Anlegen von Kampagnen in Salesforce ist mit allerlei verteilten Einstellungen verbunden. Da viele Suchanfragen auf meinen Blog zu diesem Thema kommen, kommt an dieser Stelle eine detaillierte Anleitung dazu. Ich hoffe, ich kann damit eine Lücke in der Dokumentation schließen und einigen Leuten weiterhelfen.</p>
<p><span id="more-268"></span></p>
<p>Die folgende Anleitung ist so geschrieben, als wollten Sie die Einstellungen für sich selber vornhmen. D.h. wenn Sie die Einstellungen für einen anderen Benutzer vornehmen wollen, weicht der Klickpfad an einigen Stellen ab. Die grundsätzliche Logik bleibt aber erhalten.</p>
<h3>1. Überprüfen, ob der Tab evtl. &#8220;versteckt&#8221; ist</h3>
<p>Klicken Sie zunächst auf das kleine &#8220;+&#8221; Symbol, ganz rechts in der Tab-Leiste (Punkt &#8220;1.&#8221; im Screenshot unterhalb). Findet sich dort der Eintrag &#8220;Kampagnen&#8221; (2.) sind Sie schon am Ziel. Nun können Sie den Tab noch zu Ihren Standard-Tabs hinzufügen (3.).</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/Alle-Registerkarten-Kampagnen.png"><img class="aligncenter size-thumbnail wp-image-269" title="Alle Registerkarten - Kampagnen" src="http://salesforce-blog.de/wp-content/uploads/Alle-Registerkarten-Kampagnen-150x150.png" alt="" width="150" height="150" /></a></p>
<address>(Alle Screenshots lassen sich mit einem Klick darauf vergrößern.)</address>
<h3>2. Benutzer-Rechte überprüfen</h3>
<p>Kampagnen-Reiter nicht vorhanden? Dann geht es hier weiter.</p>
<p>Klicken Sie oben rechts auf Ihren Namen und dann weiter auf &#8220;Setup&#8221;.</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/Zum-Setup.png"><img class="aligncenter size-thumbnail wp-image-271" title="Zum Setup" src="http://salesforce-blog.de/wp-content/uploads/Zum-Setup-150x150.png" alt="" width="150" height="150" /></a></p>
<p>Klicken Sie weiter auf  &#8221;Meine persönlichen Daten&#8221; &gt; &#8220;Persönliche Daten&#8221; und überprüfen Sie, ob der Haken bei &#8220;Marketing Benutzer&#8221; gesetzt ist. Sollte der Haken nicht gesetzt sein, so gehen Sie auf &#8220;Bearbeiten&#8221; und setzen Sie den Haken. Anschließendes Speichern bitte nicht vergessen. Diesen Schritt können Sie nur durchführen, wenn Sie die entsprechenden Berechtigungen dafür besitzen. Sollten Sie den Haken im Bearbeiten-Modus nicht setzen können, kontaktieren Sie bitte Ihren Administrator oder den Salesforce-Support.</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/Benutzer-Zum-Profil.png"><img class="aligncenter" title="Benutzer- Zum Profil" src="http://salesforce-blog.de/wp-content/uploads/Benutzer-Zum-Profil-150x150.png" alt="" width="150" height="150" /></a></p>
<p>Hinter der &#8220;Marketing Benutzer&#8221; Berechtigung verstecken sich übrigens die folgenden Funktionen:</p>
<ul>
<li>Anlegen, Bearbeiten und Löschen von Kampagnen</li>
<li>Aktualisieren der Kampagnen-Statistiken</li>
<li>Importieren von Leads in eine Kampagne*</li>
<li>Massenbearbeitung der Mitglieder-Status für Kampagnenmitglieder</li>
<li>Anlegen von Mitglieder-Status an Kampagnen</li>
<li>Ausführen von Kampagnen-Berichten, auch über mehrere Kampagnen hinweg</li>
</ul>
<p>* = Erfordert weiterhin das Profil-Recht &#8220;Leads importieren&#8221;. Siehe dazu nächster Abschnitt.</p>
<h3>3. Profil-Rechte überprüfen</h3>
<p>Haben Sie sichergestellt, dass der &#8220;Marketing-Benutzer&#8221; Haken gesetzt ist? Dann klicken Sie bitte auf den Profil-Namen (In meinem Fall ist das &#8220;System Administrator&#8221;):</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/Benutzer-Zum-Profil1.png"><img class="aligncenter size-thumbnail wp-image-272" title="Benutzer- Zum Profil" src="http://salesforce-blog.de/wp-content/uploads/Benutzer-Zum-Profil1-150x150.png" alt="" width="150" height="150" /></a></p>
<address>Hinweis: Als Kunde mit einer &#8220;Professional Edition&#8221; können Sie keine Profile anlegen und / oder verändern. Sie müssen dem Benutzer in dem Fall das Profil &#8220;Marketing Benutzer&#8221; zuweisen.</address>
<p>Vergleichen Sie nun die Einstellungen Ihres Profiles mit denen auf dem folgenden Screenshot.</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/Profil-Marketing-Einstellungen.png"><img class="aligncenter size-thumbnail wp-image-273" title="Profil- Marketing-Einstellungen" src="http://salesforce-blog.de/wp-content/uploads/Profil-Marketing-Einstellungen-150x150.png" alt="" width="150" height="150" /></a></p>
<p>Auf jeden Fall sollte 1. auf &#8220;Standard: Ein&#8221; oder &#8220;Standard :Aus&#8221; stehen. Auf keinen Fall &#8220;Registerkarte ausgeblendet&#8221;.</p>
<p>Einstellung 2.: Hier können Sie nochmals einschränken, was ein Benutzer mit Kampagnen machen darf.</p>
<p>Unter 3. gelangen Sie zu den Einstellungen für Datensatztypen. Hier sollten Sie in der Regel keine Änderungen vornehmen müssen. Sollten Sie Datensatztypen bei Kampagnen einsetzen, so müssten diese natürlich verfügbar gemacht werden.</p>
<p>Punkt 4. und 5. gehen über das Anlegen von Kampagnen hinaus. Hier geht es darum, was ein Benutzer nach dem Anlegen der Kampagne noch machen darf. Z.b. Leads importieren oder Auswertungen mit Berichten fahren.</p>
<h3>4. Fertig! Nun sollten Sie Kampagnen anlegen können.</h3>
<p>Gehen Sie auf den Reiter Kampagnen (z.B. wie in Punkt 1. beschrieben) und klicken Sie den &#8220;Neu&#8221;-Button.</p>
<p>//Hannes</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2012/01/23/howto-kampagne-in-salesforce-erstellen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Felder in Salesforce farblich kennzeichnen</title>
		<link>http://salesforce-blog.de/2011/12/18/felder-in-salesforce-farblich-kennzeichnen/</link>
		<comments>http://salesforce-blog.de/2011/12/18/felder-in-salesforce-farblich-kennzeichnen/#comments</comments>
		<pubDate>Sun, 18 Dec 2011 19:47:21 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[administrator]]></category>
		<category><![CDATA[poweruser]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>
		<category><![CDATA[tipps]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=254</guid>
		<description><![CDATA[Bringen Sie Farbe ins Spiel und machen Sie Felder in Salesforce besser kenntlich. So helfen Sie Benutzern die wichtigen Informationen direkt zu erkennen. &#160; Und im Bearbeiten-Modus: &#160; Und so geht&#8217;s: Einfach im Label (Feldbezeichnung) ein HTML Tag einfügen. Es bieten sich z.B. &#60;p&#62; und &#60;div&#62; an. Grundsätzlich funktionieren aber alle HTML Befehle. Sogar (properitäre) Spielereien [...]]]></description>
			<content:encoded><![CDATA[<p>Bringen Sie Farbe ins Spiel und machen Sie Felder in Salesforce besser kenntlich. So helfen Sie Benutzern die wichtigen Informationen direkt zu erkennen.</p>
<p style="text-align: center;"><a href="http://salesforce-blog.de/wp-content/uploads/felder-in-ansicht.png"><img class="aligncenter size-full wp-image-255" style="border-image: initial; border-width: 2px; border-color: black; border-style: solid;" title="farblich gekennzeichnete felder im ansichts-modus" src="http://salesforce-blog.de/wp-content/uploads/felder-in-ansicht.png" alt="" width="341" height="133" /></a></p>
<p>&nbsp;</p>
<p>Und im Bearbeiten-Modus:</p>
<p style="text-align: center;"><a href="http://salesforce-blog.de/wp-content/uploads/felder-in-bearbeiten.png"><img class="aligncenter size-full wp-image-257" style="border-image: initial; border-width: 2px; border-color: black; border-style: solid;" title="felder in bearbeiten" src="http://salesforce-blog.de/wp-content/uploads/felder-in-bearbeiten.png" alt="" width="417" height="181" /></a></p>
<p>&nbsp;</p>
<h3>Und so geht&#8217;s:</h3>
<p><span id="more-254"></span></p>
<p>Einfach im Label (Feldbezeichnung) ein HTML Tag einfügen. Es bieten sich z.B. &lt;p&gt; und &lt;div&gt; an. Grundsätzlich funktionieren aber alle HTML Befehle. Sogar (properitäre) Spielereien wie ein &lt;marquee&gt; (laufender Text) funktionieren <img src='http://salesforce-blog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/feld-setup.png"><img class="aligncenter size-full wp-image-256" title="farblich gekennzeichnete Felder aufsetzen" src="http://salesforce-blog.de/wp-content/uploads/feld-setup.png" alt="" width="593" height="145" /></a></p>
<h3>Zu beachten ist:</h3>
<p>Die maximale Länge der Feldbzeichnung ist schnell erreicht. Versuchen Sie also möglichst kurze HTML Tags zu verwenden. &lt;p&gt; ist z.B. besser als &lt;font&gt; oder &lt;div&gt;. Und die Eigenschaft &#8220;color&#8221; eignet sich besser als &#8220;background-color&#8221;. Für Hilfe zu den einzelnen Tags und ihren Eigenschaften empfiehlt sich eine kurze Google-Suche oder ein Blick in <a href="http://de.selfhtml.org/" target="_blank">selfhtml</a>.</p>
<p>Einen klaren Nachteil gibt es leider auch. Die Feldbezeichnungen werden an anderen Stellen, wie z.B. in Berichten, inklusive HTML Tag angezeigt. Will man sie dort verwenden, empfiehlt es sich den Inhalt nochmal in ein Formelfeld zu kopieren und das Formelfeld anstelle des Original-Feldes einzubinden.</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/labels-im-bericht.png"><img class="aligncenter size-thumbnail wp-image-258" title="labels im bericht" src="http://salesforce-blog.de/wp-content/uploads/labels-im-bericht-150x150.png" alt="" width="150" height="150" />[zum vergrößern Bild anklicken]</a></p>
<p>&nbsp;</p>
<p>Viel Spaß und Erfolg beim Ausprobieren und Umsetzen!</p>
<p>Wie immer bin ich auf Feedback und Anwendungsfälle gespannt. Kudos für diesen kleinen Hack gehen an dieser Stelle an meine lieben Kollegen von H+W!</p>
<p>//Hannes</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2011/12/18/felder-in-salesforce-farblich-kennzeichnen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Einladung zum Berliner Salesforce.com Community Treffen</title>
		<link>http://salesforce-blog.de/2011/11/23/einladung-zum-berliner-salesforce-com-community-treffen/</link>
		<comments>http://salesforce-blog.de/2011/11/23/einladung-zum-berliner-salesforce-com-community-treffen/#comments</comments>
		<pubDate>Wed, 23 Nov 2011 10:09:36 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[administrator]]></category>
		<category><![CDATA[berlin]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>
		<category><![CDATA[user-group]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=247</guid>
		<description><![CDATA[Liebe Leser, ganz herzlich möchte ich Sie  zum ersten Treffen der Salesforce.com Community in Berlin einladen! Dieses erste Treffen findet auf vielfach geäußerten Kunden-Wunsch statt. Wir &#8211; das sind Salesforce.com und H+W &#8211; möchten Ihnen die Möglichkeit bieten, sich zu vernetzen und Erfahrungen auszutauschen. Dazu haben wir uns für unser erstes Treffen folgende spannende Sessions überlegt: [...]]]></description>
			<content:encoded><![CDATA[<p>Liebe Leser,</p>
<p>ganz herzlich möchte ich Sie  zum ersten Treffen der Salesforce.com Community in Berlin einladen!</p>
<p>Dieses erste Treffen findet auf vielfach geäußerten Kunden-Wunsch statt. Wir &#8211; das sind Salesforce.com und H+W &#8211; möchten Ihnen die Möglichkeit bieten, sich zu vernetzen und Erfahrungen auszutauschen. Dazu haben wir uns für unser erstes Treffen folgende spannende Sessions überlegt:</p>
<ul>
<li>Kennenlern-Runde: Teilnehmer stellen sich vor, erzählen von ihrer Rolle und ihrer Salesforce.com Organisation</li>
<li>Möglichkeit für offene Diskussion und Frage-Runden</li>
<li>Visual Workflow: Ein- und Ausblicke, was kann Visual Workflow, wer wendet es an</li>
<li>Portale: Binden Sie ihr Eco-System in Salesforce.com ein</li>
</ul>
<p>Initiiert durch Salesforce.com und das Partner-Netzwerk, möchten wir die Organisation der nachfolgenden Treffen abschließend gerne den Usern übergeben.</p>
<p>Dieses Treffen findet in den Räumlichkeiten der Besser Betreut GmbH statt. Vielen Dank an dieser Stelle!</p>
<p>Hier alle Details:</p>
<address><em>09.12.2011</em></address>
<address><em>16:00 bis ca. 18:00 </em></address>
<address><em>Rotherstr. 9</em></address>
<address><em>bei „Besser Betreut“</em></address>
<address><em>10245 Berlin</em></address>
<p>Die Teilnahme ist aufgrund der Räumlichkeiten auf 15 Personen beschränkt. Bitte melden Sie sich nach Möglichkeit <a href="https://www.xing.com/events/1-berliner-salesforce-com-community-treffen-840051" target="_blank">über das XING-Event</a> an.</p>
<p>Ich freue mich auf das Treffen und einen spannenden Erfahrungsaustausch.</p>
<p>//Hannes Ellerbrock</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2011/11/23/einladung-zum-berliner-salesforce-com-community-treffen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>In eigener Sache und Berliner salesforce.com Neuigkeiten</title>
		<link>http://salesforce-blog.de/2011/08/29/in-eigener-sache-und-berliner-salesforce-com-neuigkeiten/</link>
		<comments>http://salesforce-blog.de/2011/08/29/in-eigener-sache-und-berliner-salesforce-com-neuigkeiten/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 19:47:08 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[administrator]]></category>
		<category><![CDATA[berlin]]></category>
		<category><![CDATA[consultant]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>
		<category><![CDATA[technical architect]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=238</guid>
		<description><![CDATA[Seit einigen Wochen, eher Monaten, ist es auf meinem Blog recht ruhig gewesen. Eine kleine Chronik, warum dem so ist. Im Sommer letzten Jahres bin ich das Wagnis Elternzeit eingegangen. Und zwar für mehr als die üblichen zwei Vätermonate. Volle acht habe ich mit meinen beiden wunderbaren Töchtern verbracht. Im Anschluss daran habe ich mich [...]]]></description>
			<content:encoded><![CDATA[<p>Seit einigen Wochen, eher Monaten, ist es auf meinem Blog recht ruhig gewesen. Eine kleine Chronik, warum dem so ist.</p>
<p>Im Sommer letzten Jahres bin ich das Wagnis <strong>Elternzeit</strong> eingegangen. Und zwar für mehr als die üblichen zwei Vätermonate. Volle acht habe ich mit meinen beiden wunderbaren Töchtern verbracht. Im Anschluss daran habe ich mich bei CoreMedia verabschiedet und meine Zelte dort abgebaut. Dazu gehörte vor allem die ordentliche Übergabe der wundervollsten Salesforce Org. die ich bis dato gesehen habe. Nahtlos ging es dann für mich weiter zu <strong>H&amp;W Consult</strong>, wo ich seit Juni als <strong>salesforce.com Consultant</strong> arbeite.</p>
<p>Meine Aufgaben erstrecken sich nun über ein sehr interessantes Gebiet. Zum einen bin ich viel im Kundenkontakt. Erfasse Anforderungen, entwerfe technische Architekturen und setze diese um. Ein weiterer Aspekt ist das <strong>Produkt Management</strong>. Eine relativ neue Welt für mich. Hier arbeite ich sehr eng mit meinem Kollegen Prof. Dr. Michael Capone (<a title="XING Profil von Michael J. Capone" href="https://www.xing.com/profile/MichaelJ_Capone" target="_blank">XING</a>) zusammen. Auf Grundlage der Erfahrungen, die H&amp;W aus über 300 Projekten gesammelt hat, überlegen wir uns Produkte für den Einsatz in salesforce.com. Ich mache dann die Architektur und gebe die Anforderungen an unsere Entwicklung weiter.</p>
<p>Ihr könnt euch die Ergebnisse im September auf <a title="H&amp;W Website" href="http://www.hundw.com">unserer Website</a> anschauen. Ab September wird es eine <strong>neue Website</strong> geben und es kommen dann laufend neue Produkte hinzu. Wer es nicht erwarten kann, dem gebe ich gerne eine &#8216;Sneak-Preview&#8217;. Einfach kurz melden. Wir können wertvolles Feedback immer gut gebrauchen und freuen uns sehr darüber.</p>
<p>Zum September (huch, das ist schon in weniger als einer Woche) werde ich nach <strong>Berlin</strong> umziehen und dort unsere <strong>neue Niederlassung</strong> eröffnen. Wir wollen so unsere Kunden in Berlin und Umfeld noch näher betreuen. Da in Berlin die <strong>Start-up</strong> Szene auch besonders ausgeprägt ist, arbeite ich eng mit salesforce.com und Michael Capone zusammen, um die Community-Aktivitäten anzufahren. Wir überlegen z.B. &#8216;Ein-Tages-Workshops&#8217; anzubieten. Wer Interesse daran hat, bitte schon einmal bei mir vormerken.</p>
<p>Zur Verstärkung unseres Teams, nicht nur in Berlin, suchen wir übrigens laufend Projektleiter und Entwickler.</p>
<p>In den letzten Wochen habe ich auch die beiden salesforce.com Consultant <strong>Zertifizierungen</strong> gemacht. Ihr bucht jetzt also einen zertifizierten &#8220;Sales Cloud Consultant&#8221; oder wahlweise auch einen &#8220;Service Cloud Consultant&#8221; <img src='http://salesforce-blog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Ich kann nur jedem Consultant empfehlen, diese auch zu machen. Man kann sich dann hübsche batches in die Signatur machen <img src='http://salesforce-blog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Mal Spaß beiseite: Die salesforce.com Zertifizierungen sind sehr schwer und meiner Meinung nach eine gute Möglichkeit für den Kunden zu erfahren, ob er einen qualifizierten Berater bucht!</p>
<p>Ich freue mich auf viele weitere Projekte.</p>
<p>//Hannes</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2011/08/29/in-eigener-sache-und-berliner-salesforce-com-neuigkeiten/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Link in Salesforce zur Suche auf XING und anderen sozialen Netzwerken</title>
		<link>http://salesforce-blog.de/2011/04/25/link-in-salesforce-zur-suche-auf-xing-und-anderen-sozialen-netzwerken/</link>
		<comments>http://salesforce-blog.de/2011/04/25/link-in-salesforce-zur-suche-auf-xing-und-anderen-sozialen-netzwerken/#comments</comments>
		<pubDate>Mon, 25 Apr 2011 19:36:07 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[link]]></category>
		<category><![CDATA[poweruser]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>
		<category><![CDATA[tipps]]></category>
		<category><![CDATA[xing]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=227</guid>
		<description><![CDATA[Am Lead oder Kontakt einen Link zu haben, über den Soziale Profile (XING, LinkedIN, Facebook, Twitter&#8230;) der Person gesucht werden können, erspart einige Kopiererei und Klicks. Es ist zudem die einfachste Art eine kleine Integration zu den entsprechenden Diensten anzubieten. So sieht so ein Link am Lead aus: Um einen entsprechenden Link anzulegen geht man [...]]]></description>
			<content:encoded><![CDATA[<p>Am Lead oder Kontakt einen Link zu haben, über den Soziale Profile (XING, LinkedIN, Facebook, Twitter&#8230;) der Person gesucht werden können, erspart einige Kopiererei und Klicks. Es ist zudem die einfachste Art eine kleine Integration zu den entsprechenden Diensten anzubieten.</p>
<p>So sieht so ein Link am Lead aus:</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/lead-xing-link.png"><img class="aligncenter size-medium wp-image-228" title="Link zur XING Suche am Lead" src="http://salesforce-blog.de/wp-content/uploads/lead-xing-link-300x37.png" alt="" width="300" height="37" /></a></p>
<p>Um einen entsprechenden Link anzulegen geht man wie folgt vor:</p>
<p><span id="more-227"></span></p>
<p>Im Setup unter &#8216;Customize&#8217; -&gt; &#8216;Lead&#8217; bzw. &#8216;Contact&#8217; -&gt; &#8216;Buttons and Links&#8217; einen neuen Link anlegen. Die Einstellungen können aus dem Screenshot unten übernommen werden. Um eine Suche auf  XING durchzuführen, wird als aufzurufende URL für einen Lead die folgende eingesetzt:</p>
<address>https://www.xing.com/app/search?op=combined&amp;section=members&amp;keywords={!Lead.FirstName}+{!Lead.LastName}&amp;sorting=default</address>
<p>Die &#8216;Merge-Fields&#8217; in geschweiften Klammern müssen natürlich für die Benutzung bei Kontakten entsprechend angepasst werden.</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/xing-suche-link.png"><img class="aligncenter size-medium wp-image-229" title="Erstellen eines Links zur Suche auf XING" src="http://salesforce-blog.de/wp-content/uploads/xing-suche-link-300x260.png" alt="" width="300" height="260" /></a></p>
<p>Nach dem Anlegen des links sollten noch die &#8216;Window open properties&#8217; angepasst werden. Ich mag es so:</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/window-open-properties.png"><img class="aligncenter size-medium wp-image-230" title="window-open-properties" src="http://salesforce-blog.de/wp-content/uploads/window-open-properties-300x221.png" alt="" width="300" height="221" /></a></p>
<p>Anschließend den Link ins &#8216;page layout&#8217; aufnehmen, testen und fertig!</p>
<p>Die XING Suche, die hier aufgerufen wird, ist die einfache Suche. Es ist selbstverständlich auch möglich die Erweiterte Suche aufzurufen und entsprechend z.B. nach Vor- und Nachname und der Firma zu suchen. Bauen Sie sich einfach die gewünschte Suche in XING zusammen, kopieren Sie die URL, die so entsteht, und ersetzen Sie die Suchbegriffe durch die entsprechenden &#8216;Merge-Fields&#8217; in Salesforce.</p>
<p>Hier noch die URL für die Suche auf LinkedIN:</p>
<address>http://www.linkedin.com/search?search=&amp;keywords={!Lead.FirstName}+{!Lead.LastName}+&amp;company={!Lead.Company}&amp;sortCriteria=4&#8242;,&#8217;LinkedIn&#8217;,'_self&#8217;</address>
<p>Und auf twitter:</p>
<address>https://twitter.com/#!/search/users/{!Lead.FirstName}%20{!Lead.LastName}</address>
<p>Viel Erfolg und gutes Suchen!</p>
<p>//Hannes</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2011/04/25/link-in-salesforce-zur-suche-auf-xing-und-anderen-sozialen-netzwerken/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>E-Mail Erweiterungen für Kampagnen</title>
		<link>http://salesforce-blog.de/2011/01/21/e-mail-erweiterungen-fur-kampagnen/</link>
		<comments>http://salesforce-blog.de/2011/01/21/e-mail-erweiterungen-fur-kampagnen/#comments</comments>
		<pubDate>Fri, 21 Jan 2011 18:31:50 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[apex]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[kampagnen]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=196</guid>
		<description><![CDATA[Diese kleine Erweiterung habe ich vor einiger Zeit bei CoreMedia entwickelt. Freundlicherweise darf ich die App hier kostenlos veröffentlichen und damit der Community zur Verfügung stellen. Schon vor einiger Zeit hatte ich einen Screencast hierzu erstellt, anschließend aber keinen Blog-post folgen lassen. Funktionalität Das Package umfasst zwei Funktionen: Eine ausgehende E-Mail an jedes neue Kampagnen-Mitglied [...]]]></description>
			<content:encoded><![CDATA[<p>Diese kleine Erweiterung habe ich vor einiger Zeit bei CoreMedia entwickelt. Freundlicherweise darf ich die App hier kostenlos veröffentlichen und damit der Community zur Verfügung stellen. Schon vor einiger Zeit hatte ich einen Screencast hierzu erstellt, anschließend aber keinen Blog-post folgen lassen.</p>
<h3>Funktionalität</h3>
<p>Das Package umfasst zwei Funktionen:</p>
<ol>
<li><strong>Eine ausgehende E-Mail an jedes neue Kampagnen-Mitglied verschicken</strong>. Dazu wird zunächst eine template ID hinterlegt. Ist die Funktion aktiv, wird jedem Lead oder Kontakt, der mit dem Status &#8220;Sent&#8221; oder &#8220;Gesendet&#8221; der Kampagne hinzugefügt wird, eine E-Mail mit dem hinterlegten Template geschickt. Sollte mehr als ein Kampagnen-Mitglied hinzugefügt werden, wird automatisch ein Mass-Mailing erstellt. Das tägliche Limit an zu versendenden E-Mails pro Org. gilt natürlich weiterhin. Sollte dieses Limit erreicht werden, wird einfach keine Aktion ausgeführt und eine &#8220;MASS_MAIL_LIMIT_EXCEEDED&#8221; Exception angezeigt.</li>
<li><strong>Benachrichtigung bei neuen Kampagnen-Mitgliedern.</strong> An die hinterlegte E-Mail-Adresse wird eine Benachrichtigung verschickt, wenn neue Kampagnen-Mitglieder hinzugefügt werden. Sollten wiederum mehrere Kampagnen-Mitglieder hinzugefügt werden, so werden diese in einer Benachrichtigung als  Liste zusammengefasst.</li>
</ol>
<p>Die App ist mit vollen Unit-Tests abgedeckt, von mir manuell  durchgetestet und im Live-Betrieb bereits sehr erprobt. Für CoreMedia  ist die Funktionalität so wie sie ist gut und ausreichend. Sollte mich Feedback von  anderen Usern erreichen, so bin ich bereit, ein bisschen Freizeit in die Weiterentwicklung zu investieren (z.B. die Exceptions abfangen und hübsche(-re) Fehler-Meldungen anzeigen <img src='http://salesforce-blog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ).</p>
<p>Hier das Ganze in Aktion:</p>
<p><iframe title="YouTube video player" class="youtube-player" type="text/html" width="480" height="390" src="http://www.youtube.com/embed/E4qEoJTmPVQ?rel=0" frameborder="0" allowFullScreen></iframe></p>
<h3>Installation</h3>
<p>Wichtig: Die Bereitstellung erfolgt ohne Anspruch auf Gewährleistung, Funktion, Support oder ähnliches. Nach der Installation müssen die Felder in das Page-Layout aufgenommen und die apex Klassen für die gewünschten Profile freigeschaltet werden.</p>
<p>Das Package funktioniert nicht automatisch mit DE Orgs, da ein freischaltungspflichtiges Feature (Mass Mail Permission) benötigt wird. Wenn Sie in eine DE Org. installieren wollen, müssen sie zunächst also dieses Feature beim Support freischalten lassen. Ich empfehle daher eine Installation in die Sandbox, um dort zu testen.</p>
<p><a href="https://login.salesforce.com/?startURL=%2Fpackaging%2FinstallPackage.apexp%3Fp0%3D04tA0000000Qb93">Installation in eine Live-Org.</a></p>
<p><a href="https://test.salesforce.com/?startURL=%2Fpackaging%2FinstallPackage.apexp%3Fp0%3D04tA0000000Qb93">Installation in die Sandbox.</a></p>
<p>Viel Spaß damit und wie immer freue ich mich über Feedback. Besonders gespannt bin ich auf Eure / Ihre Anwendungsfälle.</p>
<p>//Hannes</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2011/01/21/e-mail-erweiterungen-fur-kampagnen/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Dreamforce Highlight die Zweite: Heroku</title>
		<link>http://salesforce-blog.de/2010/12/09/dreamforce-highlight-die-zweite-heroku/</link>
		<comments>http://salesforce-blog.de/2010/12/09/dreamforce-highlight-die-zweite-heroku/#comments</comments>
		<pubDate>Thu, 09 Dec 2010 08:25:31 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=189</guid>
		<description><![CDATA[Kurz nachdem ich gestern über meine Dreamforce Highlights aus der Keynote berichtet habe, ging eine weitere Nachricht über den Ticker: Salesforce hat das Startup Heroku aufgekauft. Heroku stellt eine Plattform bereit, die es erlaubt, Ruby Applikationen in der Cloud laufen zu lassen. Entwickelt wird wie gewohnt lokal, doch anstatt die fertige Anwendung auf einen eigenen [...]]]></description>
			<content:encoded><![CDATA[<p>Kurz nachdem ich gestern über <a href="http://salesforce-blog.de/2010/12/08/dreamforce-highlights-database-com-chatter-for-free/">meine Dreamforce Highlights</a> aus der Keynote berichtet habe, ging eine weitere Nachricht über den Ticker: Salesforce hat das Startup <a href="http://heroku.com">Heroku</a> aufgekauft.</p>
<p>Heroku stellt eine Plattform bereit, die es erlaubt, Ruby Applikationen in der Cloud laufen zu lassen. Entwickelt wird wie gewohnt lokal, doch anstatt die fertige Anwendung auf einen eigenen Webserver zu deployen, lädt man sie zu Heroku hoch und der Dienst kümmert sich um Betrieb und Skalierung.</p>
<p>Als Datenbank kommt bei Heroku eine Postgres mit. Sicher wird es in naher Zukunft auch ganz einfach sein, <a href="http://database.com">Database.com</a> zu nutzen.</p>
<p>Im Gegensatz zu Google App Engine hat Heroku kein integriertes Konzept zur Dateiverarbeitung. Dateien können entweder als blob in der Datenbank abgelegt werden oder über dritte Dienste wie z.B. Amazons S3 verarbeitet werden.</p>
<p>Übrigens: Bill Patterson (@bpatter) fällt dann dazu auch nicht mehr viel ein&#8230; Er ist wohl geknickt, weil seine Werbekampagne einen <a href="http://blogs.wsj.com/digits/2010/12/08/salesforce-turns-microsoft-stunt-to-own-advantage">herben Rückschlag auf der Dreamforce</a> erlitten hat, nachdem der Schauspieler aus der Microsoft Werbung, von Salesforce angeheuert wurde und sich auf der Bühne zu Salesforce bekannt hat.</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2010/12/09/dreamforce-highlight-die-zweite-heroku/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dreamforce Highlights: Database.com &amp; Chatter for free</title>
		<link>http://salesforce-blog.de/2010/12/08/dreamforce-highlights-database-com-chatter-for-free/</link>
		<comments>http://salesforce-blog.de/2010/12/08/dreamforce-highlights-database-com-chatter-for-free/#comments</comments>
		<pubDate>Wed, 08 Dec 2010 11:00:26 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[chatter]]></category>
		<category><![CDATA[database.com]]></category>
		<category><![CDATA[df10]]></category>
		<category><![CDATA[dreamforce]]></category>
		<category><![CDATA[neue features]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=180</guid>
		<description><![CDATA[Die folgenden beiden Themen habe ich aus der Keynote der Dreamforce 2010 für mich mitgenommen. Ich habe das Ganze über twitter (#df10) verfolgt. Dort war das Interesse  bei den Auftritten der beiden Stars Stevie Wonder und Will.I.Am am größten. Ist ja auch klar, wenn aus einer Techie-Konferenz mal eben ein Pop-Konzert inklusive eigenem Song wird. [...]]]></description>
			<content:encoded><![CDATA[<p>Die folgenden beiden Themen habe ich aus der Keynote der Dreamforce 2010 für mich mitgenommen. Ich habe das Ganze über twitter (<a href="https://twitter.com/#!/search/%23df10" target="_blank">#df10</a>) verfolgt. Dort war das Interesse  bei den Auftritten der beiden Stars Stevie Wonder und Will.I.Am am größten. Ist ja auch klar, wenn aus einer Techie-Konferenz mal eben ein Pop-Konzert inklusive eigenem Song wird.</p>
<p>Schön zu sehen war eine kleine &#8216;Diskussion&#8217; zwischen Marc Benioff und Bill Patterson (Product Manager für MS Dynamics) im Zuge der Dreamforce:</p>
<p style="text-align: center;"><a href="http://salesforce-blog.de/wp-content/uploads/benioff-patter-on-twitter.png"><img class="aligncenter size-medium wp-image-184" title="Benioff vs. Patterson on twitter" src="http://salesforce-blog.de/wp-content/uploads/benioff-patter-on-twitter-300x131.png" alt="" width="300" height="131" />[Für Vollbild klicken]</a></p>
<p>Bin gespannt auf den ersten Mutigen, der MS Dynamics gegen Database.com (siehe weiter unten) laufen lässt <img src='http://salesforce-blog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h3>Chatter for free</h3>
<p>Nach ein bisschen hin und her im Chatter-pricing wurde jetzt eine kostenlose Edition von Chatter angekündigt. Durch die vielen Ankündigungen hat Salesforce zwar dafür gesorgt, dass kaum noch einer den Durchblick hat, dafür gibt es aber bei jeder neuen Ankündigung wieder Buzz auf twitter und fleißige Meldungen aus der Szene.</p>
<p>Mit der kostenlosen Version von Chatter wird Salesforce sicher deutlich seinen Footprint in Unternehmen vergrößern und Microblogging-Konkurrenten wie Yammer aus dem Feld drängen.</p>
<p>Viele Details zu Chatter habe ich <a href="http://salesforce-blog.de/2010/09/09/ein-zweiter-blick-auf-salesforce-chatter/" target="_self">hier</a> auf meinem Blog schon vorgestellt. Das Produkt wird derzeit noch sehr aktiv weiterentwickelt und es bleibt spannend zu sehen, wie es sich in den nächsten Monaten wandelt.</p>
<p>Übrigens, eine schöne URL hat der Dienst auch: <a href="http://chatter.com" target="_blank">Chatter.com</a></p>
<h3>Database.com</h3>
<p>Dieser neue Dienst von Salesforce hat auch eine schöne URL;<a href="http://database.com" target="_blank"> Database.com</a> &#8211; und ganz nebenbei stellt er ein Datenbanksystem als Service zur Verfügung. Das Versprechen von Salesforce ist, dass die DB mit allen Programmiersprachen und von allen Diensten (auch mobile) angesprochen werden kann. Durch die Schnittstelle zu anderen Programmiersprachen differenziert es sich von einer force.com Edition, in der ja die skalierende Salesforce Datenbank ja auch schon integriert ist.</p>
<p style="text-align: center;"><a href="http://salesforce-blog.de/wp-content/uploads/database-com_service-overview.png"><img class="aligncenter size-medium wp-image-182" title="database.com service-overview" src="http://salesforce-blog.de/wp-content/uploads/database-com_service-overview-300x170.png" alt="" width="300" height="170" />[Für Vollbild klicken]</a></p>
<p>Bei Database.com inklusive sind natürlich reporting, security, scalability, mobile und social services.</p>
<p>Für Entwickler ist der neue Dienst interessant, wenn sie keine Kenntnisse im Aufsetzen einer Datenbank haben. Wer allerdings lokal entwickelt, hat in modernen SDKs meistens auch eine development DB mit an Board, die keine weitere Konfiguration erfordert.</p>
<p>Kleine Unternehmen entwickeln besser gleich auf einer Plattform wie Google App Engine (GAE) mit integriertem Daten- und Dateispeicher. Hier wird Applikation und Datenbank direkt mit der Power von Google skaliert.</p>
<p>IT-Entscheider / Verantwortliche können durch den Einsatz von einem solchen Dienst hohe Verfügbarkeit, Geschwindigkeit und Sicherheit ohne teure DBAs erreichen. Für den Produktiv-Einsatz in großen Unternehmen ist solch ein Dienst daher interessant. Gut vorstellen kann ich mir Szenarien, in denen bestehende, schlecht gewartete Datenbanken abgelöst werden. Bei jeder Entscheidung sollte die Überlegung einfließen, ob es sich nicht lohnt, gleich die ganze Applikation in die Cloud auszulagern. Bei einem Komplett-Umstieg sind die Innovationskosten natürlich weitaus höher, als wenn nur der Datenbanktreiber ausgetauscht wird. Liegt die Applikation allerdings auf dem eigenen Server und greift auf eine entfernte Datenbank zu, kann die Latenz unter Umständen zu hoch sein. Vor allem wenn die Applikation nicht dahingehend optimiert ist und z.B. viele DB-Roundtrips macht.</p>
<p>Und zuallererst muss sowieso die Skepsis gegenüber Cloud-basierten Diensten abgebaut werden <img src='http://salesforce-blog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Mehr Anwendungsfälle zu Database.com finden sich unter <a href="http://blog.database.com/" target="_blank">http://blog.database.com</a> und speziell in <a href="http://blog.database.com/blog/2010/12/06/openforcloud2/">diesem posting</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2010/12/08/dreamforce-highlights-database-com-chatter-for-free/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Aufrufen von APEX-Code per Button</title>
		<link>http://salesforce-blog.de/2010/11/27/aufrufen-von-apex-code-per-button/</link>
		<comments>http://salesforce-blog.de/2010/11/27/aufrufen-von-apex-code-per-button/#comments</comments>
		<pubDate>Sat, 27 Nov 2010 21:07:21 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[apex]]></category>
		<category><![CDATA[button]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[entwickler]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[sfdc]]></category>
		<category><![CDATA[tipps]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=157</guid>
		<description><![CDATA[Ich möchte hier beschreiben, wie man ganz simpel Apex-Code durch einen &#8216;Knopfdruck&#8217; ausführen kann. Mit Hilfe solcher Buttons (&#8220;Benutzerdefinierte Schaltfläche&#8221;) können dem User lästige Aufgaben, die sich automatisieren lassen, abgenommen werden. Ein oft genutztes Einsatzgebiet ist das Anlegen von Datensätzen, Versenden von E-Mails oder Anstoßen eines Workflows. Das Vorgehen als Checkliste Apex-Klasse und Methode(n) schreiben [...]]]></description>
			<content:encoded><![CDATA[<p>Ich möchte hier beschreiben, wie man ganz simpel Apex-Code durch einen &#8216;Knopfdruck&#8217; ausführen kann. Mit Hilfe solcher Buttons (&#8220;Benutzerdefinierte Schaltfläche&#8221;) können dem User lästige Aufgaben, die sich automatisieren lassen, abgenommen werden. Ein oft genutztes Einsatzgebiet ist das Anlegen von Datensätzen, Versenden von E-Mails oder Anstoßen eines Workflows.</p>
<h2>Das Vorgehen als Checkliste</h2>
<ul>
<li>Apex-Klasse und Methode(n) schreiben</li>
<li>Button anlegen</li>
<li>Button zunächst in ein Test Page Layout aufnehmen und testen</li>
<li>Sicherheitseinstellungen des Buttons anpassen (für Profile freischalten)</li>
<li>Button in alle gewünschten Page Layouts aufnehmen</li>
</ul>
<h2>Im Detail</h2>
<p>Der Button sollte mit den folgenden Einstellungen angelegt werden:</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/button-settings.png"><img class="aligncenter size-full wp-image-158" title="Button Settings" src="http://salesforce-blog.de/wp-content/uploads/button-settings.png" alt="" width="464" height="252" /></a></p>
<p>Mit den hier gezeigten Einstellungen kann man den Button später an der Detailansicht des Datensatzes positionieren, also z.B. neben &#8220;Bearbeiten&#8221; und &#8220;Löschen&#8221;. Möchte man einen Button an einer Related List haben, so muss der &#8220;List Button&#8221; (&#8220;Schaltfläche für Liste&#8221;) ausgewählt werden und der Button muss bei dem entsprechenden Unterobjekt angelegt werden. Soll beispielsweise ein Button an der Related List für Aktivitäten am Account eingebunden werden, so muss der Button auch am Aktivitäten-Objekt angelegt werden;</p>
<p style="text-align: center;"><a href="http://salesforce-blog.de/wp-content/uploads/buttons-am-account.png"><img class="aligncenter size-medium wp-image-161" title="buttons-am-account" src="http://salesforce-blog.de/wp-content/uploads/buttons-am-account-300x199.png" alt="" width="300" height="199" />[Zum vergrößern Bild anklicken]</a></p>
<p>Als Aufruf für den Button wird nun folgender Javascript code in das große Feld eingefügt:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #009900;">&#123;</span><span style="color: #339933;">!</span>requireScript<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;/soap/ajax/18.0/connection.js&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#123;</span><span style="color: #339933;">!</span>requireScript<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;/soap/ajax/18.0/apex.js&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>confirm<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Dies ist eine beliebige Sicherheitsabfrage.'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
sforce.<span style="color: #006633;">apex</span>.<span style="color: #006633;">execute</span><span style="color: #009900;">&#40;</span>
	<span style="color: #0000ff;">'KlassenName'</span>,
	<span style="color: #0000ff;">'MethodenName'</span>,
	<span style="color: #009900;">&#123;</span>Id<span style="color: #339933;">:</span><span style="color: #0000ff;">'{!Account.Id}'</span>, ParameterZwei<span style="color: #339933;">:</span><span style="color: #0000ff;">'bla'</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Der Code Zeile für Zeile erklärt:</p>
<p>Die ersten beiden Zeilen stellen sicher, dass die benötigten Javascript-Bibliotheken geladen sind.</p>
<p>Anschließend wird eine einfache Sicherheitsabfrage mittels &#8220;Ok / Abbrechen&#8221; Dialog durchgeführt. Diese ist natürlich optional und kann auch weggelassen werden. Ich benutze sie gerne, um ein versehentliches Auslösen der Aktion zu unterbinden.</p>
<p>Nun wird die eigentliche APEX Klasse aufgerufen. KlassenName und MethodenName sind dabei natürlich entsprechend dem eigenen Code anzupassen. Die zu übergebenen Parameter richten sich auch nach der aufgerufenen Methode.</p>
<p>Die APEX Klasse dazu sieht wie folgt aus:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">global <span style="color: #000000; font-weight: bold;">class</span> KlassenName<span style="color: #009900;">&#123;</span>
  Webservice <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> MethodenName<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> Id, <span style="color: #003399;">String</span> ParameterZwei<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
   <span style="color: #666666; font-style: italic;">//Programm-Logik....</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Wichtig ist, die Klasse als global und die Methode als Webservice zu deklarieren.</p>
<p>Bezieht sich die Programm-Logik auf ein konkretes sObject, so muss dieses ggf. erst per SOQL bereit gestellt werden.</p>
<p>Bevor nun der Button in das Page-Layout aufgenommen wird, ganz wichtig, nicht vergessen: Die Security-Einstellungen für die Klasse anpassen. D.h. alle User, die den Button benutzen möchten, müssen dafür freigeschaltet werden. Hierzu navigiert man im Setup zu &#8220;Develop&#8221; -&gt; &#8220;Apex Classes&#8221; -&gt; &#8220;Security&#8221; und schiebt alle gewünschten Profile von links nach rechts;</p>
<p><a href="http://salesforce-blog.de/wp-content/uploads/sicherheitseinstellungen.png"><img class="aligncenter size-full wp-image-167" title="Sicherheitseinstellungen" src="http://salesforce-blog.de/wp-content/uploads/sicherheitseinstellungen.png" alt="" width="499" height="380" /></a></p>
<h2>Ein Anwendungsfall</h2>
<p>Was z.B. mit einem solchen Button möglich ist: Eine Task mit vordefiniertem Inhalt anlegen. Hier genutzt um Anrufe zu protokollieren, bei denen der Agent auf der Mailbox gelandet ist. Der Button kann sowohl an einem Lead, Kontakt als auch Account angelegt werden. Es muss entsprechend mindestens eine whoID oder whatID oder auch beides übergeben werden.</p>
<p>Button Beispiel an einem Lead:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #009900;">&#123;</span><span style="color: #339933;">!</span>REQUIRESCRIPT<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;/soap/ajax/18.0/connection.js&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#123;</span><span style="color: #339933;">!</span>REQUIRESCRIPT<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;/soap/ajax/18.0/apex.js&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#125;</span> 
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>confirm<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Called and left VM?'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span> 
&nbsp;
sforce.<span style="color: #006633;">apex</span>.<span style="color: #006633;">execute</span><span style="color: #009900;">&#40;</span>
<span style="color: #0000ff;">'TaskHandling'</span>,
<span style="color: #0000ff;">'addTask'</span>,
<span style="color: #009900;">&#123;</span>Status<span style="color: #339933;">:</span><span style="color: #0000ff;">'Completed'</span>,whoId<span style="color: #339933;">:</span><span style="color: #0000ff;">'{!Lead.Id}'</span>, Subject<span style="color: #339933;">:</span><span style="color: #0000ff;">'Called, left VM'</span>, Type<span style="color: #339933;">:</span><span style="color: #0000ff;">'Call'</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
location.<span style="color: #006633;">reload</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span></pre></div></div>

<p>Und die dazugehörige Apex-Klasse:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">global <span style="color: #000000; font-weight: bold;">class</span> TaskHandling <span style="color: #009900;">&#123;</span>
&nbsp;
    Webservice <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> addTask<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> status, <span style="color: #003399;">String</span> whoId, <span style="color: #003399;">String</span> subject, <span style="color: #003399;">String</span> tipe, <span style="color: #003399;">String</span> whatId<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #666666; font-style: italic;">/*
        Creates a task for given lead or contact
        */</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// Build a new Task and insert it</span>
        Task task <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Task<span style="color: #009900;">&#40;</span>
            Status <span style="color: #339933;">=</span> status,
            Subject <span style="color: #339933;">=</span> subject,
            Type <span style="color: #339933;">=</span> tipe,
            ActivityDate <span style="color: #339933;">=</span> <span style="color: #003399;">System</span>.<span style="color: #006633;">today</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
&nbsp;
        <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>whatId <span style="color: #339933;">!=</span> <span style="color: #0000ff;">''</span> <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;&amp;</span>amp<span style="color: #339933;">;</span> whatId <span style="color: #339933;">!=</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
          task.<span style="color: #006633;">WhatId</span> <span style="color: #339933;">=</span> whatId<span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>whoId <span style="color: #339933;">!=</span> <span style="color: #0000ff;">''</span> <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;&amp;</span>amp<span style="color: #339933;">;</span> whoId <span style="color: #339933;">!=</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
          task.<span style="color: #006633;">WhoId</span> <span style="color: #339933;">=</span> whoId<span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
        insert task<span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<h2>Abschluss</h2>
<p lang="java">Viel Spaß beim Ausprobieren! Ich freue mich über Erfahrungsberichte und Beispiele für weitere Anwendungsfälle</p>
<p>//Hannes</p>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2010/11/27/aufrufen-von-apex-code-per-button/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Geschwindigkeitsverdoppelung nach Umzug an die Ost-Küste</title>
		<link>http://salesforce-blog.de/2010/10/16/geschwindigkeitsverdoppelung-nach-umzug-an-die-ost-kuste/</link>
		<comments>http://salesforce-blog.de/2010/10/16/geschwindigkeitsverdoppelung-nach-umzug-an-die-ost-kuste/#comments</comments>
		<pubDate>Sat, 16 Oct 2010 08:17:10 +0000</pubDate>
		<dc:creator>Hannes Ellerbrock</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[platform]]></category>
		<category><![CDATA[rechenzentrum]]></category>
		<category><![CDATA[salesforce]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[sfdc]]></category>

		<guid isPermaLink="false">http://salesforce-blog.de/?p=154</guid>
		<description><![CDATA[Gute Nachrichten für alle europäischen Nutzer auf der EMEA-Instanz: Nach dem Umzug vom Rechenzentrum an der West-Küste an das an der Ost-Küste gelegene haben sich die Zugriffszeiten fast halbiert. Zum Vergleich ein traceroute aus Hamburg mit unserer Colt-Standleitung bei CoreMedia. Im Vorher-/Nachher- Vergleich wird deutlich, dass die Daten quer durch die USA genau solange unterwegs [...]]]></description>
			<content:encoded><![CDATA[<p>Gute Nachrichten für alle europäischen Nutzer auf der EMEA-Instanz: Nach dem Umzug vom Rechenzentrum an der West-Küste an das an der Ost-Küste gelegene haben sich die Zugriffszeiten fast halbiert.</p>
<p>Zum Vergleich ein traceroute aus Hamburg mit unserer Colt-Standleitung bei CoreMedia. Im Vorher-/Nachher- Vergleich wird deutlich, dass die Daten quer durch die USA genau solange unterwegs waren wie durch den Atlantik.</p>
<p>Vorher:</p>
<pre>1     2 ms     2 ms     2 ms  [intern]
 2     1 ms    &lt;1 ms    &lt;1 ms  217.111.x.x
 3     1 ms     1 ms     1 ms  217.111.78.45
 4    97 ms    93 ms    96 ms  212.74.68.89
 5    92 ms    92 ms    92 ms  ge-3-5.r02.nycmny03.us.bb.gin.ntt.net [165.254.16.253]
 6     *      244 ms     *     xe-8-4.r03.nycmny01.us.bb.gin.ntt.net [129.250.2.46]
 7    92 ms   101 ms    93 ms  ae-1.r20.nycmny01.us.bb.gin.ntt.net [129.250.2.10]
 8   171 ms   171 ms   171 ms  as-2.r21.sttlwa01.us.bb.gin.ntt.net [129.250.3.190]
 9   177 ms   177 ms   177 ms  ae-0.r20.sttlwa01.us.bb.gin.ntt.net [129.250.2.53]
 10   183 ms   183 ms   193 ms  as-4.r20.snjsca04.us.bb.gin.ntt.net [129.250.4.141]
 11   194 ms   193 ms   195 ms  ae-1.r06.snjsca04.us.bb.gin.ntt.net [129.250.5.13]
 12   182 ms   182 ms   182 ms  ge-0-7-0-21.r06.snjsca04.us.ce.gin.ntt.net [128.241.219.22]
 13   194 ms   194 ms   195 ms  204.14.234.183
 14   195 ms   197 ms   187 ms  emea-sjl.salesforce.com [204.14.234.36]
</pre>
<p>Nachher:</p>
<pre>1     3 ms     2 ms     2 ms  [intern]
 2     1 ms    &lt;1 ms    &lt;1 ms  217.111.x.x
 3     1 ms     1 ms     1 ms  217.111.78.45
 4    93 ms    94 ms    95 ms  212.74.68.89
 5    92 ms    92 ms    92 ms  ge-3-12.r02.nycmny03.us.bb.gin.ntt.net [129.250.193.29]
 6     *        *        *     Request timed out.
 7    93 ms    92 ms    92 ms  ae-1.r21.nycmny01.us.bb.gin.ntt.net [129.250.2.220]
 8    99 ms    98 ms    99 ms  as-0.r20.asbnva02.us.bb.gin.ntt.net [129.250.2.9]
 9    99 ms    98 ms    98 ms  ae-1.r02.asbnva02.us.bb.gin.ntt.net [129.250.2.183]
 10   100 ms   110 ms    99 ms  ge-0-7-0-21.r02.asbnva02.us.ce.gin.ntt.net [168.143.97.46]
 11    99 ms    99 ms    98 ms  204.14.232.134
 12   100 ms   100 ms   100 ms  emea-asg.salesforce.com [204.14.232.36]</pre>
]]></content:encoded>
			<wfw:commentRss>http://salesforce-blog.de/2010/10/16/geschwindigkeitsverdoppelung-nach-umzug-an-die-ost-kuste/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced
Database Caching using xcache
Object Caching 1261/1363 objects using xcache

Served from: salesforce-blog.de @ 2012-02-06 23:09:45 -->
