Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Дек 2017, 02:45
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Как отобразить справочник в табличной части  (Прочитано 950 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Greiv

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-07-09
  • Сайт: 
  • Профессия: Ученик 1С
Приветствую, есть обработка в которой есть табличный документ, которой должен тянуть из справочника данные и отображать их, также в справочнике эти данные сгруппированы по наименованию, и у элемента в справочнике есть ещё табличная часть данные в которой относятся исключительно к данному элементу, а в обработке должно всё отображаться не группировано. Делаю так, но грузятся только наименования оно и понятно, потому, что я не знаю как обратиться к конкретному элементу и загрузить всё что к нему относится, как это сделать, вот код:
Запрос = Новый Запрос();
Запрос.Текст =
"ВЫБРАТЬ
| Курьеры.Наименование КАК ФИО,
| Курьеры.КодДоставки КАК КодДоставки,
| Курьеры.КодКурьера КАК КодКурьера,
| Курьеры.Дома.(
| Ссылка,
| НомерСтроки,
| НаселенныйПункт КАК НаселенныйПункт,
| Улица КАК Улица,
| НомерДома КАК НомерДома
| )
|ИЗ
| Справочник.Курьеры КАК Курьеры";


РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();



Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

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

КонецЦикла;


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
вместо
ТаблицаОбработки.ФИО = Справочники.Курьеры.НайтиПоНаименованию(ВыборкаДетальныеЗаписи.ФИО);
ТаблицаОбработки.КодКурьера = Справочники.Курьеры.НайтиПоРеквизиту("КодКурьера", ВыборкаДетальныеЗаписи.КодКурьера);
ТаблицаОбработки.КодДоставки = Справочники.Курьеры.НайтиПоРеквизиту("КодДоставки", ВыборкаДетальныеЗаписи.КодДоставки);

попробуйте
ЗаполнитьЗначенияСвойств(ТаблицаОбработки, ВыборкаДетальныеЗаписи);
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Greiv

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-07-09
  • Сайт: 
  • Профессия: Ученик 1С
На сколько я знаю такая конструкция работает если совпадают названия реквизитов на 100%, но я всё ровно проверил это не помогло. Мне удаётся выгрузить список в таблицу только если поля коддоставки и КодКурьера имеют тип "строка" тогда всё нормально, ну и поиск по ноименованию тоже работает и даже устанавливает ссылку на справочник, а вот подтянуть подчинённые реквизиты формы ссылками на них не получается только строкой.
Добавлено: 27 Янв 2015, 12:18

Сделал так, может кому пригодится:
		Запрос = Новый Запрос();
Запрос.Текст =
"ВЫБРАТЬ
| КурьерыДома.НаселенныйПункт КАК НаселенныйПункт,
| КурьерыДома.НомерДома КАК НомерДома,
| КурьерыДома.Улица КАК Улица,
| КурьерыДома.Ссылка.Наименование КАК ФИО,
| КурьерыДома.Ссылка.КодКурьера КАК КодКурьера,
| КурьерыДома.Ссылка.КодДоставки КАК КодДоставки
|ИЗ
| Справочник.Курьеры.Дома КАК КурьерыДома";
   

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();



Пока ВыборкаДетальныеЗаписи.Следующий() Цикл


//************************************************************
ТаблицаОбработки = Объект.НазначениеКурьеров.Добавить();
ТаблицаОбработки.ФИО = Справочники.Курьеры.НайтиПоНаименованию(ВыборкаДетальныеЗаписи.ФИО);
ТаблицаОбработки.КодКурьера = ВыборкаДетальныеЗаписи.КодКурьера;
ТаблицаОбработки.КодДоставки = ВыборкаДетальныеЗаписи.КодДоставки;
ТаблицаОбработки.НаселенныйПункт = ВыборкаДетальныеЗаписи.НаселенныйПункт;
ТаблицаОбработки.Улица = ВыборкаДетальныеЗаписи.Улица;
ТаблицаОбработки.Дом = ВыборкаДетальныеЗаписи.НомерДома;

//************************************************************


ТаблицаУдалениеСправочников = Объект.УданиеКурьеров.Добавить();
ТаблицаУдалениеСправочников.ФИО = Справочники.Курьеры.НайтиПоНаименованию(ВыборкаДетальныеЗаписи.ФИО);

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

Последний раз редактировалось: Greiv; 27 Янв 2015, 12:18. Причина: Объединение сообщений


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
46 Сообщений
andron81_81
44 Сообщений
oleg-x
44 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
BuhRust
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 140
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal