helpf.pro
Регистрация

процедура поиск

Avesta
18.12.2010 19:47Прочитано: 2185
В модуле формы обработки при нажатии кнопки "выполнить поиск" необходимо найти данные из двух справочников. Один справочник является владельцем другого. Подскажите простейшую прцедуру, чтобы прописать ее в модуле формы обработки.
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
18.12.2010 20:34Ответ № 1
(0) Avesta, найти данные по каким условиям?
Вообще, все ищется запросом с условием )
Avesta
20.12.2010 09:27Ответ № 2
Спр1 является владельцем Спр2.
Спр1 - "Группы" ( в справочнике указаны номера и данные групп)
Спр2 - "Участники группы" (в справ. указаны физ.лица принадлежащие определенной группе из спр1)
В обработке при указании, допустим произвольной Фамилии необходимо в табличную часть формы обработки занести данные из С1пр1 - № группы(наименование и код), а из Спр2 - соответственно ФИО(наименование). В случае отсутствия данных по этому физ лицу выдать сообщение "Данное физ.лицо в списках не значится"
Заранее спасибо!
IKSparrow
20.12.2010 09:27Ответ № 3
Для начала - лучше не плодить вопросы, а всё обсуждать в рамках одного.
Во вторых, учитывая, что неизвестно, о какой 1С идёт (7.7 или 8.х) то приведу примерный алгоритм, а не код:
По фамилии ищем физ.лицо во втором справочнике.
У найденного физ.лица проверяем наличие владельца.
Если владельца нет - значит это физ.лицо не входит в группы из первого справочника.
Avesta
20.12.2010 09:28Ответ № 4
Уточняю: Прог 1СV8.1
Нужен код. Я только учусь.
bugor666
20.12.2010 09:51Ответ № 5
Все таки, если уточнить еще название конфигурации, будет еще лучше. Учитывая отбор по фамилии, речь идет о Зарплате и Управлении Персоналом. Если так, то вот пример:

Справочники.СотрудникиОрганизаций и Справочники.ФизическиеЛица

Код 1C v 8.х
 
Процедура Поиск()
Выб=Справочники.СотрудникиОрганизаций.Выбрать();
Пока Выб.Следующий() Цикл
Если Найти(Выб.Наименование,Фамилия)>0 Тогда
ТЧ=ТабЧасть.Добавить();
ТЧ.Реквизит1=Выб.Наименование;
ТЧ.Реквизит2=Выб.Код;
//Учитывая, что СотрудникиОрганизаций связаны с ФизическимиЛицами
//вовсе не обязательно перебирать оба справочника.
//Из одного, можно получить значение связанного.
ТЧ.Реквизит3=Выб.Физлицо.Наименование;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
E_Migachev
20.12.2010 09:51Ответ № 6
(2) для того поля в котором будешь вводить фамилию, добавляй событие ОкончаниеВводаТекста
1. В нем пиши найти элемент справочника
2. Как получишь ссылку на объект, вытащишь из нее и владельца и другие данные!

P.S. не плоди темы! пиши все здесь!
Подсказка: Для редактирования своего ответа щелкните по значку (справа)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.