Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
17 Дек 2017, 11:15
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Подбор текста  (Прочитано 7566 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Zeus_God

  • ***
  • Сообщений: 112
  • РЕПУТАЦИЯ: 3
  • КПД: 3%
  • Регистрация: 2012-01-16
  • Сайт: 
  • Профессия: Программист 1С
Добрый день!


Конфиг. УТ 10.3. Необходимо, чтобы когда в справочнике "Номенклатура" пользователь вводил в строку "содержит" код товара (колонка "Артикул"), вместе с ним выходили все аналоги (одинаковые номера в колонке "Комментарии").



В модуле Формы списка справочника Номенклатура есть процедура
ЗначениеОтбораСпискаНоменклатурыАвтоПодборТекста(Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)
. В ней как раз и происходит отбор нужных позиций номенклатуры.


Подскажите, пожалуйста, как отобрать все аналоги номенклатуры (позиции, в которых одинаковая колонка "Комментарий")?


Оффлайн Zeus_God

  • ***
  • Сообщений: 112
  • РЕПУТАЦИЯ: 3
  • КПД: 3%
  • Регистрация: 2012-01-16
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #1: 05 Июн 2013, 10:38 »
Текущий вопрос решил. Только не могу вывести этот список в форму. Никто не подскажет команду?
Ниже текст процедуры (нужно заменить чем-то функцию Сообщить() ).
Процедура ЗначениеОтбораСпискаНоменклатурыАвтоПодборТекста(Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)

  мПоискОбъектовВСпискахДанных.АвтоПодборТекстаПоиска(Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка);

// Получить реквизиты текущего элемента
Запрос = Новый Запрос;

Запрос.Текст = "ВЫБРАТЬ
               | Номенклатура.Ссылка,
               | Номенклатура.Артикул,
               | Номенклатура.Комментарий
               |ИЗ
               | Справочник.Номенклатура КАК Номенклатура";
Выборка = Запрос.Выполнить().Выбрать();

НомерСтроки = 0;
Пока Выборка.Следующий() Цикл
Если Выборка.Артикул = Текст Тогда
Коммент = Выборка.Комментарий;
КонецЕсли;
КонецЦикла;

//--------------------------------------------------------------------------------------------------------------
//-------------------------------------------------- Поиск аналогов --------------------------------------------
//--------------------------------------------------------------------------------------------------------------
Запрос = Новый Запрос;

Запрос.Текст = "ВЫБРАТЬ
   | Номенклатура.Ссылка,
   | Номенклатура.Комментарий
   |ИЗ
   | Справочник.Номенклатура КАК Номенклатура";
Выборка = Запрос.Выполнить().Выбрать();

Пока Выборка.Следующий() Цикл
Если Выборка.Комментарий = Коммент Тогда
Сообщить(Выборка.Ссылка);
КонецЕсли;
КонецЦикла;
//--------------------------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------

КонецПроцедуры
Добавлено: 05 Июн 2013, 11:41

И это сделал. Может кто подскажет как подобным образом вывести аналоги в документе "Реализация товаров" при выборе номенклатуры?

Последний раз редактировалось: Zeus_God; 05 Июн 2013, 11:41. Причина: Объединение сообщений

Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6558
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #2: 05 Июн 2013, 12:03 »
Предполагаю, что там нужно модифицировать форму подбора таким же образом, что вы проделали с формой списка.

Оффлайн Zeus_God

  • ***
  • Сообщений: 112
  • РЕПУТАЦИЯ: 3
  • КПД: 3%
  • Регистрация: 2012-01-16
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #3: 05 Июн 2013, 12:41 »
Согласен с вами, только я не могу понять какую именно :-) Может кто знает или подскажет?

Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6558
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #4: 05 Июн 2013, 12:44 »
Можно отменить стандартное действие выбора и указать ту форму, которая вам больше нравится.

Оффлайн Zeus_God

  • ***
  • Сообщений: 112
  • РЕПУТАЦИЯ: 3
  • КПД: 3%
  • Регистрация: 2012-01-16
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #5: 05 Июн 2013, 12:45 »
Проверял ПриИзменении, НачалоВыбора - они не подходят (пробовал просто вывести сообщение и оно выходило сразу после открытия списка, т.е. о сравнении с введенными данными речи и не идет), проверял еще какую-то функцию - там наоборот, сообщение выходило после выбора позиции и закрытия списка.
Добавлено: 05 Июн 2013, 12:46

Т.е. вы имеете ввиду полностью переписать процедуру выбора?

Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6558
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #6: 05 Июн 2013, 12:47 »
Чем НачалоВыбора не подходит?

Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6558
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #7: 05 Июн 2013, 12:51 »
Можно переписать, можно чуть-чуть добавить свой код.

Оффлайн Zeus_God

  • ***
  • Сообщений: 112
  • РЕПУТАЦИЯ: 3
  • КПД: 3%
  • Регистрация: 2012-01-16
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #8: 05 Июн 2013, 12:54 »
Я начал проверять когда процедура будет считывать введенные данные и для наглядности добавил функцию Сообщить(). При открытии списка мне сразу же вылезло сообщение, т.е., как я понимаю, эта процедура уже не будет считывать введенные данные. Вот текст самой процедуры -
Процедура ТоварыНоменклатураНачалоВыбора(Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;
СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные;
СтруктураВыборСХарактеристикой = Новый Структура("мУказаниеСкладовВТЧ, ПоляДляОбновления, ВладельцыФормы, СтрокаТабличнойЧасти, МетаданныеДокумента"
, мУказаниеСкладовВТЧ
, Новый Структура("Склад,ХарактеристикаНоменклатуры,Номенклатура", ЭлементыФормы.Товары.ТекущиеДанные["Склад"])
, Новый Структура("ЭтаФорма,Элемент", ЭтаФорма,Элемент)
, СтрокаТабличнойЧасти
, Метаданные());
ОбработкаТабличныхЧастей.ОткрытьФормуСправочникаНоменклатурыДляВыбора(СтруктураВыборСХарактеристикой);     
Сообщить ("Я собщение :-)");
КонецПроцедуры
Добавлено: 05 Июн 2013, 13:01

Спасибо, сейчас попробую

Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6558
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Re: Подбор текста
« Ответ #9: 05 Июн 2013, 13:06 »
Эта процедура специально создана для того, чтобы разработчик имел возможность переопределить форму выбора. Соответственно в ней не будет данных о выбранных элементах, как вы правильно заметили. Для этого есть специальная процедура ОбработкаВыбора.


Теги:
 

Цвет текста в ячейке или цвет фона в ячейке.

Автор MagistrPavelРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 7
Просмотров: 1847
Последний ответ 13 Июл 2015, 14:18
от cska-fanat-kz
Подбор товаров в реализации товаров и услуг

Автор apogey.tomskРаздел Пользователям "1С - Предприятие 8"

Ответов: 3
Просмотров: 437
Последний ответ 25 Май 2017, 06:06
от apogey.tomsk
Как при вставке текста запроса с консоли запроса ив программный код конфигурации автоматически добавлять прямую черту в начале каждой строки

Автор ktu78Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 2081
Последний ответ 16 Ноя 2015, 08:12
от KrivosheevEV
Функция форматирования текста "Формат"

Автор rassiniРаздел Пользователям "1С - Предприятие 8"

Ответов: 2
Просмотров: 4430
Последний ответ 30 Май 2010, 11:36
от SergeyKA
Возможно ли языком запросов без конкатенации текста запроса и без СКД преобразовать строки таблицы в столбцы (колонки) выходной таблицы?

Автор acces969Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 453
Последний ответ 29 Май 2017, 15:29
от alex0402

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
145 Сообщений
ilyay ilyay
63 Сообщений
AIFrame
53 Сообщений
alex0402
50 Сообщений
andron81_81
44 Сообщений
oleg-x
42 Сообщений
BuhRust
32 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
Golickoff Golickoff
28 Сообщений
alexandr_ll
24 Сообщений

* Кто онлайн

  • Точка Гостей: 249
  • Точка Скрытых: 0
  • Точка Пользователей: 5
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal