Проблема с отбором в журнале

Тема в разделе "1C и всё что с ней связано", создана пользователем gorlanovmax, 12 авг 2008.

  1. gorlanovmax

    gorlanovmax Well-Known Member
    1C Team

    Регистрация:
    19 июн 2008
    Сообщения:
    286
    Симпатии:
    0
    Хочу установить в своем журнале отбор по реквизиту.
    Графа отбора "Сотрудник" создана, значение: "Справочник.Сотрудники"

    использую вот такой код

    Код (Text):
    Перем СотрудникДляОтбора, Значение;

    Процедура Отбор()
    Перем ВыбЗначение, ТекущДок;
    ТекущДок = ТекущийДокумент;
    ВидыОтбора("*");
    ВыбЗначение=СоздатьОбъект("Справочник.Сотрудники");
    Если ВыбЗначение.Выбрать("Выберите сотрудника","Форма Списка")=1 Тогда
    СотрудникДляОтбора=ВыбЗначение;
    КонецЕсли;
    Если СотрудникДляОтбора.Выбран()>0 Тогда
    УстановитьОтбор("Сотрудник", СотрудникДляОтбора);
    СотрудникДляОтбора = СотрудникДляОтбора.ТекущийЭлемент();
    Иначе
    УстановитьОтбор("");
    КонецЕсли;
    ВидыОтбора("");
    Значение=Строка(СотрудникДляОтбора);
    Попытка
    АктивизироватьОбъект(ТекущДок);
    Исключение   
    Сообщить(ОписаниеОшибки(),"!");
    КонецПопытки;  
    КонецПроцедуры

    Значение="";
    СотрудникДляОтбора=СоздатьОбъект("Справочник.Сотрудники");
    но при этом отбор не производится и выскакивает ошибка
    Хотя СотрудникДляОтбора - это элемент справочника Сотрудники.

    В чем беда?
     
  2. Hryv

    Hryv Гость

    На мой взгляд в коде есть ошибка
    Я бы написал
    Код (Text):
        Если ВыбЗначение.Выбрать("Выберите сотрудника","Форма Списка")=1 Тогда
    СотрудникДляОтбора=ВыбЗначение.ТекущийЭлемент();
    КонецЕсли;
    Если СотрудникДляОтбора.Выбран()>0 Тогда
    УстановитьОтбор("Сотрудник", СотрудникДляОтбора);
    Иначе
    ...

    ЗЫ Для реквизита "Сотрудник" обязательно должен быть установлен флаг "Отбор по реквизиту"
     
  3. kaa

    kaa Гость

    и журнал должен быть общим :(
     
  4. gorlanovmax

    gorlanovmax Well-Known Member
    1C Team

    Регистрация:
    19 июн 2008
    Сообщения:
    286
    Симпатии:
    0
    так фигня в том, что "сотрудник" это элемент справочника "сотрудники". где в самом справочнике поставить "отбор по реквизиту"? ФИО сотрудника - это наименование элемента справочника.

    понятно что вопрос глупый и простой, но меня заклинило, разобраться не могу :(

    блин, а какой тогда в этом интерес.
    у меня есть журнал документов "рабочая смена". мне там другие документы не нужны. и хочется чтобы был быстрый отбор по сотруднику
     
  5. LSH

    LSH Гость

    Надо жалобу в 1С написать, мол какого хрена, нам хочется отбор в спец. журналах! :(

    Создать графу отбора журналов - "Сотрудник_Рабочая_Смена", которому назначить только реквизит документа "Рабочая смена". Когда отбор будет идти по нему - отфильтруются только нужные документы. При отключении отбора (интерактивном) автоматически устанавливать отбор по виду документов ("Рабочая смена"). Вот и всё. И левых доков в журнале не будет.
     
  6. gorlanovmax

    gorlanovmax Well-Known Member
    1C Team

    Регистрация:
    19 июн 2008
    Сообщения:
    286
    Симпатии:
    0
    понял. вечером буду пробовать. всем спасибо.
     
  7. Hryv

    Hryv Гость

    На счет флажка - это я невнимательно тему посмотрел, решил, что отбор не в журнале, а в справочнике

    Попробуйте все таки использовать мой код, т.к. мне кажется, что значение для отбора должно быть получено через .ТекущийЭлемент()

    А журнал действительно должен быть общим
     
Загрузка...
Похожие Темы - Проблема отбором журнале
  1. PaKo
    Ответов:
    13
    Просмотров:
    5.685
  2. c0de3r
    Ответов:
    5
    Просмотров:
    119
  3. DobermannTT
    Ответов:
    10
    Просмотров:
    134
  4. SoulPaladin
    Ответов:
    4
    Просмотров:
    128
  5. Artael
    Ответов:
    1
    Просмотров:
    109

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