arefaste/1C_Forums huggingface dataset:
Приветствую.

Сделал доработку, чтобы "Заказ клиента" мог создаваться по моему нетиповому документу.
Создаю "Заказ клиента" на основании своего документа, при нажатии на кнопку "Записать" документ" не записывается, а пытается провестись.

Через отладчик выяснил что:
1) Имеется следующий стек вызовов (Скрин№1).
2) Во второй строке стека вызовов (процедура ОбщегоНазначенияУТКлиент в функции ЗаписатьОбъект идёт запись:

```1c
    Результат = Форма.Записать(ПараметрыЗаписи);
```

В ПараметрыЗаписи такие параметры (Скрин№2)
3) Нажимаю F11 и попадаю в первую строку в стеке вызовов (Документ.ЗаказКлиента.Форма.ФормаДокумента.Форма.ПередЗаписью). И тут ПараметрыЗаписи отличается - изменилось поле "Режим записи" (Скрин№3)

В чём может быть причина замены поля?
Если создавать документ "Заказ клиента" типовым методом (например из справочника "Контрагенты"), то там всё норм - поле "Режим записи" не меняется.
---
Возможно у вас где-то в коде написано
```1c
    Заказ.Проведен = МойДокумент.Проведен;
```
---
скорее ЗаполнитьЗначенияСвойств
---
Возможно у вас где-то в коде написано
```1c
    Заказ.Проведен = МойДокумент.Проведен;
```
---
скорее ЗаполнитьЗначенияСвойств
Добрый день, написал запрос проблема была в том что он выводил задвоеный результат решил тем что добавил в объедение поле измерения временной таблицы, но теперь не выводит содержание ресурсов которые получаю с помощью агрегатной строки временной таблицы.

```1c
    ВЫБРАТЬ
    РаботаОбороты.Период,
    РаботаОбороты.Товар,
    Сумма(РаботаОбороты.ЦенаОборот)
    ПОМЕСТИТЬ
    ВремТабОбщЦена
    ИЗ
    РегистрНакопления.Работа.Обороты(&Дата1, &Дата2, ДЕНЬ, ) КАК РаботаОбороты
    ГДЕ
    Работа.Продовец = &Продовец
    СГРУППИРОВАТЬ ПО
    РаботаОбороты.Период,
    РаботаОбороты.Товар
    ;
    ВЫБРАТЬ
    РаботаОбороты.Период,
    ВремТабОбщЦена.Период,
    ВремТабОбщЦена.Товар,
    ВЫБОР КОГДА ВремТабОбщЦена.ЦенаОбороты ЕСТЬ NULL ТОГДА 0
    ИНАЧЕ ВремТабОбщЦена.Цена КОНЕЦ КАК ЦенаОборот
    ИЗ
    РегистрНакопления.Работа.Обороты(&Дата1, &Дата2, ДЕНЬ, ) КАК РаботаОбороты
    ЛЕВОЕ СОЕДИНЕНИЕ
    ВремТабОбщЦена КАК ВремТабОбщЦена
    ПО
    (Работа.Период = ВремТабОбщЦена.Период И РаботаОбороты.Товар = ВремТабОбщЦена.Товар)
    ГДЕ
    РаботаОбороты.Продовец = &Продовец
    ;
```
---
Сделать вторую временную таблицу из вторых оборотов.
Соединять уже в третьем запросе.
Возможно соединение с оборотами глючит.
---
Работа.Продовец = &ПродовецНадо уж тогда и "работу" по-вологодски писать: робота))
Но вообще интересно откуда эта работа взялась? Не нашел такого псевдонима в запросе.
---
Исправил РаботаОбороты
---
Может в этом периоде не было продаж у этого продавца?
---
Были, тут вопрос в том что если соеденять только по периоду и не писать товар то всё выходит, но задвоеное, а так только даты в периоде. Правильно сказать не задвоеное, а товар с одни и те же наименованием выводиться отдельной строкой а должен сложиться.
---
Продовец? Надеюсь это не в чьей то рабочей базе такая дичь? И зачем вы в запросе выбираете данные два раза из одного и того же регистра?
---
Есть такая необходимость.
---
ВремТабОбщЦена.Цена - что за поле такое???
---
Сделать вторую временную таблицу из вторых оборотов.
Соединять уже в третьем запросе.
Возможно соединение с оборотами глючит.
---
Да в этом дело, но мне кажется здесь ещё сыграл роль глюк и консоли запросов.
Здравствуйте после обновления с 11.4 на 11.5.17.194 появились расхождения остатков по половине позиций из базы, обработка исправление ошибок в регистре ничего не находит, но теперь остаток в наличии показывает меньше чем было в прошлой версии базы. Подскажите как это можно справить.
---
Ну тогда восстанавливайте из бекапа и обновляйтесь корректно, сверяя ключевые отчеты на каждом из этапов. При вашем обновлении, расхождения по остаткам - это только малая часть. Много данных просто потеряно безвозвратно.
---
Подскажите как это можно справить. Выяснить причину и устранить.
---
Здравствуйте после обновления с 11.4 на 11.5.17.194 Давай начнем с того, что это не обновление. Это переход.
---
Нашел минусы по регистру сведений распределение запасов но как поправить не могу понять.
---
перепроведение документов с движениями по остаткам, но есть вероятность то станет хуже)
---
Перепроведение не помогло часть исправилась но часть остается,можно ли регистр поправить вручную или самописной обработкой или станет хуже только от этого?
---
поправить вручную или самописной обработкой или станет хуже только от этого? Нам откуда знать, что станет с неизвестными данными твоего регистра, если ты его обработаешь неизвестным нам способом с помощью неизвестной нам твоей обработкой.
---
если именно после обновления остатки сломались, стоит посмотреть Исправления ошибок (патчи)
 Проблемные ситуации и ошибки в версии 11.5.17.194. Возможно есть патч, в котором эта проблема исправлена.
---
Патчи все что есть установил.
---
на практике, все что делается руками выходит боком, возможно не сейчас но потом
---
если часть изменилась, значит учет херовый.... неправильная последовательность проведения документов, проведение в минус, правка руками кстати. из за всего этого у вас и полезли расхождения, потому что программа заново посчитала. правильно как кажется ей, но не верно по вашему)
---
"после обновления с 11.4 на 11.5.17.194"
Вы обновлялись корректно?

11.4.14.181 –> 11.5.8.* (рекомендуемая сборка 11.5.8.443)

11.5.8.443 –> 11.5.12.* (рекомендуемая крайняя сборка 11.5.12.270)

11.5.12.270 –> 11.5.17.* (рекомендуемая крайняя сборка 11.5.17.*)

После каждого этапа запускали отложенное обновление в режиме 1С предприятия и оно отработали без ошибок?
Расхождения по остаткам на каком из трех этапов появились?
---
По сборкам все так, единственно отключены были регл задания временно и обновления прошли уже все сразу после обновления 11.5.17.* в самом конце.
---
Сообщение было скрыто модератором.
---
Ну тогда восстанавливайте из бекапа и обновляйтесь корректно, сверяя ключевые отчеты на каждом из этапов. При вашем обновлении, расхождения по остаткам - это только малая часть. Много данных просто потеряно безвозвратно.
Добрый день!

Столкнулся со следующей проблемой.

Через групповое изменение реквизитов хотел поменять счет затрат у поступления на расчетный счет (вид операции поступление по платежным картам).

Стандартного и служебного реквизита не нашел.

В конфигураторе не нашел.

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

Спасибо!
---
в групповом изменении реквизитов на 1ой вкладке реквизиты - счет расчетов указывайте 91.02, а во второй расшифровка платежа - счет расчетов 57.03
---
в групповом изменении реквизитов на 1ой вкладке реквизиты - счет расчетов указывайте 91.02, а во второй расшифровка платежа - счет расчетов 57.03
Всем привет, ДО.
Хочу записать в существующий доп.реквизит значение...... Создает новый, хотя точно такой же есть выше. ЧТО НЕ ТАК????

```1c
    ДопРеквизитСтатусЗРДС = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Статус ЗРДС");
    ДокументКомплектаОбъект = ДокументКомплекта.ПолучитьОбъект();

    ЕстьСтроки = ДокументКомплектаОбъект.ДополнительныеРеквизиты.НайтиСтроки(Новый Структура("Свойство", ДопРеквизитСтатусЗРДС));

    Если ЕстьСтроки.Количество() = 0 Тогда
    СтрокаТЧ = ДокументКомплектаОбъект.ДополнительныеРеквизиты.Добавить();
    СтрокаТЧ.Свойство = ДопРеквизитСтатусЗРДС;
    Иначе

    СтрокаТЧ = ЕстьСтроки[0];

    КонецЕсли;
    СТрокаТЧ.Значение = Справочники.КатегорииДанных.НайтиПоНаименованию("Исполнена", Истина);
    Попытка
    ДокументКомплектаОбъект.Записать();
    Исключение
    Сообщить(ОписаниеОшибки());
    КонецПопытки;
```
---
А вообще у доп. реквизитов есть реквизит "Имя" и еще один, не помню как называется. Они не повторяются. И искать надо по ним.
---
Создает новый, хотя точно такой же есть выше
Не вижу в коде создания доп. реквизита. Вижу только поиск.
---
СтрокаТЧ = ДокументКомплектаОбъект.ДополнительныеРеквизиты.Добавить();
---
На скрине 2 разных дополнительных реквизита с одинаковым наименованием. Не аргумент.
---
А вообще у доп. реквизитов есть реквизит "Имя" и еще один, не помню как называется. Они не повторяются. И искать надо по ним.
---
Согласна,
так помогло.
ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", "СтатусЗРДС");
---
Значит у тебя два свойства с одинаковыми наименованиями.
Пытаюсь при записи элемента номенклатуры скопировать автоматически сгенерированный код в артикул.
В процедуре ПриЗаписи модуля объекта добавляю:

```1c
    Если Артикул=" Тогда
    Артикул=Код;
    КонецЕсли;
```

При трассировке реквизит заполняется, но когда карточка записалась, оказывается, что поле артикула пустое.
Пробовал написать так:

```1c
    Если Артикул=" Тогда
    ЭтотОбъект.Артикул=Код;
    КонецЕсли;
```

Результат тот же.
Подскажите, что я не так делаю?
---
```1c
    Процедура ПередЗаписью(Отказ)
    ДополнительныеСвойства.Вставить("ЭтоНовый", ЭтоНовый());
    КонецПроцедуры

    Процедура ПриЗаписи(Отказ)
    Если ДополнительныеСвойства.ЭтоНовый Тогда
    Реквизит1 = Код;
    Записать();
    КонецЕсли;
    КонецПроцедуры
```
---
Перенести код в процедуру ПередЗаписью
В ПриЗаписи объект уже записан в базу
---
На этом моменте код еще не установлен
---
Ну так установи его
---
Так я ж написал, что хочу скопировать автоматически сгенерированный код.
---
Ну так сгенерируй автоматически...
---
Программа где-то ж устанавливает и записывает код в элемент справочника?
---
Конечно. Всего-то делов - надо почитать СП.
---
```1c
    Процедура ПередЗаписью(Отказ)
    ДополнительныеСвойства.Вставить("ЭтоНовый", ЭтоНовый());
    КонецПроцедуры

    Процедура ПриЗаписи(Отказ)
    Если ДополнительныеСвойства.ЭтоНовый Тогда
    Реквизит1 = Код;
    Записать();
    КонецЕсли;
    КонецПроцедуры
```
---
Достаточно было добавить Записать()

```1c
    Если ЭтотОбъект.Артикул=" Тогда
    ЭтотОбъект.Артикул=Код;
    ЭтотОбъект.Записать();
    КонецЕсли;
```
---
Не. Это уже не будет "автоматически сгенерированный код". Артикул будет переписан при ручном изменении кода.
---
Так я ж поставил проверку на пустое значение. К тому же поставлен запрет на ручное изменение кода
---
```1c
    Процедура ПередЗаписью(Отказ)

    Если ЭтотОбъект.ЭтоНовый()=Ложь Тогда //Старый артикул не трогаем!!!
    иначе
    ЭтотОбъект.Артикул = ЭтотОбъект.УстановитьНовыйКод(); //Добавить префикс, если в справочнике есть.
    КонецЕсли;
    КонецПроцедуры;
```
---
Если ЭтотОбъект.ЭтоНовый()=Ложь Тогда //Старый артикул не трогаем!!!
иначеУ тебя мозг вывихнут.
Привет.

Имеем две таблицы.

Таблица1:

Товар1 - Свойство1
Товар2 - Свойство1
Товар2 - Свойство2

Таблица2:

Товар2 - Свойство1

Как запросом на основе этих двух таблиц получить Таблица3:

Товар1 - Свойство1
Товар2 - Свойство2

По сути мы должны исключить из Таблица1 совпадающие сочетания Товар-Свойство Таблица2.
---
Левое соединение с последующим условием на ЕСТЬ NULL
---
можно попробовать с помощью конструкции ГДЕ:

```1c
    Выбрать
    Товар,
    Свойство
    ИЗ
    Таблица1
    ГДЕ
    НЕ (Товар, Свойство) В (Выбрать Т.Товар, Т.Свойство ИЗ Таблица2 КАК Т)
```
---
можно попробовать с помощью конструкции ГДЕ:

```1c
    Выбрать
    Товар,
    Свойство
    ИЗ
    Таблица1
    ГДЕ
    НЕ (Товар, Свойство) В (Выбрать Т.Товар, Т.Свойство ИЗ Таблица2 КАК Т)
```
---
Левое соединение с последующим условием на ЕСТЬ NULL
---
Спасибо за оперативный ответ и то и другое работает. Какой метод быстрее?
---
Что мешает проверить?
1с 8.3 Розница 3.0
Добрый день, в целом по теме думаю ясно. Нужно программно проверить есть ли у роли галка "ПраваДляНовыхОбъектов".

Через метаданные обхожу роли, там этой информации не нашёл.
---
НужноСамо понятие "новый объект", оно только в конфигураторе существует. Откуда вообще такая незыблемая уверенность, что программно можно всё получить?

Выгружай в xml, ищи там в Ext/Rights.xml кусок типа "<setForNewObjects>true</setForNewObjects>"
---
НужноСамо понятие "новый объект", оно только в конфигураторе существует. Откуда вообще такая незыблемая уверенность, что программно можно всё получить?

Выгружай в xml, ищи там в Ext/Rights.xml кусок типа "<setForNewObjects>true</setForNewObjects>"
---
setForNewObjects

Спасибо!
---
вот так напишешь человеку написавшему "набор слов", а он потом ещё "шокает"....
удалил всё что тут было.....

пусть другие его писанину понимают...
---
Сообщение было скрыто модератором.
Клиент работал на организации А. Потом перешел на организацию Б.
Я как-то упустил момент, что нужно просто переименовать организацию А, в Б, потому что синхронизаций с БП там никаких нет, чисто учет в розничной торговле в одном магазине.

Но вот теперь они считают себестоимость, а она у них не считается - месяц не закрывается. Естественно, ведь передача остатков не была сделана на новую организацию.

Включил передачу товаров между организациям, но документ не заполняется по остаткам.
Реализация, поступление тоже не заполняются.

Как можно сделать проще передачу. Можно ссылку на обработки здесь на Инфостарте.
---
а реализация делается просто (такому как ты, который не первый день в типовых работает - странно не знать, я - старый клюшечник - знаю ;-)
1. снять все резервы по старой организации (пункт поименован обобщающе, там могут быть засады в зависимости от того как велся учет, ибо УНФ при резервировании в ряде случаев косячит неочевидно), но суть в том, что весь остаток на складе должен быть в свободном остатке.
2. сделать "Инвентаризацию запасов"
3. оформить штатно реализацию. ТЧ заколдобить так: над ТЧ кнопка "изменить", дальше "добавить из документа" - выбрать инвент.
4. дальше сам сообразишь...
---
Нет такого "перешел на организацию".
Либо открыл новое юрлицо (откуда юрлицо получает товар? - либо от поставщика, либо как уставной взнос), либо перешел к новому существующему лицу по процедуре присоединения (тут немножко по другому).
.
По процедуре присоединения нечасто бывает.
.
Так что скорее всего открыто новое юрлицо и надо туда перекинуть товар - как написано выше.
.
Ну и с какого бодуна "Включил передачу товаров между организациям, но документ не заполняется по остаткам." - это должно заполняться "по остаткам"..? это ж интеркампани. Когда от имени новой организации будет продан товар, принадлежащий старой организации - тогда в регистре каком-то (типа "Товары к передаче" зафиксируются записи "продан чужой товар". Вот по остаткам этого регистра тогда и будет формироваться "заполнение документа передачи по остаткам" (а документ передачи по внутренним движениям/проводкам эквиваленте продаже со старой на новую и поступлению в новую от старой)
---
а реализация делается просто (такому как ты, который не первый день в типовых работает - странно не знать, я - старый клюшечник - знаю ;-)
1. снять все резервы по старой организации (пункт поименован обобщающе, там могут быть засады в зависимости от того как велся учет, ибо УНФ при резервировании в ряде случаев косячит неочевидно), но суть в том, что весь остаток на складе должен быть в свободном остатке.
2. сделать "Инвентаризацию запасов"
3. оформить штатно реализацию. ТЧ заколдобить так: над ТЧ кнопка "изменить", дальше "добавить из документа" - выбрать инвент.
4. дальше сам сообразишь...
---
1sm - мало!
---
меньше знаешь - крепче спишь. Какая тебе разница, как это было оформлено, если нужно просто перекинуть остатки?
(4) не на базаре. На мисте вообще бесплатно помогали по принципу вин-вин
(3) в расходной в УНФ не заметил кнопку "Добавить из документа", а она там есть, прячется в изменить. Спасибо, и на старуху бывает проруха.
При создании/изменении элемента в справочнике Номенклатура, в частности параметра "Вид номенклатуры" если выставить "Запасные части", поле Артикул становится обязательным к заполнению. Как это реализовано не пойму... В справочнике Виды номенклатуры нет никаких настроек, чтобы именно у этого элемента требовать у пользователя артикул. Да и в коде не пойму как реализовали... Есть процедура которая отрабатывается при изменении данного параметра, но, там не слова про артикул....
---
Такое впечатление, что у вас доработанная БП: в типовой нет предопределенных видов номенклатуры, а так же реквизитов так или иначе влияющих на поведение при записи номенклатуры.
---
Всё, точно, в расширении эта фигня доработана! СПАСИБО!!!
---
Такое впечатление, что у вас доработанная БП: в типовой нет предопределенных видов номенклатуры, а так же реквизитов так или иначе влияющих на поведение при записи номенклатуры.
---
Всё, точно, в расширении эта фигня доработана! СПАСИБО!!!
---
Процедура ОбработкаПроверкиЗаполнения в модуле объекта?
---
В типовой БП 3.0.171.16 не вижу элемента "Запасные части" в справочнике "Вид номенклатуры".
И в прежних релизах такого тоже не припомню.
---
Агаааа, а расширения я не смотрел.. Сейчас глянемс
Добрый вечер! Подскажите пожалуйста в чем дело: в процедуре формы ПередЗаписьюНаСервере записываю в реквизит значение - Объект.ТекущийКПП = КПП;

Далее отладчик идет в процедуру ПередЗаписью в модуле объекта (никакой процедуры или функции еще не выполнялось, мы просто зашли в модуль объекта), и уже в ней ТекущийКПП = "";
Хотя в модуле формы Объект.ТекущийКПП был не пустой, а в модуле объекта уже очищается, подскажите пожалуйста в чем может быть дело и как это исправить?
---
Потому что Объект - это реквизит формы.
А в ПередЗаписьюНаСервере система оперирует уже прикладным объектом, и форму в этом месте исправлять уже поздно.
Для внесения изменений в записываемые данные существует ТекущийОбъект.
---
Потому что Объект - это реквизит формы.
А в ПередЗаписьюНаСервере система оперирует уже прикладным объектом, и форму в этом месте исправлять уже поздно.
Для внесения изменений в записываемые данные существует ТекущийОбъект.
---
Спасибо большое, совсем забыл про это
Добрый день!
Если многострочные поля на форме располагаются друг за другом, то можно их растянуть мышкой. Платформа делает это автоматом.
Как сделать это растягивание, для многострочного поля, если за ним следует не многострочное?
Как называется это свойство?
---
У следующего не многострочного установить свойство РастягиватьПоВертикали = Истина
---
У следующего не многострочного установить свойство РастягиватьПоВертикали = Истина
---
Получилось! Спасибо огромное!
Всем доброго времени.

Вот такая вот ошибка:
При выборе счета на оплату покупателю из формы документа Поступление на расчетный счет в строке договора выдает ошибку:

Ошибка при выполнении запроса.
по причине:
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанныхДинамическогоСписка"
[ОшибкаНастроекКомпоновкиДанных]
по причине:
Ошибка при исполнении запроса набора данных
по причине:
{(32, 46)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
 неограниченной длины и поля несовместимых типов.
И ДокументСчетНаОплатуПокупателю.Контрагент <<?>>= &П2

При том, ни в запросе динамического списка формы выбора счетов на оплату покуп, ни в коде нет строчки: И ДокументСчетНаОплатуПокупателю.Контрагент

Голову сломал уже, не могу понять от куда он берет ее..
---
День добрый, расскажу как мы победили эту ошибку.
Ошибка проявилась после обновления платформы 1С (на 8.3.25.1445), версия БП - 3.0.150.33 (БП не обновлялили).
В расширении доработан документ "Приходный кассовый ордер (ПКО)":
- добавлены несколько реквизитов в ТЧ;
- добавленные реквизиты вынесены на форму документа - НЕ ПРОГРАММНО.

При попытке выбрать в ТЧ Счет на оплату видели ошибку, как у ТС.

Решилось:
1. удаление формы документа ПКО из расширения;
2. добавление формы документа ПКО в расширении заново;
3. ПРОГРАММНО вынесли добавленные в расширении реквизиты на форму.

В результате ошибка перестала проявляться.
---
Разобрался - ошибка была в расширении
Всем спасибо
---
Попробуйте Ещё > Установить стандартные настройки
---
Не помогло..
Ошибка у всех пользователей
---
Можно еще попробовать сбросить настройки пользователя у этой формы.
---
Не помогло, ошибка у всех
---
Разобрался - ошибка была в расширении
Всем спасибо
---
Молодец! Никогда никому не рассказывай про свои расширения, пусть все мучаются догадками!
---
День добрый, расскажу как мы победили эту ошибку.
Ошибка проявилась после обновления платформы 1С (на 8.3.25.1445), версия БП - 3.0.150.33 (БП не обновлялили).
В расширении доработан документ "Приходный кассовый ордер (ПКО)":
- добавлены несколько реквизитов в ТЧ;
- добавленные реквизиты вынесены на форму документа - НЕ ПРОГРАММНО.

При попытке выбрать в ТЧ Счет на оплату видели ошибку, как у ТС.

Решилось:
1. удаление формы документа ПКО из расширения;
2. добавление формы документа ПКО в расширении заново;
3. ПРОГРАММНО вынесли добавленные в расширении реквизиты на форму.

В результате ошибка перестала проявляться.
---
Была аналогичная проблема.
Оказалось, в конфигурации расширения, в форме документа, из которой открывается форма выбора справочника, в поле из которого открывается выбор, было пустое свойство "СвязиПараметровВыбора".
После копирования этих параметров из типовой формы все заработало.
Добрый день, такой вопрос. Необходимо при начале работы системы составить запрос и по его результатам вывести окно и сформировать отчет(программно). Отчет уже готов, его нужно просто вызвать. В общем модуле я составил запрос и хочу вывести модальное окно и сформировать отчет. Но на сервере этого сделать не получится(Не открывает отчет). Как решить эту задачу, может кто то подскажет?

```1c
    &НаСервере
    Процедура РасчетСроковИТС() Экспорт

    // Получаем текущую дату
    ТекущаяДата = ТекущаяДата();
    // Запрос для поиска документов, у которых до даты окончания срока осталось 45 дней
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | СрокПоИСТ.Наименование КАК Наименование,
    | СрокПоИСТ.ДатаНачала КАК ДатаНачала,
    | СрокПоИСТ.ДатаОкончания КАК ДатаОкончания,
    | СрокПоИСТ.ВидДоговора КАК ВидДоговора,
    | СрокПоИСТ.Ссылка КАК Ссылка
    |ИЗ
    | Документ.СрокПоИСТ КАК СрокПоИСТ
    |ГДЕ
    | СрокПоИСТ.ДатаОкончания <= ДОБАВИТЬКДАТЕ(&ТекущаяДата, ДЕНЬ, 45)";
    // Устанавливаем параметры запроса
    Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата);
    // Выполняем запрос
    РезультатЗапроса = Запрос.Выполнить();
    Выборка = РезультатЗапроса.Выбрать();

    Если Не РезультатЗапроса.Пустой() Тогда
    Предупреждение("Присутствуют пользователи у которых заканчивается срок ИТС! По ним будет сформирован отчет!");
    Отчет = Отчеты.ОтчетПоСрокамИТС.Создать();
    Отчет.Сформировать();
    КонецЕсли;
    КонецПроцедуры

    Процедура ПриНачалеРаботыСистемы()
    РасчетСроковИТС.РасчетСроковИТС();
    КонецПроцедуры
```
---
```1c
    &После("ПриНачалеРаботыСистемы")
    Процедура Расш1_ПриНачалеРаботыСистемы()

    ОтчетФорма = ПолучитьФорму("Отчет.ОченьВажныйОтчет.Форма.ФормаОтчета");
    ОтчетФорма.СкомпоноватьРезультат();
    ОтчетФорма.Открыть();

    КонецПроцедуры
```
---
Присутствуют пользователи у которых заканчивается срок ИТС! По ним будет сформирован отчет!Не сопротивляйтесь!
---
Принципиально никаких функций использовать не хочешь?
Ну там, вернуть из общего модуля сформированный отчет, например...
---
При передаче через функцию происходит Ошибка отображения типов
---
А, ну тогда конечно.
---
Вы знаете как это решить?
---
Это что такое?
```1c
    Отчет.Сформировать();
```
---
Неправильная функция открытия отчета
---
Неправильная функция открытия отчета В твоем предложении три неправильных слова.
---
```1c
    &После("ПриНачалеРаботыСистемы")
    Процедура Расш1_ПриНачалеРаботыСистемы()

    ОтчетФорма = ПолучитьФорму("Отчет.ОченьВажныйОтчет.Форма.ФормаОтчета");
    ОтчетФорма.СкомпоноватьРезультат();
    ОтчетФорма.Открыть();

    КонецПроцедуры
```
---
Спасибо Вам огромное!