Неверное значение параметра запроса в плане обмен.

1. user1004898 28 18.04.21 12:32 Сейчас в теме
Нписал в КД2.0 правила обмена для УАТ-УПП.
В одном запросе прописал параметром на источник ТЧ ссылку на объект.
Правила выгружал во внешнюю обработку, тестировал - все ок. На ошибки в запросе не ругалась.
Выгружал/ загружал доки через Универсальный обмен. Аналогчно - все хорошо работает.

Настраиваю обмен документами через новый свой план обмена. В правила гружу свои проверенные правила из КД20. И сейчас при попытке выгрузить доку ругается на
еверные параметры в операции сравнения. Нельзя сравнивать поля
 неограниченной длины и поля несовместимых типов.
уатРемонтныйЛистАккумуляторы.Ссылка <<?>>= &Источник


В запросе указан параметр с определение по ссылке. Код ниже
Запрос = Новый Запрос;
    Запрос.Текст = 
    "ВЫБРАТЬ
    |    уатРемонтныйЛистАккумуляторы.СерияНоменклатуры.Номенклатура КАК Номенклатура,
    |    1 КАК Количество,
    |    уатРемонтныйЛистАккумуляторы.Работник КАК ФизЛицо
    |ИЗ
    |    Документ.уатРемонтныйЛист.Аккумуляторы КАК уатРемонтныйЛистАккумуляторы
    |ГДЕ
    |    уатРемонтныйЛистАккумуляторы.Ссылка = &Источник
    |    И уатРемонтныйЛистАккумуляторы.Состояние = ЗНАЧЕНИЕ(Перечисление.уатСостоянияАгрегатов.УстановленоВРаботе)
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    уатРемонтныйЛистШины.СерияНоменклатуры.Номенклатура,
    |    1,
    |    уатРемонтныйЛистШины.Работник
    |ИЗ
    |    Документ.уатРемонтныйЛист.Шины КАК уатРемонтныйЛистШины
    |ГДЕ
    |    уатРемонтныйЛистШины.Ссылка = &Источник
    |    И уатРемонтныйЛистШины.Состояние В (ЗНАЧЕНИЕ(Перечисление.уатСостоянияАгрегатов.УстановленоВРаботе), ЗНАЧЕНИЕ(Перечисление.уатСостоянияАгрегатов.УстановленоВЗапас))";
    
    Запрос.УстановитьПараметр("Источник", Объект.Ссылка);
    
    РезультатЗапроса = Запрос.Выполнить().Выгрузить();
    Если РезультатЗапроса.Количество() Тогда
        ВыгрузитьПоПравилу(Объект,,,,"РемЛист_ПередачаМатериаловВЭксплуатацию");
    КонецЕсли;

Показать
.

Доволе странная ошибка, учитывая что в первых вариантах выгрузки/загрузки документов на такую ссылку 1с не ругается.
Почему так?

Как можно починить запрос?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 81 18.04.21 12:39 Сейчас в теме
(1)Использовать конструкцию ВЫРАЗИТЬ(Поле КАК <Тип>)
3. Leon75 18.04.21 15:07 Сейчас в теме
(2)Там что, составной тип?
Скорее уж нельзя использовать ключевое слово "Источник".
(1) Попробуйте старый метод отладки через Сообщить
Перед РезультатЗапроса = Запрос.Выполнить().Выгрузить();
напишите Сообщить(Строка(Запрос.Параметры.Источник))
4. ellavs 1060 18.04.21 15:23 Сейчас в теме
(3) если обмен через регламент/синхронизацию плана обмена делается, то Сообщить не отработает (как вариант - делать запись в журнал регистрации).
5. Leon75 18.04.21 15:33 Сейчас в теме
6. nomad_irk 81 18.04.21 15:43 Сейчас в теме
(3)
Там что, составной тип?

Откуда ж мне знать, возможно, если ошибка несовместимости типов.
7. Leon75 18.04.21 16:28 Сейчас в теме
(6)Тогда нужно ловить Строка(ТипЗнч(Запрос.Параметры.Источник)), это может быть просто ДокументОбъект, а не ДокументСсылка.
8. user1004898 28 18.04.21 16:28 Сейчас в теме
(3)Вы правы. Слово "Источник" не следовало использовать.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот