Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
24 ноя 2024, 21:02

нужно помощь

Автор shams, 27 апр 2023, 14:55

0 Пользователей и 1 гость просматривают эту тему.

shams

здраствуйте написал код код отправляет письмо на электронный почте для сброса пароля от билинга тут такая проблема что письмо отправляется но без логин надо сделать так чтобы в письмо отправился и логин пользователя  кто не будь может помочь





antoneus

Письмо.Тексты.Добавить(ЛогинПользователя)

shams

antoneus, добавил ошибка дает

 &НаСервере
Функция  ПолучитьАдресЭППользователя(ПользовательПараметр)
   
   Запрос = Новый Запрос;
   запрос.Текст =
   "ВЫБРАТЬ
   |   ПользователиКонтактнаяИнформация.АдресЭП КАК АдресЭП,
   |   ПользователиКонтактнаяИнформация.Ссылка.ФизическоеЛицо.Представление КАК ФизическоеЛицоПредставление
   |ИЗ
   |   Справочник.Пользователи.КонтактнаяИнформация КАК ПользователиКонтактнаяИнформация
   |ГДЕ
   |   ПользователиКонтактнаяИнформация.Ссылка = &Ссылка
   |   И НЕ ПользователиКонтактнаяИнформация.АдресЭП ЕСТЬ NULL";
   
   Запрос.УстановитьПараметр("Ссылка", ПользовательПараметр);
   АдресПользователя = Неопределено;
   РезультатЗапроса = Запрос.Выполнить();
   Если Не РезультатЗапроса.Пустой()Тогда
      Выборка = РезультатЗапроса.Выгрузить();
      АдресПользователя = Новый Структура;
      Для каждого Адрес Из Выборка Цикл
         АдресПользователя.Вставить("ЭП",Адрес.АдресЭП);
         АдресПользователя.Вставить("ФИО",Адрес.ФизическоеЛицоПредставление);
               КонецЦикла;
   КонецЕсли;
   
   Возврат АдресПользователя;
КонецФункции

&НаСервере
Процедура ОтправитьНаПочтуНаСервере()
   ТекПользователь = ПараметрыСеанса.ТекущийПользователь;
   ПараметрыПользователя = ПолучитьАдресЭППользователя(ТекПользователь);
   Если ПараметрыПользователя<>Неопределено Тогда
      ПараметрыПочты = новый ИнтернетПочтовыйПрофиль;
      ПараметрыПочты.АдресСервераSMTP = "";
      Письмо=новый ИнтернетПочтовоеСообщение;
      Письмо.Тема="Получить новый пароль";
      Письмо.ИмяОтправителя=ПараметрыПользователя.ФИО;
      Письмо.Отправитель=ПараметрыПользователя.ЭП;
       Письмо.Тексты.Добавить(ЛогинПользователя)
      Письмо.Получатели.Добавить("");   
      
      Письмо.Тексты.Добавить("Добрый день прощу Вас предоставить новый пароль");       
      
      Подключение=новый ИнтернетПочта;
      Попытка
         Подключение.Подключиться(ПараметрыПочты);
         Подключение.Послать(Письмо);
         
      Исключение
         
      КонецПопытки;
      Подключение.Отключиться();
   Иначе
      ОбщегоНазначенияКлиентСервер.СообщитьПользователю("У Вашей учетной не указан электронный адрес. Прощу обратитсья к администратору");
   КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура ОтправитьПисьмо(Команда)
   ОтправитьНаПочтуНаСервере();
КонецПроцедуры



antoneus

Мда. А тот логин пользователя, который должен отправляться в письме - он откуда берется?

shams

antoneus, пользователи ито_ИмяПользователяДляБиллинга

shams

antoneus, что там не смогли?

antoneus

Цитата: shams от 28 апр 2023, 12:00antoneus, пользователи ито_ИмяПользователяДляБиллинга

Что это? Пользователи - это общий модуль? ито_ИмяПользователяДляБиллинга - это функция в этом модуле? Что ж все клещами приходится вытягивать, это же вам нужно, не мне.

Волшебник

antoneus, Да оно просто точку с запятой не поставило.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск