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

SetRetail10 ◾️ FAQ по весовому модулю и скрипты проверки

Проверка загруженных товаров на весы

SELECT 
	v.number,
	v.model, 
	v.addressing,
	sum(v.PLU_NEW) as PLU_NEW,
	sum(v.PLU_LOAD) as PLU_LOAD,
	sum(v.PLU_LOADED) as PLU_LOADED,
	sum(v.PLU_ERROR) as PLU_ERROR,
	sum(v.OFFLINE_ERROR) as OFFLINE_ERROR,
	v.name,
	v.plu_generation_method
 from 
(
select 
	distinct
	s.number,
	s.code,
	s.model, 
	s.addressing,
	case l0.status when 0 then 1 else 0 end as PLU_NEW,
	case l1.status when 1 then 1 else 0 end as PLU_LOAD,
	case l2.status when 2 then 1 else 0 end as PLU_LOADED,
	case l3.status when 3 then 1 else 0 end as PLU_ERROR,
	case l3_p.status when 3 then 1 else 0 end as OFFLINE_ERROR,
	l0.id,
	l1.id,
	l2.id,
	l3.id,
	l3_p.id,
	t.name,
	t.plu_generation_method
from 
	scales_scales s 
	join scales_template t on t.id = s.scales_template_id
	join scales_plues p on 1=1
	left join scales_linktoplu l1  on l1.scales_code = s.code and p.id = l1.id_plu and l1.status = 1
	left join scales_linktoplu l2  on l2.scales_code = s.code and p.id = l2.id_plu and l2.status = 2
	left join scales_linktoplu l3  on l3.scales_code = s.code and p.id = l3.id_plu and l3.status = 3 and l3.lasterrorcode <> 'PORT-ERROR'
	left join scales_linktoplu l3_p on l3_p.scales_code = s.code and p.id = l3_p.id_plu and l3_p.status = 3 and l3_p.lasterrorcode = 'PORT-ERROR'
	left join scales_linktoplu l0  on l0.scales_code = s.code and p.id = l0.id_plu and l0.status = 0
where 
	s.deleted = false
) v
group by 
	number,
	model, 
	addressing,
	name,
	plu_generation_method
order by 
	number


Как добавить весы DIGI через QLoad?

При добавлении весов DIGI через QLOAD есть возможность указать IP-адрес, последний октет которого будет добавляться в имя выгруженного файла.

Для этого в визуализации сервера в настройках весов DIGI через QLOAD в поле "Адресация" укажите адрес в форме, например:

  • Локальный диск ОС Windows C:\DIGI\==<IP-адрес>
  • Сетевой ресурс ОС Windows \\<IP-адрес>==<IP-адрес>
  • Локальный ресурс ОС Линукс /var/lib/jboss/<папка для экспорта>==<IP-адрес>

Два знака равно - это разделитель между каталогом выгрузки и IP-адресом.

Пример указания папки на диске C:\ на локальном сервере ОС Windows.


Пример указания папки на сетевом ресурсе ОС Windows:


Пример указания папки на сетевом ресурсе ОС Linux:


Не генерируется PLU на товар (повторно создать задания на отправку товаров для весов)

Проверка:

  1. Проверьте правила генерации PLU в типе весового товара Справочники → Типы товаров → Вкладка ВЕСОВОЙ ТОВАР → Способ генерации PLU.
  2. Есть ли в импортируемом пустой PLU?
  3. В базе данных set проверьте в таблице un_cg_price проверьте поле senttoscales, если FALSE, значит товары не отправлены. 
  4. Проверьте в базе данных set добавляется ли товар в таблицу scales_plues.


Выполните скрипты для повторного формирования заданий для загрузки в базе данных set:

1.  Очистите каскадно таблицу scales_productentity.

TRUNCATE scales_productentity CASCADE;

2. Выполните один из скриптов в зависимости от типа товара.

Весовые товары
UPDATE un_cg_price
SET    senttoscales = FALSE
WHERE  product_marking IN
        (SELECT markingofthegood
         FROM   un_cg_product_weight)
       AND (enddate IS null OR enddate > now());
Штучно-весовые товары
UPDATE un_cg_price
SET    senttoscales = FALSE
WHERE  product_marking IN (SELECT markingofthegood
                           FROM   un_cg_product
                           WHERE  plugin_class_name =
              'ru.crystals.pos.catalog.billets.ProductPieceWeightEntityBillet'
                                  AND status = '99')
       AND (enddate IS null OR enddate > now());

3. Дождитесь, когда сгенерируются новые PLU. Весовой модуль забирает для себя новые цены с периодичностью 200 цен/3мин.

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



Нужно заново сгенерировать PLU на весовые товары

1. Каскадно очистите таблицу scales_productentity

TRUNCATE scales_productentity CASCADE;

2. Выполнить скрипт по БД set

Для весовых товаров:

UPDATE un_cg_price
SET    senttoscales = FALSE
WHERE  product_marking IN (SELECT markingofthegood
                           FROM   un_cg_product_weight)
       AND ( enddate IS NULL
              OR enddate > Now() ); 


Для штучно-весовых товаров:

UPDATE un_cg_price
SET    senttoscales = FALSE
WHERE  product_marking IN (SELECT markingofthegood
                           FROM   un_cg_product
                           WHERE  plugin_class_name =
              'ru.crystals.pos.catalog.billets.ProductPieceWeightEntityBillet'
                                  AND status = '99')
       AND ( enddate IS NULL
              OR enddate > Now() ); 

3. Ожидайте, когда сгенерируются новые plu. Весовой модуль забирает для себя новые цены с периодичностью 200 цен/3мин.

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

SELECT distinct
          ucp.product_marking, ucp.*,
          ucl.*
FROM
          un_cg_price ucp
          join
                    un_cg_barcode ucb
                    on
                    ucb.product_marking = ucp.product_marking
          left join
                    un_cg_likond ucl
                    on
                    substring(ucp.product_marking from 1 for 6) = ucl.marking
where
          ucp.begindate          < now()
          and (ucp.enddate is null or ucp.enddate        > now())
          and ucp.senttoscales   = false
          and ucp.product_status = 99
          and ucp.product_marking in
          (
                 SELECT
                        markingofthegood
                 from
                        un_cg_product_weight
          )
          and
          (
                    (
                              ucl.begin_date   < (now()-'10 minutes'::interval)
                              and ucl.end_date > now())
                    or ucl.marking is null)

Не уходит товар на весы

Проверка:

  1. Корректно ли настроен шаблон весов (товар должен входить в список обслуживания):
    1. Магазин → Настройки магазина → 4. Весы.
    2. Весовой модуль → Шаблоны весов.
  2. Не указан ли номер весов в загружаемом товаре в тэге <scales-number>...</scales-number>.
  3. Любые другие ошибки, в том числе сетевые будут отображены на сервере магазина

В базе данных set таблицы scales_linktoplu ошибочные задания будут иметь status=3, а причина ошибки отображаться в следующих полях:

  • exceptiontype - индикатор ошибки если при загрузке таковая произошла';
  • lasterrorcode - код последней ошибки, разные весы определяют сами значение этого свойства';
  • lasterrortype - тип последней ошибки, разные весы определяют сами значение этого свойства';

Скрипт по проверки отправленных PLU на весы
SELECT *
FROM   scales_linktoplu slp
       left join scales_scales ss
              ON (slp.scales_code = ss.code)
       left join scales_plues sp
              ON (slp.id_plu = sp."id")
WHERE  ss.number = 'номер весов'
       AND sp."number" IN ('номер plu') 

Ошибка 2015 - Bizerba 

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

Рекомендуется загружать товары в количестве допустимом для модели весов

Памятка очистки PLU на популярных моделях весов

Весы  Методика очистки PLU
Bizerba CE-H 800

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

Если не получилось с первого раза, нажать в центр экрана и повторить.

Пароль: 33470.

Далее по меню:

1. "Обработка PLU" (1) -"Удалить PLU" (7).

2. В пункте "Содержание" выбрать"PLU + Спец.предл."

3. В пункте "Удалить диапазон" указываем отдел - от 1 до 99 и PLU от 1 до 999999, нажимаем "Да".

Дождаться, когда исчезнет индикатор (песочные часы) и весы вернутся в предыдущее меню.

Bizerba KH-800

Bizerba KH-II 800

Вход в меню (тач): нажать на экран в районе 1 см от левого края экрана под красной линией.

Пароль: 33470.

Далее по меню:

1. "ОбработкаPLU" (1) - "Удалить PLU" (7).

2. В пункте "Содержание" выбираем "PLU + Спец. предл."

3. В пункте "Удалить диапазон" указываем отдел - от 1 до 99 и PLU от 1 до999999, нажимаем "Да".

Дождаться, когда исчезнет индикатор (песочные часы) и весы вернутся в предыдущее меню.

Bizerba BS-100

Bizerba BS-200

Вход в меню: клавиша "Mod" на клавиатуре

Пароль: 33470.

Далее по меню:

1. "ОбработкаPLU" (1) - "Удалить PLU" (7).

2. В пункте "Содержание" выбираем "PLU + Спец. предл."

3. В пункте "Удалить диапазон" указываем отдел - от 1 до 99 и PLU от 1 до999999, нажимаем "Да".

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

Bizerba SC-II 100

Bizerba SC-II 400

Вход в меню: клавиша " Mod "на клавиатуре

Пароль: 33470.

Далее по меню:

1. "Обработка PLU "(1) - "Удалить PLU " (7).

2. В пункте "Содержание" выбираем" PLU + Спец. предл."

3. В пункте "Удалить диапазон" указываем отдел - от 1 до 99 и PLU от 1 до 999999,нажимаем "Да".

Дождаться, когда исчезнет, индикатор и весы вернутся, в предыдущее меню.

На этикетке обрезается текст состава товара - Mettler Toledo Tiger P (драйвер TOLEDO версии выше 362)

При создании дизайна этикетки для весов Mettler Toledo Tiger P (драйвер TOLEDO версии выше 362) с помощью утилиты SPCT текст состава товара обрезается. 

Это связано с тем, что в редакторе этикетки утилиты SPCT поле Название PLU совмещено с полем Дополнительный текст, а само поле Дополнительный текст не работает.

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

.

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

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