8.х Программый Отбор элементов справочника по владельцу

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

  1. TopicStarter Overlay
    Greck
    Offline

    Greck Опытный в 1С

    Регистрация:
    11 дек 2006
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    26
    Доброго времени суток коллеги B) Взываю к вашей помощи :unsure: Воодные данные:

    Есть справочники:
    1.Организации
    2.Расчетные счета (подчиненный элементам справочника организации)

    Есть документ
    1.Протокол создания новой организации(создает новый элемент справочника Организации)
    (Одним из реквизитов этого документа является поле "расчетный счет")

    Доп.Информация:
    При создании нового документа "Протокол создания новой организации" поле
    "расчетный счет" я сделал недоступным, а доступность возвращается только после записи документа...
    это сделанно потому, что справочник "Расчетные счета" подчиненный справочнику "Организации" и пока не записан новый элемент организации документом "Протокол создания новой организации" Владельца у "расчетного счета" нет, после записи документа "Протокол создания новой организации" появляется елемент справочника "Организации" который и будет будущим владельцем выбранного расчетного счета...

    Проблема такая:
    Как мне после записи документа "Протокол создания новой организации", при нажатии на поле "расчетный счет" - тогда когда выпадает список элементов справочника "расчетные счета" установить отбор по владельцу... так чтобы показывались только те рассчетные счета владельцем которых является элемент Организация в данном выбранном документе...


    или же подскажите как вызвать форму создания нового элемента справочника "рассчетные счета", и после создания там элемента подставить ссылку на него в поле "расчетный счет" документа Протокол создания новой организации???
  2. Pilgrim
    Offline

    Pilgrim Опытный в 1С

    Регистрация:
    13 сен 2006
    Сообщения:
    242
    Симпатии:
    0
    Баллы:
    26
    А если в свойствах поля РасчетныйСчет установить свойство "Связь по владельцу" и указать там поле орагнизация не получится?
  3. TopicStarter Overlay
    Greck
    Offline

    Greck Опытный в 1С

    Регистрация:
    11 дек 2006
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    26
    Да так пока и сделал, тут оказывается с заказчиком пришлось внести изменения в ТЗ и теперь расчетный счет - это реквизит справочника Организации, все успростилось и я решил задачу как раз способом по вашему совету)) Спасибо. :unsure:

    На скриншоте(свойства поля "расчетный счет" элемента справочника "Огранизации") для последователей)) указанно где необходимо указать ссылку на Владельца...

    Вложения:

    • settings.JPG
      settings.JPG
      Размер файла:
      57,6 КБ
      Просмотров:
      315
  4. TopicStarter Overlay
    Greck
    Offline

    Greck Опытный в 1С

    Регистрация:
    11 дек 2006
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    26
    Новую ветку решил не создавать, вопрос следующий, как отбирать по владельцу понятно, а вот как отбирать по значению какого-то поля?

    То есть у меня в документе есть поле "Организация" в которое выбирается значения из справочника организации, но как мне при отображении для выбора организации, отсотритовать организаци по заданным условиям, чтобы не приходилось долго искать во всем справочнике??
  5. Pilgrim
    Offline

    Pilgrim Опытный в 1С

    Регистрация:
    13 сен 2006
    Сообщения:
    242
    Симпатии:
    0
    Баллы:
    26
    А вот тут уже придется ручками отбор ставить в открываемой форме выбора. По-моему где-то писал уже, посмотри в предыдущих темах что-то типа как отфильтровать справочник.
  6. TopicStarter Overlay
    Greck
    Offline

    Greck Опытный в 1С

    Регистрация:
    11 дек 2006
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    26
    http://www.1c-pro.ru/index.php?showtopic=1003 тут нету ответа :(
  7. Pilgrim
    Offline

    Pilgrim Опытный в 1С

    Регистрация:
    13 сен 2006
    Сообщения:
    242
    Симпатии:
    0
    Баллы:
    26
    :unsure: Значит ещё раньше было. Ладно, тебе надо на форме, в обработчике события НачалоВыбора данного реквизита сделать СтандартнаяОбработка = Ложь, потом получить форму справочника, из которого будешь выбирать ФормаВыбора = Справочники.Контрагенты.ПоучитьФормуВыбора(,Элемент), потом ставишь отбор, что-нибудь типа
    ФормаВыбора.СправочникСписок.Отбор.Наименование.Значение = "Наш контрагент";
    ФормаВыбора.СправочникСписок.Отбор.Наименование.ВидСравнения = ВидСравнения.Равно;
    ФормаВыбора.СправочникСписок.Отбор.Наименование.Использование = Истина;
    Ну и все, потом ФормаВыбора.Открыть() и получаешь отфильтрованный справочник по реквизиту Наименование, если надо, то можешь ещё с помощью НастройкаОтбора установить доступности отборов.
  8. TopicStarter Overlay
    Greck
    Offline

    Greck Опытный в 1С

    Регистрация:
    11 дек 2006
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    26
    Огромное спасибо) Вот код результата:

    Код:
    Процедура ОрганизацияНачалоВыбора(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ТипОрганизацииФильтр = Перечисления.ТипыОрганизаций.ФизическоеЛицо;
    ФормаВыбора = Справочники.Организации.ПолучитьФормуВыбора("ФормаСписка",Элемент);
    ФормаВыбора.СправочникСписок.Отбор.ТипОрганизации.Значение = ТипОрганизацииФильтр;
    ФормаВыбора.СправочникСписок.Отбор.ТипОрганизации.ВидСравнения = ВидСравнения.Равно;
    ФормаВыбора.СправочникСписок.Отбор.ТипОрганизации.Использование = Истина;
    ФормаВыбора.Открыть();
    КонецПроцедуры
    

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