8.х Отбор и сортировка

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Ольгусик, 24 дек 2010.

  1. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Здравствуйте. Помогите реализовать следующую задачу. Форма списка. Отбор и сортировка. Нужно отобрать, например, по реквезиту "Сотрудник". Нужно сделать, чтобы при открытии формы справочника сотрудники выходили элементы только с определенным родителем
  2. r-d-v2008
    Offline

    r-d-v2008 Опытный в 1С

    Регистрация:
    16 сен 2010
    Сообщения:
    272
    Симпатии:
    0
    Баллы:
    26
    ну поставте условие
  3. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Нужно, чтобы уже, когда пользователь ставил условие на отбор, он выбирал из определенных сотрудников
  4. r-d-v2008
    Offline

    r-d-v2008 Опытный в 1С

    Регистрация:
    16 сен 2010
    Сообщения:
    272
    Симпатии:
    0
    Баллы:
    26
    Вы сформулируйте четче, что вам нужно? и выложите обработку
  5. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.735
    Симпатии:
    508
    Баллы:
    204
    Значит нужно обрабатывать событие ПриИзменении условия.
  6. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    А это событие формы списка? НЕ могу найти?

    Какую обработку?
    Есть форма списка документа "Путевой лист". Нажимаем на кнопку "Отбор и сортировка." Нужно отобрать по реквезиту Сотрудник. Отмечаем его галочкой. Нажимаем на кнопку выбора. Открывается справочник Сотрудники. Так вот нужно, чтобы в форме выбора этого справочника пользователю были видны только те элементы, родитель у которого, допустим Водители
  7. Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    Так не сделаете, проще вынести реквизит отбора в форму и галочку включения/выключения, а в форме для реквизита отбора, в процедуре "ПриОткрытии", установить возможный список для выбора.
  8. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Обычно чтобы в форме выбора при нажатии на кнопку выбора устанавливался отбор, в обработчик события "НачалоВыбора" пишут так:
    Код:
    СтандартнаяОбработка = Ложь;
    
    ФормаВыбора = Справочники.СотрудникиОрганизаций.ПолучитьФормуВыбора(,Элемент,);
    
    ФормаВыбора.СправочникСписок.Отбор.Ссылка.ВидСравнения = ВидСравнения.ВИерархии;
    ФормаВыбора.СправочникСписок.Отбор.Ссылка.Использование = Истина;
    ФормаВыбора.СправочникСписок.Отбор.Ссылка.Значение = Справочники.СотрудникиОрганизаций.НайтиПоНаименованию("Папка");
    ФормаВыбора.ЭлементыФормы.СправочникСписок.НастройкаОтбора.Ссылка.Доступность = ложь;
    ФормаВыбора.Открыть();
    
    
    Вам надо что-то вроде этого?, или я неправильно понял?
  9. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Вы поняли правильно. Да, так. Только еще надо условие поставить какое-то, чтобы только в этом документе так было.
  10. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Вроде получилось. Но вот только другие элементы, которые являются родителями видны. Мне нужно, чтобы вообще только нужные элементы были видны

    Можно ли как-то сделать, чтобы при открытии иерархический просмотр был отключен
  11. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Хоть те папки и видны, но в них же ничего нет :)

    Ой...

    Не понял, какие элементы видны???
  12. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Я знаю. Но мне не это нужно. Мне нужно, чтобы пользователь не рылся в папках. Поэтому я вот думаю, может иерархический просмотр отключать. Как это сделать программно?
  13. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    ЭтаФорма.ЭлементыФормы.СправочникСписок.ИерархическийПросмотр=ложь;
    Я сделала так, но не работает. Поправьте меня
  14. Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    Если элементов не много, лучше сделать реквизит со списком выбора, тогда пользователю будет удобнее выбирать.

    ФормаВыбора.ЭлементыФормы.СправочникСписок.ИерархическийПросмотр=ложь;
  15. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Много элементов
  16. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Ну если вы используете тот мер кода, который я вам привел, то работает так:
    Перед строкой:
    Код:
    ФормаВыбора.Открыть();
    
    пишите:
    Код:
    ФормаВыбора.ЭлементыФормы.СправочникСписок.ИерархическийПросмотр=ложь;
    
    Проверял - получается!!!:)
  17. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Ну я немного по другому сделала. В процедуре приНачалеВыбора в Модуль приложения передается
    Код:
    ВыбранСотрудник=Истина;
    
    
    В форме Выбора Справочника Сотрудники В Процедуре ПриОткрытии:
    Код:
    Если ВыбранТракторист=Истина Тогда
    ЭтаФорма.СправочникСписок.Отбор.Ссылка.видсравнения = видсравнения.ВИерархии;
    ЭтаФорма.СправочникСписок.Отбор.Ссылка.Использование = истина;
    ЭтаФорма.СправочникСписок.Отбор.ссылка.Значение = Справочники.Сотрудники.НайтиПоНаименованию("Трактористы");;
    ЭтаФорма.ЭлементыФормы.СправочникСписок.ИерархическийПросмотр=ложь; 	
    КонецЕСли;
    
    
    
    Все получается, кроме иерархического просмотра.

    Так, как вы тоже получилось.Спасибо. Но это я сделала только в самом документе при выборе реквизита Сотрудник.
    А вот при отборе в форме Списка я не поняла куда в какой обработчик вставить этот код. Подскажите пожалуйста
  18. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Че-то я логику потерял....:(
    Не понимаю, почему отбор у вас работает, а иерархия нет. Все в одном условии ведь написано.
  19. TopicStarter Overlay
    Ольгусик
    Offline

    Ольгусик Опытный в 1С Команда форума

    Регистрация:
    4 фев 2010
    Сообщения:
    646
    Симпатии:
    3
    Баллы:
    29
    Вот и тоже что-то не могу разобраться почему в моем случае не работает. Но сделала, как Вы написали. Нормально. Меня устраивает.
    Но нужно еще и в форме списка документа сделать, чтобы при установке отбора и сортировки в Форме Отбора и сортировки тоже самое было.
  20. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Окно отбоа является автоматически сгенирированным окном и отловить его события нельзя
    1. Можно самостоятельно создать новую форму отбора и сортировки и тогда можете обрабатывать что хотите.
    2. Проверить структуру параметром вызванной формы выбора справочника сотрудники, и если определен владелец, либо какая-нибудь структура или соответствия, хранящая ссылку на вызвавший элемент, то при открытии в самом справочнике описать реакцию справочника

Поделиться этой страницей