работа с триггерами

Внимание! Данный форум является модерируемым.
Для получения к нему доступа необходимо зарегистрироваться или авторизоваться на сайте.

Страницы: 1
RSS
работа с триггерами
 
Добрый день! Подскажите, настроил триггер, который отправляет письмо  клиенту, когда его интерес переходит в определенный статус. Тут все  понятно и работает.

Есть ли возможность штатными средствами отправлять  клиенту ФИО, email и телефон ответственного по интересу?
Я так понимаю нужно создать шаблон автотекста? Как это будет выглядеть?
 
Добрый день, Андрей.
Да, вам нужно создать шаблон письма и в этом шаблоне использовать "Шаблоны автотекста" из группы "Автотекст электронного письма".
для указанной вами задачи шаблона по умолчанию  не. вам нужно будет создать новый и на встроенном языке прописать код, который нужно заполнять в шаблоне.
Далее просто использовать созданный автотекст в шаблоне.  
 
ох давно я этим не занимался))) Алексей, не подскажите, какие поля есть у объекта?
а то ничего не выходит))
 
У меня для КП сделано так:

Ответственный:
Код
Результат = Объект.Менеджер;
Телефон ответственного:
Код
Результат = "";
   
Если ЗначениеЗаполнено(Объект.Менеджер) Тогда
   Попытка
      ВидКИ = Справочники.ВидыКонтактнойИнформации["Телефон"];
      НайденаяСтрока = Объект.Менеджер.КонтактнаяИнформация.Найти(ВидКИ,"Вид");
   Исключение
      НайденаяСтрока = Объект.Менеджер.КонтактнаяИнформация.Найти(Перечисления.ТипыКонтактнойИнформации["Телефон"],"Тип");
   КонецПопытки;
   Если НЕ НайденаяСтрока = Неопределено Тогда
      Результат = НайденаяСтрока.Представление;
   КонецЕсли;
КонецЕсли;
email ответственного
Код
Результат = "";
    
Если ЗначениеЗаполнено(Объект.Менеджер) Тогда
    Попытка
        ВидКИ = Справочники.ВидыКонтактнойИнформации["EmailПользователя"];
        НайденаяСтрока = Объект.Менеджер.КонтактнаяИнформация.Найти(ВидКИ,"Вид");
    Исключение
        НайденаяСтрока = Объект.Менеджер.КонтактнаяИнформация.Найти(Перечисления.ТипыКонтактнойИнформации["АдресЭлектроннойПочты"],"Тип");
    КонецПопытки;
    Если НЕ НайденаяСтрока = Неопределено Тогда
        Результат = НайденаяСтрока.Представление;
    КонецЕсли;
КонецЕсли;


в письмах это не работает
 
"Объект" - это контекст модуля объекта для которого делается автотекст. Т.е. код отрабатывает, как будто вы его делаете в модуле объекта в конфигураторе.
В вашем выполненном примере объектом выступает КП. А в примере шаблона  email сообщений - это контекст документа Исходящее электронное письмо.  
 
у документа ЭлектронноеПисьмоИсходящее есть реквизит "ответственный".

Попытался обратиться к реквизиту "Результат = Объект.Ответственный". Пишет, что "Ошибка выполнения действия: {(1)}: Поле объекта не обнаружено (Ответственный)"
Алексей, подскажите пожалуйста... что не так?
 
Добрый день, Андрей.

Ваше обращение отправлено в отдел разработки, после получения ответа он будет вам предоставлен.
 
Уточните точный релиз конфигурации и платформы 1С.
Также уточните последовательность ваших действий, приводящих к возникновению ошибки.
 
1С:Предприятие 8.3 (8.3.14.1694)
Объединенное решение: Модуль 1С:CRM 3 (3.0.15.3) + 1С:Комплексная автоматизация 2  (2.4.7.151)

Создаю шаблон автотекста в разделе "Автотекст электронного письма"
 
Информация отправлена в отдел разработки.
 
Ошибка исправлена. Исправление будет включено в следующий релиз.

Исправление:

1.
ОбщийМодуль.CRM_АвтотекстПереопределяемый
Функция ПроверитьВыполнениеДействия(Действие, СсылкаНаОбъект, Назначение, ИмяТабличнойЧасти, ТабличнаяЧастьПредставление) Экспорт

Заменить код:

ИначеЕсли Назначение = Перечисления.CRM_НазначенияАвтотекста.АвтотекстЭлектронноеПисьмо Тогда

Объект = Новый Структура;
Объект.Вставить("Партнер", Справочники.Партнеры.ПустаяСсылка());
Объект.Вставить("КонтактноеЛицо", Справочники.КонтактныеЛицаПартнеров.ПустаяСсылка());

Если СсылкаНаОбъект.ПолучателиПисьма.Количество() > 0 Тогда

на:

ИначеЕсли Назначение = Перечисления.CRM_НазначенияАвтотекста.АвтотекстЭлектронноеПисьмо Тогда

Объект = Новый Структура;

Для каждого Реквизит из Метаданные.Документы.ЭлектронноеПисьмоИсходящее.Реквизиты Цикл
Объект.Вставить(Реквизит.Имя);
КонецЦикла;
ЗаполнитьЗначенияСвойств(Объект, СсылкаНаОбъект);

Объект.Вставить("Партнер", Справочники.Партнеры.ПустаяСсылка());
Объект.Вставить("КонтактноеЛицо", Справочники.КонтактныеЛицаПартнеров.ПустаяСсылка());

Если СсылкаНаОбъект.ПолучателиПисьма.Количество() > 0 Тогда

2.
Документ.ЭлектронноеПисьмоИсходящее.CRM_ФормаДокумента
Функция ВернутьФорматированныйДокументПоШаблону(ПереданныйШаблон)

Заменить код:

// заполним автотекст
СтруктураЗаполненияАвтотекста = Новый Структура;
СтруктураЗаполненияАвтотекста.Вставить("Партнер", Справочники.Партнеры.ПустаяСсылка());
СтруктураЗаполненияАвтотекста.Вставить("КонтактноеЛицо", Справочники.КонтактныеЛицаПартнеров.ПустаяСсылка());

На:

 // заполним автотекст
СтруктураЗаполненияАвтотекста = Новый Структура;

Для каждого Реквизит из Метаданные.Документы.ЭлектронноеПисьмоИсходящее.Реквизиты Цикл
СтруктураЗаполненияАвтотекста.Вставить(Реквизит.Имя);
КонецЦикла;
ЗаполнитьЗначенияСвойств(СтруктураЗаполненияАвтотекста, Объект);

СтруктураЗаполненияАвтотекста.Вставить("Партнер", Справочники.Партнеры.ПустаяСсылка());
СтруктураЗаполненияАвтотекста.Вставить("КонтактноеЛицо", Справочники.КонтактныеЛицаПартнеров.ПустаяСсылка());
Страницы: 1
Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С