8.х Помогите с функциями поиска

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

  1. TopicStarter Overlay
    stail
    Offline

    stail

    Регистрация:
    6 авг 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Доброго утра всем.

    Задача такая: в справочнике Контрагенты (Форма списка) необходимо создать функции поиска по реквизитам (лицевой счет и т.д.) на примере поиска по Штрих-коду в справочнике Номенклатура.

    Подскажите как должный выглядеть эти функции.

    Заранее спасибо
  2. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    рсчетные счета - это доп справочник, возможно даже подчиненный справочнику "контраегенты", т.е. искать нужно в нем, будет что-то вроде:

    РасчетныйСчет = Справочники.РасчетныеСчета.НайтиПоКоду("<НомерРС>", <ВладелецКонтрагент>);
  3. TopicStarter Overlay
    stail
    Offline

    stail

    Регистрация:
    6 авг 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1

    Немного не дописал..."Лицевой счет" это реквизит справочника Контрагенты.
  4. has
    Offline

    has Опытный в 1С

    Регистрация:
    18 июн 2009
    Сообщения:
    708
    Симпатии:
    0
    Баллы:
    26
    Поиск или отбор тоже подойдет?
  5. TopicStarter Overlay
    stail
    Offline

    stail

    Регистрация:
    6 авг 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1

    этого и того бы хорошо
  6. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Если Справочники.Контрагенты.НайтиПоРеквизиту("ЛицевойСчет",<НомерЛийевогоСчета>) не подходит по каким-то причинам, то только запросом....
  7. has
    Offline

    has Опытный в 1С

    Регистрация:
    18 июн 2009
    Сообщения:
    708
    Симпатии:
    0
    Баллы:
    26
    Вот пример установки отбора

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

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