Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Отбор в запросе по уникальному индентификатору
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
Constantus
Приветствую, Форумчане!
1с8.3.12, самопис, БСП, УФ

Создаю массив уникальных индентификаторво "КлючСтроки" из ТЧ

    Для Каждого Ключа Из Объект.Окантовано Цикл
        МассивКлючей = Новый Массив;
        МассивКлючей.Добавить(Ключа.КлючСтроки);
    КонецЦикла;



Имеется некий запрос, где пытаюсь исключить из записей все данные, где есть такиеже КлючиСвязи (УИД)

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

    Запрос.УстановитьПараметр("ТТН", Объект.ВыбранныйЗаказ);
    Запрос.УстановитьПараметр("ПараметрКлючей", МассивКлючей);


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

Везде "КлючСтроки" тип одинаковый "УникальныйИдентификатор"

Как правильно провести операцию исключения из запроса с

И НЕ ЗаказМодельИКомплектация.КлючСтроки В (&ПараметрКлючей)


mut
Наверное нужно хранить и обрабатывать строковые представления идентификаторов. В полях с типом Строка фиксированной длины.
fly
Constantus @ Сегодня, 11:45 необходимо зарегистрироваться для просмотра ссылки ,

Попробуй привести МассивКлючей к типу строка с необходимой длиной строки - убери "неограниченную длину".

КС = Новый КвалификаторыСтроки(14);
МассивКлючей = Новый Массив;
МассивКлючей = Новый ОписаниеТипов("Строка", ,КС);

Для Каждого Ключа Из Объект.Окантовано Цикл
    МассивКлючей.Добавить(Ключа.КлючСтроки);
КонецЦикла;
fly

Это бред smile.gif не работает


Цитата(fly @ 15.07.19, 13:07) необходимо зарегистрироваться для просмотра ссылки
МассивКлючей = Новый ОписаниеТипов("Строка", ,КС);


Привести неограниченную длину к длине определенной прийдется, иначе будет выдавать ошибку
Запрос не хочет сравнивать неограниченные длины строки.
fly
fly @ 15.07.19, 14:10 необходимо зарегистрироваться для просмотра ссылки ,
Добрый день,

я немного неправильно написал

привести значение к указанному количеству знаков:

Объект = новый Структура("ОтветЛицо", 123);

Сообщить(ТипЗнч(Объект.ОтветЛицо));

ПараметрыСтроки = Новый КвалификаторыСтроки(2);
НашеОписание = Новый ОписаниеТипов("Строка", ,ПараметрыСтроки);
Объект.ОтветЛицо = НашеОписание.ПривестиЗначение(Объект.ОтветЛицо);

Сообщить(ТипЗнч(Объект.ОтветЛицо));
Сообщить(Объект.ОтветЛицо);
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.