Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Реализация Функции "Дать Акционную Скидку" , Варианты          
Flexy Подменю пользователя
сообщение 25.05.12, 12:01
Сообщение #1

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Привет.Конфа ТИС, доработанная.
Стоит задача реализовать Функцию "Дать Акционную скидку".
Контрагент имеет реквизит ПроцентСкидки, который рассчитывается на основании суммы его покупок.
Из того, что мне пришло в голову:
Вариант № 1
1.Добавить Контру Реквизит (тип булево) "Участник Акции"
2.Добавить Константу "ПроцентАкционнойСкидки".
3.При записи элемента проверять является ли он Участником акции, если да, то (ПроцентСкидки + Константа.ПроцентАкционнойСкидки), если нет, то записываем
просто ПроцентСкидки.
Существует небольшой нюанс: При записи элемента, срабатывает процедура Обновления/Записи данных в базу POS на PostgreSQL.
Т.е. Придется дописывать обработку, которая по окончанию акции будет перебирать всех контров у кого ДатьАкционнуюСкидку = Истина, и перезаписывать их в базу + в POS.Оптимально ли?

Вариант № 2
1.Городить Справочник Акции с Реквизитами: Акция, ДатачНачала, ДатаКонца, ПроцентАкционнойСкидки.
2. Тоже, что и в Варианте № 1.
3.Добавить код в процедуру ПриНачалеРаботыСыстемы, который будет отслеживать ДатуОкончанияАкции и перебирать контров с целью снять флаг "УчастинкАкции" (по ходу опять не оптимально).

Вариант № 3
1.Добавить отдельное поле ("УчастникАкции") в таблицу БД POS терминала
2.И плясать от него.
Но тут тоже нюанс.Придется так же в ПОС допиливать функцию суммирования СкидкиКлиента со СкидкойПоАкции.А я с таким не сталкивался.
Возможно это сделать прямым запросом из 1С к базе ПОС?

Знаю, много букав 32541510.gif
Ищу оптимальный вариант.

Acid Подменю пользователя
сообщение 25.05.12, 12:16
Сообщение #2

Про1С-ник
Иконка группы
За заслуги на форуме в 2010 году
Группа: Местный
Сообщений: 2104
Из: Занзибар
Спасибо сказали: 377 раз
Рейтинг: 260.7

вариант 2 п.1
п.2 имхо лишний
а в п.3 зачем снимать? Просто проверять существует ли сегодня какая-то акция. Если да, то предоставить. А галки уже есть.


Signature

Документируйте Код! мать вашу...


Спасибо сказали: Flexy,

Flexy Подменю пользователя
сообщение 25.05.12, 12:30
Сообщение #3

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Цитата(Acid @ 25.05.12, 12:16) *
Если да, то предоставить.

Вот меня собственно этот момент и интересует.
Предоставить - это значит внести в Базу POS терминала?
Т.е. была акция неделю назад.Закончилась.Но в базе ПОСа у клиента все равно будет висеть скидка от прошлой акции.Я так понимаю...

Сообщение отредактировал Flexy - 25.05.12, 12:31

alex1c Подменю пользователя
сообщение 25.05.12, 12:50
Сообщение #4

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 235
Спасибо сказали: 45 раз
Рейтинг: 40

Я как-то своим клиентам такое сделал: в конце месяца отв. человек запускает обработку которая вычисляет сумму за опр. период и исходя из нее проставляет клиентам скидки. Уже года два-три так работают и я туда не лезу...

Flexy Подменю пользователя
сообщение 25.05.12, 13:01
Сообщение #5

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

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

Acid Подменю пользователя
сообщение 25.05.12, 13:12
Сообщение #6

Про1С-ник
Иконка группы
За заслуги на форуме в 2010 году
Группа: Местный
Сообщений: 2104
Из: Занзибар
Спасибо сказали: 377 раз
Рейтинг: 260.7

А структура таблицы ПОС фиксированная или ее можно менять? Если не жестко, то сделать 2 поля: "Постоянная скидка (%)" и "Акционная скидка" (Булево)
Просто например в 1-ой строке вбить % скидки на сегодняшний день единожды
Дальше, если в таблице в поле скидка стоит Истина, получать значение скидки из 1-ой строки.
2 - я бы клиенту давал максимальную скидку из 2х возможных, а то неинтересно получится.


Signature

Документируйте Код! мать вашу...


Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 19.04.24, 23:49
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!