Привет, хотел поделиться интересной находкой. Думаю можно в статью поместить
Передача результатов отчёта в Apex для дальнейшей обработки.
Постановка задачи: нужно делать смс рассылку по результатам отчёта(поздравление с др)
Варианты решения:
первый самый очевидный это Schedule Job работать будет но гибкость оставляет желать лучшего.
второй всё таки как-то попытаться обработать результаты отчёта, про второй способ я и хотел рассказать.
Оказывается в 15 версии появилась подписка на отчёты subscribe (нужно разрешить в настройках Setup->Customize->Reports & Dashboards->Report Notifications) и кроме очевидных вариантов подписки, пост в чаттер, письмо и напоминалка в Salesforce 1, есть ещё такой вариант как Execute a Custom Action. Там можно указать Apex класс который имплементирует Reports.NotificationAction.
public void execute(Reports.NotificationActionContext context) {
Reports.ReportResults reportResults = context.getReportInstance().getReportResults();
Reports.ReportFactWithDetails factDetails =
(Reports.ReportFactWithDetails)reportResults.getFactMap().get('T!T');
Map<String, List<String>> automaticSMSByAccId = new Map<String,List<String>>();
Map<String, String> phoneByAccId = new Map<String, String>();
// Разбираем строки формат
for(Reports.ReportDetailRow row : factDetails.getRows()) {
List<Reports.ReportDataCell> cells = row.getDataCells();for(Reports.ReportDataCell cell : cells) {
// тут имеем к сожалению Label это Label значения поля
//то-есть если например у нас там пклист то в Label будут
// значение перевода а не название столбца
cell.getValue();
cell.getLabel();
}
}
}
Привет, хотел поделиться интересной находкой. Думаю можно в статью поместить Передача результатов отчёта в Apex для дальнейшей обработки. Постановка задачи: нужно делать смс рассылку по результатам отчёта(поздравление с др) Варианты решения: первый самый очевидный это Schedule Job работать будет но гибкость оставляет желать лучшего. второй всё таки как-то попытаться обработать результаты отчёта, про второй способ я и хотел рассказать. Оказывается в 15 версии появилась подписка на отчёты subscribe (нужно разрешить в настройках Setup->Customize->Reports & Dashboards->Report Notifications) и кроме очевидных вариантов подписки, пост в чаттер, письмо и напоминалка в Salesforce 1, есть ещё такой вариант как Execute a Custom Action. Там можно указать Apex класс который имплементирует Reports.NotificationAction. [code] public void execute(Reports.NotificationActionContext context) { Reports.ReportResults reportResults = context.getReportInstance().getReportResults(); Reports.ReportFactWithDetails factDetails = (Reports.ReportFactWithDetails)reportResults.getFactMap().get('T!T'); Map<String, List<String>> automaticSMSByAccId = new Map<String,List<String>>(); Map<String, String> phoneByAccId = new Map<String, String>(); // Разбираем строки формат for(Reports.ReportDetailRow row : factDetails.getRows()) { List<Reports.ReportDataCell> cells = row.getDataCells(); for(Reports.ReportDataCell cell : cells) { // тут имеем к сожалению Label это Label значения поля //то-есть если например у нас там пклист то в Label будут // значение перевода а не название столбца cell.getValue(); cell.getLabel(); } } } [/code]
Привет.
Название темы как то связано с темой?
Если нет и это вопрос с привлечением внимания, то я есть администратор
По поводу статьи, то конечно вполне на статью выглядит!
Если есть желанием, то могу предоставить доступ на работу со статьями - будешь писать и публиковать статьи сам. Пиши в личку, обсудим
Привет. Название темы как то связано с темой? Если нет и это вопрос с привлечением внимания, то я есть администратор :) По поводу статьи, то конечно вполне на статью выглядит! Если есть желанием, то могу предоставить доступ на работу со статьями - будешь писать и публиковать статьи сам. Пиши в личку, обсудим :)
Приходилось динамически формировать/обрабатывать данные из отчетов, если честно, не очень понравилось существующее API для работы с ними
Приходилось динамически формировать/обрабатывать данные из отчетов, если честно, не очень понравилось существующее API для работы с ними
Да похоже что оно для каких-то своих нужд было сделано
Да похоже что оно для каких-то своих нужд было сделано
Ну не знаю, как по мне все лучше чем парсить сам отчет :)
[quote="Gres"]Приходилось динамически формировать/обрабатывать данные из отчетов, если честно, не очень понравилось существующее API для работы с ними[/quote] Ну не знаю, как по мне все лучше чем парсить сам отчет :)
Не спорю, но можно было удобнее сделать
[quote="wilder"]Ну не знаю, как по мне все лучше чем парсить сам отчет :)[/quote] Не спорю, но можно было удобнее сделать