Как обратится в параметре запроса, к тому документу который открыть?
Здравствуйте, подскажите пожалуйста, как указать в параметре запроса тот документ, который открыть?
Есть обработка, которая подключена как внешняя, в документе Назначение планового начисления, обращается к реквизиту Дата Окончания из шапки документа и заполняет им колонку Дата Окончания в табличной части, этого же документа. Сейчас это сделано, через явное обращение к документу через НайтиПоНомеру, а нужно обратиться к документу, который открыт в данный момент. Конфигурация ЗУП КОРП 3.1. Спасибо.
Код :
Есть обработка, которая подключена как внешняя, в документе Назначение планового начисления, обращается к реквизиту Дата Окончания из шапки документа и заполняет им колонку Дата Окончания в табличной части, этого же документа. Сейчас это сделано, через явное обращение к документу через НайтиПоНомеру, а нужно обратиться к документу, который открыт в данный момент. Конфигурация ЗУП КОРП 3.1. Спасибо.
Код :
&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения) Экспорт
Если ИдентификаторКоманды = "ОбработкаТЧСоставУСпецификации" Тогда
Режим = РежимДиалогаВопрос.ДаНет;
Оповещение = Новый ОписаниеОповещения("ПослеОтветаНаВопросОЗаполненииТЧ", ЭтаФорма, Параметры);
ПоказатьВопрос(Оповещение, "Заполнить табличную часть?", Режим, 0);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПослеОтветаНаВопросОЗаполненииТЧ(Результат,Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Нет Тогда
Возврат;
КонецЕсли;
НовыйОбъект = ВладелецФормы.Объект;
ЗаполнитьТЧСервер(НовыйОбъект);
КопироватьДанныеФормы(НовыйОбъект, ВладелецФормы.Объект);
Сообщить("Табличная часть обработана") ;
КонецПроцедуры
&НаСервере
Функция ЗаполнитьТЧСервер(объектСТабличнойЧастью)
ТабСотрудники = объектСТабличнойЧастью.Сотрудники;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| НазначениеПлановогоНачисления.Ссылка КАК Ссылка,
| НазначениеПлановогоНачисления.ДатаОкончания КАК ДатаОкончания
|ИЗ
| Документ.НазначениеПлановогоНачисления КАК НазначениеПлановогоНачисления
|ГДЕ
| НазначениеПлановогоНачисления.Ссылка = &ТекущийДокумент";
Запрос.УстановитьПараметр("ТекущийДокумент", Документы.НазначениеПлановогоНачисления.НайтиПоНомеру("0000-000020",'20180101'));
// Тут нужно обратится к документу который открыт в данный момент
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ДатаОконончанияШапка =(ВыборкаДетальныеЗаписи.ДатаОкончания) ;
Для каждого стр из ТабСотрудники цикл
Стр.ДатаОкончания = ДатаОконончанияШапка;
КонецЦикла ;
КонецЦикла;
КонецФункции
ПоказатьПо теме из базы знаний
- XPath в 1С - как с этим работать.
- Перенос данных из УПП 1.3 / КА 1.1 в БП 3. Переносятся документы, справочники и начальные остатки
- Вывод печатных форм с запросом данных в форму "Печать документов" из подсистемы БСП "Печать".
- Консоль запросов со встроенным Конструктором запросов для 1с8.3 (8.2) своими руками
- Как сдать экзамен 1С:Специалист по платформе?
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Не совсем понятно, документов в данный момент может быть открыто несколько, а вот форма активная - одна, как вариант, искать активную форму (только для тонкого клиента), в толстом не получится! А вообще обработка как открывается, из файла или подключаемая (обработка таб. частей)??
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот