Подбор Номенклатуры по реквизиту (типа справочник) в 1С 82 в табличную часть документа
Конфигурация не типовая ,была написана еще на основании УТ 10.2
В Спр.Номенклатура добавлен Реквизит "Участок" типа Справочник.РабочиеЦентры
Далее по кнопке Подбор нужно выбрать Номенклатуру по Участку! в табл.часть ДОКУМЕНТА
Выходит ОШибка ....
{Обработка.ПодборНоменклатуры.Форма.ОсновнаяФорма.Форма(397)}: Ошибка при вызове метода контекста (Выполнить)
ФормаВыбораПоиска.ТаблицаНоменклатуры = Запрос.Выполнить().Выгрузить();
по причине:
{(14, 2)}: Неверные параметры "ПОДОБНО"
<<?>>Номенклатура.Участок ПОДОБНО &ШаблонПоиска СПЕЦСИМВОЛ "~"
См ниже ЗАПРОС.....
ТекстУсловия = "Номенклатура." + ЭлементыФормы.СписокВидовПоиска.Значение + " ПОДОБНО &ШаблонПоиска СПЕЦСИМВОЛ ""~""";
В Спр.Номенклатура добавлен Реквизит "Участок" типа Справочник.РабочиеЦентры
Далее по кнопке Подбор нужно выбрать Номенклатуру по Участку! в табл.часть ДОКУМЕНТА
Выходит ОШибка ....
{Обработка.ПодборНоменклатуры.Форма.ОсновнаяФорма.Форма(397)}: Ошибка при вызове метода контекста (Выполнить)
ФормаВыбораПоиска.ТаблицаНоменклатуры = Запрос.Выполнить().Выгрузить();
по причине:
{(14, 2)}: Неверные параметры "ПОДОБНО"
<<?>>Номенклатура.Участок ПОДОБНО &ШаблонПоиска СПЕЦСИМВОЛ "~"
См ниже ЗАПРОС.....
Процедура ВыполнитьПоиск()
Если мВремяПоследнегоПоиска = ТекущаяДата() Тогда
// Искать не надо, вероятно после изменения текста в окне поиска пользователь нажал на
// кнопку открытия.
Возврат;
КонецЕсли;
// Надо добавить шаблон в историю
ЭлементИстории = ЭлементыФормы.ПолеПоиска.СписокВыбора.НайтиПоЗначению(ПолеПоиска);
Если ЭлементИстории = Неопределено Тогда
// Надо добавить
ЭлементыФормы.ПолеПоиска.СписокВыбора.Вставить(0, ПолеПоиска);
Иначе
// Надо переместить в начало истории
ИндексЭлементаИстории = ЭлементыФормы.ПолеПоиска.СписокВыбора.Индекс(ЭлементИстории);
ЭлементыФормы.ПолеПоиска.СписокВыбора.Сдвинуть(ЭлементИстории, - ИндексЭлементаИстории);
КонецЕсли;
ШаблонПоиска = СокрЛП(ПолеПоиска);
Если ЗначениеНеЗаполнено(ШаблонПоиска) Тогда
Возврат;
КонецЕсли;
Если ЭлементыФормы.СписокВидовПоиска.Значение = "КодОракл" Тогда
ТекстУсловия = "Номенклатура." + ЭлементыФормы.СписокВидовПоиска.Значение + " = &ШаблонПоиска ";
ШаблонПоиска = Число(ШаблонПоиска);
Иначе
// заменим спецсимволы
ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "~", "~~");
ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "%", "~%");
ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "_", "~_");
ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "[", "~[");
ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "-", "~-");
ШаблонПоиска = "%" + ШаблонПоиска + "%";
ПоказатьТекстУсловия = "Номенклатура." + ЭлементыФормы.СписокВидовПоиска.Значение + " ПОДОБНО &ШаблонПоиска СПЕЦСИМВОЛ ""~""";
КонецЕсли;
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ШаблонПоиска", ШаблонПоиска);
Запрос.Текст = "
|ВЫБРАТЬ ПЕРВЫЕ 51
| Номенклатура.Код КАК Код,
| Номенклатура.Артикул КАК Артикул,
| Номенклатура.КодОракл КАК КодОракл,
| Номенклатура.Участок.Наименование КАК Участок,
| Номенклатура.Ссылка КАК Номенклатура,
| Номенклатура.НаименованиеПолное КАК НаименованиеПолное,
| Номенклатура.Родитель КАК Родитель
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|
|ГДЕ
| " + ТекстУсловия + "
| И Номенклатура.ЭтоГруппа = Ложь
|";
ВыбраннаяНоменклатура = Неопределено;
Родитель = Неопределено;
ФормаВыбораПоиска = ПолучитьФорму("ФормаВыбораПоиска", ЭтаФорма);
ФормаВыбораПоиска.ТаблицаНоменклатуры = Запрос.Выполнить().Выгрузить();
ПоказатьПрикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот