V8: Как програмно открыть форму подчиненного справочника? (кликнув по "ПО КНОПКЕ") #495746


#0 by Tatitutu
V8: Как програмно открыть форму подчиненного справочника? (кликнув по "ПО КНОПКЕ" на форме) (Наиболее правильно с Вашей точки зрения и опыта) Это вопрос к обсуждению. Вчера приходил парень на собеседевание (программист 1С8.1) ему попалась данная задачка: Условие Есть два справочника ТипРазмерныхЛинеек и подчиненный ему справочник Размеры на форме списка справочника ТипРазмерныхЛинеек расположили Табличное поле               тип: СправочникСписок.Размеры связь по владельцу: СправочникСписок.ПриАктивизацииСтроки на панели автоматически появится подменю "Перейти" (в подчиненный справочник "Размеры") Все работает и так Теперь сама задачка Разместить на форме (форма списка справочника ТипРазмерныхЛинеек) кнопку  - при нажатии на которую откроется форма списка подчиненного справочника Размеры (аналог действия меню "Перейти") Интернет был у парня под рукой - вчера увидел много различных вариантов и самое интерсное что рабочих... вариант ЗначениеОтбора = Новый Структура("Владелец", ЭлементыФормы.СправочникСписок.ТекущаяСтрока); ПараметрыФормы = Новый Структура("Отбор", ЗначениеОтбора); ОткрытьФорму("Справочник.Размеры.ФормаСписка", ПараметрыФормы); (пример: найден в сети) вариант Форма=Справочники.Размеры.ПолучитьФормуСписка; Форма.ЭлементыФормы.СправочникСписок.Значение.Отбор.Владелец.Установить(ТекЭлемент); Форма.Открыть; (пример: найден в сети) вариант ... А какой бы Вы вариант предложили, с Вашей точки зрения наиболее правильный и простой для понимания у меня (44 символа) а у Вас ? (картинки для задачки
#1 by Нуф-Нуф
44 символа = 22 см?
#2 by Tatitutu
"...а руки то помнят ?" (с)
#3 by Stepa86
(найдено в сети)
#4 by Stepa86
+ это официальная позиция 1С, не вижу смысла извращаться и делать не очевидные но короткие методы
#5 by Tatitutu
да именно эту ссылка приведена тогда чем хуже или лучше код:        Форма=Справочники.Размеры.ПолучитьФормуСписка;    Форма.ПараметрОтборПоВладельцу = ТекЭлемент;    Форма.Открыть;
#6 by Stepa86
по методологии в 8.2 формы не рекомендуется получать, их рекомендуется сразу открывать с набором нужных параметров, а уже внутри формы ее донастраивать в соответствии с параметрами... а вообще кнопке можно в качестве обработчика назначить предопределенную функцию вызова списка подчиненного объекта - точь в точь как в перейти. - 0 символов однако
#7 by Tatitutu
да это понятно , что можно и 0 символов - вопрос не в этом стоял
#8 by Domovoi
А вот интересно как быть если элемент главного спраочника только создан но не сохранен, что тогда делать(владельца указать нельзя получается)?)
#9 by Domovoi
+Подвох задачи) Как раз недавно задумался над этим) Все что я придумал: при нажатии на кнопку вызова подчиненного справочника, вызывать ТЗ(возможен частный случай СЗ) и в ней загружать список элементов подчиненного справочника. При добавлении или редактировании открывать форму(отдельную обработку аналог элементу подчиненного справочника), там выбрать нужные параметры, при нажатии "ОК" изменять ТЗ(СЗ). При нажатии "ОК" в основном справочнике - записывать элементы в подчиненном справочнике используя ТЗ(СЗ). Если есть реализация получше то подскажите.
#10 by Stepa86
Если Владелец не указан, то подчиненный справочник записать нельзя, соответственно у незаписанного элемента не может быть подчиненных
#11 by Shurjk
Вам что на собеседовании придраться больше не к чему? Вообще не показатель как он форму открыл.. мог и балбес правильно сденлать - который недавно читал наставления 1с, мог и нормальный спец непраильно сделать ибо очевидной разницы там нет, а наставления он как то давно уже не читал... ибо по большему счету там для него ничего интересного нет.
#12 by Зеленый Кот
вы еще боретесь с размером своих программ? значит вы маньяк! (с)
Тэги: Математика и алгоритмы
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С