gifts2017

Коррекция чека в 1С:Розница

Опубликовал valery ziyazutdinov (west__) в раздел Обработки - Обработка документов

Простенькая обработка для ручного корректирования некоторых реквизитов документа "Чек ККМ" в типовой конфигурации 1С:Розница 1.0.

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

В этой версии реализованы пока только:

 1. Замена товара (и/или характеристики этого товара)  на другой товар (и/или характеристику этого товара)

 2. Смена даты чека

 3. Смена статуса чека (Архивный, Пробитый, Аннулированный)

 4. Простенькая защита от дурака

 5. Исправлена пара ошибок выбора характеристики товара

 6. Добавлен отбор характеристик для выбора по наличию штрих-кода

 

МИНУСЫ:

- Пока что не реализованно сохранение бэкапной копии исходного документа (не придумал ещё как). В связи с этим настоятельно рекомендую делать архивные копии.

- Документ "Отчет о розничных продажах" необходимо перезаполнять вручную.

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

Наименование Файл Версия Размер
Изменение чека для Розницы начиная с версии 1.0.16.* 6
.epf 16,85Kb
22.11.15
6
.epf 1.1b 16,85Kb Скачать
Изменение чека для Розницы до 1.0.16.* 280
.epf 15,14Kb
16.12.09
280
.epf 1.0b 15,14Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Юрий Тимофеев (Tatitutu) 16.12.09 17:01
обработка то хорошая , но строго для тех людей кто понимает что делает и делает это во блага (себя любимого - шутка)

и называется так хороошо "Замена товара в чеке"

ты представь себе сколько сейчас продавцов скачают и наменяют (а % тебе будут слать - ты БОГАТ)

менять можно даже если чек пробит по ФР

ИМХО.Страшная эта штука - она больше вреда принесет , чем пользы.
Продумай на доступом (лог журнала пусть ведет, бекап(откат) додумай)
2. valery ziyazutdinov (west__) 16.12.09 17:11
(1) Огромное спасибо, за отличные советы! Про лог сразу и не подумал..

В основном конечно не для широкого круга писал, поэтому и не предусмотрел контроль пробития чека. Изначально планировал обработку для правки архивных чеков, которые уже не делают движений, но лежат в базе для формирования различной управленческой отчётности. Иногда продавцы косячат (характеристики путают), а руководству нужен порядок в отчётах..

Постараюсь в скором времени довести до ума =)
3. Юрий Тимофеев (Tatitutu) 16.12.09 17:22
(2) добавляй проверку прав (как минимум Админ)
да и Админам это нежно, поверь - приведет только к хаусу
потом будешь не только архивный чеки разбирать но и за оперативные отвечать. Без контроля и проверки (истории) такого можно наворотить, что потом ни одна обработка не поможет.
Тот кто продумывал логику программы изначально - ставил условие
"проведен - не хрен трогать"
Живи по уставу - завоюешь честь и славу"
лучше продавцов "пугайте" сильнее за косяки, а то они вообще расслабятся
4. valery ziyazutdinov (west__) 16.12.09 17:38
(3) Чего-то от Ваших слов мне не по себе стало - действительно "монстра" создал. Верно подмечено.
А ещё сначала думал её администраторам отдать на пользование.. нафиг-нафиг! С историей и бэкапом обязательно разберусь сначала.

5. stalnoypes (stalnoypes) 19.01.10 13:28
Позвольте! А как Вы собираетесь изменить данные в памяти фискального регистратора, если мне не изменяет память, то по стечению обстоятельств фискальный регистратор имеет встроенную память для контроля проверяющими органами и пробитый чек аннулировать можно только в день его проведения до закрытия смены(т.е. если мы с вами хотим аннулировать чек прошлого периода, то мы получим результат только в базе, а никак не повлияем на результат в памяти "хитрого устройства", а также не вижу смысла подмены характеристик или товара - при возврате товара к Вам придет покупатель и покажет чек, в итоге вы не увидите товар пробитый в его чеке у себя в базе...)? Много вопросов... хотя задумка хороша, но она обязательно должна реализовывать действительность и в памяти регистратора, и иметь ограничения по доступу.
6. valery ziyazutdinov (west__) 19.01.10 16:01
(5) Стоп! Во-первых, в эклз мы никак не залезем и это запрещено законом. Аннулирование сделано для того, чтобы при ошибке пробития (случай когда чек есть в базе, но его нет в ККМ) можно было поправить ситуацию.

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


Во-вторых, в любом случае чек в базе мы найдём по его номеру. А если мы действительно пробили не тот товар, то пересорт и инвентаризация нам помогут конечно же. Но не во всех случая это возможно, иногда для оперативного контроля в базе необходимо иметь актуальную информацию об остатках, А это возможно только при замене товара в чеке и Z-отчёте. Сам по себе архивный чек не влияет на остаток, так что ничего страшного в итоге мы не делаем, если занимаемся только архивными чеками, но зато получаем верные отчёты по чекам.

а ещё вот:
и пробитый чек аннулировать можно только в день его проведения до закрытия смены


Чек нельзя аннулировать после его пробития, это тоже незаконно, можно лишь оформить возврат на товары из чека (до закрытия смены, конечно же).
7. Михаил Ражиков (tango) 19.01.10 16:04
(6) "эклз мы никак не залезем"
смените обслуживающую организацию
8. valery ziyazutdinov (west__) 19.01.10 17:49
Ещё разок для не особо внимательных читающих:
в эклз мы никак не залезем и это запрещено законом
9. Михаил Ражиков (tango) 19.01.10 17:52
"... и з/п у нас вся пушистая!"
10. valery ziyazutdinov (west__) 19.01.10 18:37
(9)проконтролировать изменения в эклз гораздо проще.. конечно, найдутся изворотливые люди. но смысл моей обработки не в том, чтобы кого-то обманывать, а чтобы упростить жизнь операторам.
11. stalnoypes (stalnoypes) 20.01.10 09:55
О чем я в принципе и говорю, что данные телодвижения запрещены законом... Поэтому я и не вижу в ней смысла, тем более, что я еще ни разу не встречал Розницу без ЭКЛЗ..
12. valery ziyazutdinov (west__) 20.01.10 18:11
(11)С лета прошлого года организациям, переведённым на ЕНВД по отдельным видам деятельности, разрешается не использовать ЭКЛЗ в розничной торговле. Т.к. что пожалуйста. А полезность этой обработки я уже описал (см. комм. №(6)). Если кому ещё не очень понятно, пишите - постараюсь объяснить. ;)
13. Александр Волков (aavolkoff) 24.01.10 16:25
Здравствуйте!

Как некогда автор и разработчик механизма статусов чеков ККМ могу сказать, что:

- Изменение данных архивного документа повлечет за собой несоответствие отчетов по чекам и по регистрам. Для того чтобы этого не произошло необходимо при изменении данных в чеке менять данные в связанном документе "ОтчетОРП" (предварительно убедившись, что "ОтчетОРП" проведется задним числом и нигде ничего не всплывет :) ).

- Изменение данных о товарах пробитого чека, в принципе, возможно если не менять сумму чека (но, в любом случае, нежелательно). Как сказано в (3) "Проведен - нехрен трогать" - примерно такой логики, мне кажется, следует придерживаться вообще всегда, но это, увы противоречит основной логике типовых решений "1С" :)

P.S. При разработке механизмов есть такая штука, как цель, требования и задачи. Советую их описать и все станет понятно :)

Александр Волков,
В прошлом автор и разработчик "1С: Розница 8".
14. valery ziyazutdinov (west__) 24.01.10 17:39
(13)Большое спасибо, приятно послушать мнение разработчика.

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

А на счёт:
- Изменение данных архивного документа повлечет за собой несоответствие отчетов по чекам и по регистрам. Для того чтобы этого не произошло необходимо при изменении данных в чеке менять данные в связанном документе "ОтчетОРП"

Это я понимаю, админ сам должен поправить отчёт о продажах, конечно хотелось бы всё делать автоматически, но пока руки не дошли.

Ещё раз спасибо.
15. Л Изм (leon_031275) 16.12.10 16:21
СПАСИБО ЗА ОБРАБОТКУ!!!! ОЧЕНЬ ПОМОГЛА. :D
16. Sk0rp (Sk0rp) 25.08.11 21:51
Очень помогла.
Когда сбоит ФР и в документе не ставится отметка о пробитии чека, хотя сам чек вылез и в памяти ККV учтен - это единственная возможность исправить косяк.
Единственно, я бы удалял и создавал новый чек в транзакции, что бы вдруг не получилось, что старый чек будет удален, а новый не создан.
17. Griper Ink (griper) 21.09.11 11:20
Очень полезная обработка для исправления чеков. Большое спасибо.
18. overdriver (overdriver) 17.07.12 13:55
Полезная обработка. Начал писал такую сам, но вовремя заглянул сюда и писать не пришлось :)
Есть замечание, товар и характеристика меняется для всей строки чека. А если нужно заменить только одну позицию и из нескольких проданных?
Пример:
я собираюсь использовать данную обработку для замены характеристики, в моем случае размера одежды. Продали пять футболок S, но спустя час принесли обратно одну и попросили поменять на M, вот тут эта обработка и нужна, чтобы не совершать лишних телодвижений с возвратами. Но так, как количество никак не учитывается, то отработает неверно
19. overdriver (overdriver) 17.07.12 19:11
(18) в продолжение. Дописал проверку количества. Ниже кусок кода из процедуры ЗаменаТовараЧека(). Может кому пригодится

	// Если нашли строку со старым товаром,
	// то заменяем в ней товар на Новый Товар с Новой Характеристикой.
	Если СтрокаТовара  <> Неопределено Тогда
		Если СтрокаТовара.Количество=1 тогда
			СтрокаТовара.Номенклатура = ПулТовара.НовыйТовар;
			СтрокаТовара.ХарактеристикаНоменклатуры = ПулТовара.ХарактеристикаНовая;
		ИначеЕсли СтрокаТовара.Количество>1 тогда
			СтрокаТовара.Количество = СтрокаТовара.Количество-1;
			СтрокаТовара2 = Отчет.Товары.Добавить();
			ЗаполнитьЗначенияСвойств(СтрокаТовара2,СтрокаТовара);
			СтрокаТовара2.ХарактеристикаНоменклатуры = ПулТовара.ХарактеристикаНовая;
		Иначе
			Возврат Ложь;
		КонецЕсли;
	Иначе
		Результат = "Не корректно задан старый товар для замены!";
		Возврат Ложь;
	КонецЕсли;	
...Показать Скрыть
20. artem senkovskiy (sazabi) 06.03.13 16:54
Планируете ли доработку для массового изменение состояния чеков?
21. valery ziyazutdinov (west__) 06.03.13 21:30
(20)Если вопрос будет актуален до понедельника, то на выходных займусь.
22. valery ziyazutdinov (west__) 06.03.13 21:32
(19) overdriver, Спасибо, буду учитывать..