Вход | Регистрация
    1  2   
1С:Предприятие :: 1С:Предприятие 8 общая

Нужно отправить отчёт по заказам по эл.почте (тестовое задание)

↓ [Волшебник, 14.07.20 - 13:37]
Нужно отправить отчёт по заказам по эл.почте (тестовое задание)
Я
   Jonny992
 
09.07.20 - 10:52
Мне нужно, чтобы человек ввел дату и сумму которая ему нужна и по этому сформировалась временная таблица, которую потом программа отправит ему по почте(с почтой я всё решил) мне нужна помощь только с работой с элементами

P.S.
John342 ответь мне, если увидишь конечно.
   Jonny992
 
1 - 09.07.20 - 10:52
Я не отрицаю, что я совсем тупой и неправильно задал вопрос. Спросите ещё раз я отвечу, спасибо !
   Волшебник
 
2 - 09.07.20 - 10:53
Как задать вопрос по теме 1С или советы новичку.
https://forum.mista.ru/rules.php#rec
   Jonny992
 
3 - 09.07.20 - 10:56
Хочу , чтобы при вводе в поля дата и сумма, программа отправляла отчёт по почте по этой дате и сумме (с отправкой уже всё решил)
   acht
 
4 - 09.07.20 - 10:57
Перепись нумерованых репликантов какая-то =)
   Волшебник
 
5 - 09.07.20 - 10:57
(3) Значит надо просто сформировать отчет.

Отчёт.Сформировать()
   rphosts
 
6 - 09.07.20 - 11:00
(3) формируешь отчёт, сохраняешь его как.... ну пусть как ПДФ, создаешь электронное письмо, прикрепляешь ПДФ к письму, отправляешь письмо.
   Jonny992
 
7 - 09.07.20 - 11:00
Я не могу отправить фотографию, да ладно, щас ещё раз нормально напишу(постараюсь)
Нужно разработать внешнюю обработку в Конфигураторе 1С. Назначение обработки –
оповестить по электронной почте руководителя компании о заказах. Пользователь, ответственный за рассылку данных, на форме обработки указывает период и
сумму, свыше которой заказы являются нужными для  руководителя.
   Jonny992
 
8 - 09.07.20 - 11:02
При нажатии на кнопку «Отправить» из 1С отправляется письмо, содержащее таблицу с
данными оформленных документов «Заказ клиента», удовлетворяющих условиям отбора.
   Волшебник
 
9 - 09.07.20 - 11:03
(7) Нужен запрос с условием
Заказ.Дата МЕЖДУ &НачПериода И &КонПериода 
И Заказ.Сумма >= &ПределСуммы
   Волшебник
 
10 - 09.07.20 - 11:03
(8) Это тестовое задание при приёме на работу, да?
   Jonny992
 
11 - 09.07.20 - 11:05
+
   Jonny992
 
12 - 09.07.20 - 11:06
Я сделал всё, ничего не заработало, всё удалил и пришёл сюда, я просто кодил больше 10 часов, поэтому мысли путаются, извините
   Волшебник
 
13 - 09.07.20 - 11:09
(12) Надо стараться.
   Василий Алибабаевич
 
14 - 09.07.20 - 11:10
(12) "Я сделал всё, ничего не заработало" Можно более развернуто - что именно не заработало? Неужели не получилась форма для ввода периода и суммы?
   dka80
 
15 - 09.07.20 - 11:10
Давай последовательно:
1. Ввести данные в два поля. Сделано?
2. Подготовить данные для отправки. Сделано?
3. Отправить. Сделано?
   Jonny992
 
16 - 09.07.20 - 11:12
Давай последовательно:
1. Сделано
2. Не сделано
3. Сделано
   Jonny992
 
17 - 09.07.20 - 11:13
Получилось , у меня дальше не получается.
   Василий Алибабаевич
 
18 - 09.07.20 - 11:14
(17) Макет отчета уже нарисовал?
   dka80
 
19 - 09.07.20 - 11:15
Подготовить данные для отправки:
1. Сформировать какой-то табличный документ.
2. Сохранить его в виде pdf или xls
Что из этого не получается?
   Jonny992
 
20 - 09.07.20 - 11:15
Да у меня есть макет отчета
   dka80
 
21 - 09.07.20 - 11:16
Ты на экран можешь вывести отчет с нужными данными?
   Jonny992
 
22 - 09.07.20 - 11:18
Нет :(
   Василий Алибабаевич
 
23 - 09.07.20 - 11:21
(22) Что "нет"? Не можешь вывести отчет на экран или где? Давай сюда код вывода отчета.
   Jonny992
 
24 - 09.07.20 - 11:21
Спасибо за всё что вы написали .
Мне это очень поможет (не сарказм).
   dka80
 
25 - 09.07.20 - 11:22
У тебя есть макет. Ты с ним что-то пытаешься сделать?
   dka80
 
26 - 09.07.20 - 11:22
У тебя проблема с выводом данных в макет?
   Jonny992
 
27 - 09.07.20 - 11:22
Щас
"ВЫБРАТЬ
        |   ЗаказКлиента.Номер КАК Номер,
        |   ЗаказКлиента.Дата КАК Дата,
        |   ЗаказКлиента.Партнер КАК Партнер,
        |   ЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
        |   ЗаказКлиента.Менеджер КАК Менеджер
        |ИЗ
        |    Документ.ЗаказКлиента КАК ЗаказКлиента
   Jonny992
 
28 - 09.07.20 - 11:24
У меня в принципе проблема, как это реализовать, вот с кнопкой которая отправляет на почту письмо я быстро разобрался, а с отчетом по периоду и сумме не могу разобраться
   Василий Алибабаевич
 
29 - 09.07.20 - 11:25
(27) И что это?
Ты даже не понимаешь о чем тебя спрашивают.
   Jonny992
 
30 - 09.07.20 - 11:25
Итог должен быть такой :

Тема письма: «Крупные заказы за период с 10 сентября 2019 по 13 сентября 2019»
Тело письма:
«Здравствуйте, Иван Иванович!
Список заказов с суммой от 100 000 руб. за период с 10 сентября 2019 по 13 сентября 2019:
№ Дата Клиент Сумма Менеджер
УТ-0001 10.09.2019 ООО «Ромашка» 100 000 руб. Павлов Н.И.
УТ-0004 12.09.2019 ИП Петров Н.В. 230 000 руб. Лебедева Н.С.
УТ-0015 13.09.2019 ИП Петров Н.В. 130 000 руб. Лебедева Н.С.
Всего 3 заказа на сумму 460 000 (Четыреста шестьдесят тысяч) руб.»
 
 Рекламное место пустует
   Jonny992
 
31 - 09.07.20 - 11:27
А извиняюсь я же говорю голова плывет немного кода вывода отчёта у меня нет, я же написал что проблемы с отчётом, как я не получив отчёт буду писать код его вывода
   dka80
 
32 - 09.07.20 - 11:29
Чтобы сформировать отчет тебе нужно:
1. Получить исходные данные для отчета
2. Вывести куда-то эти данные: может быть текстовый документ или макет

Как ты получаешь исходные данные?
   Jonny992
 
33 - 09.07.20 - 11:31
С помощью запросов ?
   Волшебник
 
34 - 09.07.20 - 11:33
(33) Достаточно одного запроса.
   dka80
 
35 - 09.07.20 - 11:38
   Jonny992
 
36 - 09.07.20 - 11:43
Всем огромное спасибо кто отвечал и отвечает.
   Jonny992
 
37 - 09.07.20 - 12:06
А как мне теперь дату и сумму с обработки связать с отчётом
   Волшебник
 
38 - 09.07.20 - 12:10
(37) Запрос.УстановитьПараметр("ПределСуммы", Сумма);
   Jonny992
 
39 - 09.07.20 - 12:15
Заказ.Дата МЕЖДУ &НачПериода И &КонПериода 
И Заказ.Сумма >= &ПределСуммы

я написал
ГДЕ
           (ЗаказКлиента.Дата >= &ПериодН И 
           ЗаказКлиента.Дата <= &ПериодК) И
           ЗаказКлиента.СуммаДокумента > &Сумма";

Лучше не рисковать и ваше написать или мой вариант имеет место быть
   Jonny992
 
40 - 09.07.20 - 12:15
Для моего условия естественно
   Волшебник
 
41 - 09.07.20 - 12:16
(39) Годится.
   Jonny992
 
42 - 09.07.20 - 12:17
Хоть что то спасибо
   dka80
 
43 - 09.07.20 - 12:19
Заказ.Дата МЕЖДУ &НачПериода И &КонПериода

Это уже излшне
ЗаказКлиента.Дата >= &ПериодН И 
           ЗаказКлиента.Дата <= &ПериодК)
   Jonny992
 
44 - 09.07.20 - 12:20
Тогда получается Запрос.УстановитьПараметр("Сумма", Сумма);
   Волшебник
 
45 - 09.07.20 - 12:31
В дате есть время. Лучше добавить функции НачалоДня и КонецДня

например,
Запрос.УстановитьПараметр("НачДата", НачалоДня(НачДата));
Запрос.УстановитьПараметр("КонДата", КонецДня(КонДата));


Или в самом запросе написать:

ГДЕ Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ)
   Krendel
 
46 - 09.07.20 - 12:32
(0) Рассылка отчета- это же вроде типовой сейчас функционал ЕРП
   ZDenis
 
47 - 09.07.20 - 12:37
(0) Может лучше конструктор запроса с обработкой результата запустить с такими знаниями. Запускается нажав правую кнопку в модуле
   Jonny992
 
48 - 09.07.20 - 13:54
Вот так получается ?
   Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("НачДата", НачалоДня(НачДата));
    Запрос.УстановитьПараметр("КонДата", КонецДня(КонДата));
    Запрос.УстановитьПараметр("Сумма",Сумма);
    Запрос.Текст = 
    "ВЫБРАТЬ
        |    ЗаказКлиента.Номер КАК Номер,
        |   ЗаказКлиента.Дата КАК Дата,
        |   ЗаказКлиента.Партнер КАК Партнер,
        |   ЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
        |   ЗаказКлиента.Менеджер КАК Менеджер
        |ИЗ
        |    Документ.ЗаказКлиента КАК ЗаказКлиента
        |ГДЕ
        |   Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ) И
        |   ЗаказКлиента.СуммаДокумента > &Сумма";
        
    РезультатЗапроса = Запрос.Выполнить();
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
   Jonny992
 
49 - 09.07.20 - 14:21
dka80
Вся вера и надежда на вас
   dka80
 
50 - 09.07.20 - 14:21
Это дублируется
 Запрос.УстановитьПараметр("НачДата", НачалоДня(НачДата));
    Запрос.УстановитьПараметр("КонДата", КонецДня(КонДата));
с этим
 |   Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ) 

Сделай 
Запрос.УстановитьПараметр("НачДата", НачДата);
    Запрос.УстановитьПараметр("КонДата", КонДата);

Ну и далее выводи в макет
   Jonny992
 
51 - 09.07.20 - 14:22
dka80
Я могу вам как то скриншоты отправлять ?*
   Jonny992
 
52 - 09.07.20 - 14:27
Я вывожу пишет не задано значение параметра "НачДата" ЗаказКлиента.Дата МЕЖДУ НАЧАЛОПЕРИОДА(
   Jonny992
 
53 - 09.07.20 - 14:28
<<?>>НачДаита, ДЕНЬ) И КОНЕЦПЕРИОДА(КонДата, День)
   Jonny992
 
54 - 09.07.20 - 14:29
Стоп
   Jonny992
 
55 - 09.07.20 - 14:30
Так я пишу в строке Запрос :
 Запрос.УстановитьПараметр("НачДата", НачалоДня(НачДата));
    Запрос.УстановитьПараметр("КонДата", КонецДня(КонДата)); ???
   Jonny992
 
56 - 09.07.20 - 14:31
запутался
   Irbis
 
57 - 09.07.20 - 14:33
(56) То ли ещё будет
   Jonny992
 
58 - 09.07.20 - 14:35
(57) ?
   Волшебник
 
59 - 09.07.20 - 14:35
НачДаита
   Jonny992
 
60 - 09.07.20 - 14:36
(59) Что происходит ???
 
 Рекламное место пустует
   Jonny992
 
61 - 09.07.20 - 14:36
Вижу спасибо
   Jonny992
 
62 - 09.07.20 - 14:37
(59) Нет правильно всё в коде
   Jonny992
 
63 - 09.07.20 - 14:37
(59)
ВЫБРАТЬ
    ЗаказКлиента.Номер КАК Номер,
    ЗаказКлиента.Дата КАК Дата,
    ЗаказКлиента.Партнер КАК Партнер,
    ЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
    ЗаказКлиента.Менеджер КАК Менеджер
ИЗ
    Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
    ЗаказКлиента.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ)
    И ЗаказКлиента.СуммаДокумента > &Сумма
   dka80
 
64 - 09.07.20 - 14:38
весь код дай
   Волшебник
 
65 - 09.07.20 - 14:38
лучше

ЗаказКлиента.СуммаДокумента >= &Сумма
   Jonny992
 
66 - 09.07.20 - 14:40
&НаКлиенте
Процедура ОтправитьПисьмо(Команда)
    ПрофильПодключения = Новый ИнтернетПочтовыйПрофиль;
    ПрофильПодключения.АдресСервераSMTP = "smtp.yandex.ru";
    ПрофильПодключения.ИспользоватьSSLSMTP=Истина;
    ПрофильПодключения.ПортSMTP = 465;
    ПрофильПодключения.ПользовательSMTP = "*";
    ПрофильПодключения.ПарольSMTP ="*";
    Почта = Новый ИнтернетПочта;
    Попытка
        Почта.Подключиться(ПрофильПодключения);
    Исключение
        Сообщить("Не удалось подключиться к серверу smtp.yandex.ru");
        Сообщить(ОписаниеОшибки());
    КонецПопытки;
    Тело="«Здравствуйте, Иван Иванович!
    |Список заказов с суммой от 100 000 руб. за период с 10 сентября 2019 по 13 сентября 2019:
    |
    |Всего 3 заказа на сумму 460 000 (Четыреста шестьдесят тысяч) руб.»";
    Письмо = Новый ИнтернетПочтовоеСообщение;
    Письмо.Тексты.Добавить(Тело);
    Письмо.Тема = "«Крупные заказы за период с 10 сентября 2019 по 13 сентября 2019»";
    Письмо.Отправитель = "*";
    Письмо.Получатели.Добавить("*");
    Попытка
        Почта.Послать(Письмо);
    Исключение
        Сообщить("Не удалось отправить письмо ");
        Сообщить(ОписаниеОшибки());
    КонецПопытки;
    Почта.Отключиться();
КонецПроцедуры
   Jonny992
 
67 - 09.07.20 - 14:40
ВЫБРАТЬ
    ЗаказКлиента.Номер КАК Номер,
    ЗаказКлиента.Дата КАК Дата,
    ЗаказКлиента.Партнер КАК Партнер,
    ЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
    ЗаказКлиента.Менеджер КАК Менеджер
ИЗ
    Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
    ЗаказКлиента.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ)
    И ЗаказКлиента.СуммаДокумента >= &Сумма
   Jonny992
 
68 - 09.07.20 - 14:40
Всё что есть
   Jonny992
 
69 - 09.07.20 - 14:42
Это просто проверочное письмо там
   Волшебник
 
70 - 09.07.20 - 14:42
Начало положено.
   dka80
 
71 - 09.07.20 - 14:42
блять!
А то откуда тогда:
Запрос.УстановитьПараметр("НачДата", НачалоДня(НачДата));
Запрос.УстановитьПараметр("КонДата", КонецДня(КонДата));
   Волшебник
 
72 - 09.07.20 - 14:43
Надо добавить УПОРЯДОЧИТЬ ПО
   Jonny992
 
73 - 09.07.20 - 14:44
(71)  спасите
   Волшебник
 
74 - 09.07.20 - 14:44
ФИО "Иван Иванович" надо брать из константы
   dka80
 
75 - 09.07.20 - 14:44
(72) да погоди ты с бантиками!
   Jonny992
 
76 - 09.07.20 - 14:44
Удаляем всё ?
   Jonny992
 
77 - 09.07.20 - 14:44
и меня из жизни
   dka80
 
78 - 09.07.20 - 14:44
Приведи кусок кода, формирующего отчет: запрос и обработку результата запроса
   Jonny992
 
79 - 09.07.20 - 14:45
За отчёт у меня отвечает вот это
   Jonny992
 
80 - 09.07.20 - 14:46
ВЫБРАТЬ
    ЗаказКлиента.Номер КАК Номер,
    ЗаказКлиента.Дата КАК Дата,
    ЗаказКлиента.Партнер КАК Партнер,
    ЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
    ЗаказКлиента.Менеджер КАК Менеджер
ИЗ
    Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
    ЗаказКлиента.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ)
    И ЗаказКлиента.СуммаДокумента >= &Сумма.
   Jonny992
 
81 - 09.07.20 - 14:46
через скд
   Jonny992
 
82 - 09.07.20 - 14:46
я походу неправильно понял что то в этой жизни
   dka80
 
83 - 09.07.20 - 14:47
Я сдаюсь
   Jonny992
 
84 - 09.07.20 - 14:47
(83) Только не это
   Jonny992
 
85 - 09.07.20 - 14:47
(83) Пожалуйста
   ZDenis
 
86 - 09.07.20 - 14:49
(82) Просто не на ту должность устраиваешься... А так все нормально

Сделай через конструктор уже, там хоть что-то но на экран появится. А так ты еще и до создания табличного документа не дошел за весь день.
   Волшебник
 
87 - 09.07.20 - 14:50
Надо решать проблемы по мере их поступления. Какой текст ошибки?
   ZDenis
 
88 - 09.07.20 - 14:50
Хотя табличный документ по этому заданию и не нужен
   Jonny992
 
89 - 09.07.20 - 14:50
(86) так я стажёром я же не иду в ведущие программисты
   Jonny992
 
90 - 09.07.20 - 14:51
"НачДата" ЗаказКлиента.Дата МЕЖДУ НАЧАЛОПЕРИОДА(<<?>>НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(КонДата, День) (87)
   Jonny992
 
91 - 09.07.20 - 14:52
(88) нужен
   Волшебник
 
92 - 09.07.20 - 14:52
(90) нужен амперсанд

&НачДата
   Jonny992
 
93 - 09.07.20 - 14:52
(88) При нажатии на кнопку «Отправить» из 1С отправляется письмо, содержащее таблицу с
данными оформленных документов «Заказ клиента», удовлетворяющих условиям отбора.
   Jonny992
 
94 - 09.07.20 - 14:53
(92) так в коде я с ампресандом и пишу
ВЫБРАТЬ
    ЗаказКлиента.Номер КАК Номер,
    ЗаказКлиента.Дата КАК Дата,
    ЗаказКлиента.Партнер КАК Партнер,
    ЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
    ЗаказКлиента.Менеджер КАК Менеджер
ИЗ
    Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
    ЗаказКлиента.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ)
    И ЗаказКлиента.СуммаДокумента >= &Сумма
   Волшебник
 
95 - 09.07.20 - 14:53
(93) Можно сформировать табличный документ, сохранить его в качестве файла EXCEL и вложить в письмо. Иван Ивановичу будет приятно.
   Волшебник
 
96 - 09.07.20 - 14:54
(94) Прекрасный запрос. Только надо добавить
УПОРЯДОЧИТЬ ПО Дата УБЫВ
   Jonny992
 
97 - 09.07.20 - 14:55
(30) (95) мне нужно чтобы получилось как в (30)
   Jonny992
 
98 - 09.07.20 - 14:55
(96)  щас напишу
   Jonny992
 
99 - 09.07.20 - 14:56
(96) Написал
   Jonny992
 
100 - 09.07.20 - 14:57
Не задано значение параметра "НачДата" ЗаказКлиента.Дата МЕЖДУ НАЧАЛОПЕРИОДА(<<?>>НачДата, ДЕНЬ) И КОНЕЦПЕРИОДА(КонДата, День)
  1  2   

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.