|
Обработка ПодборНоменклатуры | ☑ | ||
---|---|---|---|---|
0
USER48
06.08.12
✎
14:06
|
В данной обработке имеется поле СписокВидовПоиска. Сейсас в этом окне можно выбрать следующие: по наименованию, по полному наименованию, по коду, по артикулу. Необходимо добавить еще и по комментарию, но тип значения ПРОИЗВОЛЬНЫЙ не поддается редактированию. Что можно сделать?
|
|||
1
0Mint
06.08.12
✎
15:27
|
Ут 10.3? Процедура ДействияПриОткрытии() модуля формы этой обработки, там заполняется этот список, потом строка с наименованием реквизита соответствующего представлению в списке подставляется в текст запроса поиска.
|
|||
2
USER48
06.08.12
✎
15:35
|
нет, Бухгалтерия предприятия, редакция 2.0 (2.0.34.13),но сейчас попробую посмотреть! Спасибо за участие, а то я уже думал никто не подскажет!!!
|
|||
3
USER48
06.08.12
✎
15:42
|
Спасибо похоже именно оно!!! Сейчас на копии дописал, посмотрим что получится!!!
|
|||
4
USER48
06.08.12
✎
16:07
|
Появился нужный параметр, но когда пытаюсь запустить подбор по нему появляется ошибка : ФормаВыбораПоиска.ТаблицаНоменклатуры = Запрос.Выполнить().Выгрузить();
по причине: {(12, 15)}: Поле не найдено "Номенклатура.Коментарий" Номенклатура.<<?>>Коментарий ПОДОБНО &ШаблонПоиска СПЕЦСИМВОЛ "~" |
|||
5
aleks-id
06.08.12
✎
16:10
|
всю жизнь был КомМентарий
|
|||
6
USER48
07.08.12
✎
14:46
|
Надеюсь еще можно продолжить тему. В общем все заработало, но как всегда хочется большего. В начале расскажу из-за чего все это. В семерке номенклатура учитывалась по коду, но когда менялась цена то тоже самое наименование получало новый код (сам в шоке, как раздувалась база!), артикула у них еще не было. Поле комментарий заполнялось не понятно чем (мое предположение что всеми предыдущими кодами) Перешли на 8.2, появилось поле АРТИКУЛ, которое у позиций до 12 года не заполнено. По факту в 12 году поле комментарий и артикул совпадают. Правда некоторые позиции в поле комментарий имеют до 7 перечислений этих самых артикулов. Сейчас сделав все что мне посоветовали на этой странице, подбор по комментарию происходит, но только по первому "артикулу" в комментарии, а если код в середине, то получаю сообщение, что такой номенклатуры нет.
|
|||
7
USER48
08.08.12
✎
09:27
|
Ну что никто не подскажет?
|
|||
8
НикДляЗапросов
08.08.12
✎
09:30
|
Ну не знаю, я в УТ 11, менял какоето элементарное условие, типа чтобы он искалась подстрока в строке
|
|||
9
USER48
08.08.12
✎
09:36
|
НикДляЗапросов, а поточнее можно, желательно пример кода?
|
|||
10
НикДляЗапросов
08.08.12
✎
09:39
|
какой там пример кода одну букву поменять в подборе на "В"
|
|||
11
0Mint
08.08.12
✎
11:41
|
(9)
У тебя в (4) сообщении об ошибке есть параметр запроса &ШаблонПоиска Это строка которая состоит из того что введено в ПолеСписка + служебный символ "%", почитай про выражение ПОДОБНО в языке запросов, какие служебные символы для чего служат. Например тут: http://help1c.com/faq82/view/852.html |
|||
12
USER48
08.08.12
✎
14:03
|
Ошибка из (4) исчезла как комментарий с двумя "М" написал, работает, но в поле комментарий иногда несколько кодов, а он ищет только в начале строки.
Куда что подставить, чтобы нужный код можно было найти и в середине строки. Вот текст запроса: ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "~", "~~"); ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "%", "~%"); ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "_", "~_"); ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "[", "~["); ШаблонПоиска = СтрЗаменить(ШаблонПоиска, "-", "~-"); ШаблонПоиска = ШаблонПоиска+"%"; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ШаблонПоиска", ШаблонПоиска); Запрос.Текст = " |ВЫБРАТЬ ПЕРВЫЕ 51 | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, | Номенклатура.Ссылка КАК Номенклатура, | Номенклатура.НаименованиеПолное КАК НаименованиеПолное, | Номенклатура.Комментарий КАК Комментарий, | Номенклатура.Родитель КАК Родитель |ИЗ | Справочник.Номенклатура КАК Номенклатура | |ГДЕ | Номенклатура." + ЭлементыФормы.СписокВидовПоиска.Значение + " ПОДОБНО &ШаблонПоиска СПЕЦСИМВОЛ ""~"" | И Номенклатура.ЭтоГруппа = Ложь |"; ВыбраннаяНоменклатура = Неопределено; Родитель = Неопределено; ФормаВыбораПоиска = ПолучитьФорму("ФормаВыбораПоиска", ЭтаФорма); ФормаВыбораПоиска.ТаблицаНоменклатуры = Запрос.Выполнить().Выгрузить(); |
|||
13
0Mint
08.08.12
✎
17:27
|
ШаблонПоиска = "%"+ШаблонПоиска+"%";
|
|||
14
USER48
09.08.12
✎
11:33
|
Большое спасибо!!! Все заработало!!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |