Консультация № 110290
20.11.2007, 14:52
0.00 руб.
0 3 3
Добрый день уважаеммые эксперты!
В если можно поясните такой момент в вопросе № 108563 мне посоветовали создать отдельную форму списка справочника, создать я ее создал, а вот как сделать возможность выбора между этими двумя формами? В режиме предприятия справочник по умолчанию открывается с основной формой списка....... Будте добры подскажите как быть..... Зарание спасибо!

Приложение:
Список ответов на вопрос № 108563/ КОМПЬЮТЕРЫ И ПО / Языки программирования / 1С для программистаВопросДобрый день уважаемые эксперты! Вновь прошу Вашей помощи....Надо сделать такую вещь - Есть справочник ну скажим "базовый", в этом справочнике есть числовой реквизит "Архив" у некоторых элементов он =0 у некоторых =1. Надо сделать так чтобы была возможность скрывать те элементы у которых реквизит "Архив" =1. Т.е должна быть галочка - если она стоит, то непоказывать эти элементы, если не стоит показывать все. Есть еще один важный момент. Элементы этого справочника используются в других справочниках, отчетах и тд. Надо сделать так, чтобы Те элементы у которых реквизит "Архив" =1 НЕГДЕ НЕ ОТОБРАЖАЛИСЬ не зависимо от того стоит в справочнике "Базовый" галочка или не стоит. Т.е проще говоря нужно сделать так, чтобы элементы с реквизитом "Архив" =1 Можно было видеть только в справочнике "Базовый" и только при стоящей галочке. Зарание прошу прощения если, что много написал, просто хотел как можно подробнее описать проблемму. Если будут вопросы с удовольствием отвечу на них в минифоруме. Зарание благодарю, с Уважением Сергей. Отправил: Serega_artem (7-ой класс)Дата отправки: 08.11.2007, 16:15Поступило ответов: 3 Приложение:ОтветыОтвечает: Сергей Максименко [Elric]Здравствуйте, Serega_artem!1. Нужно сделать отдельную форму списка справочника "Базовый" и назначить ее формой для выбора (в Конфигураторе правой кнопкой на справочнике - Формы списка - Редактировать, далее соответствующай кнопка).2. Далее есть два варианта решения.а) при открытии этой формы списка справочника автоматически делать отбор по реквизиту Архив и значению 0 (метод УстановитьОтбор(), см. Синтакс-Помощник)б) при открытии этой формы списка справочника формировать СписокЗначений с элементами, у которых реквизит Архив=0 и применить метод ИспользоватьСписокЭлементов() (см. Синтакс-Помощник)В результате при открытии справочника в обычном режиме будут видны все элементы (если это не нужно, то в обычной форме списка нужно поставить тот же автоматический отбор, но по-моему лучше его включать опционально, например сделать специальную кнопку или пользоваться встроенной интерактивной функцией отбора по реквизиту), а при выборе элемента справочника в качестве реквизита будут видны только те элементы, которые Вам нужны. Т.е. как и заказывалиОтветил: Сергей Максименко [Elric] (статус: Профессионал)Дата отправки: 08.11.2007, 16:33 Оценка ответа: 5Ну во-первых спасибо. Насчет метода УстановитьОтбор я и сам думал, но есть одно но, а именно вторая часть моего вопроса: "Есть еще один важный момент. Элементы этого справочника используются в других справочниках, отчетах и тд. Надо сделать так, чтобы Те элементы у которых реквизит "Архив" =1 НЕГДЕ НЕ ОТОБРАЖАЛИСЬ не зависимо от того стоит в справочнике "Базовый" галочка или не стоит. Т.е проще говоря нужно сделать так, чтобы элементы с реквизитом "Архив" =1 Можно было видеть только в справочнике "Базовый" и только при стоящей галочке".Как быть с этим? Еще раз огромное спасибо!Отвечает: Ромашов Евгений НиколаевичЗдравствуйте, Serega_artem!что касается справочника "базовый" на форме списка нада галочку сделать, и на ее изменение настроить функцию, которая будет устанавливать отбор по реквизиту архив.что касается других справочников, так наверно не получится, так это по сути другой объект, можно конечно использовать метод ИспользоватьСписокЭлементов() и при открытии списка "другого" справочника в котором есть ссылки на элементы "Базового", сделать к нему запрос с условием "Архив = 0" и вышеуказанный метод передать полученный из запроса список элементов. Ответил: Ромашов Евгений Николаевич (статус: 4-ый класс)Дата отправки: 09.11.2007, 07:06 Оценка ответа: 4Ну это я и сам знал..... а вообще мне очень понравился ответ первого эксперта - действительно то, что надо! Но все равно большое спасибо за участие в решении моей проблеммы! Отвечает: Астафьев Александр НиколаевичЗдравствуйте, Serega_artem! Для реквизита "Архив" в конфигураторе установите на закладке "Дополнительные" флаг"Отбор по реквизиту". Чтобы "НЕГДЕ НЕ ОТОБРАЖАЛИСЬ" лучше во все кроме одной формы справочника в процедуру "ПриОткрытии" добавте оператор УстановитьОтбор("Архив",0) тогда при открытии справочника те элементы у которых Архив = 1 отображаться не будут. Для какой либо одной формы выполнять или нет этот опрератор (т.е. отображать элементы с Архив=1 или нет) можно с помощью галочки (ее идентификатор например "Видеть")как вы написали и к ней привяжите процедуру напримерПроцедура ВидимостьАрхивных(Видеть)Если Видеть = 0 огдаУстановитьОтбор("Архив",0);ИначеУстановитьОтбор("");КонецЕсли;КонецПроцедуры Ответил: Астафьев Александр Николаевич (статус: 5-ый класс)Дата отправки: 11.11.2007, 13:45 Оценка ответа: 5Спасибо огромное!!!! Отличный ответ!!! Местный мини-форум[08.11.2007, 17:41]Serega_artem, отвечаю на Ваш комментарий. Если сделаете специальную форму списка "для выбора" и включите там автоматический отбор при открытии (как я и писал), то "ненужные" элементы не будут отображаться. Разумеется, в запросах (в отчетах) фильтр нужно делать отдельно, но при выборе элемента из "Базового" все будет в порядке. Попробуйте, если что не получится - пишите :)-------Сергей Максименко [Elric] (Профессионал)[09.11.2007, 15:11]Спасибо! Вот теперь все понял! Была бы возможность еще бы 5 поставил!!!!-------Serega_artem (7-ой класс)

Обсуждение

Неизвестный
20.11.2007, 18:14
общий
это ответ
Здравствуйте, Serega_artem!

Я написал еще в прошлом ответе, Вы просто невнимательны.
В Конфигураторе правой кнопкой мыши на справочнике, в открывшемся меню выбираете "Формы списка", подпункт "Редактировать" (в самом низу) -- откроется форма управления формами списка. Далее ставите курсор на нужную форму и нажимаете кнопку "Для выбора".
Неизвестный
21.11.2007, 06:14
общий
это ответ
<font color=blue><b>!!!</b></font>
Здравствуйте, Serega_artem!
В реквизите, где открывается этот справочник, необходимо указать эту форму в Свойствах поля ввода на вкладке дополнительно в реквизите форма.<p><fieldset style=‘background-color:#EFEFEF; width:80%; border:blue 1px solid; padding:10px;‘ class=fieldset><font color=blue><i>Таким образом пришлось бы прописывать наименование формы во всех элементах данного типа...</i>
-----
</font><font color=#777777 size=1><b>• Отредактировал: <a href=/info/user/10794 target=_blank>Сергей Максименко [Elric]</a></b> (Профессионал)
<b>• Дата редактирования:</b> 21.11.2007, 21:45</font></fieldset>
Неизвестный
22.11.2007, 19:12
общий
это ответ
Здравствуйте, Serega_artem! Когда вы вызываете команду на открытие справочника указываете какую форму списка открывать ОткрытьФорму(‘‘Справочник.Базовый.ДляПодбора‘‘,) Т.е в основную форму справочника которая открывается по умолчанию вы прописываете процедуру которая однозначно прячет элементы с Архив=1, а когда надо показать все элементы используйте кнопку с командой в процедуре ОткрытьФорму(). В режиме предприятия выбирать какую форму открывать не получится
Форма ответа