SetRetail10 ▪️ Касса ◾️ Консервация и расконсервация

Публичное пространство

SetRetail10 ▪️ Касса ◾️ Консервация и расконсервация

 

Используйте эту инструкцию:

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

 

Важная информация

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

  • Расконсервация кассы необходима в тех случаях, когда кассу необходимо выставить на линию, например для новогодних продаж.

  • Пириты 2Ф до версии 565.1.10 не поддерживают ФФД1.2. Не забудьте обновить прошивку!

  • Если касса использует банковские оплаты по QR-кодам, а также процессинги банка, тогда их необходимо настроить заново, так как файлы банковского процессинга могут устареть, и требуется повторная привязка банковского терминала.

  • Для регистрации/перерегистрации ККТ используйте утилиту Fito последней версии с поддержкой ФФД 1.2.

  • Рекомендуется, если кассы не было в сети продолжительное время и её версия отстает от текущих более чем на три версии, например текущая версия касс 10.3.5.0, а старая 10.3.1.0 и ниже, тогда переустановите кассу, так как это процесс осуществить проще и быстрее после долгого простоя.

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

  • Плагины: после восстановления кассы обязательно скопируйте в папку /home/tc/storage/crystal-cash/plugins/ последнюю версию файлов плагинов, которые не содержатся в дистрибутиве Set Retail 10 и поставляются сторонними поставщиками.

  • Обязательно проверьте, что при загрузке товаров на законсервированную кассу с SetCentrum на SetRetail, статус кассы на сервере магазина не сменился на “Активна“. Если статус активен, а касса по факту отсутствует, тогда повторно переведите её в статус неактивной.

Консервация и расконсервация касс, начиная с версии 10.3.9.0 с использованием SetCentrum

10.3.9.0

https://crystals.atlassian.net/browse/SRTS-456

https://crystals.atlassian.net/browse/CR-6858

Начиная с версии 10.3.9.0, консервация и расконсервация касс в топологиях Centrum ↔ Retail ↔ Кассы и Centrum ↔ Кассы доступны только через SetCentrum.

Консервация, расконсервация, редактирование, удаление и создание новых касс для этих топологий недоступны через SetRetail.

Консервация доступна доступна для серверных пользователей с привелегией “Администрирование настроек магазина”.

Для добавления привилегии:

1. Перейдите в Персонал → Роли пользователей → нажмите 

.

8841d20c-7880-4173-ba97-6157c4760304-20241206-144527.png

2. Выберите Управление продажами → Настройки магазина → Админитрирование настроек магазина → нажмите Добавить к роли

Консервация 

Топология SetCentrum ↔ SetRetail ↔ Кассы

Внимание!

Только для топологии SetCentrum ↔ SetRetail ↔ Кассы.

1. МагазинНастройки магазина → выберите нужную кассу  → выберите пункт меню Законсервировать.

 

2. После консервации кассы/касс обязательно выполните очистку справочников на кассе, выполнив скрипт в базах данных кассы:

cards

DO $$ BEGIN IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_cards' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_cards CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_cardrange' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_cardrange CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cards_lastcardid' AND schemaname = 'public') THEN TRUNCATE TABLE public.cards_lastcardid CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_cardtype' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_cardtype CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_clients' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_clients CASCADE; END IF; END $$;

 

catalog

DO $$ BEGIN IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_product' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_product CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_price' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_price CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'loy_cg_sale_restrictions' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.loy_cg_sale_restrictions CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'loy_products_group' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.loy_products_group CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'loy_products_salegroup' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.loy_products_salegroup CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'likond' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.likond CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'likond_files' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.likond_files CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_product_cg_salegroup' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_product_cg_salegroup CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_salegroup' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_salegroup CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_counterparty' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_counterparty CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_limits_base' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_limits_base CASCADE; END IF; END $$;

 

discount

DO $$ BEGIN IF EXISTS ( SELECT 1 FROM pg_tables WHERE tablename = 'discounts_advertisingactions' AND schemaname = 'public' ) THEN TRUNCATE TABLE PUBLIC.discounts_advertisingactions CASCADE; END IF; END $$;

 

Топология SetCentrum ↔ Кассы

1. Перейдите в Магазины → Поиск магазинов (найдите требуемый из списка) → кликните иконку редактирования.

2. Перейдите в Кассы → кликните иконку контекстного меню → выберите нужную кассу  → выберите пункт меню Законсервировать.

image-20250128-221102.png

Расконсервация

Очистка данных кассы в любой топологии перед расконсервацией

После того, как касса подключена к локальной сети, обязательно выполните скрипты по очистке данных на кассе всех справочников:

Выполните скрипты в следующий базах данных:

cards

DO $$ BEGIN IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_cards' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_cards CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_cardrange' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_cardrange CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cards_lastcardid' AND schemaname = 'public') THEN TRUNCATE TABLE public.cards_lastcardid CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_cardtype' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_cardtype CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'card_clients' AND schemaname = 'public') THEN TRUNCATE TABLE public.card_clients CASCADE; END IF; END $$;

 

catalog

DO $$ BEGIN IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_product' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_product CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_price' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_price CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'loy_cg_sale_restrictions' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.loy_cg_sale_restrictions CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'loy_products_group' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.loy_products_group CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'loy_products_salegroup' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.loy_products_salegroup CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'likond' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.likond CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'likond_files' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.likond_files CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_product_cg_salegroup' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_product_cg_salegroup CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_salegroup' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_salegroup CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_counterparty' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_counterparty CASCADE; END IF; IF EXISTS (SELECT 1 FROM pg_tables WHERE tablename = 'cg_limits_base' AND schemaname = 'public') THEN TRUNCATE TABLE PUBLIC.cg_limits_base CASCADE; END IF; END $$;

 

discount

DO $$ BEGIN IF EXISTS ( SELECT 1 FROM pg_tables WHERE tablename = 'discounts_advertisingactions' AND schemaname = 'public' ) THEN TRUNCATE TABLE PUBLIC.discounts_advertisingactions CASCADE; END IF; END $$;

 

 

 

Топология SetCentrum ↔ SetRetail ↔ Кассы

Способ 1. Расконсервация на сервере

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

  • Если на кассе не работает какое-либо периферийное оборудование, обязательно дождитесь подтверждения его готовности.

© 1994-2025, ООО «Кристалл Сервис Интеграция».
Все права защищены.

Политика обработки персональных данных