Форум OlegON > Программы и оборудование для автоматизации торговли > Кассовые программы > УКМ-4

Активация подарочных сертификатов - альтернатива? : УКМ-4

23.11.2024 16:40


22.10.2015 23:43
Доброго времени суток всем!
Возникла дурацкая ситуация... Дали задание создать подарочные сертификаты. Создал. А их вместо того, чтобы продавать по собственному номеру (в процессе продажи сертификат активируется и на его баланс зачисляется номинал), просто раздали в качестве подарков. В принципе, как вариант, можно оформить продажу и возврат этого чека (чтобы устаканить деньги в кассе) и далее использовать для оплаты, но это не лучший вариант. Подскажите, плз, как решить эту проблему (куда - главное - и что прописать в базу?)...
23.10.2015 05:51
Ну можно взять кассу без фискальника и через неё продать, а можно и руками добавить в БД. Но всё это, только, если ты знаешь номера сертификатов которые раздали.
Итак, тебе понадобится редактор таблиц MySQL и 3 таблицы из УКМ:
local_auth_account_journal - тут мы берем соответствие номера сертификата с его ID в базе
local_auth_certificate_account - тут мы сделаем сертификат активным
local_auth_account_journal - тут мы создадим начисление на счет сертификата

1. Идем в таблицу local_auth_account_journal и ищем в поле NAME наш сертификат, смотрим в поле ID из строки нашего сертификата.
2. Идем в таблицу local_auth_certificate_account и ищем строку нашего сертификата по полю ACCOUNT_ID. В поле ACTIVE ставим 1, в поле DATE_TO ставим дату, до которой сертификат действителен, в поле DAYS_TO_AFTER_ACTIVATE ставим количество дней, которые сертификат будет действителен после активации.
3. Идем в таблицу local_auth_account_journal, в конце нужно создать запись типа:

Код:
ID		ACCOUNT_ID	AMOUNT		DATE					SOURCE_TYPE		SOURCE_ID	CASH_ID		COMMENT					BALANCE		ACTION_DATE
45784	14866		1000.00		2015-10-22 	15:42:27	1				707526		1017004		Продажа сертификата		1000.00		2015-10-22 15:42:27
(Разметка тут разъехалась, но если вставишь в текстовый редактор - будет нормально)

ID не заполняешь - там автоинкремент, нужный ID сам встанет
ACCOUNT_ID тут твой ID из первой таблицы
AMOUNT тут сумма начисления
DATE время операции
SOURCE_TYPE, SOURCE_ID, CASH_ID, COMMENT - вроде можно оставить как есть, это привязка к чеку, но у тебя же нет чека
BALANCE сумма которая будет на сертификате (то же что в AMOUNT)
ACTION_DATE то же что в DATE
23.10.2015 05:54
Ну и забыл добавить: обязательно сначала забэкапиться и всё на свой страх и риск. (хотя я сотни раз такое делал)
23.10.2015 05:55
Цитата:
qwrty40 можно оформить продажу и возврат этого чека (чтобы устаканить деньги в кассе) и далее использовать для оплаты
Так не получится, при возврате начисление на сертификат отменится.
23.10.2015 14:38
Более щадящий вариант активировать:
SET @Cert:='XXX';
UPDATE ukmserver.local_auth_account laa,ukmserver.local_auth_certificate_account laca SET laca.`active`=1
WHERE laca.`active`=0 AND laca.`account_id`=laa.`id` AND laa.`params`=@Cert;

А сами деньги закидывать через вёб.
Часовой пояс GMT +3, время: 16:40.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.