Имя: Пароль:
1C
1С v8
Запрос к контактной информации (в таб. части спр)
0 Начинающий_13
 
29.04.15
16:10
Здравствуйте

Имею запрос. надо получить все КИ для печати (спр. МестаХранения)

Вылетает ошбика...

{ВнешняяОбработка.КонсольЗапросов.МодульОбъекта(658)}: Ошибка при вызове метода контекста (ВыполнитьПакет): Ошибка выполнения запроса: Запрос невозможно исполнить
В условиях соединения запроса не допускается обращение к табличным частям. (1)

Как правильно работать с контактной информацией в таб. части спр?


Процедура ААА()

"ВЫБРАТЬ
|    ВложенныйЗапрос.Ссылка,
|    ВложенныйЗапрос.Номер КАК НомерДокумента,
|    ВложенныйЗапрос.Дата КАК ДатаДокумента,
|    ВложенныйЗапрос.МестоХранения КАК СкладДокумента,
|    ВложенныйЗапрос.Контрагент,
|    ВложенныйЗапрос.КонтрагентДоговоры,
|    ВложенныйЗапрос.КонтрагентБанковскиеСчета,
|    ВложенныйЗапрос.Валюта КАК ВалютаДокумента,
|    ВложенныйЗапрос.СуммаВключаетНДС,
|    ВложенныйЗапрос.Настройка КАК ДанныеНакладной,
|    ВложенныйЗапрос.КонтактнаяИнформация.(
|        АдресПочтовыйСклада
|    )
|ИЗ
|    (ВЫБРАТЬ
|        ПоступлениеОтПоставщика.Ссылка КАК Ссылка,
|        ПоступлениеОтПоставщика.Номер КАК Номер,
|        ПоступлениеОтПоставщика.Дата КАК Дата,
|        ПоступлениеОтПоставщика.МестоХранения КАК МестоХранения,
|        ПоступлениеОтПоставщика.Контрагент КАК Контрагент,
|        ПоступлениеОтПоставщика.КонтрагентДоговоры КАК КонтрагентДоговоры,
|        ПоступлениеОтПоставщика.КонтрагентБанковскиеСчета КАК КонтрагентБанковскиеСчета,
|        ПоступлениеОтПоставщика.Валюта КАК Валюта,
|        ПоступлениеОтПоставщика.СуммаВключаетНДС КАК СуммаВключаетНДС,
|        ДанныхПечатиНакладных.Настройка КАК Настройка,
|        АдресПочтовыйСклада.КонтактнаяИнформация.(
|            Представление КАК АдресПочтовыйСклада
|        ) КАК КонтактнаяИнформация
|    ИЗ
|        Документ.ПоступлениеОтПоставщика КАК ПоступлениеОтПоставщика
|            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ХранилищеДанныхПечатиНакладных КАК ДанныхПечатиНакладных
|            ПО ПоступлениеОтПоставщика.Ссылка = ДанныхПечатиНакладных.ДокументСсылка
|            ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады КАК АдресПочтовыйСклада
|            ПО ПоступлениеОтПоставщика.МестоХранения = АдресПочтовыйСклада.Ссылка
|                И (АдресПочтовыйСклада.КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.АдресПочтовыйСклады))
|                И (АдресПочтовыйСклада.КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))) КАК ВложенныйЗапрос
|ГДЕ
|    ВложенныйЗапрос.Ссылка В(&МассивОбъектов)"

КонецПроцедуры
1 Лефмихалыч
 
29.04.15
16:11
(0) вроде по-русски же написано, что не понятно-то?
2 asady
 
29.04.15
16:12
(0) ТЧ документа это тоже таблица и к ней можно делать  запрос а в твоем случае и нужно.
3 Начинающий_13
 
29.04.15
16:12
Ошибка понятна. Я не могу найти информации по работе с КИ в ТЧ справочника. Все про РС.
4 Начинающий_13
 
29.04.15
16:13
(2)Т.е Мне надо будет разбить один запрос на 2 (т.к.КИ нужна по контрагенту и Складу)?
5 Лефмихалыч
 
29.04.15
16:14
|    ВложенныйЗапрос.Настройка КАК ДанныеНакладной,
|    АдресПочтовыйСклада.Представление
|ИЗ


ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады.КонтактнаяИнформация КАК АдресПочтовыйСклада
по
6 Начинающий_13
 
29.04.15
16:26
Переделал на этот Запрос пошел Адрес пустой

Процедура ААА()

ВЫБРАТЬ
    ВложенныйЗапрос.Ссылка,
    ВложенныйЗапрос.Номер КАК НомерДокумента,
    ВложенныйЗапрос.Дата КАК ДатаДокумента,
    ВложенныйЗапрос.МестоХранения КАК СкладДокумента,
    ВложенныйЗапрос.Контрагент,
    ВложенныйЗапрос.КонтрагентДоговоры,
    ВложенныйЗапрос.КонтрагентБанковскиеСчета,
    ВложенныйЗапрос.Валюта КАК ВалютаДокумента,
    ВложенныйЗапрос.СуммаВключаетНДС,
    ВложенныйЗапрос.Настройка КАК ДанныеНакладной,
    ВложенныйЗапрос.АдресСклада
ИЗ
    (ВЫБРАТЬ
        ПоступлениеОтПоставщика.Ссылка КАК Ссылка,
        ПоступлениеОтПоставщика.Номер КАК Номер,
        ПоступлениеОтПоставщика.Дата КАК Дата,
        ПоступлениеОтПоставщика.МестоХранения КАК МестоХранения,
        ПоступлениеОтПоставщика.Контрагент КАК Контрагент,
        ПоступлениеОтПоставщика.КонтрагентДоговоры КАК КонтрагентДоговоры,
        ПоступлениеОтПоставщика.КонтрагентБанковскиеСчета КАК КонтрагентБанковскиеСчета,
        ПоступлениеОтПоставщика.Валюта КАК Валюта,
        ПоступлениеОтПоставщика.СуммаВключаетНДС КАК СуммаВключаетНДС,
        ДанныхПечатиНакладных.Настройка КАК Настройка,
        СкладыКонтактнаяИнформация.Представление КАК АдресСклада,
        СкладыКонтактнаяИнформация.Ссылка КАК СсылкаНаСклад
    ИЗ
        Документ.ПоступлениеОтПоставщика КАК ПоступлениеОтПоставщика
            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ХранилищеДанныхПечатиНакладных КАК ДанныхПечатиНакладных
            ПО ПоступлениеОтПоставщика.Ссылка = ДанныхПечатиНакладных.ДокументСсылка
            ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады.КонтактнаяИнформация КАК СкладыКонтактнаяИнформация
            ПО ПоступлениеОтПоставщика.Ссылка = СкладыКонтактнаяИнформация.Ссылка
                И (СкладыКонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.АдресПочтовыйСклады))
                И (СкладыКонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))) КАК ВложенныйЗапрос
ГДЕ
    ВложенныйЗапрос.Ссылка В(&МассивОбъектов)

КонецПроцедуры
7 D_E_S_131
 
29.04.15
16:42
"ПоступлениеОтПоставщика.Ссылка = СкладыКонтактнаяИнформация.Ссылка" — здесь подумать.
8 Начинающий_13
 
29.04.15
16:53
Спасибо. Сделаю наперное так . В общем модуле запрос по кадому спр. отдельно и сформирую структуру контактной информации спр. А в документе уже соединяться буду по справочникам и получать КИ по конкретному элементу
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший