Direkt zum Hauptbereich

Posts

Es werden Posts vom März, 2013 angezeigt.

Manager vom Manager vom User

Mit einem einfachen SOQL Statement lassen sich Benutzerdaten, wie zum Beispiel Vorname oder Nachname abfragen. Wie bekomme ich aber mit demselben SOQL Query die Daten "meines" Manager oder vielleicht sogar die Daten des Managers "meines" Managers?  Der Manager eines Salesforce-Benutzers ist im User-Datensatz hinterlegt. Im folgenden Beispiel werden bestimmte User mit den zugeordneten Managern sowie mit den Managern der Manager in einer MAP abgelegt. Map<Id, User > mapUserManager = new Map<Id, User >(); for ( User u : [ Select ID,                       Manager.Id,                        Manager.Email,                         Manager.Manager.ID,                        Manager.Manager.Email             From User             WHERE Id IN : setUserownerIds]){  mapUserManager.put(u.Id, u.Manager);  mapUserManager.put(u.Manager.Id, u.Manager.Manager); } Dieses Konstrukt lässt sich erweitern. Salesforce erlaubt

Lookup Felder fungieren als Picklisten

Das Case-Objekt hat 2 Lookup Felder. Diese Felder sollen als Picklisten dargestellt werden. Der Grund dafür ist die Abhängigkeit zwischen den beiden Feldern. Ändert sich der Wert im Feld 1, müssen sich die Werte im 2. Feld automatisch aktualisieren. Es gibt zwar diese tolle Funktion "dependent Picklist", aber in meinem Fall sind es 2 Lookup Felder. Und die Beziehungen zwischen den Objekten müssen beibehalten bleiben. Deswegen scheidet der Einsatz von dependent Picklists aus. Zusätzlich sollen die Felder als Pflichtfelder und die Unterkategorie als "disabled" erscheinen, wenn die Hauptkategorie keine gültige Auswahl enthält. Als erstes erstelle ich eine neue VisualForce Seite. Der folgende Code zeigt, wie man eine Pickliste auf der VisualForce Seite erstellt und diese an das entsprechende Lookup-Feld koppelt: < apex:pageBlockSection   >  < apex:pageBlockSectionItem   >   < apex:outputLabel   value = "KATEGORIE" />    <

DEV 401

Ein zweites Mal Halleluja! Exakt ein Monat später nach dem erfolgreich erworbenen "Salesforce.com Certified Administrator" Zertifikat habe ich heute die Developer-Prüfung bestanden. Während der Vorbereitung habe ich mich, genauso wie bei der Admin Zertifizierung auf folgendes konzentriert: - Salesforce Videos zum aktuellen Release - Aktuelle Testfragen aus dem Internet Videos enthalten sehr viele nützliche Informationen. Es ist aber schwierig, diese Masse an Informationen aufzunehmen und zu verarbeiten. In dem Fall helfen aber die alten Testfragen, die im Internet kursieren, wie z.B. hier http://www.flashcardexchange.com/cards/salesforce-401-flashcards-2393720  Diese Fragen kamen zwar im Test nicht vor, aber so habe ich mich mit allen Themen beschäftigt, die für die Prüfung relevant waren. Jede einzelne Situation habe ich in meinem Developer Account nachgestellt, und anschließend, meistens auch mit Salesforce Hilfe, gelöst oder die richtigen Antworten gefunden.

Salesforce - Datensätze sperren (Umsetzung)

Record Lock - nun, die Umsetzung.Wir haben bereits mehrere VisualForce Pages im Einsatz. Aus dem Grund ist das zuvor beschriebene Konzept darauf zugeschnitten. Selbstverständlich lässt sich der Code auch für Standard und Custom Objects verwenden, ohne den Einsatz von VisualForce Pages. Na ja, mindestens eine VF Page brauchen wir eigentlich schon - diejenige, die von dem dem "Edit" Button aufgerufen wird. Ich zeige jetzt die wichtigsten Bausteine aus der Umsetzung. 1) Diese VF Page wird aufgerufen sobald man den "Edit" Button betätigt < apex:page standardController = "myObject" title = "{!myObject.Name}" extensions = "LockController" action = "{!SwitchToPage}" > <!-- READ MODE --> < apex:include pageName = "myObjectRead" rendered = "{!isEditMode == false}" /> <!-- EDIT MODE --> < apex:include pageName = "myObjectEdit" rendered = &