Не рассчитаны автоматические скидки наценки проведение невозможно программно

Как настроить автоматические скидки

Применение автоматических скидок и наценок для оптовых и розничных продаж в УТ 11 (виды скидок, условия назначения).

В предыдущем уроке мы рассмотрели назначение ручных скидок в документах продажи, а в этом будем разбираться с автоматическими, т.е. с теми, которые система назначает самостоятельно по настроенным заранее алгоритмам.

В качестве примера рассмотрим, как назначается скидка процентом в случае, если сумма документа превысила какое-то минимальное значение.

В видео уроке дополнительно разобраны скидки фиксированной суммой, составные скидки и накопительные. Также продемонстрированы различные условия назначения скидок.

Вначале напомню, где в программе включается функционал автоматических скидок:

Для работы со скидками есть специальное рабочее место:

Вот так оно выглядит:

Скидка процентом

Создаем новую скидку. На выбор предлагается достаточно большой набор вариантов, остановимся на первом:

В открывшемся окне заполняем необходимые параметры: указываем наименование, размер скидки. Также на первой закладке можем настроить отбор по номенклатуре (в таком случае скидка будет назначаться только на эти товары из отбора):

На второй закладке настраиваем условие применения скидки. В нашем примере это будет минимальный порог суммы документа:

В качестве примера возьмем минимальную сумму продажи в 10000 рублей:

Можем при необходимости настроить отбор по номенклатуре (тогда будет анализироваться не общая сумма документа, а сумма товаров из отбора, которые есть в документе). Не забываем сохранить скидку:

Теперь нам нужно настроить использование данной скидки. Скидка может быть использована в следующих вариантах:

Остановимся на первом варианте:

Выделяем нужный склад и устанавливает для него статус скидки Действует:

В появившемся окне вводим период действия скидки:

Должно выглядеть как-то так:

Автоматическая скидка при оптовой продаже

Теперь попробуем скидки в действии, для этого создадим документ продажи. При проведении документа появится такое сообщение:

После этого скидки рассчитаются автоматически:

Если скидок в системе много, и нам нужна детальная информация, ее легко можно получить:

В появившейся форме видим какая скидка применилась и какое условие было выполнено:

Также можем посмотреть отчет по примененным скидкам:

Обязательно посмотрите видеоурок, в нем я показываю другие варианты назначения скидок.

Буду вам очень благодарен, если поделитесь ссылкой на него на своей страничке в любой соцсети или подпишетесь на новости сайта в Инстаграме.

Это поможет сайту развиваться и расширять аудиторию.

Другие уроки по теме «Ценообразование»

Регистрация цен поставщика нескольких типов, отражение заказа поставщику с обновлением этих цен.

Установка цен номенклатуры по различным сценариям (ручной ввод, на основании цены поступления и наценка на другой вид цен).

Применение ручных скидок при продаже товаров, ограничение верхнего порога скидки для пользователей системы.

Вас может заинтересовать

Удобный просмотр информации о ценах, складских остатках, резервах и свойствах номенклатуры. Быстрый ввод документов закупок и продаж. Доступ к отчетам по номенклатуре и продажам. Расширение для 1С.

Расширение позволяет в обработке Цены (прайс-лист) выбрать установку цен по базовым единицам или по упаковкам.

Регистрация цен поставщика нескольких типов, отражение заказа поставщику с обновлением этих цен.

Источник

Проблема с автоматическими скидками

Начали использовать автоматические скидки и столкнулись со следующей проблемой:

Собственно вопрос. Хочу отключить проверку, рассчитаны-ли скидки, если в табличной части присутствуют автоматические скидки.

В РТУ Форма документа:
В процедуре ПередЗаписью нашёл:

добавляю существующую функцию:

Ошибка отображения типов:
Отсутствует отображение для типа ‘ValueTable’
<Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма( 336)>: Если Не Объект.СкидкиРассчитаны И СкидкиИзменились() И НЕ ПредварительноРассчитанныеСкидкиНаценкиПоЗаказу() Тогда
<ОбщийМодуль.ОбщегоНазначенияУТКлиент.Модуль(1453)>: Возврат Форма.Записать(ПараметрыЗаписи);
<ОбщийМодуль.ОбщегоНазначенияУТКлиент.Модуль(1410)>: ЗаписатьОбъект(Форма, ПараметрыЗаписи);
<Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма( 3221)>: ОбщегоНазначенияУТКлиент.Провести(ЭтаФорма, Истина);

по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: ret Форма: Элемент Тип: anyType
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа ‘ValueTable’

Помогите. Что я делаю не так? УТ 11,3 файловая

УТП. В чем разница между скидками номенклатуры?
Добрый день!:) Не могу разобратьсяс логикой УТП. Есть регистр ЦеныНоменклатуры, и там есть.

Товары корзины со скидками
Добрый день. Ситуация такая: добавляю в корзину по ajax товар. нужно вернуть обратно массив.

связанное со скидками и продажами кто можеть в экселе (ECXEL)
При условии, если определить скидку в зависимости от сумм продаж, и клиента(отличаюшего по условным.

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).

Добавлено через 1 минуту
Вот как результат ошибка.Нельзя на клиенте использовать так ТаблицаЗначений
Смотрел на конфе:КА2

Хотели скопировать кусок кода,а он и не заработал?

Добавлено через 3 минуты

А они точно рассчитаны?
Посмотрите в сторону «СкидкиНаценкиКлиент.СброситьФлагСкидкиРассчитаны(ЭтаФорма); »
Флажок расчета сбрасывается по куче критериев обработки.

Добавлено через 2 минуты
И в том числе могут сбрасываться в процедуре «ЗаполнитьДокументНаОснованииЗаказаКлиента» в модуле объекта

Только что открыл девственную типовую конфу и сделал так:

Ну и соответственно при проведении получаю то же сообщение «Автоматические скидки (наценки) не рассчитаны. Рассчитать автоматические скидки (наценки)? Ок/Отмена«

Теперь я уверен, что при создании на основании скидки переносятся сразу и это штатная работа программы.

Флажок сбрасывается при изменении даты, количества товара, складов и еще куче всего.

Да будет Вам счастье, если в событии «перед записью» в форме документа будет поставлено «Объект.СкидкиРассчитаны = Истина»

Спасибо огромное! Я просто хотел сказать, что программа работает штатно.. а то polax напугал меня)))

Добавлено через 3 часа 56 минут

Поставил. Пишет «Переменная не определена (Объект)«

Добавлено через 1 минуту

Да НЕЛЬЗЯ этого делать же! Иначе всегда в этом документе будет отключена проверка на рассчитанность скидок! А нужно не проверять, только если на основании заказа создаётся

Добавлено через 46 секунд
Соответственно если самостоятельная реализация создаётся, то скидки должны проверяться штатно

Добавлено через 1 минуту
Но просто на основании заказа проверять не вариант. Нужно именно смотреть, стоят-ли в ТЧ автоскидки

Добавлено через 1 час 35 минут
Ну так как, поможет кто?))

Решение

Не получается. Табло видит выражение, но в элементах нет значения скидки почему-то.

Добавлено через 12 секунд

Блин всё-таки проблема не решилась.. Всё ещё нужна ваша помощь!

Итак: в конце процедуры ЗаполнитьДокументНаОснованииЗаказаКлиента я поставил СкидкиРассчитаны = Истина;

Стало работать, но если ввести ручную скидку, то активируется флаг «СкидкиИзменились = Истина;». И всё-равно просит расчитать скидки.

Тогда в форме документа в процедуре ИзменилисьСкидки я поставил:

В итоге оно работает, НО! Если добавить товар в табличную часть, то соответственно автоматической скидки у него не будет, пока не рассчитаешь. И вот тут уже должно попросить перерассчитать скидки, а не просит..

Что нужно вкратце понятным языком:
Если создавать на основании заказа клиента Реализацию товаров, то в неё переносятся товары из этого заказа со всеми скидками. Проблема в том, что если ничего не трогать и просто провести эту реализацию, то при проведении просит рассчитать автоскидки, но ведь они уже проставлены!

Нужно, чтобы в РТУ при проведении не просило перерасчета автоматических скидок, при условии Если РТУ создана из Заказа клиента и в ТЧ у всех товаров стоит автоскидка. Но если позже добавлен новый товар, то у него соответственно не будет автоскидки.. и вот тогда при проведении должно спросить перерасчитать.

Источник

Ваш браузер устарел, пожалуйста обновите ваш браузер пройдя по ссылке www.microsoft.com/download

Создание своих автоматических скидок в УТ 11.4

В некоторый конфигурациях 1С есть такие особые виды внешних обработок, как «Расчет скидки/наценки» и «Проверка условия предоставления скидки/наценки», они слабо документированы (я не нашёл нормального мануала), по этому сам разбирался. Если кто даст ссылку на мануал, буду благодарен.

Первое и главное, где взять шаблон, чтобы не изобретать велосипед? Оказывается в демо-конфигурации 1С:Управление торговлей 11.4 уже есть две таких обработки:

Регистрация обработки происходит стандартным образом, однако все основные данные заполняются по умолчанию в функций ПараметрыРегистрацииВнешнейОбработкиСкидкиНаценки() или ПараметрыРегистрацииВнешнейОбработкиУсловияПредоставленияСкидокНаценок() общего модуля СкидкиНаценкиСервер. В данные процедуры передаются только Наименование и Информация. Зря не дали возможность передавать версию обработки, ну да ладно, всегда можно самому добавить данный функционал.

Соответственно один вид обработки отвечает непосредственно за расчёт скидок/наценок, а второй за условие применения тех или иных скидок/наценок. Соответственно одновременно и условия и методику расчёта описать в одной обработке нельзя. Причём, если вы реализуете произвольный алгоритм расчёта скидок, то наложить отбор на номенклатуру или сформировать условие для скидки уже нельзя. Взялись сами считать, вот и считаем.

Рассмотрим механизм расчёта скидок, проверку условия изучим позже.

Расчёт начинается в процедуре Рассчитать() общего модуля СкидкиНаценкиСервер, там в зависимости от вида документа, запускается своя процедура расчёта. В этих процедурах формируется первый параметр ПараметрыРасчета, в котором много всего, что может пригодиться для работы, например, товары в виде таблицы значений и объект, т. е. документ или форма для которого вызван расчёт скидок.

Вторым шагом формируется параметр ДеревоСкидок, как результат запроса к справочнику СкидкиНаценки. Полученные параметры передаются процедуре РассчитатьСкидкиРекурсивно(), которая рассчитывает скидку для каждой строки дерева скидок.

Непосредственный расчёт происходит в процедуре РассчитатьСкидку() с параметрами СтрокаДерева и ПараметрыРасчета, где по типу параметра СтрокаДерева.СпособПредоставления определяется алгоритм расчёта скидок, именно тут запускается процедура расчёта скидок, расположенная в модуле объекта внешней обработки. Расчёт запускается в безопасном режиме!

Есть ещё один важный параметр, на основании которого рассчитываются скидки, а именно наши настройки из внешней обработки, их нужно как-то передать в алгоритм расчёта. Мы должны их оформить в структуру и определённым образом организовать выгрузку во временное хранилище (см. пример, функцию СохранитьНастройкиВнешнейОбработки() в модуле формы), потом эти настройки «как есть» будут сохранены в реквизите ПараметрыВнешнейОбработки элемента справочника СкидкиНаценки, а во время запуска нашей процедуры будут переданы в качестве параметра Настройки.

В итоге в процедуру Рассчитать модуля объекта внешней обработки передаются следующие параметры:

Теперь как считать? Результатом расчёта должна быть таблица значений с колонками, описанными в процедуре ПустаяТаблицаСкидокСРасшифровкой() общего модуля СкидкиНаценкиСервер. Данные в таблицу значений вносятся специальными процедурами:

Все исследования проводил на конфигурации Управление торговлей, редакция 11 (11.4.11.55) и потом проверял на 1С:Комплексная автоматизация 2 (2.4.11.46).

UPD: 18.08.2021 добавлена настройка для применения скидок ко всем товарам в документе.

Источник

Автоматические скидки в программе «Управление торговлей ред. 11.1»

Автоматические скидки являются частью ценовой политики предприятия и используются при продаже. Для того, чтобы в программе можно было работать с автоматическими скидками надо включить соответствующую функциональную опцию в разделе « Администрирование/Маркетинг и CRM».

В разделе « Маркетинг» появятся соответствующие команды.

При этом в документах продажи (« Реализация товаров и услуг» и « Чек ККМ») в табличной части появятся колонки для вывода автоматической скидки.

Для хранения списка типов скидок и наценок предназначен справочник « Скидки (наценки») (раздел « Маркетинг»), но сам справочник не назначает скидки. Скидка может назначаться для определенного сегмента номенклатуры, клиента или группы клиентов в рамках, оформленных с ними торговых соглашений. Скидка в справочник вводится со знаком плюс, наценка со знаком минус. При создании скидки можно выбрать множество типов скидок (всего 9).

В зависимости от выбранного типа изменяется внешний вид формы справочника.

В карточке скидки можно посмотреть ее использование в маркетинговых мероприятиях и соглашениях с клиентом перейдя в панель навигации и выбрав соответствующую команду.

Для примера создадим две скидки – одну составную (состоит из двух условий), вторую – из одного условия. Тип скидки – Скидка (наценка) процентом, 5% Условия предоставления – За разовый объем продаж, описание условия – сумма – в документе – не менее – 10000 руб., сегмент номенклатуры – Опт. Для назначения условий предоставления надо нажать кнопку « Подобрать». Откроется окно подбора условий. По кнопке « Создать» надо выбрать нужное условие (всего 8 разных условий). Откроется соответствующее окно (форма окна меняется в зависимости от выбранного условия).

Заполнить нужные реквизиты и нажать кнопку « Записать и закрыть». По такому же принципу создадим еще одно условие – За время продажи, условие предоставления – воскресенье – с 10 до 12 часов. Затем каждое условие перенесем в раздел «Подобранные условия предоставления» двойным кликом левой клавиши мыши или кнопкой « Enter». Нажать кнопку « Перенести» и перенести эти условия в карточку скидки. Наименование скидки сформируется автоматически (при необходимости его можно изменить).

Записать и закрыть скидку. Создадим еще одну скидку «Первая продажа партнеру» (тип скидки – скидка (наценка) процентом, 3%, условие предоставления – первая продажа партнеру). После определения условий скидок и описания самих скидок необходимо произвести назначение автоматических скидок, т.е. указать в каком случае, какому клиенту будут применяться те или иные скидки.

Рассмотрим установку скидок по маркетинговым мероприятиям. Для установки новой скидки сформируем документ « Установка скидок по маркетинговым мероприятиям». Документ предназначен для фиксации тех позиций номенклатуры, по которым покупателям предоставляются скидки (наценки). Документ фиксирует применение скидок в рамках маркетинговых мероприятий для розничных покупателей, а также для оптовых покупателей в дополнение к скидкам, установленным в соглашениях. Для того, чтобы работа с документом стала возможной необходимо включить соответствующие функциональные опции в разделе « Администрирование/Маркетинг и CRM».

При этом в разделе « Маркетинг» появится группа команд « Маркетинговые мероприятия», в частности команда « Скидки по маркетинговым мероприятиям».Добавим скидку для оптовых покупателей с помощью документа « Установка скидок по маркетинговым мероприятиям» (раздел « Маркетинг»).

Проведем документ и посмотрим его движения.

Для того, чтобы программа предложила заполнить автоматические скидки должны соблюдаться условия, указанные для партнера в карточке партнера (соглашение с клиентом). На закладке «Скидки (наценки)» надо указать созданную ранее скидку (скидки) по кнопке « Подобрать» и сохранить элемент.

Затем, в документе реализации должны соблюдаться условия скидки для этого клиента (если условия скидки составные, т.е. состоят из нескольких условий, то должны соблюдаться все условия). В нашем примере это сумма покупки >>= 10000 руб. плюс покупка в воскресенье с 10 до 12 часов.

Если в соглашении указано две и более скидки (не условия), то система автоматически выберет скидку (при соблюдении всех необходимых условий) с большим процентом (например, есть скидка на 3% и 5%, то будет выбрана скидка на 5%).

Посмотреть, соблюдаются ли условия можно в документе реализации по команде « Скидки (наценки)/Назначить автоматические скидки».

Рассмотрим работу программы на примерах с одним и тем же клиентом – «ТД «Юран» (ЗАО». В типовом соглашении указаны обе созданные нами скидки.

Создадим документ реализации (это наша первая продажа партнеру).

Нажмем кнопку « Скидки (наценки)/Назначить автоматические скидки (наценки)». Появится окно расчета автоматических ссылок.

Из рисунка видно, что будет действовать только одна скидка – 3% (первая продажа партнеру).

Если нажать кнопку « Рассчитать» система подставит выбранную автоматическую скидку в соответствующие колонки и автоматически рассчитает сумму со скидкой.

Можно нажать кнопку « Отмена» и закрыть окно. Тогда для ввода автоматической скидки можно использовать два способа:

Если нажать кнопку « Отмена», то документ проведен не будет. Т.е. система не даст провести документ реализации, если данному клиенту положены автоматические скидки.

Посмотреть примененные скидки можно в панели навигации по команде « Примененные скидки».

Усложним задачу. Отменим проведение документа и изменим его дату и время на 07.04.2013 11:00.

Попробуем назначить автоматические скидки.

Мы видим, что скидка 5% доступна не полностью. Смотрим – сумма документа у нас 10000 руб.

Вновь попробуем назначить автоматические скидки.

Видим, что условия не выполнены. Почему? Обратим внимание на все условие, В конце указано «по номенклатуре сегмента Опт». Иными словами наш стеллаж должен входить в сегмент номенклатуры «Опт».

Нажмем кнопку «Открыть»

и перейдем в элемент справочника « Номенклатура» «Стеллаж угловой» и на панели навигации выполним команду «Сегменты номенклатуры». Перейдем на закладку «Формируемые автоматически» и выберем нужный сегмент.

По команде «Состав сегмента» откроем соответствующий отчет. Нажмем последовательно кнопки

« Обновить» и « Сформировать сегмент» и сформируем отчет.

Мы не видим в этом отчете стеллажей.

Вернемся в сам сегмент и откроем основную схему компоновки данных кнопкой « Редактировать» (чтобы кнопка стала доступна выберем команду «Все действия/Разрешить редактирование реквизитов объекта» и разрешим редактирование).

В настройках отбора указано, в частности, что для данной номенклатуры должен быть указан способ распределения «Опт».

Перейдем в карточку номенклатуры стеллаж и нажмем кнопку « Дополнительные сведения» (чтобы данная кнопка стала доступной надо включить соответствующую функциональную опцию в разделе « Администрирование/Общие настройки»).

Видим, что способ реализации не указан. Исправим это, укажем значение «Опт» из соответствующего справочника (список значений введен ранее).

Нажмем кнопку « Записать и закрыть».

Вернемся к сегменту, откроем его и по команде «Состав сегмента» откроем соответствующий отчет. Нажмем последовательно кнопки « Обновить» и « Сформировать сегмент» и сформируем отчет.

Видим, что в отчете появились записи по стеллажу, т.е. стеллаж входит в состав сегмента «Опт».

С помощью кнопки « Записать и закрыть» запишем и закроем карточку номенклатуры.

Перевыберем нашу номенклатуру в документе « Реализация товаров и услуг» и вновь попробуем назначить автоматические скидки.

Вуаля! Теперь все условия соблюдаются.

Нажмем на кнопку « Рассчитать» и увидим, что применена скидка 5%.

Источник

Операционные системы и программное обеспечение