К основному контенту

ЗУП 3.* Ученые степени Физических лиц

В текущей версии сведения о ученой степени хранятся в непериодическом регистре сведений, поэтому воссоздадим работу виртуальной таблицы среза последних самостоятельно.

Интерактивно в научную степень Физического лица в форме элемента "подтягивается" последняя присвоенная степень. Ниже вариант с дополнительным разбиением по Отрасли науки (на практике реквизит записи справочника Ученые Степени может быть и не заполнен, решение о необходимости разбиения по отросли следует принять самостоятельно - параметр запроса &РазбиратьУчетныеСтепениПоОтраслямНаук )

Функция ПолучитьРезультатЗапроса_УченыеСтепениФизЛиц()
 
 //Текст сформирован автоматически обработкой Универсальная консоль отчетов 2.6.3
 Запрос = Новый Запрос;
 Запрос.Текст = "ВЫБРАТЬ
 | УченыеСтепениФизическихЛиц.ФизическоеЛицо КАК ФизическоеЛицо,
 | УченыеСтепениФизическихЛиц.ДатаПрисужденияУченойСтепени КАК Период,
 | ВЫБОР
 |  КОГДА &РазбиратьУчетныеСтепениПоОтраслямНаук = ИСТИНА
 |   ТОГДА УченыеСтепениФизическихЛиц.УченаяСтепень.ОтрасльНауки
 |  ИНАЧЕ ЗНАЧЕНИЕ(Справочник.ОтраслиНауки.ПустаяСсылка)
 | КОНЕЦ КАК ОтрасльНауки,
 | ВЫБОР
 |  КОГДА УченыеСтепениФизическихЛиц.УченаяСтепень.Родитель = ЗНАЧЕНИЕ(Справочник.УченыеСтепени.ПустаяСсылка)
 |   ТОГДА УченыеСтепениФизическихЛиц.УченаяСтепень
 |  ИНАЧЕ УченыеСтепениФизическихЛиц.УченаяСтепень.Родитель
 | КОНЕЦ КАК УченаяСтепень
 |ПОМЕСТИТЬ втВсеУченыеСтепениФизЛиц
 |ИЗ
 | РегистрСведений.УченыеСтепениФизическихЛиц КАК УченыеСтепениФизическихЛиц
 |;
 |
 |////////////////////////////////////////////////////////////////////////////////
 |ВЫБРАТЬ
 | УченыеСтепениФизЛицСрезПоследних.ФизическоеЛицо КАК ФизическоеЛицо,
 | УченыеСтепениФизЛицСрезПоследних.ОтрасльНауки КАК ОтрасльНауки,
 | УченыеСтепениФизЛицСрезПоследних.Период КАК Период,
 | втВсеУченыеСтепениФизЛиц.УченаяСтепень КАК УченаяСтепень
 |ИЗ
 | (ВЫБРАТЬ
 |  втВсеУченыеСтепениФизЛиц.ФизическоеЛицо КАК ФизическоеЛицо,
 |  втВсеУченыеСтепениФизЛиц.ОтрасльНауки КАК ОтрасльНауки,
 |  МАКСИМУМ(втВсеУченыеСтепениФизЛиц.Период) КАК Период
 | ИЗ
 |  втВсеУченыеСтепениФизЛиц КАК втВсеУченыеСтепениФизЛиц
 | ГДЕ
 |  втВсеУченыеСтепениФизЛиц.Период <= &amp;ДатаСреза
 | 
 | СГРУППИРОВАТЬ ПО
 |  втВсеУченыеСтепениФизЛиц.ФизическоеЛицо,
 |  втВсеУченыеСтепениФизЛиц.ОтрасльНауки) КАК УченыеСтепениФизЛицСрезПоследних
 |  ВНУТРЕННЕЕ СОЕДИНЕНИЕ втВсеУченыеСтепениФизЛиц КАК втВсеУченыеСтепениФизЛиц
 |  ПО УченыеСтепениФизЛицСрезПоследних.ФизическоеЛицо = втВсеУченыеСтепениФизЛиц.ФизическоеЛицо
 |   И УченыеСтепениФизЛицСрезПоследних.ОтрасльНауки = втВсеУченыеСтепениФизЛиц.ОтрасльНауки
 |   И УченыеСтепениФизЛицСрезПоследних.Период = втВсеУченыеСтепениФизЛиц.Период";
 //Параметры запроса
 Запрос.УстановитьПараметр("ДатаСреза",ДатаСреза);//Дата
 Запрос.УстановитьПараметр("РазбиратьУчетныеСтепениПоОтраслямНаук",Ложь);//Булево
 Результат = Запрос.Выполнить();

 Возврат Результат;

КонецФункции //ПолучитьРезультатЗапроса_УченыеСтепениФизЛиц

Комментарии

Популярные сообщения из этого блога

СписокВыбора. Показать Представление вместо Значения

Вводная Если на форме есть элемент управления со списком выбора, в моем конкретном примере это Колонка Значение (Число (3,0)) с настроенным списком выбора. По умолчанию платформа отображает именно строковое значения, а не текст представления  из списка выбора (когда как при выборе значения из списка показываются именно представления). Решение Для Управляемых форм необходимо настроить правила условного оформления, для обычных форм - оформление ячеек при выводе данных.

Табличный Документ. Разная ширина колонки в строках

Когда нужно в макете (табличном документе) изменить ширину колонки  для конкретных строк: 1. Выделить всю строку (строки). Именно всю, фокус для выделенной области не работает. 2. Нажимаем и не отпускает Ctrl 3. С помощью мыши изменяют ширину любой из колонок - будет задан вопрос об создании нового формата строк - соглашаемся. Как же прекрасен мир, где для модификаций не достаточно просто использовать контекстное меню и диалог редактора свойств, где нужно знать заветные слова и таинства танца. 90ые, моё почтение. UPD Программно, тоже самое, можно сделать через ТабДок = Новый ТабличныйДокумент(); ТабДок.Область(1,,1,).СоздатьФорматСтрок(); ТабДок.Область(1,1).ШиринаКолонок = 70; ТабДок.Область(1,2).ШиринаКолонок = 30; ТабДок.Область(2,,2,).СоздатьФорматСтрок(); ТабДок.Область(2,1).ШиринаКолонок = 30; ТабДок.Область(2,2).ШиринаКолонок = 70; ТабДок.Показать();

Расширение конфигурации + Связанные документы (Режим совместимости 8.3.12)

Вводная: реализовать ввод Заказа поставщику на основании Заказа на Ремонт. решить через расширения конфигурации. Хочу обратить ваше внимание, не нужно добавлять в расширение критерий отбора, для 8.3.12 нам не доступно добавление\изменение состава критерия. Более того может зависать конфигуратор (столкнулся с последней версией 8.3.14 + ERP) Разработку рекомендую вести с применением хранилища и для расширения. Иначе устанете потом выгребать чего лишнего включили в расширение при добавлении таких или схожих обектов с составными типами и подобное. Все текущие типовые решения сейчас идут в режиме совместимости 8.3.12, в прочем и для 8.3.14 (и даже 8.3.15 ничего не поменялось). Что нам нужно было бы сделать при отказе от поддержки: 1) добавить наш документ в Критерий отбора (состав, реквизиты); 2) в раздел Ввод на основании целевого документа. И что с целью сохранения поддержки. Как сделать это же для расширения: 1) Добавить реквизит расширения Документы.ЗаказПоставщику._За