Admin Tool für CSV E-Mailversand geplanter Berichte
Für viele User ist es praktisch, in Salesforce erstellte Berichte automatisiert per Mail zur Verfügung gestellt zu bekommen. Sei es ein Admin, der für bestimmte End User Berichte plant, oder die End User selbst, die sich ihre eigens erstellten Berichte in einem bestimmten Rhythmus zukommen lassen wollen. Nun deckt Salesforce diese Anforderung nur bedingt, mit der "out of the Box" Funktionalität: Berichtsplanung, ab.
Salesforce Standard
Über “Berichte planen” kann festgelegt werden, wann und wem der Bericht automatisiert per E-Mail zugesendet werden soll. Vom Grundsatz her genau das Richtige, von der finalen Umsetzung her noch ausbesserungsfähig. Der Nachteil dieses Salesforce Standards ist es nämlich, dass der versendete Bericht nicht, wie wir es von “Berichte exportieren” kennen, als .csv- oder .xls-Datei empfangen wird, sondern als Tabelle innerhalb des Mail Bodys.
Eigenentwicklung für Admin Nutzung
Um dieses Problem zu lösen, können wir uns mit recht einfachen Mitteln ein kleines Tool in Salesforce selber bauen. Dazu benötigen wir eine neue benutzerdefinierte Klasse, eine Registerkarte, ein paar neue Felder und eine dazugehörige Apex-Klasse. In dieser können wir ähnlich zum Standard Feature festlegen, wer den Bericht und wann per E-Mail erhalten soll, mit dem Unterschied, dass wir den Bericht als angehängte .csv-Datei erhalten.
Benutzerdefiniertes Objekt
Bezeichnung: Exporter
Objektname: Exporter__c
Datensatzname: Exporter Name
Datentyp: Text
Benutzerdefinierte Felder
Attachment_Name__c (Text – 255)
Email_Body__c (Text – 255)
Email_Recipients__C (Langer Textbereich – 10.000)
Email_Subject__c (Text – 255)
Frequency__c (Auswahlliste: Weekly, Monthly)
Weekly_Day__c (Mehrfach-Auswahlliste: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday)
Monthly_Day__c (Auswahlliste: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, Last)
Report_ID__c (Text – 18)
Anschließend können eine neue Registerkarte für das Objekt angelegt und das Seitenlayout strukturiert werden.
Apex Testklasse
Als letztes muss die Apex Klasse noch geplant werden. Dazu einfach im Setup in die Suchmaske Apex eingeben und auf den Menüpunkt Apex-Klassen klicken. Dort muss nun unter Apex planen ein neuer Eintrag mit der Exporter Klasse angelegt werden. Wöchentlich auswählen und jeden Wochentag markieren. Als weitere Einstellungen die Endzeit auf ein paar Jahre in der Zukunft setzen und die bevorzugte Startzeit in die frühen Morgenstunden, bspw. um 5:00 Uhr legen, so dass der Bericht zu Arbeitsbeginn im Posteingang wartet.
Dies ist notwendig, damit bei unseren später angelegten Exporter Einträgen die Mails auch bei Bedarf an jedem Tag versendet werden können.
Bei der Anlage einer Berichtsplanung ist auf zwei Punkte zu achten:
1) Die Bezeichnung, die wir in Name Anhang eintragen, muss immer die Endung “.csv” besitzen.
2) Mehrere Empfänger in Form von E-Mailadressen müssen mit ” , ” getrennt sein.
Bei Fragen zur Erstellung dieses Tools stehen wir Ihnen gerne zur Verfügung.
Kontaktieren Sie uns: Telefon 0211.9462 8572-65 oder per E-Mail an info@mind-force.de