Модераторы: stron
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [1C 8] Запрос к табличной части 
:(
    Опции темы
ecspertiza
Дата 23.7.2010, 08:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 3.11.2008
Где: г.Смоленск

Репутация: нет
Всего: 5



Есть справочник в нем заданна табличная часть, возможно ли к ней построить запрос ? Если да скиньте пример или ссылку где можно почитать, а то я читаю руководство, там сплошная "вода".


--------------------
С уважением,
мастер конфетного цеха!

онлайн компилер
залип
PM MAIL   Вверх
Vasay
Дата 23.7.2010, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2097
Регистрация: 8.3.2006

Репутация: 1
Всего: 73



ecspertiza

Пример из конфигурации "Розница"

Есть справочник "ГруппыПользователей"

У него есть табличная часть с "ПользователиГруппы" с реквизитом "Пользователь"

Вот такой вот запрос выведет список всех пользователей во всех группах:

Цитата

ВЫБРАТЬ
    ГруппыПользователейПользователиГруппы.Пользователь КАК Пользователь
ИЗ
    Справочник.ГруппыПользователей.ПользователиГруппы КАК ГруппыПользователейПользователиГруппы



Вот запрос с условием:
Цитата

ВЫБРАТЬ
    ГруппыПользователей.ПользователиГруппы.(
  Пользователь
    )
ИЗ
    Справочник.ГруппыПользователей КАК ГруппыПользователей
ГДЕ
    ГруппыПользователей.Ссылка = &Ссылка


Выдаст таблицу значений с пользователями в конкретной группе (указывается как параметр &Ссылка)


--------------------
Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны.
PM MAIL   Вверх
Zero
Дата 23.7.2010, 18:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: 15
Всего: 24



Цитата(ecspertiza @  23.7.2010,  08:38 Найти цитируемый пост)
а то я читаю руководство, там сплошная "вода". 
 С руководства не стоит начинать читать, т.к. там есть ответы на вопросы типа "Что?"
А начни лучше с Радченко "Практическое пособие разработчика". Как раз там есть ответы на вопросы "Зачем?" и "Как?"
http://www.v8.1c.ru/metod/books/book.jsp?id=187
PM MAIL ICQ   Вверх
ecspertiza
Дата 25.7.2010, 20:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 3.11.2008
Где: г.Смоленск

Репутация: нет
Всего: 5



Спасибо за помощь, боюсь книжка не особо подойдет, в ней вроде как про версию 8.2 а у меня 8.1 у них вроде как нормально так различий.


--------------------
С уважением,
мастер конфетного цеха!

онлайн компилер
залип
PM MAIL   Вверх
Vasay
Дата 25.7.2010, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2097
Регистрация: 8.3.2006

Репутация: 1
Всего: 73



ecspertiza

Так книжку можно и по 8.1 купить


--------------------
Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны.
PM MAIL   Вверх
ecspertiza
Дата 27.7.2010, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 3.11.2008
Где: г.Смоленск

Репутация: нет
Всего: 5



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

Сделал так

Код

Выбрать ГЛ_Контрагенты.Телефоны.( ТелНомер ) 
Из Справочник.ГЛ_Контрагенты КАК ГЛ_Контрагенты
Где ГЛ_Контрагенты.Ссылка = &Ссылка


В результате в количестве строк запроса он мне говорит что строка одна, хотя телефона минимум два, при этом если смотреть дебагером

то он говорит что ТелНомер - КолонкаРезультатаЗапроса,  в общем что то у меня не вяжется. Может подскажете что с запросом не так, или как правильно вывести данные хоть в Сообщение ?


--------------------
С уважением,
мастер конфетного цеха!

онлайн компилер
залип
PM MAIL   Вверх
Vasay
Дата 27.7.2010, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2097
Регистрация: 8.3.2006

Репутация: 1
Всего: 73



ecspertiza

Результат в данном случае будет типа "ТаблицаЗначений"

В синтак-помошнике хороший пример как с ней работать.
Цитата

Элементы коллекции:

СтрокаТаблицыЗначений
Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются элементы коллекции.
Возможно обращение к элементу коллекции посредством оператора [...]. В качестве аргумента передается индекс строки (нумерация с 0).
........



Это сообщение отредактировал(а) Vasay - 27.7.2010, 15:03


--------------------
Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны.
PM MAIL   Вверх
ecspertiza
Дата 27.7.2010, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 3.11.2008
Где: г.Смоленск

Репутация: нет
Всего: 5



Цитата(Vasay @  27.7.2010,  15:00 Найти цитируемый пост)
Результат в данном случае будет типа "ТаблицаЗначений"


Что то мне не удается получить тип данных "ТаблицаЗначений" прикладываю скрины

user posted image

Забыл сказать перешел на 8.2, хотя я думаю что тут разницы быть не должно.


--------------------
С уважением,
мастер конфетного цеха!

онлайн компилер
залип
PM MAIL   Вверх
Vasay
Дата 27.7.2010, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2097
Регистрация: 8.3.2006

Репутация: 1
Всего: 73



ecspertiza

Попробуйте:

Код

Сообщить(Результат.Телефоны[0].ТелНомер);


Должен вывести Вам первый телнфонный номер.

 Чтоб вывести все телефоны нужно будет:
Код

Для каждого Телефон Из Телефоны Цикл
   Вывести(Телефон.ТелНомер);
КонецЦикла;



--------------------
Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны.
PM MAIL   Вверх
ecspertiza
Дата 27.7.2010, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 3.11.2008
Где: г.Смоленск

Репутация: нет
Всего: 5



Написал вот так

Код

        Пока Результат.Следующий() Цикл
    
        Для каждого Телефон Из Результат.Телефоны Цикл
            Сообщить(Телефон.ТелНомер);
        КонецЦикла;
    КонецЦикла;


На что получил
Код

Итератор для значения не определен
    Для каждого Телефон Из Результат.Телефоны Цикл




--------------------
С уважением,
мастер конфетного цеха!

онлайн компилер
залип
PM MAIL   Вверх
Vasay
Дата 27.7.2010, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2097
Регистрация: 8.3.2006

Репутация: 1
Всего: 73



Я про "Выгрузить" забыл. Должно быть Телефоны.Выгрузить()

Вот сделал рабочий пример

Код

    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    ГруппыПользователей.ПользователиГруппы.(
        |        Пользователь
        |    ),
        |    ГруппыПользователей.Наименование
        |ИЗ
        |    Справочник.ГруппыПользователей КАК ГруппыПользователей
        |ГДЕ
        |    ГруппыПользователей.Ссылка = &Ссылка";

    Запрос.УстановитьПараметр("Ссылка", Справочники.ГруппыПользователей.НайтиПоКоду("000000003"));

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

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

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Для каждого ТабПользователь Из ВыборкаДетальныеЗаписи.ПользователиГруппы.Выгрузить() Цикл
            Сообщить(ТабПользователь.Пользователь);
        КонецЦикла;
    КонецЦикла;


Это сообщение отредактировал(а) Vasay - 27.7.2010, 16:41


--------------------
Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны.
PM MAIL   Вверх
ecspertiza
Дата 29.7.2010, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 3.11.2008
Где: г.Смоленск

Репутация: нет
Всего: 5



Спасибо, заработало smile


--------------------
С уважением,
мастер конфетного цеха!

онлайн компилер
залип
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "1C: Предприятие, SAP, ERP и учётные системы"
stron

Запрещается!

1. Обсуждение крэков, кейгенов и других подобных программ

Пробуйте искать сами или обращайтесь в приват к участникам форума.

Темы с подобными вещами будут немедленно удаляться, а нарушители - получать предупреждения.

Также запрещается обсуждение проблем работы этих программ (что куда вписать, куда что скопировать и т.п...)

2. Давать ссылки на взломанные продукты

  • Пожалуйста, пользуйтесь поиском перед тем, как задать вопрос - возможно ответ уже есть на форуме.
  • Название темы должно отражать её суть
  • Действия модераторов можно обсудить здесь

С уважением, stron, Pegas.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | 1C: Предприятие, SAP, ERP и учётные системы | Следующая тема »


 




[ Время генерации скрипта: 0.1073 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.