Обработка «установка наценок по ценовым группам» для расчетных и динамических видов цен.
В прошлой статье
Рассказывал о варианте работы с динамическими и расчетными ценами стандартными методами при использовании ценовых групп.
У данного метода было выявлено несколько минусов:
Наценки по определенной колонке и ценовой группе приходится держать в голове или excel.
При установке наценки встроенной обработкой, придется для каждой ценовой группы создавать свой документ.
Вот их и попробуем исправить путем добавления обработки «изменения табличной части документа».
Задача осталась прежней: вести одну базовую цену, а значения других ценовых колонок получать с помощью наценки на ценовую группу.
Т.е. получить вот такую матрицу.
Где Закупочная – базовая цена, в эту колонку и заносятся начальные цены.
Мелкооптовая(динамическая) и Оптовая(расчетная), конечную цену по которым регулируем с помощью наценок.
Установка обработки табличной части
Заходим в «Внешние обработки заполнения табличных частей»
- Создаем новый элемент
- Нажимаем «Заменить файл внешней обработки», выбираем файл «УстановкаНаценокНаЦеновыеГруппы.epf» для Платформы 8.1 или «УстановкаНаценокНаЦеновыеГруппы8.2.epf» для Платформы 8.2
- Нажимаем «Да», для того чтобы обработка появилась в документе.
- Записываем.
Обработка добавлена
Вводим новый документ установка цен номенклатуры.
Зайдем в документы «Установка цен номенклатуры»
Создадим новый документ.
- Выберем ценовые колонки «Закупочная, мелкооптовая, оптовая»
- Выбираем «Заполнить по ценам номенклатуры»
1) Можно отобрать номенклатуру по условия. Например:
Будут выбраны только номенклатура из папки Бытовая техника
Будут выбраны вся номенклатура кроме тех где не указана ценовая группа.
2) Если не установлена эта отметка, то позиции у которых на данный момент цена не установлена в выборку не попадут.
3) Нажимаем «Выполнить»
- Установить базовые цены, от которых будем производить расчеты.
Выбираем обработку в документе
Произведем первоначальное заполнение
- Выберем типы цен (есть возможность выбрать только Динамические и Расчетные)
- Кнопка заполнить добавляет все ценовые группы. Если часть ценовых групп уже есть в списке, будут добавлены только недостающие.
- Добавить ценовую группу (если ввели новую в информационную базу)
- Удалить ценовую группу (если ценовая группа давно не используется)
- Заполним наценки на данные группы для каждой из колонок.
- Сохраним значения обработки. Для того что бы не вводить эти данные каждый раз.
- По кнопке «Выполнить» в выбранных колонках (если они присутствуют в документе) по всей номенклатуре документа будет проставлена наценка в зависимости от выбранной в ней ценовой группы.
- По кнопке «Рассчитать по базовым ценам» будут рассчитаны значения у «Расчетных видов цен» (в нашем случае Оптовая)
- Сохраняем и проводим документ.
Сформируем прайс-лист:
Красным выделена ситуация, когда в номенклатуре не указана ценовая группа т.е. процент срабатывает наценка по умолчанию -100% или
при установке закупочной цены на новые товары, не меняя наценки по «Мелкооптовой» и «Оптовой» цене.
Основные операции:
1) Если Новый товар, вводим базовую (Закупочную) цену и запускаем обработку для ввода наценок для динамических цен (Мелкооптовая), расчетные можно так же рассчитать в данном документе или подождать согласования товарной матрицы с клиентом и рассчитать в отдельном документе.
2) При изменении цены на товар вводим документ и корректируем документ с базовой ценой (закупочная) . Динамические (мелкооптовая) цены изменяться автоматически, расчетные можно так же рассчитать в данном документе или подождать согласования изменения цены с клиентом и рассчитать в отдельном документе.
3) Изменение наценки на ценовую группу вводим новый документ, выбираем ценовые колонки в которых изменилась наценка , заполняем номенклатурой по данной ценовой группе. Входим в обработку меняем наценки по данной ценовой группе (не забываем сохранить). «Выполнить». После проведения документа динамические цены изменяться (мелкооптовая). Расчетные (Оптовая) цены можно изменить в данном документе (кнопка «рассчитать») или подождать согласования товарной матрицы с клиентом и рассчитать в отдельном документе.
Плюсы:
Наценки по определенной колонке и ценовой группе возможно сохранить в обработке.
Не надо для каждой ценовой группы создавать свой документ.
Устанавливаются наценки для всех колонок в документе, а не для одной как в стандартном варианте.
Минусы:
Матрица с наценками сохраняется у конкретного пользователя, нельзя взять и восстановить настройку другого человека. Минус думаю не существенный т.к. в небольших организациях ценообразованием занимается один ответственный.
Для программистов: Попробовал прикрутить сохранение в стандартный регистр настроек в торговле, но не вышло сохранить в него таблицу значений. Если встречали пример где данная операция встречается буду благодарен за подсказку.
Второй минус использовал перебор в коде в одном месте 308 строка модуля основной формы.
Конструктивная критика приветствуется.
Обновление 27 марта 2013г.
Добавлено отображение групп в обработке.
Изменена сортировка, в соотвествии с "порядком" в справочнике "Ценовые Группы"
Добавлена возможность установки наценок на всю группу, например если нужно на всю электронику установить 20%, то забиваем наценку в группу и процент изменится у всех подчиненных элементов.
Обновление 30 апреля 2013г.
Исправлена ошибка.
Возникала если в документе выбрано неколько Типов Цен и одну из них убираем.
На данный момент для обработки требуется уникальность имен типов цен.
Т.к. к внутренней переменной документа "соответствия" (к какому типу цен, какой номер колонки принадлежит) обратиться не удается, то данное соотвествие получаю по наименованию колонок.