Если глЗначениеПодбораСоответствуетСтрокеТаблицыМФ(ТаблицаМФ, Значение) = 0 Тогда Возврат КонецЕсли;
//******************************************************************************
//
Функция глТипВидЗначения(Значение) Экспорт
Попытка
Возврат ТипЗначенияСтр(Значение)+"."+Значение.Вид()
Исключение
КонецПопытки;
Возврат ТипЗначенияСтр(Значение)
КонецФункции // глТипВидЗначения()
//******************************************************************************
//
Функция глЗначениеПодбораСоответствуетСтрокеТаблицыМФ(ТаблицаМФ, Значение) Экспорт
Если ПустоеЗначение(Значение) = 1 Тогда Возврат 0 КонецЕсли;
СписокДопустимыхТиповВидов = СоздатьОбъект("СписокЗначений");
Если (ТаблицаМФ.ТекущаяСтрока() >= 1) и (ТаблицаМФ.ТекущаяСтрока() <= ТаблицаМФ.КоличествоСтрок()) Тогда
Если ТипЗначенияСтр(ТаблицаМФ.Вид)="СписокЗначений" Тогда
Если ТаблицаМФ.Вид.РазмерСписка() = 0 Тогда
СписокДопустимыхТиповВидов.ДобавитьЗначение(СокрЛП(ТаблицаМФ.Тип));
Иначе
Для СчВидов = 1 По ТаблицаМФ.Вид.РазмерСписка() Цикл
СписокДопустимыхТиповВидов.ДобавитьЗначение(СокрЛП(ТаблицаМФ.Тип) + "." + СокрЛП(ТаблицаМФ.Вид.ПолучитьЗначение(СчВидов)));
КонецЦикла;
КонецЕсли;
Иначе
СписокДопустимыхТиповВидов.ДобавитьЗначение(СокрЛП(ТаблицаМФ.Тип) + ?(ПустоеЗначение(ТаблицаМФ.Вид) = 1, "", "." + СокрЛП(ТаблицаМФ.Вид)));
КонецЕсли;
Если СписокДопустимыхТиповВидов.НайтиЗначение(глТипВидЗначения(Значение)) = 0 Тогда
Предупреждение("Тип выбранного значения (" + глТипВидЗначения(Значение) + ") не соответствует ожидаемому (" + СписокДопустимыхТиповВидов.ПолучитьЗначение(1) + "). Закройте все окна подбора и попробуйте снова!");
Возврат 0;
КонецЕсли;
КонецЕсли;
Возврат 1;
КонецФункции // глЗначениеПодбораСоответствуетСтрокеТаблицыМФ()
Цитата: Злоп от 30 января 2026, 21:08Наверное, у Алексея просто руки не дошли до внешних отчетов в части этой метки.Алексей тупо многие вещи просто для внешних отчётов не тестировал. Сегодня посмотрел, там и некоторые другие атрибуты не будут для внешних работать.
Процедура Сформировать()
МеткаНовойФормы = _GetPerformanceCounter();
Сообщить("Открываем форму с меткой: "+МеткаНовойФормы);
ОткрытьФорму("Отчет#"+МеткаНовойФормы,,РасположениеФайла());
КонецПроцедуры // Сформировать()
Процедура ПослеОткрытия()
РФ = СоздатьОбъект("РасширениеФормы");
МеткаЭтойФормы = РФ.Метка;
Сообщить(СимволТабуляции+"метка открытой формы: " + МеткаЭтойФормы);
КонецПроцедуры // ПослеОткрытия