gifts2017

Аналоги номенклатуры для УТ 11

Опубликовал Максим Круменко (krumenko) в раздел Программирование - Практика программирования

Учет аналогов номенклатуры для Управление торговлей 11 (УТ 11)

В приведенной статье постарался реализовать учет аналогов в УТ 11.1

Что реализовано:

  1. Загрузка аналогов из Кросс-файла. Пример файла в прикрепленном файле.
  2. Инструмент работы с аналогами.

Что нужно сделать.

  1. Создать справочник групп аналогов. Аналоги.
  2. Непереодический регистр сведений. СоответствиеАналогов. Измерение Номенклатура. Ресурс Аналоги (справочник Аналоги)
  3. Добавить на форму списка Номенклатуры Кнопку открыть аналоги со следующим кодом: 
    ПараметрыФормы = Новый Структура("Номенклатура", Элементы.СписокРасширенныйПоискНоменклатура.ТекущиеДанные.Ссылка); ОткрытьФорму("Обработка.СписокАналогов.Форма", ПараметрыФормы);
  4. Добавить на форму обработки ПодборТоваровВДокументПродажи Галку Аналоги и добавить следующие строки в модуль формы
    &НаСервере
    Процедура ОбновитьПоАналогу(Ном)
    	МассАналогов = Новый Массив;
    	
    	Запрос = Новый Запрос;
    	Запрос.Текст = "ВЫБРАТЬ
    	               |	СоответствиеАналогов.Аналоги
    	               |ИЗ
    	               |	РегистрСведений.СоответствиеАналогов КАК СоответствиеАналогов
    	               |ГДЕ
    	               |	СоответствиеАналогов.Номенклатура = &Номенклатура";
    	Запрос.УстановитьПараметр("Номенклатура", Ном);
    	Выборка = Запрос.Выполнить().Выбрать();
    	ТекАналог = Справочники.Аналоги.ПустаяСсылка();
    	Пока Выборка.Следующий() Цикл
    		ТекАналог = Выборка.Аналоги;	
    	КонецЦикла;
    	
    	ЗапросАналоги = Новый Запрос;
    	ЗапросАналоги.Текст = "ВЫБРАТЬ
    	                      |	СоответствиеАналогов.Номенклатура Номенклатура
    	                      |ИЗ
    	                      |	РегистрСведений.СоответствиеАналогов КАК СоответствиеАналогов
    	                      |ГДЕ
    	                      |	СоответствиеАналогов.Аналоги = &Аналоги";
    	ЗапросАналоги.УстановитьПараметр("Аналоги", ТекАналог);
    	ВыборкаАналоги = ЗапросАналоги.Выполнить().Выбрать();
    	Пока ВыборкаАналоги.Следующий() Цикл 
    		МассАналогов.Добавить(ВыборкаАналоги.Номенклатура);	
    	КонецЦикла;	
    	
    	ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ЭтаФорма.СписокНоменклатура.Отбор, "Ссылка", МассАналогов, 
    		ВидСравненияКомпоновкиДанных.ВСписке, "Ссылка", Истина);
    	//ПодборТоваровСервер.ПерейтиКСпискуНоменклатуры(ЭтаФорма);		
    КонецПроцедуры
    
    &НаКлиенте
    Процедура АналогиПриИзменении(Элемент)
    	ВыбНоменклатура = Элементы.СписокРасширенныйПоискНоменклатура.ТекущиеДанные.Ссылка;
    	ОбновитьПоАналогу(ВыбНоменклатура);
    КонецПроцедуры
    
  5. Добавить в конфигурацию прикрепленные обработки СписокАналогов и ЗагрузкаАналогов

Инструкция по работе в прикрепленном файле.

Скачать файлы

Наименование Файл Версия Размер
Список аналогов (карточка аналога) 50
.epf 8,69Kb
16.12.13
50
.epf 8,69Kb Скачать
Загрузка аналов из кросс-таблиц 33
.epf 7,37Kb
16.12.13
33
.epf 7,37Kb Скачать
Инструкция+Кросс файл 40
.zip 577,45Kb
16.12.13
40
.zip 577,45Kb Скачать

См. также

Contragent+ 5.0 от 2 500
Подписаться Добавить вознаграждение
Комментарии
1. Марат Курманов (kurmanov) 17.12.13 11:29
Прочитал название статьи, подумал что это про альтернативы УТ 11 :)
2. Максим Круменко (krumenko) 17.12.13 11:56
Наверное правильней тему назвать Аналоги номенклатуры в УТ 11 ))
3. Артем Артеменко (dock) 18.12.13 05:25
краткость - сестра таланта...
4. Дмитрий Шерстобитов (DitriX) 19.12.13 14:07
Мы пришли к ваианту создания кластеров аналогов. Т.е. создаем доп реквизит и его проставляем у всех аналогов. Приимущества в том, что любой отчет можно построить в разрезе аналогов.
5. Максим Круменко (krumenko) 19.12.13 14:11
Согласен. Отличное решение.
6. lexuslam lexuslam (lexuslam) 10.05.14 15:02
приобрел её, но что то впихнуть в 1с не получается не програмист так сказать, может поможете впихнуть аналоги в 1с, 319540205acq lexuslam skype
7. V P (Vovus) 11.02.15 23:29
{Обработка.ПодборТоваровВДокументПродажи.Форма.Форма.Форма(2090)}: Значення не є значенням об`єктного типу (Ссылка)
ВыбНоменклатура = Элементы.СписокРасширенныйПоискНоменклатура.ТекущиеДанные.Ссылка;
8. Den Byankin (stichnv) 08.07.15 15:44
(7) Vovus, ВыбНоменклатура = Элементы.СписокРасширенныйПоискНоменклатура.ТекущиеДанные.Ссылка поменяйте на ВыбНоменклатура = Элементы.СписокСтандартныйПоискНоменклатура.ТекущиеДанные.Ссылка и будет счастье. Автору большое спасибо правда пришлось переделать немного под свою базу, ну дак и не для меня писалось)). Мысль хорошая доработал и развил.
9. Владимир Насыров (Spacer) 02.11.16 17:30
Может кому пригодится:
"Аналоги номенклатуры в 1С:Управление Торговлей 11" Источник: ©Курсы-по-1С.рф
http://xn----1-bedvffifm4g.xn--p1ai/ut11/65-cases/case75/