Имя: Пароль:
1C
1С v8
Запрос выдает ошибку. 8.2 Самописная, управляемое приложение
0 DenSpb
 
09.01.13
16:59
Запрос выдает ошибку.
"ВЫБРАТЬ
   //|    ЕстьNULL(ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)) КАК ВалютаВзаиморасчетов,
   |       ВЫБОР
   | КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.ЗаказНаряд
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   | КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.КассовыйОрдер
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.СтрокаВыписки
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.ВозвратПоставщику
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Инвойс
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Поступление
   | ТОГДА ТаблицаТоваров.Ссылка.Валюта
   | ИНАЧЕ ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов
   | КОНЕЦ КАК ВалютаВзаиморасчетов,
   |    ТаблицаТоваров.Товар КАК ТоварнаяПозиция,
   |    ТаблицаТоваров.Товар.Представление КАК НаименованиеПозиции,
   |    ТаблицаТоваров.Товар.Артикул КАК Артикул,
   |    ТаблицаТоваров.Товар.НаименованиеБазовойЕдиницы КАК ЕдИзм,
   |    СУММА(ТаблицаТоваров.Количество - ЕстьNull(ВозвратТоваров.Количество,0)) КАК Количество,
   |    СУММА(ТаблицаТоваров.Сумма - ЕстьNull(ВозвратТоваров.Сумма,0)) КАК Сумма
   |ИЗ
   |    Документ."+ТипДокумента+"."+ТаблицаИсточник+" КАК ТаблицаТоваров
   |    ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВозвратОтПокупателя.Товары КАК ВозвратТоваров
   |        ПО ТаблицаТоваров.Товар = ВозвратТоваров.Товар И ТаблицаТоваров.Ссылка =  ВозвратТоваров.Ссылка.ДокументОснование
   |ГДЕ
   |   ТаблицаТоваров.Ссылка " + ТекстУсловия + "
   |СГРУППИРОВАТЬ ПО
   //|    ЕстьNULL(ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)),
   |       ВЫБОР
   | КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.ЗаказНаряд
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   | КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.КассовыйОрдер
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.СтрокаВыписки
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.ВозвратПоставщику
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Инвойс
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Поступление
   | ТОГДА ТаблицаТоваров.Ссылка.Валюта
   | ИНАЧЕ ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов
   | КОНЕЦ,
   |   ТаблицаТоваров.Товар,
   |   ТаблицаТоваров.Товар.Представление,
   |    ТаблицаТоваров.Товар.Артикул,
   |    ТаблицаТоваров.Товар.НаименованиеБазовойЕдиницы
   |ИМЕЮЩИЕ
   |    СУММА(ТаблицаТоваров.Количество - ЕстьNull(ВозвратТоваров.Количество,0)) > 0";

Ошибка:
{Обработка.ПечатьБухгалтерскихДокументов.МодульОбъекта(116)}: Ошибка при вызове метода контекста (Выполнить)
   ТаблицаТоваров = ЗапросТовары.Выполнить().Выгрузить();
по причине:
{(5, 30)}: Несовместимые типы "ССЫЛКА"
КОГДА ТаблицаТоваров.Ссылка <<?>>ССЫЛКА Документ.КассовыйОрдер

Как исправить?
1 Леха Дум
 
09.01.13
17:03
дак ты же задаешь в
"Документ."+ТипДокумента+"."+ТаблицаИсточник+" КАК ТаблицаТоваров
"
зачем еще по типу ссылки фильтровать???
2 ДенисЧ
 
09.01.13
17:03
(0) прочитать справку по запросам - не предлагать?
3 DenSpb
 
09.01.13
17:04
(1) ТаблицаИсточник - это табличная часть "Товары"
4 DenSpb
 
09.01.13
17:05
(2) читал, не понял:) Лучше подсказать что исправить, так будет легче разобраться:)
5 zladenuw
 
09.01.13
17:05
у тебя Документ."+ТипДокумента+"."+ТаблицаИсточник+"

что ты еще туда передаешь. может у Документа нет такой ТЧ
6 DenSpb
 
09.01.13
17:06
(5) есть
7 pessok
 
09.01.13
17:07
ТаблицаТоваров.Ссылка
в таблице ДЕЙСТВИТЕЛЬНО есть колонка с названием "Ссылка"?
8 Леха Дум
 
09.01.13
17:08
тебе вместо условия в запросе

ВЫБОР
   | КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.ЗаказНаряд
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   | КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.КассовыйОрдер
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.СтрокаВыписки
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.ВозвратПоставщику
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Инвойс
   | ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Поступление


придется писать нечто подобное:

ТекстПолученияВалюты + " КАК ВалютаВзаиморасчетов
9 DenSpb
 
09.01.13
17:08
(7) это ТаблицаТоваров - это табличная часть, а ТаблицаТоваров.Ссылка - это ссылка на сам документ
10 DenSpb
 
09.01.13
17:09
(8) а ТекстПолученияВалюты - чему равен?
11 DenSpb
 
09.01.13
17:10
(8) ну или по какому принципу его строить?
12 Леха Дум
 
09.01.13
17:12
(11) так же как и
Документ."+ТипДокумента+"."+ТаблицаИсточник+" КАК ТаблицаТоваров
13 pessok
 
09.01.13
17:16
(9) а так не взлетит вроде
14 DenSpb
 
09.01.13
17:18
(13) а как взлетит?
15 pessok
 
09.01.13
17:21
попробуй ТаблицаТоваров.Ссылка получить во временной таблице, потом передай в основной запрос это поле и уже его проверяй на тип
16 DenSpb
 
09.01.13
17:23
Сделал    ЗапросТовары.Текст =
   "ВЫБРАТЬ
   //|    ЕстьNULL(ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)) КАК ВалютаВзаиморасчетов,
   |       ВЫБОР
   | КОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.ЗаказНаряд
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   | КОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.КассовыйОрдер
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.СтрокаВыписки
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.ВозвратПоставщику
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.Инвойс
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.Поступление
   | ТОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка.Валюта
   | ИНАЧЕ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка.Контрагент.ВалютаВзаиморасчетов
   | КОНЕЦ КАК ВалютаВзаиморасчетов,
   |    ТаблицаТоваров.Товар КАК ТоварнаяПозиция,
   |    ТаблицаТоваров.Товар.Представление КАК НаименованиеПозиции,
   |    ТаблицаТоваров.Товар.Артикул КАК Артикул,
   |    ТаблицаТоваров.Товар.НаименованиеБазовойЕдиницы КАК ЕдИзм,
   |    СУММА(ТаблицаТоваров.Количество - ЕстьNull(ВозвратТоваров.Количество,0)) КАК Количество,
   |    СУММА(ТаблицаТоваров.Сумма - ЕстьNull(ВозвратТоваров.Сумма,0)) КАК Сумма
   |ИЗ
   |    Документ."+ТипДокумента+"."+ТаблицаИсточник+" КАК ТаблицаТоваров
   |    ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВозвратОтПокупателя.Товары КАК ВозвратТоваров
   |        ПО ТаблицаТоваров.Товар = ВозвратТоваров.Товар И ТаблицаТоваров.Ссылка =  ВозвратТоваров.Ссылка.ДокументОснование
   |ГДЕ
   |   ТаблицаТоваров.Ссылка " + ТекстУсловия + "
   |СГРУППИРОВАТЬ ПО
   //|    ЕстьNULL(ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)),
   | КОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.ЗаказНаряд
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   | КОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.КассовыйОрдер
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.СтрокаВыписки
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.ВозвратПоставщику
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.Инвойс
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.Поступление
   | ТОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка.Валюта
   | ИНАЧЕ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка.Контрагент.ВалютаВзаиморасчетов
   | КОНЕЦ,
   |   ТаблицаТоваров.Товар,
   |   ТаблицаТоваров.Товар.Представление,
   |    ТаблицаТоваров.Товар.Артикул,
   |    ТаблицаТоваров.Товар.НаименованиеБазовойЕдиницы
   |ИМЕЮЩИЕ
   |    СУММА(ТаблицаТоваров.Количество - ЕстьNull(ВозвратТоваров.Количество,0)) > 0";

Получил ошибку:
{Обработка.ПечатьБухгалтерскихДокументов.МодульОбъекта(115)}: Ошибка при вызове метода контекста (Выполнить)
   ТаблицаТоваров = ЗапросТовары.Выполнить().Выгрузить();
по причине:
{(26, 2)}: Синтаксическая ошибка "КОГДА"
<<?>>КОГДА Документ.ЗаказНаряд.Товары.Ссылка ССЫЛКА Документ.ЗаказНаряд
17 Леха Дум
 
09.01.13
17:27
ппц...

вместо

"ВЫБРАТЬ
   //|    ЕстьNULL(ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)) КАК ВалютаВзаиморасчетов,

   |       ВЫБОР
   | КОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.ЗаказНаряд
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)

   | КОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.КассовыйОрдер
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.СтрокаВыписки
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.ВозвратПоставщику
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.Инвойс
   | ИЛИ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка ССЫЛКА Документ.Поступление
   | ТОГДА Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка.Валюта
   | ИНАЧЕ Документ."+ТипДокумента+"."+ТаблицаИсточник+".Ссылка.Контрагент.ВалютаВзаиморасчетов
   | КОНЕЦ КАК ВалютаВзаиморасчетов,


должно быть

|" + ТекстПолученияВалюты + " КАК ВалютаВзаиморасчетов

ТекстПолученияВалюты нужно формировать до исполнения запроса
18 Леха Дум
 
09.01.13
17:30
+ к (17)

Если ТипЗнч(что-то там) = Тип("Типчегототам") Тогда
ТекстПолученияВалюты = "ТаблицаТоваров.Ссылка.Валюта";
Иначе..
19 DenSpb
 
09.01.13
17:34
(18) ТинЗнч(что-то там) - что-то там может быть несколько документов и разных типов
20 DenSpb
 
09.01.13
17:35
(18) так что это не прокатит
21 Леха Дум
 
09.01.13
17:41
дважды ппц...
условие Или уже отменили?

Если ТипЗнч(что-то там) = Тип("Типчегототам")
Или ТипЗнч(что-то там1) = Тип("Типчегототам1")
Или ТипЗнч(что-то там2) = Тип("Типчегототам2")
Тогда....

но можно и по другому, если допустим количество документов, попадающих в путь "Ссылка.Контрагент.ВалютаВзаиморасчетов" значительно меньше или вообще один написать:

Если ТипЗнч(что-то там) = Тип("Типчегототам") Тогда
ТекстПолученияВалюты = "ТаблицаТоваров.Контрагент.ВалютаВзаиморасчетов";
Иначе
ТекстПолученияВалюты = "ТаблицаТоваров.Ссылка.Валюта";
КОНЕЦ!!!!
22 Леха Дум
 
09.01.13
17:42
С НОВЫМ ГОДОМ!!!
23 Jaap Vduul
 
09.01.13
17:42
Функция ТИПЗНАЧЕНИЯ

Функция опеределения типа значения в запросе.

Параметры функции:

Параметр — выражение любого типа

Возвращаемое значение: тип значения.
24 DenSpb
 
09.01.13
17:44
(21) - это ты полный пипец
|ГДЕ
   |   ТаблицаТоваров.Ссылка " + ТекстУсловия + "
В тексте условия может быть массив доков. И эти доки могут быть разного типа. Если мы заменим условие валюты, например на ТаблицаТоваров.Ссылка.Валюта, то для одного дока может быть валюта, а для другого может и не быть.
С Рождеством тебя!
25 DenSpb
 
09.01.13
17:45
(23) - это ты зачем написал?
26 Леха Дум
 
09.01.13
17:49
(24) не пиши херню...

|    Документ."+ТипДокумента+"."+ТаблицаИсточник+" КАК ТаблицаТоваров

и в |ГДЕ
   |   ТаблицаТоваров.Ссылка " + ТекстУсловия + "

если под ТекстУсловия понимается "ССЫЛКА Документ.ХренЗнаетКакойто - то это ни о чем, вы УЖЕ ВЫБРАЛИ в
|    Документ."+ТипДокумента+"."+ТаблицаИсточник+" КАК нужный тип документа
27 DenSpb
 
09.01.13
17:51
(26) я только сейчас понял, что это условие тоже надо будет менять.
28 Леха Дум
 
09.01.13
17:54
(27) его нужно будет убирать, если выборка в рамках одного запроса будет происходить только из одного документа
29 DenSpb
 
09.01.13
17:55
(28) как я понял запрос надо будет перелапатить конкретно, дело не только в условии по валюте
30 Jaap Vduul
 
09.01.13
18:02
(25)
Вместо
КОГДА ТаблицаТоваров.Ссылка ССЫЛКА ...
используй
КОГДА ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(...)
31 Леха Дум
 
09.01.13
18:04
(29) что то мне подсказывает, что лопатить нужно "самописная"...
оборотный регистр по продажам присутствует? а возвраты там фиксируются? по документам это все как то бывает не очень быстро выбирается...
32 Леха Дум
 
09.01.13
18:05
+(31) хотя нет, судя по тексту - нужен регистр накопления по взаиморасчетам
33 КуплюКровать
 
09.01.13
18:08
тоже хотел что и (30) написать, плюсану ))
34 Леха Дум
 
09.01.13
18:18
(33) присоединяюсь, но т.к. текст запроса строится программно то строить уж и эту часть лучше там же
(32) взаиморасчеты тоже не подойдут... но рег под это дело желательно иметь или использовать имеющиеся регистры
35 DenSpb
 
09.01.13
18:21
Сделал запрос:
"ВЫБРАТЬ
   //|    ЕстьNULL(ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)) КАК ВалютаВзаиморасчетов,
   |       ВЫБОР
   | КОГДА ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.ЗаказНаряд)
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   | КОГДА ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.КассовыйОрдер)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.СтрокаВыписки)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.ВозвратПоставщику)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.Инвойс)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.Поступление)
   | ТОГДА ТаблицаТоваров.Ссылка.Валюта
   | ИНАЧЕ ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов
   | КОНЕЦ КАК ВалютаВзаиморасчетов,
   |    ТаблицаТоваров.Товар КАК ТоварнаяПозиция,
   |    ТаблицаТоваров.Товар.Представление КАК НаименованиеПозиции,
   |    ТаблицаТоваров.Товар.Артикул КАК Артикул,
   |    ТаблицаТоваров.Товар.НаименованиеБазовойЕдиницы КАК ЕдИзм,
   |    СУММА(ТаблицаТоваров.Количество - ЕстьNull(ВозвратТоваров.Количество,0)) КАК Количество,
   |    СУММА(ТаблицаТоваров.Сумма - ЕстьNull(ВозвратТоваров.Сумма,0)) КАК Сумма
   |ИЗ
   |    Документ."+ТипДокумента+"."+ТаблицаИсточник+" КАК ТаблицаТоваров
   |    ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВозвратОтПокупателя.Товары КАК ВозвратТоваров
   |        ПО ТаблицаТоваров.Товар = ВозвратТоваров.Товар И ТаблицаТоваров.Ссылка =  ВозвратТоваров.Ссылка.ДокументОснование
   |ГДЕ
   |   ТаблицаТоваров.Ссылка " + ТекстУсловия + "
   |СГРУППИРОВАТЬ ПО
   //|    ЕстьNULL(ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)),
   |       ВЫБОР
   | КОГДА ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.ЗаказНаряд)
   | ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   | КОГДА ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.КассовыйОрдер)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.СтрокаВыписки)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.ВозвратПоставщику)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.Инвойс)
   | ИЛИ ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.Поступление)
   | ТОГДА ТаблицаТоваров.Ссылка.Валюта
   | ИНАЧЕ ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов
   | КОНЕЦ,
   //| КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.ЗаказНаряд
   //| ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
   //| КОГДА ТаблицаТоваров.Ссылка ССЫЛКА Документ.КассовыйОрдер
   //| ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.СтрокаВыписки
   //| ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.ВозвратПоставщику
   //| ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Инвойс
   //| ИЛИ ТаблицаТоваров.Ссылка ССЫЛКА Документ.Поступление
   //| ТОГДА ТаблицаТоваров.Ссылка.Валюта
   //| ИНАЧЕ ТаблицаТоваров.Ссылка.Контрагент.ВалютаВзаиморасчетов
   //| КОНЕЦ,
   |   ТаблицаТоваров.Товар,
   |   ТаблицаТоваров.Товар.Представление,
   |    ТаблицаТоваров.Товар.Артикул,
   |    ТаблицаТоваров.Товар.НаименованиеБазовойЕдиницы
   |ИМЕЮЩИЕ
   |    СУММА(ТаблицаТоваров.Количество - ЕстьNull(ВозвратТоваров.Количество,0)) > 0";

Выдает ошибку:
{Обработка.ПечатьБухгалтерскихДокументов.МодульОбъекта(126)}: Ошибка при вызове метода контекста (Выполнить)
   ТаблицаТоваров = ЗапросТовары.Выполнить().Выгрузить();
по причине:
{(10, 30)}: Поле не найдено "ТаблицаТоваров.Ссылка.Валюта"
ТОГДА ТаблицаТоваров.Ссылка.<<?>>Валюта
36 Леха Дум
 
09.01.13
18:35
(35) возьми консоль запросов, да погоняй свой запрос, здесь твоей конфы нет, чтобы видеть в каком документе у тебя нет реквизита "Валюта"
37 DenSpb
 
09.01.13
18:38
Если печатаю док, у которого есть реквизит валюта, то нормально печатается, если у документа нет реквизита валюта, то рубится на строке {(10, 39)}: Поле не найдено "ТаблицаТоваров.Ссылка.Валюта"
ТОГДА ЕстьNULL(ТаблицаТоваров.Ссылка.<<?>>Валюта, ЗНАЧЕНИЕ(Справочник.Валюты.Рубль))

Как это можно обойти?
38 Jaap Vduul
 
09.01.13
18:42
КОГДА ТИПЗНАЧЕНИЯ(ТаблицаТоваров.Ссылка) = ТИП(Документ.ЗаказНаряд)
ТОГДА ЗНАЧЕНИЕ(Справочник.Валюты.Рубль)
39 DenSpb
 
09.01.13
18:44
(38) - это написано, но в заказе наряде нет реквизита валюта, поэтому ругнется на строчку  ТОГДА ТаблицаТоваров.Ссылка.Валюта
40 Jaap Vduul
 
09.01.13
18:44
(37)Никак, кроме как текст запроса менять.
41 DenSpb
 
09.01.13
18:58
В итоге решил все в обработке запроса сделать.