gifts2017

Создание отбора аналогов номенклатуры в ТиС 7.7

Опубликовал Александр Власов (vwsav) в раздел Обработки - Обработка справочников

Вот так можно создать показ аналогов номенклатуры в ТиС 7.7 с минимальным изменением конфигурации.

Понимаю, что 1С 7.7 уже ушла в прошлое, но тем не менее очень много еще предприятий в регионах работает именно на ней. Попросили сделать в складской программе (Торговля и Склад) показа аналогов товаров. Выкладываю – мало ли кому пригодится. Порывшись в инете, нашел достаточно простой способ это сделать, не слишком кромсая типовую конфигурацию.

Итак: «ПоказатьУстановитьАналоги.ert» – это внешняя обработка, которую нужно вставить в конфигурацию, в обработки. Она обеспечивает установку и показ аналогов номенклатуры. Алгоритм таков – в справочник Номенклатура добавляем реквизит Число длиной 7 знаков, неотрицательное и без дробной части (можно и больше, но мне хватило семи). Если это число = 0, тогда аналогов нет. Если оно > 0, тогда вся номенклатура,  у которой такое же число – это аналоги. 

Необходимо будет также добавить кнопку перехода из списка номенклатуры (для подбора, выбора или во все сразу) с формулой "ОткрытьФорму("Обработка.ПоказатьУстановитьАналоги", ТекущийЭлемент())"
И теперь в форму списка номенклатуры «Для подбора» добавляем кнопку вызова показа аналогов с идентификатором «КнАналоги» и запуском процедуры «ПоКнопкеАналоги()»: 
И, соответственно, в код формы списка номенклатуры «Для подбора» добавляем процедуру «ПоКнопкеАналоги()»:

//******************************************************************************

// ПоКнопкеАналоги()
Процедура ПоКнопкеАналоги()
                Если ТекущийЭлемент().ИдентАналога = 0 Тогда Возврат КонецЕсли;
                ИмяОтбора = "";
                ЗначениеОтбора = "";
                ПолучитьОтбор(ИмяОтбора, ЗначениеОтбора);
                Если (Найти(ИмяОтбора,"ИдентАналога") > 0) и (ЗначениеОтбора <> "0")Тогда //надо отключить отбор 
                        УстановитьОтбор(, );
                        Форма.КнАналоги.Заголовок("Отобразить аналоги");
                Иначе                                                                     //надо включить отбор
                        УстановитьОтбор("ИдентАналога", ТекущийЭлемент().ИдентАналога);
                        Форма.КнАналоги.Заголовок("Выключить аналоги");
                КонецЕсли;
КонецПроцедуры //ПоКнопкеАналоги() 

              

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

Наименование Файл Версия Размер
ПоказатьУстановитьАналоги.ert 11
.ert 31,50Kb
12.08.14
11
.ert 31,50Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Юрий Зайцев (Yury1001) 13.08.14 11:05
Классно, прям ностальгия)
Всё таки по простоте и конфигурируемости у семёрки конкурентов нет.
А клиентов на 9.2 действительно пока много (01,23-регионы), ибо все они автоматизировались в начале 2000-х и теперь перейти на другую платформу сложно и дорого.
2. Иваныч Иванов (Иваныч) 17.04.15 14:10
Сегодня попробую внедрить в конфигурацию, но еще можно было бы сделать сразу просмотр остатков аналогов
3. Сергей Зенюков (Sanario) 25.01.16 10:10
Эх, если бы еще md приложили - вообще бы красота была
4. Иваныч Иванов (Иваныч) 25.03.16 17:37
(3) Sanario, я тоже пока особо не могу сообразить, как и что, выкидывает ошибку