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

Отправка письма со вложенным файлом

Автор Funt432286, 12 мая 2020, 16:07

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

antoneus

Кавычки в пути к файлу - это неправильно, их надо СтрЗаменить(ПутьКФайлу, """", "")

Что такое стрБумага?

LexaK


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

в поцедуре наКлиенте
    БумагаВалюта = ПолучитьВалютуБумага(стрБумага);
    Сообщить(БумагаВалюта);

Выводит пустое сообщение (просто какой-то тупняк жуткий)


а зачем так сложно? тем более с ошибками!

попробуйте так, гораздо проще

в поцедуре наКлиенте
    БумагаВалюта = ПолучитьВалютуБумага(стрБумага);
    Сообщить(БумагаВалюта);

&НаСервере
Функция ПолучитьВалютуБумага(Ссылка)
Если ТипЗнч(Ссылка) = Тип("СправочникСсылка.ЦифраМатериал") Тогда
Валюта = Ссылка.Валюта;
Иначе
Валюта = Неопределено;
КонецЕсли;
    Возврат Валюта; // и все!!!
КонецФункции

если помогло нажмите: Спасибо!

Funt Фунтиков

Цитата: antoneus от 15 мая 2020, 19:13
Кавычки в пути к файлу - это неправильно, их надо СтрЗаменить(ПутьКФайлу, """", "")

все тоже самое, письмо приходит без вложенного файла
Добавлено: 16 мая 2020, 00:45


Цитата: LexaK от 15 мая 2020, 19:35

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

в поцедуре наКлиенте
    БумагаВалюта = ПолучитьВалютуБумага(стрБумага);
    Сообщить(БумагаВалюта);

Выводит пустое сообщение (просто какой-то тупняк жуткий)


а зачем так сложно? тем более с ошибками!

в данном виде я хотя бы немного понимаю, а какие ошибки в этом запросе, может подскажите если не затруднит

antoneus

Вот это работает?

Интересно, страниц до десяти добьем тему?

Funt Фунтиков

Цитата: antoneus от 16 мая 2020, 09:07
Вот это работает?

Интересно, страниц до десяти добьем тему?

В понедельник проверю и обязательно отпишусь по ответу системы и ошибкам

Dethmontt

Цитата: antoneus от 15 мая 2020, 18:24UPD: Если бы вы вручную захотели этот файл прикрепить к письму - где и как бы вы его взяли?
:zebzdr::zebzdr::zebzdr::ooifh:
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Funt Фунтиков

Цитата: antoneus от 15 мая 2020, 19:13
Кавычки в пути к файлу - это неправильно, их надо СтрЗаменить(ПутьКФайлу, """", "")

Что такое стрБумага?


все равно приходит пустое письмо без вложения
Добавлено: 18 мая 2020, 12:20


Цитата: Dethmontt от 17 мая 2020, 03:11
Цитата: antoneus от 15 мая 2020, 18:24UPD: Если бы вы вручную захотели этот файл прикрепить к письму - где и как бы вы его взяли?
:zebzdr::zebzdr::zebzdr::ooifh:

Добавил на форму кнопку, выбираю путь к файлу в ручную показывает путь E:\1C\принт_1С\Shtamp\Kroy\Sh_150.pdf.
Письмо приходит пустым без вложения, путь к файлу прописывает правильно, но почему-то сам файл не прикрепляет
Видимо проблема к прикреплением самого файла

СтрокаСоединенияСБД = СтрокаСоединенияИнформационнойБазы();
    ПутьКБД = Сред(СтрокаСоединенияСБД, 7, СтрДлина(СтрокаСоединенияСБД) - 8);
//ПутьКФайлу = ПутьКБД + "\Shtamp\Kroy\"+ЭтаФорма.НомерШтампа+".pdf";
ПутьКФайлу = ЭтаФорма.ИмяФайла;
Сообщить(ПутьКФайлу);
    Вложение = Новый ДвоичныеДанные(СтрЗаменить(ПутьКФайлу, """", ""));

antoneus

Сдаюсь)

На крайний случай могу подцепиться по какому-нибудь ammyy или anydesk посмотреть на это чудо (а чудес не бывает).

LexaK

Funt Фунтиков,
Цитироватьв данном виде я хотя бы немного понимаю,
-очень интересно! что вы понимаете, когда пишите ТАКОЕ? :lol:

        |ГДЕ
        |    ЦифраМатериал.Наименование = &Ссылка";


если помогло нажмите: Спасибо!

Funt Фунтиков

Цитата: LexaK от 18 мая 2020, 13:12
Funt Фунтиков,
Цитироватьв данном виде я хотя бы немного понимаю,
-очень интересно! что вы понимаете, когда пишите ТАКОЕ? :lol:

        |ГДЕ
        |    ЦифраМатериал.Наименование = &Ссылка";




понимание структуры запроса и понимание и знание синтаксиса - разные вещи!
Добавлено: 18 мая 2020, 13:56


Цитата: antoneus от 18 мая 2020, 12:34
Сдаюсь)

На крайний случай могу подцепиться по какому-нибудь ammyy или anydesk посмотреть на это чудо (а чудес не бывает).

в процессе проб разных вариантов кода на пару строчек выдавала ошибку и они были закрыты.
сейчас все работает и итоговый код выглядит вот так:

//Подключение файла штампа
СтрокаСоединенияСБД = СтрокаСоединенияИнформационнойБазы();
        ПутьКБД = Сред(СтрокаСоединенияСБД, 7, СтрДлина(СтрокаСоединенияСБД) - 8);
ПутьКФайлу = ПутьКБД + "\Shtamp\Kroy\"+ЭтаФорма.НомерШтампа+".pdf";
Сообщить(ПутьКФайлу);
        Вложение = Новый ДвоичныеДанные(СтрЗаменить(ПутьКФайлу, """", ""));

// Сформировать почтовый профиль.
// При отправке нет необходимости указывать настройки, связанные с POP сервером.
ИПП = Новый ИнтернетПочтовыйПрофиль;
ИПП.АдресСервераSMTP = "smtp.mail.ru";//для gmail, для других серверов может быть другой 
ИПП.ВремяОжидания = 30;
ИПП.Пользователь = "432286@mail.ru";
ИПП.Пароль = "***";
ИПП.ПользовательSMTP = "432286@mail.ru";
ИПП.ПарольSMTP = "***";
ИПП.ПортSMTP = 465;//для gmail, для других серверов может быть другой
ИПП.ИспользоватьSSLSMTP = Истина;
ИПП.АутентификацияSMTP = СпособSMTPАутентификации.ПоУмолчанию;

// Создать сообщение.
Сообщение = Новый ИнтернетПочтовоеСообщение;
Сообщение.Получатели.Добавить(ЭтаФорма.Адрес);
Сообщение.Отправитель.Адрес = "432286@mail.ru";
Сообщение.Тема = "Срочно в номер!";
Сообщение.Тексты.Добавить("!"+ЭтаФорма.ИмяФайла);
Сообщение.Вложения.Добавить(Вложение,"прикрепленный файл.pdf");

// Подключиться и отправить.
Почта = Новый ИнтернетПочта;
Почта.Подключиться(ИПП);
Почта.Послать(Сообщение);
Почта.Отключиться();

Добавлено: 18 мая 2020, 13:59


Цитата: LexaK от 18 мая 2020, 13:12
Funt Фунтиков,
Цитироватьв данном виде я хотя бы немного понимаю,
-очень интересно! что вы понимаете, когда пишите ТАКОЕ? :lol:

        |ГДЕ
        |    ЦифраМатериал.Наименование = &Ссылка";




прикалываться это легко - а Вы вот возьмите и подскажите нормальный рабочий код запроса по данным параметрам! ui;;t;

Теги:

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

Рейтинг@Mail.ru

Поиск