• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Запрос или набор записей

  • Автор темы WildAnther
  • Дата начала
Статус
Закрыто для дальнейших ответов.
W

WildAnther

Вообщем опишу ситуацию, имеется регистр сведений, в котором забиты данные по абонентам...
Есть документ с табличной частью и некоторыми полями,
Вот мне нужно сделать так чтобы при изменение поля улицы(не в табличной части) заполнялась табличная часть из регистра сведений тех людей у которых улица совпадает с выбранным полем улица, в табличной части около 10 колонок.
У Габеца нашел решения при помоши НабораЗаписей но не могу разобраться толком... Запросами владею смутно. поэтому обращаюсь.
Зарание спасибо.
 
W

WildAnther

Ну проблему частично я решил.. Как бы при изменение выводится данные из регистра... Но, нужно было чтобы не все а именно те у кого улица была бы равна улице же которую выбрал пользователь... бррр

[codebox]ТМП = РегистрыСведений.Абоненты;
Выборка = ТМП.Выбрать();

Пока Выборка.Следующий() Цикл

СТР = Ведомость.Добавить();
СТР.ФИО = Выборка.Фамилия;
СТР.ЛицевойСчет = Выборка.ЛицевойСчет;
......
КонецЦикла;

[/codebox]
 
W

WildAnther

Вообщем решил я проблему, наверно даже как то не традиционными способами.

Вот код решения кому может будет полезно. Код позволяет при определенных услових выбрать данные из регистра сведений.
Конечно он далек до идеала, но сам факт по простятски нормально.

Процедура УлицаПриИзменении(Элемент)
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Улица", Улица);
ТМП3 = Новый Структура("Улица");
ТМП3.Вставить("Улица", Улица);
Запрос.Текст = "
|ВЫБРАТЬ
| *
|Из РегистрСведений.Абоненты";

ТМП = Запрос.Выполнить().Выгрузить();
ТМП4 = ТМП.НайтиСтроки(ТМП3);

Для каждого Запись из ТМП4 цикл

СТР = Ведомость.Добавить();
СТР.ФИО = Запись.ФИО;
СТР.ЛицевойСчет = Запись.ЛицевойСчет;
СТР.Льгота = Запись.Льгота;
СТР.Дом = Запись.Дом;
СТР.ДатаУстановки = Запись.ДатаУстановки;
СТР.ТипПрибора = Запись.ТипПрибора;
СТР.Значение = Запись.Значение;
СТР.ЗаводскойНомер = Запись.ЗаводскойНомер;

КонецЦикла;
КонецПроцедуры;
 
H

has

а если сразу условие отбора в запросе указать?
 
W

WildAnther

тоесть поставить
ГДЕ Улица = &Улица
?
 
H

has

да, тогда и ни ТМП, ни ТМП3, ни ТМП4 не нужны
 
W

WildAnther

Пробовал но в чем то был подвох, надо будет еще раз попробовать.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!